#! /bin/sh
# Generated from testsuite.at by GNU Autoconf 2.69.
#
# Test cases Copyright (C) 2023 Free Software Foundation, Inc.
#
# Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart,
# Ron Norman, Brian Tiffin, Dave Pitts
#
# Copyright (C) 2009-2012 Free Software Foundation, Inc.
#
# This test suite is free software; the Free Software Foundation gives
# unlimited permission to copy, distribute and modify it.
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##

# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
  emulate sh
  NULLCMD=:
  # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
  # is contrary to our usage.  Disable this feature.
  alias -g '${1+"$@"}'='"$@"'
  setopt NO_GLOB_SUBST
else
  case `(set -o) 2>/dev/null` in #(
  *posix*) :
    set -o posix ;; #(
  *) :
     ;;
esac
fi


as_nl='
'
export as_nl
# Printing a long string crashes Solaris 7 /usr/bin/printf.
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
# Prefer a ksh shell builtin over an external printf program on Solaris,
# but without wasting forks for bash or zsh.
if test -z "$BASH_VERSION$ZSH_VERSION" \
    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
  as_echo='print -r --'
  as_echo_n='print -rn --'
elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
  as_echo='printf %s\n'
  as_echo_n='printf %s'
else
  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
    as_echo_n='/usr/ucb/echo -n'
  else
    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
    as_echo_n_body='eval
      arg=$1;
      case $arg in #(
      *"$as_nl"*)
	expr "X$arg" : "X\\(.*\\)$as_nl";
	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
      esac;
      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
    '
    export as_echo_n_body
    as_echo_n='sh -c $as_echo_n_body as_echo'
  fi
  export as_echo_body
  as_echo='sh -c $as_echo_body as_echo'
fi

# The user is always right.
if test "${PATH_SEPARATOR+set}" != set; then
  PATH_SEPARATOR=:
  (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
    (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
      PATH_SEPARATOR=';'
  }
fi


# IFS
# We need space, tab and new line, in precisely that order.  Quoting is
# there to prevent editors from complaining about space-tab.
# (If _AS_PATH_WALK were called with IFS unset, it would disable word
# splitting by setting IFS to empty value.)
IFS=" ""	$as_nl"

# Find who we are.  Look in the path if we contain no directory separator.
as_myself=
case $0 in #((
  *[\\/]* ) as_myself=$0 ;;
  *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
  IFS=$as_save_IFS
  test -z "$as_dir" && as_dir=.
    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
  done
IFS=$as_save_IFS

     ;;
esac
# We did not find ourselves, most probably we were run as `sh COMMAND'
# in which case we are not to be found in the path.
if test "x$as_myself" = x; then
  as_myself=$0
fi
if test ! -f "$as_myself"; then
  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
  exit 1
fi

# Unset variables that we do not need and which cause bugs (e.g. in
# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
# suppresses any "Segmentation fault" message there.  '((' could
# trigger a bug in pdksh 5.2.14.
for as_var in BASH_ENV ENV MAIL MAILPATH
do eval test x\${$as_var+set} = xset \
  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
done
PS1='$ '
PS2='> '
PS4='+ '

# NLS nuisances.
LC_ALL=C
export LC_ALL
LANGUAGE=C
export LANGUAGE

# CDPATH.
(unset CDPATH) >/dev/null 2>&1 && unset CDPATH

if test "x$CONFIG_SHELL" = x; then
  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
  emulate sh
  NULLCMD=:
  # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
  # is contrary to our usage.  Disable this feature.
  alias -g '\${1+\"\$@\"}'='\"\$@\"'
  setopt NO_GLOB_SUBST
else
  case \`(set -o) 2>/dev/null\` in #(
  *posix*) :
    set -o posix ;; #(
  *) :
     ;;
esac
fi
"
  as_required="as_fn_return () { (exit \$1); }
as_fn_success () { as_fn_return 0; }
as_fn_failure () { as_fn_return 1; }
as_fn_ret_success () { return 0; }
as_fn_ret_failure () { return 1; }

exitcode=0
as_fn_success || { exitcode=1; echo as_fn_success failed.; }
as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :

else
  exitcode=1; echo positional parameters were not saved.
fi
test x\$exitcode = x0 || exit 1
test -x / || exit 1"
  as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
  as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
  eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
  test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
test \$(( 1 + 1 )) = 2 || exit 1"
  if (eval "$as_required") 2>/dev/null; then :
  as_have_required=yes
else
  as_have_required=no
fi
  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :

else
  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
as_found=false
for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
do
  IFS=$as_save_IFS
  test -z "$as_dir" && as_dir=.
  as_found=:
  case $as_dir in #(
	 /*)
	   for as_base in sh bash ksh sh5; do
	     # Try only shells that exist, to save several forks.
	     as_shell=$as_dir/$as_base
	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
  CONFIG_SHELL=$as_shell as_have_required=yes
		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
  break 2
fi
fi
	   done;;
       esac
  as_found=false
done
$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
  CONFIG_SHELL=$SHELL as_have_required=yes
fi; }
IFS=$as_save_IFS


      if test "x$CONFIG_SHELL" != x; then :
  export CONFIG_SHELL
             # We cannot yet assume a decent shell, so we have to provide a
# neutralization value for shells without unset; and this also
# works around shells that cannot unset nonexistent variables.
# Preserve -v and -x to the replacement shell.
BASH_ENV=/dev/null
ENV=/dev/null
(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
case $- in # ((((
  *v*x* | *x*v* ) as_opts=-vx ;;
  *v* ) as_opts=-v ;;
  *x* ) as_opts=-x ;;
  * ) as_opts= ;;
esac
exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
# Admittedly, this is quite paranoid, since all the known shells bail
# out after a failed `exec'.
$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
exit 255
fi

    if test x$as_have_required = xno; then :
  $as_echo "$0: This script requires a shell more modern than all"
  $as_echo "$0: the shells that I found on your system."
  if test x${ZSH_VERSION+set} = xset ; then
    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
  else
    $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
$0: including any error possibly output before this
$0: message. Then install a modern shell, or manually run
$0: the script under such a shell if you do have one."
  fi
  exit 1
fi
fi
fi
SHELL=${CONFIG_SHELL-/bin/sh}
export SHELL
# Unset more variables known to interfere with behavior of common tools.
CLICOLOR_FORCE= GREP_OPTIONS=
unset CLICOLOR_FORCE GREP_OPTIONS

## --------------------- ##
## M4sh Shell Functions. ##
## --------------------- ##
# as_fn_unset VAR
# ---------------
# Portably unset VAR.
as_fn_unset ()
{
  { eval $1=; unset $1;}
}
as_unset=as_fn_unset

# as_fn_set_status STATUS
# -----------------------
# Set $? to STATUS, without forking.
as_fn_set_status ()
{
  return $1
} # as_fn_set_status

# as_fn_exit STATUS
# -----------------
# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
as_fn_exit ()
{
  set +e
  as_fn_set_status $1
  exit $1
} # as_fn_exit

# as_fn_mkdir_p
# -------------
# Create "$as_dir" as a directory, including parents if necessary.
as_fn_mkdir_p ()
{

  case $as_dir in #(
  -*) as_dir=./$as_dir;;
  esac
  test -d "$as_dir" || eval $as_mkdir_p || {
    as_dirs=
    while :; do
      case $as_dir in #(
      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
      *) as_qdir=$as_dir;;
      esac
      as_dirs="'$as_qdir' $as_dirs"
      as_dir=`$as_dirname -- "$as_dir" ||
$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
	 X"$as_dir" : 'X\(//\)[^/]' \| \
	 X"$as_dir" : 'X\(//\)$' \| \
	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X"$as_dir" |
    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
	    s//\1/
	    q
	  }
	  /^X\(\/\/\)[^/].*/{
	    s//\1/
	    q
	  }
	  /^X\(\/\/\)$/{
	    s//\1/
	    q
	  }
	  /^X\(\/\).*/{
	    s//\1/
	    q
	  }
	  s/.*/./; q'`
      test -d "$as_dir" && break
    done
    test -z "$as_dirs" || eval "mkdir $as_dirs"
  } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"


} # as_fn_mkdir_p

# as_fn_executable_p FILE
# -----------------------
# Test if FILE is an executable regular file.
as_fn_executable_p ()
{
  test -f "$1" && test -x "$1"
} # as_fn_executable_p
# as_fn_append VAR VALUE
# ----------------------
# Append the text in VALUE to the end of the definition contained in VAR. Take
# advantage of any shell optimizations that allow amortized linear growth over
# repeated appends, instead of the typical quadratic growth present in naive
# implementations.
if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
  eval 'as_fn_append ()
  {
    eval $1+=\$2
  }'
else
  as_fn_append ()
  {
    eval $1=\$$1\$2
  }
fi # as_fn_append

# as_fn_arith ARG...
# ------------------
# Perform arithmetic evaluation on the ARGs, and store the result in the
# global $as_val. Take advantage of shells that can avoid forks. The arguments
# must be portable across $(()) and expr.
if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
  eval 'as_fn_arith ()
  {
    as_val=$(( $* ))
  }'
else
  as_fn_arith ()
  {
    as_val=`expr "$@" || test $? -eq 1`
  }
fi # as_fn_arith


# as_fn_error STATUS ERROR [LINENO LOG_FD]
# ----------------------------------------
# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
# script with STATUS, using 1 if that was 0.
as_fn_error ()
{
  as_status=$1; test $as_status -eq 0 && as_status=1
  if test "$4"; then
    as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
  fi
  $as_echo "$as_me: error: $2" >&2
  as_fn_exit $as_status
} # as_fn_error

if expr a : '\(a\)' >/dev/null 2>&1 &&
   test "X`expr 00001 : '.*\(...\)'`" = X001; then
  as_expr=expr
else
  as_expr=false
fi

if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
  as_basename=basename
else
  as_basename=false
fi

as_me=`$as_basename -- "$0" ||
$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
	 X"$0" : 'X\(//\)$' \| \
	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
$as_echo X/"$0" |
    sed '/^.*\/\([^/][^/]*\)\/*$/{
	    s//\1/
	    q
	  }
	  /^X\/\(\/\/\)$/{
	    s//\1/
	    q
	  }
	  /^X\/\(\/\).*/{
	    s//\1/
	    q
	  }
	  s/.*/./; q'`

if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
  as_dirname=dirname
else
  as_dirname=false
fi

# Avoid depending upon Character Ranges.
as_cr_letters='abcdefghijklmnopqrstuvwxyz'
as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
as_cr_Letters=$as_cr_letters$as_cr_LETTERS
as_cr_digits='0123456789'
as_cr_alnum=$as_cr_Letters$as_cr_digits


  as_lineno_1=$LINENO as_lineno_1a=$LINENO
  as_lineno_2=$LINENO as_lineno_2a=$LINENO
  eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
  test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
  # Blame Lee E. McMahon (1931-1989) for sed's syntax.  :-)
  sed -n '
    p
    /[$]LINENO/=
  ' <$as_myself |
    sed '
      s/[$]LINENO.*/&-/
      t lineno
      b
      :lineno
      N
      :loop
      s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
      t loop
      s/-\n.*//
    ' >$as_me.lineno &&
  chmod +x "$as_me.lineno" ||
    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }

  # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
  # already done that, so ensure we don't try to do so again and fall
  # in an infinite loop.  This has already happened in practice.
  _as_can_reexec=no; export _as_can_reexec
  # Don't try to exec as it changes $[0], causing all sort of problems
  # (the dirname of $[0] is not the place where we might find the
  # original and so on.  Autoconf is especially sensitive to this).
  . "./$as_me.lineno"
  # Exit status is that of the last command.
  exit
}

ECHO_C= ECHO_N= ECHO_T=
case `echo -n x` in #(((((
-n*)
  case `echo 'xy\c'` in
  *c*) ECHO_T='	';;	# ECHO_T is single tab character.
  xy)  ECHO_C='\c';;
  *)   echo `echo ksh88 bug on AIX 6.1` > /dev/null
       ECHO_T='	';;
  esac;;
*)
  ECHO_N='-n';;
esac

rm -f conf$$ conf$$.exe conf$$.file
if test -d conf$$.dir; then
  rm -f conf$$.dir/conf$$.file
else
  rm -f conf$$.dir
  mkdir conf$$.dir 2>/dev/null
fi
if (echo >conf$$.file) 2>/dev/null; then
  if ln -s conf$$.file conf$$ 2>/dev/null; then
    as_ln_s='ln -s'
    # ... but there are two gotchas:
    # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
    # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
    # In both cases, we have to default to `cp -pR'.
    ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
      as_ln_s='cp -pR'
  elif ln conf$$.file conf$$ 2>/dev/null; then
    as_ln_s=ln
  else
    as_ln_s='cp -pR'
  fi
else
  as_ln_s='cp -pR'
fi
rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
rmdir conf$$.dir 2>/dev/null

if mkdir -p . 2>/dev/null; then
  as_mkdir_p='mkdir -p "$as_dir"'
else
  test -d ./-p && rmdir ./-p
  as_mkdir_p=false
fi

as_test_x='test -x'
as_executable_p=as_fn_executable_p

# Sed expression to map a string onto a valid CPP name.
as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"

# Sed expression to map a string onto a valid variable name.
as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"





SHELL=${CONFIG_SHELL-/bin/sh}

# How were we run?
at_cli_args="$@"


# Not all shells have the 'times' builtin; the subshell is needed to make
# sure we discard the 'times: not found' message from the shell.
at_times_p=false
(times) >/dev/null 2>&1 && at_times_p=:

# CLI Arguments to pass to the debugging scripts.
at_debug_args=
# -e sets to true
at_errexit_p=false
# Shall we be verbose?  ':' means no, empty means yes.
at_verbose=:
at_quiet=
# Running several jobs in parallel, 0 means as many as test groups.
at_jobs=1
at_traceon=:
at_trace_echo=:
at_check_filter_trace=:

# Shall we keep the debug scripts?  Must be `:' when the suite is
# run by a debug script, so that the script doesn't remove itself.
at_debug_p=false
# Display help message?
at_help_p=false
# Display the version message?
at_version_p=false
# List test groups?
at_list_p=false
# --clean
at_clean=false
# Test groups to run
at_groups=
# Whether to rerun failed tests.
at_recheck=
# Whether a write failure occurred
at_write_fail=0

# The directory we run the suite in.  Default to . if no -C option.
at_dir=`pwd`
# An absolute reference to this testsuite script.
case $as_myself in
  [\\/]* | ?:[\\/]* ) at_myself=$as_myself ;;
  * ) at_myself=$at_dir/$as_myself ;;
esac
# Whether -C is in effect.
at_change_dir=false

# Whether to enable colored test results.
at_color=auto
# List of the tested programs.
at_tested='cobc
cobcrun'
# As many question marks as there are digits in the last test group number.
# Used to normalize the test group numbers so that `ls' lists them in
# numerical order.
at_format='????'
# Description of all the test groups.
at_help_all="1;used_binaries.at:27;compiler help and information;runmisc cobc;
2;used_binaries.at:51;compiler warnings;runmisc cobc warning;
3;used_binaries.at:179;compiler outputs (general);runmisc cobc;
4;used_binaries.at:219;compiler outputs (file specified);runmisc cobc gen-c-line-directives gen-c-labels gen line labels copy;
5;used_binaries.at:300;compiler outputs (path specified);runmisc cobc;
6;used_binaries.at:329;compiler outputs (assembler);runmisc cobc;
7;used_binaries.at:364;source file not found;cobc runmisc;
8;used_binaries.at:374;temporary path invalid;cobc runmisc;
9;used_binaries.at:409;use of full path for cobc;runmisc;
10;used_binaries.at:427;C Compiler optimizations;runmisc cobc optimization;
11;used_binaries.at:464;invalid cobc option;runmisc cobc;
12;used_binaries.at:484;cobcrun help and information;runmisc cobcrun;
13;used_binaries.at:500;cobcrun validation;runmisc;
14;used_binaries.at:540;cobcrun -M DSO entry argument;runmisc preload;
15;used_binaries.at:626;cobcrun -M directory/ default;runmisc;
16;used_binaries.at:665;cobcrun -M directory/dso alternate;runmisc preload;
17;used_binaries.at:716;cobcrun -M DSO entry multiple arguments;runmisc preload;
18;used_binaries.at:762;cobcrun error messages;runmisc;
19;used_binaries.at:796;run job with unsuccessful compilation;runmisc cobcrun;
20;used_binaries.at:815;run job after compilation;runmisc cobcrun;
21;used_binaries.at:832;run job after compilation (path specified);runmisc cobcrun;
22;used_binaries.at:850;run job with optional arguments;runmisc cobcrun;
23;used_binaries.at:872;compile from stdin;runmisc cobc cobcrun;
24;used_binaries.at:900;run job after compilation from stdin;runmisc cobc cobcrun;
25;used_binaries.at:924;cobc diagnostics show caret;;
26;configuration.at:22;cobc with standard configuration file;configuration misc;
27;configuration.at:43;cobc dialect features for all -std;configuration misc;
28;configuration.at:105;cobc with configuration file via -std;configuration misc;
29;configuration.at:126;cobc with standard configuration file via -conf;configuration misc;
30;configuration.at:147;cobc with own configuration file via -conf;configuration misc;
31;configuration.at:176;cobc configuration: recursive include;configuration misc;
32;configuration.at:214;cobc with -std and -conf;configuration misc;
33;configuration.at:241;cobc compiler flag on command line;configuration misc;
34;configuration.at:260;cobc compiler flag on command line (priority);configuration misc;
35;configuration.at:293;cobc configuration: entries;configuration misc;
36;configuration.at:340;cobc configuration: conf missing;configuration misc;
37;configuration.at:368;cobc configuration: conf optional;configuration misc;
38;configuration.at:404;cobc configuration: incomplete;configuration misc;
39;configuration.at:546;runtime configuration;configuration misc;
40;configuration.at:565;runtime configuration file;configuration misc;
41;configuration.at:608;runtime configuration: recursive include;configuration misc;
42;configuration.at:637;runtime configuration: environment priority;configuration misc;
43;configuration.at:650;runtime configuration: entries;configuration misc;
44;configuration.at:731;runtime configuration: conf missing;configuration misc;
45;configuration.at:760;runtime configuration: conf optional;configuration misc;
46;configuration.at:773;runtime configuration: strings and environment;configuration environment variable;
47;configuration.at:787;validation of COB_CONFIG_DIR;runtime configuration environment variable;
48;configuration.at:827;cobc configuration: source format;configuration misc format;
49;configuration.at:885;cobc configuration: ebcdic-table;configuration misc ebcdic collating sequence alphabet collation;
50;syn_copy.at:23;COPY: IN / OF / -I;copy cobc;
51;syn_copy.at:125;COPY: relative copybooks;copy cobc;
52;syn_copy.at:170;COPY: extension;copy cobc in of -i;
53;syn_copy.at:257;COPY: within comment;copy;
54;syn_copy.at:286;COPY: file not found;copy case fold-copy;
55;syn_copy.at:342;COPY: recursive;copy;
56;syn_copy.at:382;COPY: replacement order;copy;
57;syn_copy.at:409;COPY: separators;copy;
58;syn_copy.at:438;COPY: partial replacement;copy;
59;syn_copy.at:468;COPY: LEADING replacement;copy;
60;syn_copy.at:498;COPY: TRAILING replacement;copy;
61;syn_copy.at:528;COPY: partial replacement BY literal;copy gcos;
62;syn_copy.at:630;COPY: recursive replacement;copy;
63;syn_copy.at:660;COPY: fixed/free format;copy;
64;syn_copy.at:686;REPLACE: partial replacement BY SPACE;replace gcos acu figurative constant spaces;
65;syn_copy.at:739;COPY: simple partial match;copy;
66;syn_copy.at:766;COPY: with LEADING, multiple partial matches;copy;
67;syn_copy.at:804;COPY: multiple partial matches with an error;copy;
68;syn_copy.at:844;COPY: Multiple partial matches (1);copy;
69;syn_copy.at:884;COPY: Multiple partial matches (2);copy;
70;syn_copy.at:923;COPY and REPLACE in same file;replacing preprocess;
71;syn_copy.at:997;COPY and REPLACE errors;copy;
72;syn_copy.at:1041;COPY and REPLACE with reserved words;copy;
73;syn_definition.at:25;Invalid source name;definition;
74;syn_definition.at:37;Invalid PROGRAM-ID;definition underscore hyphen entry;
75;syn_definition.at:89;Invalid PROGRAM-ID type clause (1);definition;
76;syn_definition.at:106;invalid PROGRAM-ID type clause (2);definition;
77;syn_definition.at:123;INITIAL / RECURSIVE before COMMON;program-id definition;
78;syn_definition.at:155;Undefined data name;definition;
79;syn_definition.at:173;Undefined group name;definition;
80;syn_definition.at:194;Undefined data name in group;definition;
81;syn_definition.at:217;Reference not a group name;definition;
82;syn_definition.at:239;Incomplete 01 definition;definition;
83;syn_definition.at:257;error handling in conditions;definition;
84;syn_definition.at:333;Same paragraphs in different sections;definition procedures label go to;
85;syn_definition.at:376;GO TO sections and foreign paragraphs;definition procedures section paragraph;
86;syn_definition.at:413;Redefinition of 01 items;definition;
87;syn_definition.at:442;Redefinition of 01 and 02 items;definition;
88;syn_definition.at:462;Redefinition of 02 items;definition redefines;
89;syn_definition.at:495;Redefinition of 77 items;definition;
90;syn_definition.at:515;Redefinition of 01 and 77 items;definition;
91;syn_definition.at:535;Redefinition of 88 items;definition;
92;syn_definition.at:556;Redefinition of program-name by other programs;definition;
93;syn_definition.at:636;Redefinition of program-name within program;definition;
94;syn_definition.at:666;Redefinition of function-prototype name;definition;
95;syn_definition.at:691;PROCEDURE DIVISION RETURNING OMITTED: main;runmisc;
96;syn_definition.at:711;PROCEDURE DIVISION RETURNING OMITTED: FUNCTION;runmisc;
97;syn_definition.at:730;PROCEDURE DIVISION RETURNING item;runmisc;
98;syn_definition.at:825;Data item with same name as program-name;definition;
99;syn_definition.at:852;Ambiguous reference to 02 items;definition;
100;syn_definition.at:878;Ambiguous reference to 02 and 03 items;definition;
101;syn_definition.at:903;Ambiguous reference with qualification;definition;
102;syn_definition.at:931;Unique reference with ambiguous qualifiers;definition;
103;syn_definition.at:955;SYNCHRONIZED clause;definition sync;
104;syn_definition.at:998;Undefined procedure name;definition;
105;syn_definition.at:1018;Redefinition of section names;definition;
106;syn_definition.at:1043;Redefinition of section and paragraph names;definition;
107;syn_definition.at:1069;Redefinition of label and variable names;definition;
108;syn_definition.at:1106;Redefinition of paragraph names;definition;
109;syn_definition.at:1132;Ambiguous reference to paragraph name;definition;
110;syn_definition.at:1158;Non-matching level numbers (extension);definition;
111;syn_definition.at:1190;CALL BY VALUE alphanumeric item (extension);definition content;
112;syn_definition.at:1212;CALL BY VALUE national item (extension);definition content;
113;syn_definition.at:1235;CALL BY VALUE figurative constants;definition;
114;syn_definition.at:1269;Duplicate identification division header;definition;
115;syn_definition.at:1284;RETURNING in STOP RUN / GOBACK / EXIT PROGRAM;definition return-code;
116;syn_definition.at:1335;OSVS register CURRENT-DATE and TIME-OF-DAY;definition;
117;syn_definition.at:1405;Invalid ENVIRONMENT DIVISION order;definition;
118;syn_definition.at:1430;Function without END FUNCTION;definition functions;
119;syn_definition.at:1444;Nested programs without END PROGRAM;definition;
120;syn_definition.at:1466;Nested programs not in procedure division;definition;
121;syn_definition.at:1485;Screen section starts with 78-level;screen definition;
122;syn_definition.at:1501;Invalid PICTURE strings;definition usage;
123;syn_definition.at:1761;PICTURE string with control character;definition;
124;syn_definition.at:1779;PICTURE strings invalid with BLANK WHEN ZERO;definition;
125;syn_definition.at:1802;PICTURE strings invalid with USAGE;definition;
126;syn_definition.at:1822;Edited monetary PICTURE strings;definition;
127;syn_definition.at:1849;ALPHABET definition;definition;
128;syn_definition.at:1872;PROGRAM COLLATING SEQUENCE;definition alphabet;
129;syn_definition.at:2055;RENAMES item;definition 66;
130;syn_definition.at:2129;RENAMES of 01-, 66- and 77-level items;definition 66 extensions;
131;syn_definition.at:2155;SAME AS clause;definition external global;
132;syn_definition.at:2219;TYPEDEF clause;definition external global type usage listing symbols xref;
133;syn_definition.at:2571;LIKE clause;definition external global;
134;syn_definition.at:2629;APPLY COMMIT clause;definition i-o-control rollback;
135;syn_definition.at:2734;GLOBAL record-names;definition alternate indexed;
136;syn_definition.at:2853;Invalid USE BEFORE;use;
137;syn_subscripts.at:23;Non-numeric subscript;subscripts;
138;syn_subscripts.at:50;Subscript range check;subscripts;
139;syn_subscripts.at:98;Subscript bounds with OCCURS DEPENDING ON;runsubscripts subscripts odo;
140;syn_subscripts.at:125;Subscripted item requires OCCURS clause;subscripts;
141;syn_subscripts.at:151;Number of subscripts;subscripts;
142;syn_subscripts.at:195;SET SSRANGE syntax;subscripts directive extensions;
143;syn_occurs.at:29;OCCURS with level 01 and 77;;
144;syn_occurs.at:84;OCCURS with level 66;renames;
145;syn_occurs.at:103;OCCURS with level 78;;
146;syn_occurs.at:121;OCCURS with level 88;;
147;syn_occurs.at:143;OCCURS with variable-occurrence data item;nested depending extensions odo odoslide directive;
148;syn_occurs.at:248;OCCURS UNBOUNDED;;
149;syn_occurs.at:359;OCCURS data-items for INDEXED and KEY;ascending descending;
150;syn_occurs.at:399;Nested OCCURS clause;;
151;syn_occurs.at:436;OCCURS DEPENDING with wrong size;range;
152;syn_occurs.at:475;OCCURS DEPENDING followed by another field;extensions;
153;syn_occurs.at:517;OCCURS with unmatched DEPENDING / TO phrases;odo;
154;syn_occurs.at:560;OCCURS INDEXED before KEY;ascending descending;
155;syn_occurs.at:598;OCCURS size check;limit;
156;syn_redefines.at:28;REDEFINES: not following entry-name;redefines;
157;syn_redefines.at:53;REDEFINES: level 02 by 01;redefines;
158;syn_redefines.at:74;REDEFINES: level 03 by 02;redefines;
159;syn_redefines.at:96;REDEFINES: level 66;redefines;
160;syn_redefines.at:118;REDEFINES: level 88;redefines;
161;syn_redefines.at:146;REDEFINES: lower level number;redefines;
162;syn_redefines.at:172;REDEFINES: with OCCURS;redefines;
163;syn_redefines.at:196;REDEFINES: with subscript;redefines;
164;syn_redefines.at:219;REDEFINES: with variable occurrence;redefines;
165;syn_redefines.at:254;REDEFINES: with qualification;redefines;
166;syn_redefines.at:280;REDEFINES: multiple redefinition;redefines;
167;syn_redefines.at:308;REDEFINES: size exceeds;redefines;
168;syn_redefines.at:359;REDEFINES: with VALUE;redefines;
169;syn_redefines.at:392;REDEFINES: with intervention;redefines;
170;syn_redefines.at:424;REDEFINES: within REDEFINES;redefines;
171;syn_redefines.at:467;REDEFINES: for ANY LENGTH item;redefines;
172;syn_redefines.at:500;REDEFINES: non-referenced ambiguous item;redefines extensions;
173;syn_value.at:28;bad VALUES / VALUES ARE in format-1;value;
174;syn_value.at:76;OCCURS too many VALUEs;initialize value;
175;syn_value.at:162;Numeric item (integer);value size;
176;syn_value.at:189;Numeric item (non-integer);value size;
177;syn_value.at:213;Numeric item with picture P;value size;
178;syn_value.at:245;Signed numeric literal;value;
179;syn_value.at:271;Alphabetic item;value size;
180;syn_value.at:299;Alphanumeric item;value size;
181;syn_value.at:325;Alphanumeric group item;value size;
182;syn_value.at:352;National item;value size;
183;syn_value.at:389;Numeric-edited item;value editing size;
184;syn_value.at:425;Alphanumeric-edited item;value editing size;
185;syn_value.at:494;Implicit picture from value;value;
186;syn_file.at:23;Missing SELECT;file;
187;syn_file.at:50;Duplicated SELECT;file;
188;syn_file.at:82;Missing FD;file;
189;syn_file.at:108;Duplicated FD;file;
190;syn_file.at:137;ASSIGN to device-name;file disk device;
191;syn_file.at:204;ASSIGN to printer-name;file printer print device;
192;syn_file.at:271;ASSIGN to lsq-device-name;file printer device;
193;syn_file.at:326;ASSIGN to variable;file;
194;syn_file.at:431;SELECT without ASSIGN;file;
195;syn_file.at:459;START on SEQUENTIAL file;file;
196;syn_file.at:496;OPEN SEQUENTIAL file REVERSED;file;
197;syn_file.at:544;OPEN SEQUENTIAL file NO REWIND;file;
198;syn_file.at:583;valid key items;file record alternate;
199;syn_file.at:633;INDEXED file invalid key items;record alternate split;
200;syn_file.at:697;variable record length;file;
201;syn_file.at:808;variable record length DEPENDING item;file;
202;syn_file.at:910;DECLARATIVES invalid procedure reference (1);file goto go perform;
203;syn_file.at:999;DECLARATIVES invalid procedure reference (2);file;
204;syn_file.at:1040;EXTERNAL file;file;
205;syn_file.at:1068;RECORDING MODE;file extensions;
206;syn_file.at:1097;CODE-SET clause;file;
207;syn_file.at:1147;CODE-SET FOR clause;file extensions;
208;syn_file.at:1180;WRITE / REWRITE FROM clause and FILE;file record condition-name level-88 88;
209;syn_file.at:1241;Clauses following invalid ACCESS clause;file;
210;syn_file.at:1265;RELATIVE KEY type validation;relative file;
211;syn_file.at:1325;Mismatched KEY clause;file relative indexed;
212;syn_file.at:1352;RECORD DELIMITER;file;
213;syn_file.at:1460;FILE STATUS;file status;
214;syn_file.at:1557;VSAM status;file status extensions;
215;syn_file.at:1603;INDEXED file PASSWORD clause;file external split key;
216;syn_file.at:1654;RECORD clause equal limits;file;
217;syn_file.at:1694;FILE ... FROM literal;file;
218;syn_file.at:1753;WRITE / REWRITE on REPORT files;file;
219;syn_file.at:1790;SELECT without fd-name;file;
220;syn_file.at:1811;Undeclared FILE-ID variable;file;
221;syn_file.at:1836;ASSIGN external-name matching filename;file external;
222;syn_file.at:1864;Undeclared ASSIGN variable;file global;
223;syn_file.at:1943;ACCESS RANDOM with ORG SEQUENTIAL;file;
224;syn_file.at:1970;ALTERNATE RECORD KEY SUPPRESS WHEN;file;
225;syn_file.at:2015;RECORD definition with SOURCE IS / =;file;
226;syn_file.at:2066;ALTERNATE RECORD definition WITH NO DUPLICATES;file;
227;syn_file.at:2096;ALTERNATE RECORD definition omitting RECORD;file;
228;syn_file.at:2125;SELECT/OPEN syntax extensions;file select open mass-update bulk-addition lock;
229;syn_file.at:2220;GLOBAL FD nested progam;global-fd;
230;syn_file.at:2258;Invalid file name in SELECT;file;
231;syn_reportwriter.at:23;REPORT error/warning;report;
232;syn_reportwriter.at:124;REPORT not positive integers in COL / LINE PLUS;lines cols columns;
233;syn_reportwriter.at:177;Missing PICTURE for SOURCE;report;
234;syn_reportwriter.at:218;Missing DETAIL line;report;
235;syn_reportwriter.at:261;REPORT LINE PLUS ZERO;report;
236;syn_reportwriter.at:311;Incorrect REPORT NAME;report;
237;syn_reportwriter.at:428;REPORT with PLUS RIGHT/CENTER;report;
238;syn_reportwriter.at:521;PAGE LIMITS clause;report;
239;syn_reportwriter.at:556;Report FD without period;report;
240;syn_reportwriter.at:598;REPORT with unreferenced control field;report;
241;syn_reportwriter.at:626;Incorrect USAGE clause;report;
242;syn_refmod.at:26;valid reference-modification;refmod;
243;syn_refmod.at:55;invalid reference-modification;refmod condition-name;
244;syn_refmod.at:79;Static out of bounds;refmod;
245;syn_refmod.at:123;constant-folding out of bounds;refmod expression;
246;syn_refmod.at:159;no static bound check for ANY LENGTH;refmod;
247;syn_misc.at:23;ambiguous AND/OR;misc expression;
248;syn_misc.at:54;warn constant expressions;misc expression;
249;syn_misc.at:120;warn literal size;misc numeric constant expression;
250;syn_misc.at:388;warn literal size in constant expr. (level 88);misc numeric constant expression;
251;syn_misc.at:438;Invalid conditional expression (1);misc;
252;syn_misc.at:550;Invalid conditional expression (2);misc;
253;syn_misc.at:619;Invalid conditional expression (3);expression condition;
254;syn_misc.at:683;Valid conditional expression;misc;
255;syn_misc.at:716;missing headers;misc;
256;syn_misc.at:773;one line program;misc;
257;syn_misc.at:794;empty program;misc;
258;syn_misc.at:842;INITIALIZE constant;misc;
259;syn_misc.at:869;CLASS duplicate values;misc;
260;syn_misc.at:902;INSPECT invalid size;misc refmod;
261;syn_misc.at:943;INSPECT invalid target;misc;
262;syn_misc.at:966;INSPECT missing keyword;misc;
263;syn_misc.at:987;INSPECT repeated keywords;misc;
264;syn_misc.at:1023;INSPECT incomplete clause;misc;
265;syn_misc.at:1045;INSPECT multiple BEFORE/AFTER clauses;misc;
266;syn_misc.at:1068;EXAMINE invalid literals;misc;
267;syn_misc.at:1104;maximum data size;misc max;
268;syn_misc.at:1152;unreachable statement;misc extensions;
269;syn_misc.at:1202;CRT STATUS;special-names misc;
270;syn_misc.at:1244;SPECIAL-NAMES clause;misc extensions cursor crt status;
271;syn_misc.at:1345;CURRENCY SIGN;special-names misc;
272;syn_misc.at:1457;SWITCHES;runmisc extensions;
273;syn_misc.at:1583;unexpected mnemonic-name location;misc;
274;syn_misc.at:1610;wrong device for mnemonic-name;misc accept display special-names;
275;syn_misc.at:1635;missing mnemonic-name declaration;misc accept special-names;
276;syn_misc.at:1656;unknown device in dialect;misc accept display special-names;
277;syn_misc.at:1686;ACCEPT WITH ( NO ) UPDATE / DEFAULT;misc extensions;
278;syn_misc.at:1711;ACCEPT WITH AUTO / TAB;auto-skip autoterminate misc extensions screen;
279;syn_misc.at:1736;ACCEPT WITH LOWER / UPPER;misc extensions screen;
280;syn_misc.at:1758;ACCEPT WITH SIZE;protected size misc extensions screen;
281;syn_misc.at:1787;DISPLAY WITH SIZE;size misc extensions screen;
282;syn_misc.at:1812;source text after program-text area;misc fixed;
283;syn_misc.at:1833;line overflow in fixed-form / free-form;misc;
284;syn_misc.at:1891;missing newline in fixed-form / free-form;misc;
285;syn_misc.at:1925;continuation of COBOL words;misc fixed literals;
286;syn_misc.at:1947;line and floating comments;misc extensions indicator;
287;syn_misc.at:2101;word length;misc word-length;
288;syn_misc.at:2264;Segmentation Module;misc;
289;syn_misc.at:2356;ACCEPT FROM ESCAPE KEY;misc;
290;syn_misc.at:2382;ACUCOBOL USAGE FLOAT / DOUBLE;misc acu extensions reserved;
291;syn_misc.at:2411;ACUCOBOL USAGE HANDLE;misc acu extensions reserved call destroy;
292;syn_misc.at:2518;ACUCOBOL WINDOW statements;misc acu extensions screen;
293;syn_misc.at:2603;ACUCOBOL GRAPHICAL controls;misc acu extensions screen modify inquire;
294;syn_misc.at:2681;DISPLAY MESSAGE BOX;misc acu extensions screen;
295;syn_misc.at:2724;DISPLAY OMITTED;misc extensions screen;
296;syn_misc.at:2745;CGI: EXTERNAL-FORM;misc acu extensions accept display;
297;syn_misc.at:2800;adding/removing reserved words;misc extensions configuration;
298;syn_misc.at:2830;adding aliases;misc extensions configuration reserved;
299;syn_misc.at:2864;overriding default words;misc extensions configuration reserved;
300;syn_misc.at:2895;complete specified word list;misc extensions configuration reserved;
301;syn_misc.at:2915;ANY LENGTH item as formal parameter;misc;
302;syn_misc.at:2950;ANY LENGTH item as BY VALUE formal parameter;misc by value;
303;syn_misc.at:2973;swapped SOURCE- and OBJECT-COMPUTER;misc extensions;
304;syn_misc.at:2995;CONF. SECTION paragraphs in wrong order;misc extensions;
305;syn_misc.at:3067;NOT ON EXCEPTION with STATIC CALL convention;misc call-convention;
306;syn_misc.at:3115;NOT ON EXCEPTION phrases before ON EXCEPTION;misc;
307;syn_misc.at:3179;wrong dialect hints;misc configuration reserved;
308;syn_misc.at:3204;redundant periods;misc redundant-periods;
309;syn_misc.at:3234;missing periods;misc cobol85 area-a missing-periods;
310;syn_misc.at:3275;missing periods with COPYs;misc cobol85 area-a missing-periods copy;
311;syn_misc.at:3363;statement in Area A;misc cobol85 areacheck;
312;syn_misc.at:3406;pseudotext replacement with text in area A;misc cobol85 gcos copy missing-periods;
313;syn_misc.at:3473;IF-ELSE statement list with invalid syntax;misc;
314;syn_misc.at:3506;EVALUATE statement with invalid syntax;misc expression;
315;syn_misc.at:3555;COBOL-WORDS directive;misc reserved words;
316;syn_misc.at:3629;MF reserved word directives;misc extensions addrsv addsyn makesyn override remove;
317;syn_misc.at:3691;TURN directive;misc;
318;syn_misc.at:3724;STRING / UNSTRING with invalid syntax;misc;
319;syn_misc.at:3789;STRING / UNSTRING POINTER clause;misc;
320;syn_misc.at:3864;STRING with non-DISPLAY;initialize;
321;syn_misc.at:3903;UNSTRING COUNT clause;misc;
322;syn_misc.at:3951;use of program-prototype-names;misc prototype prototypes;
323;syn_misc.at:3978;checking prototypes and definitions match;misc prototype;
324;syn_misc.at:4115;invalid INSPECT/TRANSFORM operands;misc inspect transform;
325;syn_misc.at:4167;SIGN clause checks;misc;
326;syn_misc.at:4192;conflicting entry conventions;misc entry-convention call-convention linkage;
327;syn_misc.at:4261;conflicting call conventions;misc call-convention linkage;
328;syn_misc.at:4290;dangling LINKAGE items;misc;
329;syn_misc.at:4346;duplicate PROCEDURE DIVISION/ENTRY USING items;misc division entry reference;
330;syn_misc.at:4367;duplicate CALL USING BY REFERENCE items;misc;
331;syn_misc.at:4393;ADD / SUBTRACT TABLE;misc;
332;syn_misc.at:4436;USE FOR DEBUGGING invalid ref-mod / subscripts;misc;
333;syn_misc.at:4481;USE FOR DEBUGGING duplicate targets;misc;
334;syn_misc.at:4534;USE FOR DEBUGGING implicit statements;misc;
335;syn_misc.at:4582;USE FOR DEBUGGING syntax-checks (1);misc debug-item debug-name debug-line debug-contents debug-sub-1 debug-sub-2 debug-sub-3;
336;syn_misc.at:4675;USE FOR DEBUGGING syntax-checks (2);misc debug-item debug-line;
337;syn_misc.at:4748;Empty PERFORM with DEBUGGING MODE;misc;
338;syn_misc.at:4776;whitespace handling;misc;
339;syn_misc.at:4864;STOP identifier;misc extensions;
340;syn_misc.at:4890;01 CONSTANT;mirc reserved;
341;syn_misc.at:4938;78 VALUE;constant;
342;syn_misc.at:4985;level 78 NEXT / START OF;extensions constant length;
343;syn_misc.at:5044;SYMBOLIC CONSTANT;misc special-names;
344;syn_misc.at:5093;Constant Expressions (1);condition expression refmod if evaluate;
345;syn_misc.at:5218;Constant Expressions (2);condition expression unreachable 78;
346;syn_misc.at:5274;Constant Expressions (3);condition expression refmod undefined;
347;syn_misc.at:5365;Constant Expressions (4);condition expression refmod;
348;syn_misc.at:5399;Constant Expressions (5);condition expression unreachable;
349;syn_misc.at:5499;Missing imperative statements;condition expression if evaluate when perform;
350;syn_misc.at:5591;Fall-Through to WHEN OTHER;condition expression evaluate when;
351;syn_misc.at:5629;CONSTANT LENGTH / BYTE-LENGTH;misc;
352;syn_misc.at:5653;ANY LENGTH/NUMERIC with incorrect PIC;misc;
353;syn_misc.at:5699;VOLATILE clause;extensions;
354;syn_misc.at:5743;SET SOURCEFORMAT syntax checks;misc extensions source directives;
355;syn_misc.at:5776;WHEN-COMPILED register in dialect;misc extensions;
356;syn_misc.at:5802;LIN / COL register;misc extensions;
357;syn_misc.at:5834;tokens consisting of multiple words;misc;
358;syn_misc.at:5862;@OPTIONS parsing;misc options fujitsu;
359;syn_misc.at:5906;PROCESS / CBL parsing;misc ibm;
360;syn_misc.at:5971;*CONTROL / *CBL parsing;misc ibm;
361;syn_misc.at:6004;system routines with wrong number of parameters;misc call 91 c\$toupper cbl_gc_fork;
362;syn_misc.at:6033;invalid use of condition-name;misc move string unstring compute;
363;syn_misc.at:6097;XML GENERATE syntax checks;extensions;
364;syn_misc.at:6315;BASED clause, ALLOCATE / FREE statements;based;
365;syn_misc.at:6396;CONTINUE statement;based;
366;syn_misc.at:6440;conflict markers;;
367;syn_misc.at:6499;SORT syntax;misc fundamental key;
368;syn_misc.at:6553;OSVS I/O extensions;ibm file extensions;
369;syn_misc.at:6620;EQUALS in expressions;misc;
370;syn_misc.at:6646;SEARCH ALL checks;misc;
371;syn_misc.at:6766;Invalid parentheses around condition;misc;
372;syn_misc.at:6789;DISPLAY directive (1);misc directive;
373;syn_misc.at:6812;DISPLAY directive (2);misc extension directive;
374;syn_misc.at:6832;DISPLAY directive (3);misc extension directive;
375;syn_misc.at:6851;SET CONSTANT directive;misc directives extensions;
376;syn_misc.at:6950;conditional / define directives (1);misc directive;
377;syn_misc.at:6975;conditional / define directives (2);misc directive;
378;syn_misc.at:7003;conditional / define directives (3);misc directive;
379;syn_misc.at:7033;conditional / define directives (4);misc directive;
380;syn_misc.at:7055;error handling in conditional directives;misc directive;
381;syn_misc.at:7083;conditional directives with lvl 78 (1);misc extensions directive;
382;syn_misc.at:7118;conditional directives with lvl 78 (2);misc extensions directive;
383;syn_misc.at:7168;Missing reserved word with DEBUGGING MODE;misc cobol-85;
384;syn_misc.at:7197;Invalid PERFORM statement;misc;
385;syn_misc.at:7228;PERFORM THRU syntax checks;misc warning;
386;syn_misc.at:7276;VALIDATE parsing;misc 2002 bit typedef strong validate-status present when destination;
387;syn_misc.at:7423;field-tree via COBC_GEN_DUMP_COMMENTS;misc binaries dump;
388;syn_misc.at:7703;CONTROL DIVISION;control gcos;
389;syn_misc.at:7755;CONTROL: empty default section;control gcos;
390;syn_misc.at:7781;CONTROL: default section;control gcos;
391;syn_misc.at:7815;CONTROL: substitution & default section;control gcos;
392;syn_misc.at:7894;CONTROL DIVISION & AREACHECK;gcos;
393;syn_misc.at:7930;PICTURE L;extensions gcos picture-l;
394;syn_misc.at:8025;AREACHECK / NOAREACHECK directives;misc directive continue;
395;syn_misc.at:8065;AREACHECK / NOAREACHECK directives (2);misc directive missing-periods;
396;syn_misc.at:8117;optional dots;misc missing-periods;
397;syn_misc.at:8172;optional dots before PROCEDURE DIVISION;misc missing-periods;
398;syn_misc.at:8209;AREACHECK;misc;
399;syn_misc.at:8249;autodetect format;cobc free fixed format;
400;syn_misc.at:8323;context sensitive alias;misc context alias;
401;syn_move.at:38;MOVE SPACE TO numeric or numeric-edited item;move editing;
402;syn_move.at:64;MOVE ZERO TO alphabetic item;move;
403;syn_move.at:90;MOVE alphabetic TO x;move;
404;syn_move.at:124;MOVE alphanumeric TO x;move;
405;syn_move.at:155;MOVE alphanumeric-edited TO x;move editing;
406;syn_move.at:189;MOVE numeric (integer) TO x;move;
407;syn_move.at:222;MOVE numeric (non-integer) TO x;move;
408;syn_move.at:258;MOVE numeric-edited TO x;move editing;
409;syn_move.at:293;MOVE national TO x;move;
410;syn_move.at:330;MOVE national-edited TO x;move editing national;
411;syn_move.at:374;CORRESPONDING - Operands must be groups;move;
412;syn_move.at:404;CORRESPONDING - Target has no matching items;move;
413;syn_move.at:430;MOVE to erroneous field;move;
414;syn_move.at:453;Overlapping MOVE;move;
415;syn_move.at:552;invalid source for MOVE;move label program-prototype;
416;syn_move.at:582;invalid target for MOVE;move constant label program-prototype;
417;syn_move.at:618;SET error;set-move;
418;syn_move.at:653;MOVE FIGURATIVE to NUMERIC;move;
419;syn_multiply.at:28;Category check of Format 1;multiply;
420;syn_multiply.at:64;Category check of Format 2;multiply;
421;syn_multiply.at:102;Category check of literals;multiply;
422;syn_screen.at:24;Flexible ACCEPT/DISPLAY syntax;screen accept display;
423;syn_screen.at:92;Duplicate ACCEPT/DISPLAY clauses;screen accept display;
424;syn_screen.at:121;AT clause;screen extensions;
425;syn_screen.at:175;ACCEPT/DISPLAY extensions detection;at line column accept display screen extensions;
426;syn_screen.at:221;FROM clause;screen;
427;syn_screen.at:250;Incorrect USAGE clause;screen;
428;syn_screen.at:283;SCREEN SECTION clause numbers;screen;
429;syn_screen.at:315;Screen clauses;full required leftline rightline overline underline grid;
430;syn_screen.at:341;ACCEPT ON EXCEPTION/ESCAPE;screen;
431;syn_screen.at:371;Referencing 88-level;screen;
432;syn_screen.at:402;Conflicting screen clauses;screen;
433;syn_screen.at:473;Redundant screen clauses;screen;
434;syn_screen.at:506;Screen item OCCURS w-/wo relative LINE/COL;occurs;
435;syn_screen.at:566;VALUE clause missing;screen;
436;syn_screen.at:592;FULL on numeric item;screen;
437;syn_screen.at:616;Compiler-specific SCREEN SECTION clause rules;screen;
438;syn_screen.at:774;MS-COBOL position-spec;screen position lin col;
439;syn_screen.at:822;Screen with invalid FROM clause;screen constant;
440;syn_screen.at:867;DISPLAY WITH CONVERSION;display;
441;syn_set.at:24;SET ADDRESS OF item;set;
442;syn_set.at:53;SET item TO 88-level;set;
443;syn_functions.at:22;ANY LENGTH / NUMERIC as function RETURNING item;functions extensions;
444;syn_functions.at:64;REPOSITORY INTRINSIC phrase;functions;
445;syn_functions.at:87;REPOSITORY FUNCTION phrase;functions;
446;syn_functions.at:135;Redundant REPOSITORY entries;functions;
447;syn_functions.at:174;Missing prototype/definition;functions programs prototypes;
448;syn_functions.at:205;Empty function;functions;
449;syn_functions.at:232;Function definition inside program;functions;
450;syn_functions.at:255;Intrinsic functions: dialect;functions;
451;syn_functions.at:280;Intrinsic functions: replaced;functions substitute;
452;syn_functions.at:324;Intrinsic functions: number of arguments;functions;
453;syn_functions.at:364;Intrinsic functions: reference modification;functions refmod;
454;syn_functions.at:410;Intrinsic functions: argument type;functions;
455;syn_functions.at:433;invalid formatted date/time args;functions formatted-date formatted-current-date formatted-time formatted-datetime integer-of-formatted-date seconds-from-formatted-time;
456;syn_functions.at:514;invalid formats w/ DECIMAL-POINT IS COMMA;functions formatted-time formatted-datetime;
457;syn_functions.at:544;Specified offset and SYSTEM-OFFSET;functions formatted-time formatted-datetime;
458;syn_functions.at:568;FUNCTION LENGTH / BYTE-LENGTH;functions prefixed;
459;syn_literals.at:25;continuation Indicator - too many lines;misc fixed literals listing;
460;syn_literals.at:583;literal too long;misc literals literal-length continuation listing;
461;syn_literals.at:819;numeric literals;misc numeric-literal-length;
462;syn_literals.at:998;floating-point literals;misc;
463;syn_literals.at:1105;X literals;misc;
464;syn_literals.at:1140;national literals;misc;
465;syn_literals.at:1178;NX literals;misc;
466;syn_literals.at:1216;binary literals;misc extensions;
467;syn_literals.at:1252;binary-hexadecimal literals;misc extensions;
468;syn_literals.at:1281;HP COBOL octal literals;misc extensions;
469;syn_literals.at:1317;ACUCOBOL literals;misc acu extensions binary octal hexadecimal;
470;syn_literals.at:1379;ACUCOBOL 32bit literal size;extensions literals;
471;syn_literals.at:1412;zero-length literals;misc;
472;syn_literals.at:1472;long literal in error message;misc literals;
473;syn_literals.at:1504;literal missing terminating character;misc literals terminator;
474;syn_literals.at:1525;GCOS literals with EBCDIC symbols (syntax);extensions;
475;listings.at:21;Minimal lines per listing pages;listing symbols options;
476;listings.at:85;COPY within comment;listing;
477;listings.at:149;Replacement w/o strings;listing symbols;
478;listings.at:205;Partial replacement with literals;listing gcos;
479;listings.at:269;COPY replacement with partial match;listing copy;
480;listings.at:318;COPY replacement with multiple partial matches;listing copy;
481;listings.at:517;COPY replacement order;listing symbols;
482;listings.at:608;COPY separators;listing symbols;
483;listings.at:667;COPY partial replacement;listing symbols;
484;listings.at:869;COPY LEADING replacement;listing symbols;
485;listings.at:932;COPY TRAILING replacement;listing symbols;
486;listings.at:996;COPY recursive replacement;listing symbols;
487;listings.at:1055;COPY multiple files;listing symbols based external global;
488;listings.at:1269;Error/Warning messages;listing error warning warnings symbols;
489;listings.at:1590;Two source files;listing;
490;listings.at:1651;Multiple programs in one file;listing symbols;
491;listings.at:1860;Multiple programs in one compilation group;listing;
492;listings.at:2038;command line;listing;
493;listings.at:2102;Wide listing;listing;
494;listings.at:2178;Symbols: simple;listing symbols comp;
495;listings.at:2320;Symbols: pointer;listing symbols 64bit;
496;listings.at:2598;Symbols: multiple programs/functions;listing symbols program function;
497;listings.at:2718;Symbols: OCCURS and REDEFINES;listing symbols unbounded;
498;listings.at:2808;Conditional compilation;listing cdf;
499;listings.at:2907;File descriptions;listing;
500;listings.at:3245;Invalid PICTURE strings;listing;
501;listings.at:3689;Variable format;listing overflow;
502;listings.at:3726;MFCOMMENT;listing;
503;listings.at:3788;LISTING directive;cdf;
504;listings.at:3884;LISTING directive free-form reference-format;cdf;
505;listings.at:3980;Listing-directive statements;listing directive eject skip1 skip2 skip3 title;
506;listings.at:4042;Eject page;listing directive;
507;listings.at:4220;Cross reference;listing xref;
508;listings.at:5716;Report Writer;listing;
509;listings.at:6018;huge REPLACE;listing;
510;listings.at:6928;Long concatenated literal;listing overflow;
511;run_fundamental.at:25;DISPLAY literals;fundamental;
512;run_fundamental.at:72;DISPLAY literals, DECIMAL-POINT is COMMA;fundamental;
513;run_fundamental.at:105;Hexadecimal literal;fundamental;
514;run_fundamental.at:146;DISPLAY data items with VALUE clause;fundamental;
515;run_fundamental.at:193;DISPLAY data items with MOVE statement;fundamental;
516;run_fundamental.at:247;MOVE to edited item (1);fundamental editing;
517;run_fundamental.at:296;MOVE to edited item (2);fundamental editing;
518;run_fundamental.at:345;MOVE to edited item (3);fundamental editing;
519;run_fundamental.at:450;MOVE to item with simple and floating insertion;fundamental edited editing;
520;run_fundamental.at:485;MOVE to JUSTIFIED item;fundamental;
521;run_fundamental.at:530;MOVE integer literal to alphanumeric;fundamental typing;
522;run_fundamental.at:567;Compare FLOAT-LONG with floating-point literal;fundamental literal exponent;
523;run_fundamental.at:620;equality of FLOAT-SHORT / FLOAT-LONG;fundamental;
524;run_fundamental.at:743;equality of FLOAT-SHORT / FLOAT-EXTENDED;fundamental;
525;run_fundamental.at:874;Overlapping MOVE (GnuCOBOL);fundamental;
526;run_fundamental.at:958;Overlapping MOVE (IBM);fundamental;
527;run_fundamental.at:1039;ALPHABETIC test;fundamental;
528;run_fundamental.at:1071;ALPHABETIC-UPPER test;fundamental;
529;run_fundamental.at:1103;ALPHABETIC-LOWER test;fundamental;
530;run_fundamental.at:1135;GLOBAL at same level;fundamental;
531;run_fundamental.at:1184;GLOBAL at lower level;fundamental;
532;run_fundamental.at:1233;GLOBAL CONSTANT;fundamental;
533;run_fundamental.at:1317;GLOBAL identifiers from ENVIRONMENT DIVISION;fundamental function currency sign returning;
534;run_fundamental.at:1398;GLOBAL REDEFINES;fundamental;
535;run_fundamental.at:1417;function with variable-length RETURNING item;fundamental udf;
536;run_fundamental.at:1500;Entry point visibility (1);fundamental call;
537;run_fundamental.at:1532;Entry point visibility (2);fundamental call;
538;run_fundamental.at:1570;Contained program visibility (1);fundamental call;
539;run_fundamental.at:1625;Contained program visibility (2);fundamental call;
540;run_fundamental.at:1678;Contained program visibility (3);fundamental call;
541;run_fundamental.at:1729;Contained program visibility (4);fundamental call;
542;run_fundamental.at:1784;CALL alphanumeric data-name;fundamental cancel;
543;run_fundamental.at:1872;CALL program-pointer;fundamental cancel set address pointer;
544;run_fundamental.at:1968;CALL/CANCEL/SET ADDRESS program-prototype-name;fundamental call cancel set;
545;run_fundamental.at:2072;GLOBAL FD (1);fundamental;
546;run_fundamental.at:2123;GLOBAL FD (2);fundamental;
547;run_fundamental.at:2175;GLOBAL FD (3);fundamental;
548;run_fundamental.at:2225;GLOBAL FD (4);fundamental;
549;run_fundamental.at:2277;CANCEL test (1);fundamental call;
550;run_fundamental.at:2304;CANCEL test (2);fundamental call;
551;run_fundamental.at:2341;CANCEL test (3);fundamental call;
552;run_fundamental.at:2379;Separate sign positions (1);fundamental;
553;run_fundamental.at:2403;Separate sign positions (2);fundamental;
554;run_fundamental.at:2436;Context sensitive words (1);fundamental byte-length;
555;run_fundamental.at:2459;Context sensitive words (2);fundamental yyyymmdd;
556;run_fundamental.at:2483;Context sensitive words (3);fundamental yyyyddd;
557;run_fundamental.at:2507;Context sensitive words (4);fundamental intrinsic;
558;run_fundamental.at:2532;Context sensitive words (5);fundamental recursive;
559;run_fundamental.at:2555;Context sensitive words (6);fundamental normal;
560;run_fundamental.at:2577;Context sensitive words (7);fundamental compute away-from-zero;
561;run_fundamental.at:2604;Context sensitive words (8);fundamental ibm unbounded attributes;
562;run_fundamental.at:2631;ROUNDED AWAY-FROM-ZERO;fundamental compute;
563;run_fundamental.at:2694;ROUNDED NEAREST-AWAY-FROM-ZERO;fundamental compute;
564;run_fundamental.at:2757;ROUNDED NEAREST-EVEN;fundamental compute;
565;run_fundamental.at:2820;ROUNDED NEAREST-TOWARD-ZERO;fundamental compute;
566;run_fundamental.at:2883;ROUNDED TOWARD-GREATER;fundamental compute;
567;run_fundamental.at:2946;ROUNDED TOWARD-LESSER;fundamental compute;
568;run_fundamental.at:3009;ROUNDED TRUNCATION;fundamental compute;
569;run_fundamental.at:3072;Numeric operations (1);fundamental add subtract;
570;run_fundamental.at:3108;Numeric operations (2) DISPLAY;fundamental add subtract;
571;run_fundamental.at:3344;Numeric operations (3) PACKED-DECIMAL;fundamental add subtract comp-3;
572;run_fundamental.at:3648;Numeric operations (4) BINARY;fundamental add subtract comp;
573;run_fundamental.at:3883;Numeric operations (5) COMP-5;fundamental add subtract;
574;run_fundamental.at:4118;Numeric operations (6);fundamental add;
575;run_fundamental.at:4178;Numeric operations (7);fundamental add compute literal;
576;run_fundamental.at:4468;Numeric operations (8);fundamental compute literal;
577;run_fundamental.at:4518;ADD CORRESPONDING;fundamental corresponding;
578;run_fundamental.at:4566;ADD CORRESPONDING no match;fundamental corresponding;
579;run_fundamental.at:4616;SYNC in OCCURS;fundamental synchronize;
580;run_fundamental.at:4656;88 level with THRU;runmisc;
581;run_fundamental.at:4751;88 level with FILLER;runmisc;
582;run_fundamental.at:4780;88 level with FALSE IS clause;runmisc;
583;run_fundamental.at:4808;BLANK WHEN ZERO;fundamental;
584;run_fundamental.at:4838;MULTIPLY BY literal in INITIAL program;decimal constants fundamental;
585;run_fundamental.at:4867;DIVIDE complex;decimal constants fundamental;
586;run_fundamental.at:4988;COMPUTE with decimal constants;fundamental;
587;run_fundamental.at:5024;debugging lines (not active);fundamental;
588;run_fundamental.at:5047;debugging lines (-fdebugging-line);fundamental;
589;run_fundamental.at:5070;debugging lines (WITH DEBUGGING MODE);fundamental extensions;
590;run_fundamental.at:5096;debugging lines, free format (not active);fundamental extensions;
591;run_fundamental.at:5119;debugging lines, free format (-fdebugging-line);fundamental extensions;
592;run_fundamental.at:5142;USE FOR DEBUGGING (no DEBUGGING MODE);fundamental configuration;
593;run_fundamental.at:5187;USE FOR DEBUGGING (COB_SET_DEBUG deactivated);fundamental configuration;
594;run_fundamental.at:5232;USE FOR DEBUGGING ON ALL PROCEDURES;fundamental debug-item;
595;run_fundamental.at:5283;USE FOR DEBUGGING ON procedure;fundamental;
596;run_fundamental.at:5331;USE FOR DEBUGGING (COB_SET_DEBUG switched);fundamental configuration set environment;
597;run_fundamental.at:5380;USE FOR DEBUGGING ON [ALL] REFERENCES OF field;fundamental;
598;run_fundamental.at:5460;USE FOR DEBUGGING, reference within DEBUGGING;fundamental;
599;run_fundamental.at:5501;USE FOR DEBUGGING, time of execution;fundamental debugging;
600;run_fundamental.at:5551;USE FOR DEBUGGING, reference with OCCURS;fundamental debugging;
601;run_fundamental.at:5584;USE FOR DEBUGGING, referencing BASED item;fundamental debugging free allocate;
602;run_fundamental.at:5639;USE FOR DEBUGGING file;fundamental open write read close;
603;run_fundamental.at:5682;Simple Expressions with figurative constants;expression conditional;
604;run_fundamental.at:6025;Expression numeric vs. DISPLAY;expression conditional;
605;run_fundamental.at:6080;Abbreviated Expressions;expression conditional;
606;run_fundamental.at:6192;integer arithmetic on floating-point var;fundamental literal;
607;run_fundamental.at:6234;TYPEDEF application;fundamental external;
608;run_fundamental.at:6286;Alphanumeric VALUE longer than PIC;fundamental size;
609;run_fundamental.at:6318;DISPLAY with P fields;fundamental runmisc pretty-display pretty-printing pretty packed-decimal;
610;run_fundamental.at:6404;condition IS ZERO AND;fundamental if;
611;run_fundamental.at:6455;abbreviated conditions with multiple words operators;fundamental if;
612;run_fundamental.at:6493;abbreviated conditions with multiple words operators;fundamental if;
613;run_fundamental.at:6521;MOVE with JUSTIFIED clause;fundamental right;
614;run_fundamental.at:6566;MOVE with PICTURE P;fundamental;
615;run_fundamental.at:6770;MOVE with de-editting to USAGE DISPLAY;fundamental;
616;run_fundamental.at:6822;MOVE with de-editting to DECIMAL IS COMMA;fundamental;
617;run_fundamental.at:6880;MOVE with de-editting to BINARY;fundamental;
618;run_fundamental.at:6931;MOVE with de-editting to COMP-3;fundamental packed-decimal;
619;run_fundamental.at:6983;MOVE with de-editting to COMP-5;fundamental;
620;run_fundamental.at:7035;MOVE with de-editting to NUMERIC DISPLAY (2);fundamental;
621;run_fundamental.at:7164;MOVE misc. edited;fundamental;
622;run_fundamental.at:7238;MOVE between USAGEs;fundamental comp-1 comp-2 comp-3 comp-4 comp-5 comp-6 display binary packed-decimal binary-c-long binary-char binary-double binary-int binary-long signed unsigned binary-long-long binary-short float-decimal-16 float-decimal-34 float-short signed-int signed-long signed-short unsigned-int unsigned-long unsigned-short;
623;run_fundamental.at:9021;MOVE to editted ZERO;fundamental;
624;run_fundamental.at:9066;SPECIAL-NAMES CLASS;fundamental;
625;run_subscripts.at:26;Subscript out of bounds;runsubscripts subscripts;
626;run_subscripts.at:71;Value of DEPENDING ON N out of bounds;runsubscripts subscripts;
627;run_subscripts.at:122;Subscript bounds with OCCURS DEPENDING ON (1);runsubscripts subscripts odo;
628;run_subscripts.at:148;Subscript bounds with OCCURS DEPENDING ON (2);runsubscripts subscripts odo if;
629;run_subscripts.at:176;Subscript bounds with OCCURS DEPENDING ON (3);runsubscripts subscripts odo evaluate when;
630;run_subscripts.at:211;Subscript by arithmetic expression;runsubscripts subscripts;
631;run_subscripts.at:242;length of ODO w/- reference-modification;runsubscripts subscripts;
632;run_subscripts.at:298;SEARCH ALL with OCCURS DEPENDING ON;runsubscripts subscripts odo;
633;run_subscripts.at:351;enable / disable subscript check;runsubscripts subscripts debug exception-name turn bound nobound;
634;run_subscripts.at:396;enable / disable subscript check with ODO;runsubscripts subscripts odo debug;
635;run_subscripts.at:437;BOUND and NOBOUND directives;runsubscripts subscripts extensions directive;
636;run_subscripts.at:506;SSRANGE and NOSSRANGE directives;runsubscripts subscripts extensions directive;
637;run_subscripts.at:542;CALL with OCCURS DEPENDING ON;runsubscripts subscripts odo;
638;run_refmod.at:25;Static reference-modification;refmod;
639;run_refmod.at:57;Dynamic reference-modification;refmod;
640;run_refmod.at:94;Offset underflow;refmod;
641;run_refmod.at:118;Offset overflow;refmod;
642;run_refmod.at:145;Length underflow;refmod;
643;run_refmod.at:189;Length overflow;refmod;
644;run_refmod.at:231;Length overflow with offset (1);refmod;
645;run_refmod.at:254;Length overflow with offset (2);refmod if;
646;run_refmod.at:280;Length overflow with offset (3);refmod evaluate when;
647;run_refmod.at:313;enable / disable ref-mod check;refmod debug exception-name;
648;run_refmod.at:388;MF SSRANGE and NOSSRANGE directives;refmod extensions directive;
649;run_accept.at:29;ACCEPT OMITTED (simple);extensions;
650;run_accept.at:51;ACCEPT FROM TIME / DATE / DAY / DAY-OF-WEEK (1);inspect converting configuration cob_current_date;
651;run_accept.at:141;ACCEPT FROM TIME / DATE / DAY / DAY-OF-WEEK (2);configuration cob_current_date microsecond microsecond-time extensions acu;
652;run_accept.at:283;ACCEPT DATE / DAY and intrinsic functions (1);function integer-of-date day-of-integer;
653;run_accept.at:320;ACCEPT DATE / DAY and intrinsic functions (2);configuration function integer-of-date day-of-integer cob_current_date;
654;run_accept.at:367;ACCEPT OMITTED (SCREEN);extensions;
655;run_initialize.at:29;INITIALIZE group entry with OCCURS;initialize;
656;run_initialize.at:57;INITIALIZE OCCURS with numeric edited;initialize editing;
657;run_initialize.at:90;INITIALIZE OCCURS with SIGN LEADING / TRAILING;initialize display;
658;run_initialize.at:161;INITIALIZE complex group (1);initialize;
659;run_initialize.at:189;INITIALIZE complex group (2);initialize;
660;run_initialize.at:217;initial value for group item with VALUE;initialize;
661;run_initialize.at:249;Value for group item with VALUE;initialize;
662;run_initialize.at:298;INITIALIZE group item;initialize;
663;run_initialize.at:415;INITIALIZE with REDEFINES;initialize;
664;run_initialize.at:442;INITIALIZE with FILLER;initialize;
665;run_initialize.at:509;INITIALIZE of EXTERNAL data items;initialize;
666;run_initialize.at:560;INITIALIZE with reference-modification;initialize;
667;run_initialize.at:596;INITIALIZE big table with VALUE;value occurs nested;
668;run_initialize.at:655;INITIALIZE to table-format VALUES ARE;value occurs extension nested;
669;run_misc.at:23;Comma separator without space;runmisc;
670;run_misc.at:44;DECIMAL-POINT is COMMA (1);misc extensions;
671;run_misc.at:72;DECIMAL-POINT is COMMA (2);misc extensions;
672;run_misc.at:100;DECIMAL-POINT is COMMA (3);misc extensions;
673;run_misc.at:128;DECIMAL-POINT is COMMA (4);misc extensions;
674;run_misc.at:156;DECIMAL-POINT is COMMA (5);misc extensions;
675;run_misc.at:190;CURRENCY SIGN;misc fundamental;
676;run_misc.at:221;CURRENCY SIGN WITH PICTURE SYMBOL;misc fundamental;
677;run_misc.at:268;LOCAL-STORAGE (1);runmisc;
678;run_misc.at:304;LOCAL-STORAGE (2);runmisc;
679;run_misc.at:348;LOCAL-STORAGE (3);runmisc occurs index indexed;
680;run_misc.at:432;EXTERNAL data item;runmisc;
681;run_misc.at:470;EXTERNAL AS data item;runmisc;
682;run_misc.at:513;EXTERNAL data item size mismatch;runmisc;
683;run_misc.at:594;MOVE to itself;runmisc;
684;run_misc.at:618;MOVE with refmod;runmisc;
685;run_misc.at:640;MOVE with refmod (variable);runmisc;
686;run_misc.at:664;MOVE with group refmod;runmisc;
687;run_misc.at:687;MOVE indexes;runmisc;
688;run_misc.at:711;MOVE X'00';runmisc;
689;run_misc.at:746;MOVE Z'literal';runmisc literal;
690;run_misc.at:788;Floating continuation indicator;runmisc;
691;run_misc.at:810;Fixed continuation indicator;;
692;run_misc.at:852;Concatenation operator;runmisc;
693;run_misc.at:876;SOURCE FIXED/FREE directives;runmisc sourceformat fixed free;
694;run_misc.at:912;TURN directive;runmisc bound nobound directives;
695;run_misc.at:953;OCCURS on level 01;runmisc toplevel value set address bound depending odo;
696;run_misc.at:1038;Class check with reference-modification;runmisc;
697;run_misc.at:1060;Index and parenthesized expression;runmisc;
698;run_misc.at:1082;Alphanumeric and binary numeric;runmisc;
699;run_misc.at:1106;Non-numeric data in numeric items;runmisc;
700;run_misc.at:1172;Dynamic call with static linking;runmisc;
701;run_misc.at:1201;Static call with static linking;runmisc;
702;run_misc.at:1232;Dynamic CALL with ON EXCEPTION;runmisc;
703;run_misc.at:1264;Static CALL with ON EXCEPTION;runmisc;
704;run_misc.at:1304;CALL m1. CALL m2. CALL m1.;runmisc;
705;run_misc.at:1355;Recursive CALL of RECURSIVE program;runmisc cancel external;
706;run_misc.at:1413;Recursive CALL of INITIAL program;runmisc;
707;run_misc.at:1464;Recursive CALL with RECURSIVE assumed;runmisc;
708;run_misc.at:1510;Recursive CALL with ON EXCEPTION;runmisc exception-status;
709;run_misc.at:1567;Multiple calls of INITIAL program;runmisc call;
710;run_misc.at:1624;CALL binary literal parameter/LENGTH OF;runmisc;
711;run_misc.at:1678;INSPECT REPLACING LEADING ZEROS BY SPACES;runmisc;
712;run_misc.at:1700;INSPECT: no repeat conversion;runmisc inspect;
713;run_misc.at:1726;TRANSFORM statement;runmisc converting alphabet;
714;run_misc.at:1759;INSPECT CONVERTING alphabet;runmisc ascii ebcdic;
715;run_misc.at:1808;INSPECT CONVERTING TO figurative constant;runmisc;
716;run_misc.at:1830;INSPECT CONVERTING NULL;runmisc;
717;run_misc.at:1852;INSPECT CONVERTING TO NULL;runmisc;
718;run_misc.at:1874;INSPECT CONVERTING complex;runmisc;
719;run_misc.at:1903;INSPECT numeric signed;runmisc;
720;run_misc.at:2044;INSPECT TALLYING BEFORE;runmisc;
721;run_misc.at:2077;INSPECT TALLYING AFTER;runmisc;
722;run_misc.at:2110;INSPECT TALLYING BEFORE and AFTER;runmisc;
723;run_misc.at:2146;INSPECT TALLYING REPLACING BEFORE and AFTER;runmisc;
724;run_misc.at:2183;INSPECT REPLACING figurative constant;runmisc;
725;run_misc.at:2207;SWITCHES (environment COB_SWITCH_n and SET);runmisc;
726;run_misc.at:2288;Nested PERFORM;runmisc;
727;run_misc.at:2311;PERFORM VARYING BY -0.2 decimal;runmisc;
728;run_misc.at:2337;PERFORM VARYING Float;perform;
729;run_misc.at:2376;PERFORM VARYING BY phrase omitted;runmisc;
730;run_misc.at:2407;EXIT PERFORM;runmisc;
731;run_misc.at:2430;EXIT PERFORM CYCLE;runmisc;
732;run_misc.at:2453;EXIT PARAGRAPH;runmisc;
733;run_misc.at:2487;EXIT SECTION;runmisc;
734;run_misc.at:2528;implicit GOBACK at end of PROCEDURE DIVISION;runmisc;
735;run_misc.at:2551;PERFORM FOREVER / PERFORM UNTIL EXIT;runmisc extension;
736;run_misc.at:2592;PERFORM inline (1);runmisc;
737;run_misc.at:2618;PERFORM inline (2);runmisc;
738;run_misc.at:2642;Non-overflow after overflow;runmisc;
739;run_misc.at:2669;PERFORM ... CONTINUE;runmisc;
740;run_misc.at:2686;STRING with subscript reference;runmisc;
741;run_misc.at:2712;STRING WITH POINTER ON OVERFLOW with DELIMITER;runmisc exceptions;
742;run_misc.at:2796;STRING / UNSTRING [NOT] ON OVERFLOW;runmisc exceptions;
743;run_misc.at:2913;UNSTRING DELIMITED ALL LOW-VALUE;runmisc;
744;run_misc.at:2944;UNSTRING DELIMITED ALL SPACE-2;runmisc;
745;run_misc.at:2997;UNSTRING DELIMITED POINTER;runmisc;
746;run_misc.at:3045;UNSTRING DELIMITER IN;runmisc;
747;run_misc.at:3087;UNSTRING combined;runmisc;
748;run_misc.at:3201;UNSTRING with FUNCTION / literal;runmisc;
749;run_misc.at:3271;SORT: table;runmisc sort;
750;run_misc.at:3305;SORT: table (2);runmisc sort;
751;run_misc.at:3430;SORT: table (3);runmisc sort;
752;run_misc.at:3522;SORT: table (toplevel);runmisc sort;
753;run_misc.at:3544;SORT: EBCDIC table;runmisc sort alphabet object-computer;
754;run_misc.at:3609;Alphanum comparison with default COLLATING SEQUENCE;runmisc ebcdic ascii default-colseq;
755;run_misc.at:3637;SORT: table with default COLLATING SEQUENCE;runmisc sort ebcdic ascii default-colseq;
756;run_misc.at:3673;JUSTIFIED and VALUE clauses;runmisc just right initialize ibm;
757;run_misc.at:3927;SEARCH ALL: table with default COLLATING SEQUENCE;runmisc ebcdic ascii default-colseq;
758;run_misc.at:3967;PIC ZZZ-, ZZZ+;runmisc editing;
759;run_misc.at:4008;PERFORM type OSVS;runmisc;
760;run_misc.at:4043;Sticky LINKAGE;runmisc call;
761;run_misc.at:4085;COB_PRE_LOAD;runmisc;
762;run_misc.at:4111;COB_PRE_LOAD with entry points;runmisc;
763;run_misc.at:4182;Lookup ENTRY from main executable;runmisc;
764;run_misc.at:4223;COB_LOAD_CASE=UPPER;runmisc call cob_load_case;
765;run_misc.at:4249;ALLOCATE / FREE with BASED item (1);runmisc;
766;run_misc.at:4275;ALLOCATE / FREE with BASED item (2);runmisc;
767;run_misc.at:4319;ALLOCATE CHARACTERS INITIALIZED (TO);runmisc;
768;run_misc.at:4366;Initialized value with defaultbyte;runmisc;
769;run_misc.at:4390;CALL with OMITTED parameter;runmisc;
770;run_misc.at:4426;direct CALL in from C w/wo error;runmisc cobcall cob_call cob_init cob_runtime_hint;
771;run_misc.at:4507;direct CALL in from C w/wo error; no exit;runmisc cobcall cob_call cob_call_with_exception_check cob_runtime_hint;
772;run_misc.at:4641;CALL in from C, cob_call_params explicitly set;runmisc;
773;run_misc.at:4700;CALL in from C, cob_call_params unknown;runmisc;
774;run_misc.at:4753;CALL C with callback, PROCEDURE DIVISION EXTERN;runmisc extensions call-convention;
775;run_misc.at:4823;CALL C with callback, ENTRY-CONVENTION EXTERN;runmisc call-convention linkage options;
776;run_misc.at:4974;CALL in from C with init missing / implicit;runmisc implicit-init;
777;run_misc.at:5022;CALL STATIC C from COBOL;runmisc;
778;run_misc.at:5078;ANY LENGTH (1);runmisc call;
779;run_misc.at:5117;ANY LENGTH (2);runmisc call;
780;run_misc.at:5157;ANY LENGTH (3);runmisc call;
781;run_misc.at:5200;ANY LENGTH (4);runmisc if call;
782;run_misc.at:5243;ANY LENGTH (5);runmisc call;
783;run_misc.at:5268;access to BASED item without allocation;runmisc;
784;run_misc.at:5307;access to OPTIONAL LINKAGE item not passed;runmisc call;
785;run_misc.at:5345;STOP RUN WITH NORMAL STATUS;runmisc;
786;run_misc.at:5363;STOP RUN WITH ERROR STATUS;runmisc;
787;run_misc.at:5381;STOP ERROR;runmisc;
788;run_misc.at:5406;SYMBOLIC clause;runmisc alphabet;
789;run_misc.at:5439;OCCURS clause with 1 entry;runmisc;
790;run_misc.at:5480;Computing of different USAGEs w/o decimal point;runmisc binary-c-long binary-char binary-double binary-long comp comp-1 comp-2 comp-3 packed-decimal comp-5 comp-6 comp-x comp-n float-decimal-16 float-decimal-34 float-long float-short;
791;run_misc.at:6005;Computing of different USAGEs w/- decimal point;runmisc binary-c-long binary-char binary-double binary-long comp comp-1 comp-2 comp-3 packed-decimal comp-5 comp-6 comp-n comp-x float-decimal-16 float-decimal-34 float-long float-short;
792;run_misc.at:6494;compilation-group with decimal;runmisc function numval;
793;run_misc.at:6534;C/C++ reserved words/predefined identifiers;runmisc;
794;run_misc.at:6990;PICTURE with Edit mask;numeric;
795;run_misc.at:7063;POINTER;numeric;
796;run_misc.at:7099;CALL RETURNING POINTER;run_extensions;
797;run_misc.at:7169;ON EXCEPTION clause of DISPLAY;runmisc exceptions screen;
798;run_misc.at:7194;EC-SCREEN-LINE-NUMBER and -STARTING-COLUMN;runmisc exceptions screen;
799;run_misc.at:7235;LINE/COLUMN 0 exceptions;line column runmisc exceptions extensions screen;
800;run_misc.at:7273;SET LAST EXCEPTION TO OFF;runmisc exceptions exception-status exception-location;
801;run_misc.at:7309;void PROCEDURE;runmisc;
802;run_misc.at:7338;Figurative constants to numeric field;numeric;
803;run_misc.at:7400;MF FIGURATIVE to NUMERIC;move;
804;run_misc.at:7535;CALL RETURNING;runmisc giving return-code;
805;run_misc.at:7574;void PROCEDURE, NOTHING return;runmisc procedure using returning omitted call giving;
806;run_misc.at:7609;READY TRACE / RESET TRACE;runmisc -ftrace -ftraceall -fsource-location call recursive return-code search cob_physical_cancel cob_pre_load;
807;run_misc.at:8074;Trace feature with subroutine;;
808;run_misc.at:10199;stack and dump feature;stacktrace configuration cob_stacktrace cob_dump_file call;
809;run_misc.at:11016;dump feature with NULL address;stack stacktrace;
810;run_misc.at:11291;CALL with program prototypes;runmisc;
811;run_misc.at:11370;REDEFINES values on FILLER and INITIALIZE;runmisc initialize;
812;run_misc.at:11425;PICTURE with constant-name;runmisc;
813;run_misc.at:11453;Quote marks in comment paragraphs;runmisc;
814;run_misc.at:11479;Numeric MOVE with/without -fbinary-truncate;runmisc size binary-truncate;
815;run_misc.at:11549;Alphanumeric MOVE with truncation;misc fundamental size;
816;run_misc.at:11600;PROGRAM-ID / CALL literal/variable with spaces;runmisc;
817;run_misc.at:11668;PROGRAM-ID / CALL with hyphen and underscore;runmisc;
818;run_misc.at:11705;CALL with directory;runmisc;
819;run_misc.at:11763;C-API (param based);runmisc call api;
820;run_misc.at:11998;C-API (field based);runmisc call api;
821;run_misc.at:12226;OPTIONS paragraph, DEFAULT ROUNDED MODE;runmisc;
822;run_misc.at:12256;OCCURS INDEXED ASCENDING;occurs extension;
823;run_misc.at:12357;ZERO unsigned and negative binary subscript;runmisc;
824;run_misc.at:12434;Default Arithmetic (1);runmisc;
825;run_misc.at:12538;Default Arithmetic Test (2);runmisc;
826;run_misc.at:12589;OSVS Arithmetic (1);runmisc;
827;run_misc.at:12706;OSVS Arithmetic Test (2);runmisc;
828;run_misc.at:12763;SET CONSTANT directive;misc directives extensions;
829;run_misc.at:12866;DEFINE OVERRIDE;cdf directive;
830;run_misc.at:12932;DEFINE Defaults;cdf directive;
831;run_misc.at:12998;78 VALUE;constant misc;
832;run_misc.at:13066;01 CONSTANT;misc;
833;run_misc.at:13146;DISPLAY UPON;chaining printer pipe console syserr syspch syspunch cob_display_print_pipe cob_display_print_file cob_display_punch_file;
834;run_misc.at:13248;FLOAT-DECIMAL w/o SIZE ERROR;numeric runmisc overflow float-decimal-16 float-decimal-34 display compute;
835;run_misc.at:13422;FLOAT-SHORT / FLOAT-LONG w/o SIZE ERROR;numeric runmisc overflow comp-1 comp-2 display compute;
836;run_misc.at:13621;FLOAT-SHORT with SIZE ERROR;comp-1 overflow;
837;run_misc.at:13672;FLOAT-LONG with SIZE ERROR;comp-2 overflow;
838;run_misc.at:13730;EC-SIZE-ZERO-DIVIDE;misc fundamental exceptions divide compute exception-status;
839;run_misc.at:13773;EC-SIZE-OVERFLOW;misc fundamental exceptions;
840;run_misc.at:13804;Constant Expressions;runmisc condition expression;
841;run_misc.at:13893;ENTRY FOR GO TO / GO TO ENTRY;runmisc condition expression;
842;run_misc.at:13983;runtime checks within conditions;runmisc condition expression;
843;run_misc.at:14097;runtime check: write to internal storage (1);runmisc call bounds exceptions;
844;run_misc.at:14197;runtime check: write to internal storage (2);runmisc call bounds exceptions;
845;run_misc.at:14292;libcob version check;runmisc;
846;run_misc.at:14397;assorted math;runmisc expression;
847;run_misc.at:14434;compare numeric DISPLAY SPACE with ZERO;runmisc expression;
848;run_file.at:23;OPEN EXTEND and CLOSE, SEQUENTIAL;runfile empty close optional write read;
849;run_file.at:89;variable-length SEQUENTIAL data integrity;runfile record open;
850;run_file.at:154;DELETE FILE, SEQUENTIAL;runfile file open i-o optional;
851;run_file.at:224;OUTPUT on SEQUENTIAL file to missing directory;runfile open assign;
852;run_file.at:261;OPEN EXTEND and CLOSE, INDEXED;runfile empty close optional write read;
853;run_file.at:333;DELETE FILE, INDEXED;runfile file open i-o optional;
854;run_file.at:406;OUTPUT on INDEXED file to missing directory;runfile open assign;
855;run_file.at:446;READ INTO data item AT-END sequence;runfile;
856;run_file.at:483;First READ on empty SEQUENTIAL INDEXED file;runfile;
857;run_file.at:523;READ NEXT without previous START;runfile write indexed;
858;run_file.at:601;REWRITE a RELATIVE file with RANDOM access;runfile;
859;run_file.at:671;ASSIGN DYNAMIC and EXTERNAL;extensions runfile;
860;run_file.at:719;ASSIGN EXTERNAL parsing;extensions runfile;
861;run_file.at:753;ASSIGN directive;extensions runfile;
862;run_file.at:796;ASSIGN filename expansion;extensions runfile;
863;run_file.at:823;ASSIGN filename mapping;extensions runfile optional;
864;run_file.at:999;ASSIGN with COB_FILE_PATH;extensions runfile;
865;run_file.at:1036;ASSIGN DYNAMIC with LOCAL-STORAGE item;runfile;
866;run_file.at:1073;ASSIGN DYNAMIC with LOCAL-STORAGE item, INITIAL;runfile;
867;run_file.at:1113;ASSIGN DYNAMIC with BASED data item;runfile status;
868;run_file.at:1199;ASSIGN DYNAMIC with data item in LINKAGE;runfile-control file status call;
869;run_file.at:1371;ASSIGN DYNAMIC with empty data item;runfile status;
870;run_file.at:1411;ASSIGN DYNAMIC with unset implicit data item;runfile status;
871;run_file.at:1443;INDEXED file key-name;runfile split key;
872;run_file.at:1485;INDEXED file sparse/split keys;runfile split key sparse suppress;
873;run_file.at:2005;INDEXED file split keys WITH DUPLICATES;runfile key extfh;
874;run_file.at:2171;INDEXED file variable length record;runfile optional suppress write start read;
875;run_file.at:2447;INDEXED sample;runfile optional file status read write duplicates start unlock cob_sync;
876;run_file.at:2948;WRITE + REWRITE FILE name;runfile relative cob_sync;
877;run_file.at:3109;START RELATIVE (1);fundamental runfile delete file;
878;run_file.at:3158;START RELATIVE (2);fundamental runfile;
879;run_file.at:3234;START RELATIVE (3);runfile;
880;run_file.at:3310;READ on OPTIONAL missing RELATIVE / SEQUENTIAL;runfile;
881;run_file.at:3432;READ on OPTIONAL missing INDEXED file;runfile;
882;run_file.at:3482;EXTERNAL RELATIVE file;runfile;
883;run_file.at:3546;DECLARATIVES procedure referencing;runfile;
884;run_file.at:3586;DECLARATIVES procedure referencing (multiple);runfile;
885;run_file.at:3630;System routines for directories (1);extensions runfile cbl_create_dir cbl_change_dir cbl_delete_dir;
886;run_file.at:3672;System routines for directories (2);runfile extensions cbl_create_dir cbl_create_file cbl_close_file cbl_check_file_exist cbl_delete_dir cbl_purge_dir;
887;run_file.at:3769;System routines for files;extensions runfile cbl_create_file cbl_write_file cbl_flush_file cbl_open_file cbl_read_file cbl_close_file cbl_rename_file cbl_delete_file c\$delete;
888;run_file.at:3966;System routines for files - filename mapping;extensions runfile cbl_open_file cbl_close_file;
889;run_file.at:4083;System routine CBL_COPY_FILE;extensions runfile;
890;run_file.at:4118;Default file external name;runfile;
891;run_file.at:4192;SEQUENTIAL basic I/O;runfile read write rewrite cob_sync;
892;run_file.at:4241;LINE SEQUENTIAL basic I/O;runfile read write rewrite;
893;run_file.at:4307;LINE SEQUENTIAL WRITE AFTER;runfile;
894;run_file.at:4353;LINE SEQUENTIAL record truncation (1);runfile extensions read configuration cob_ls_split split;
895;run_file.at:4457;LINE SEQUENTIAL record truncation (2);runfile extensions read write configuration cob_ls_split split;
896;run_file.at:4593;LINE SEQUENTIAL standard record overflow;runfile read write configuration cob_ls_split split;
897;run_file.at:4729;LINAGE and LINAGE-COUNTER sample;runfile optional file status read write end-of-page line sequential configuration cob_current_date date;
898;run_file.at:5016;EXTFH: LINAGE and LINAGE-COUNTER sample;runfile extfh optional file status read write end-of-page line sequential;
899;run_file.at:5306;SEQUENTIAL file I/O with variable records;runfile;
900;run_file.at:5381;LINE SEQUENTIAL file I/O with variable records;runfile;
901;run_file.at:5455;SEQUENTIAL file REWRITE;runfile;
902;run_file.at:5567;SEQUENTIAL file with LOCK MODE EXCLUSIVE;runfile;
903;run_file.at:5637;SEQUENTIAL file with OPEN WITH LOCK;runfile;
904;run_file.at:5705;SEQUENTIAL file with SHARING NO;runfile;
905;run_file.at:5775;SEQUENTIAL file with SHARING READ ONLY;runfile;
906;run_file.at:5850;SEQUENTIAL file with blocked lock;runfile;
907;run_file.at:5923;RELATIVE SEQUENTIAL basic I/O;runfile;
908;run_file.at:5957;RELATIVE RANDOM basic I/O;runfile;
909;run_file.at:6007;RELATIVE SEQUENTIAL with variable records;runfile;
910;run_file.at:6081;INDEXED SEQUENTIAL basic I/O;runfile;
911;run_file.at:6119;INDEXED SEQUENTIAL with variable records;runfile;
912;run_file.at:6201;INDEXED file with LOCK MODE EXCLUSIVE;runfile;
913;run_file.at:6280;INDEXED file with OPEN WITH LOCK;runfile;
914;run_file.at:6358;INDEXED file with SHARING NO;runfile;
915;run_file.at:6437;INDEXED file with SHARING READ ONLY;runfile;
916;run_file.at:6523;INDEXED file with blocked lock;runfile;
917;run_file.at:6605;INDEXED file with LOCK AUTOMATIC (1);runfile;
918;run_file.at:6696;INDEXED file with LOCK AUTOMATIC (2);runfile;
919;run_file.at:6788;INDEXED file with LOCK MANUAL;runfile;
920;run_file.at:6878;START INDEXED;runfile;
921;run_file.at:6957;INDEXED partial keys;runfile;
922;run_file.at:7104;INDEXED undeclared keys;runfile;
923;run_file.at:7275;READ INPUT pipe & WRITE OUTPUT pipe;runfile;
924;run_file.at:7373;EXTFH: using ISAM callback;runfile extfh indexed;
925;run_file.at:8073;EXTFH: Indexed with FH--FCD;runfile extfh fcdreg fh--keydef isam;
926;run_file.at:8686;EXTFH: SEQUENTIAL files;runfile extfh;
927;run_file.at:9096;EXTFH: LINE SEQUENTIAL files, direct EXTFH;runfile;
928;run_file.at:9275;EXTFH: LINE SEQUENTIAL files (2);runfile extfh;
929;run_file.at:9468;EXTFH: FIXED SEQUENTIAL;runfile extfh;
930;run_file.at:9665;EXTFH: operation OP_GETINFO / QUERY-FILE;runfile extfh getinfo query;
931;run_file.at:9847;EXTFH: changing record address;runfile extfh;
932;run_file.at:10168;EXTFH: INDEXED with multiple keys;runfile extfh;
933;run_file.at:10499;EXTFH: RELATIVE files;extfh;
934;run_file.at:10688;EXTFH: reading two files with one FCD;runfile extfh;
935;run_file.at:10869;EXTFH: auto-conversion FCD2 <-> FCD3 on 32bit;runfile extfh;
936;run_file.at:11235;RELATIVE Multi-Record;runfile;
937;run_file.at:11485;INDEXED File READ/DELETE/READ;runfile read delete extfh;
938;run_file.at:12291;TURN EC-I-O;runfile directive;
939;run_file.at:12388;LINE SEQUENTIAL REWRITE;runfile cob_sync read write;
940;run_file.at:12660;LINE SEQUENTIAL data;runfile;
941;run_file.at:12817;Concatenated Files;runfile status;
942;run_file.at:12961;File SORT, SEQUENTIAL;runfile sort using giving;
943;run_file.at:13011;File SORT, SEQUENTIAL variable records;runfile sort using giving;
944;run_file.at:13097;File SORT, LINE SEQUENTIAL;runfile sort using giving;
945;run_file.at:13156;File SORT, LINE SEQUENTIAL same file;runfile sort using giving;
946;run_file.at:13203;File SORT, LINE SEQUENTIAL variable records;runfile sort using giving;
947;run_file.at:13267;EXTFH: File SORT, LINE SEQUENTIAL variable records;runfile sort using giving extfh;
948;run_file.at:13334;File MERGE, LINE SEQUENTIAL variable records;runfile;
949;run_file.at:13425;SORT nonexistent file;runfile;
950;run_file.at:13460;SORT with INPUT/OUTPUT PROCEDUREs;runfile;
951;run_file.at:13550;SORT with key1 ASCENDING, key2 DESCENDING;runfile;
952;run_file.at:13617;Scope of FD GLOBAL in nested programs;file;
953;run_file.at:13774;OPEN / CLOSE with multiple filenames;declaratives file error;
954;run_reportwriter.at:23;Report Line Order;report file mapping;
955;run_reportwriter.at:120;REPORT COL PLUS;report runfile;
956;run_reportwriter.at:189;Report Overlapping Fields;report runfile;
957;run_reportwriter.at:258;EMPTY REPORT;report runfile;
958;run_reportwriter.at:327;PAGE LIMIT REPORT;report runfile;
959;run_reportwriter.at:388;PAGE LIMIT REPORT 2;report runfile;
960;run_reportwriter.at:460;Sample Customer Report;report runfile;
961;run_reportwriter.at:775;Sample Charge Report;report runfile;
962;run_reportwriter.at:1128;Sample Charge Report 2;report runfile;
963;run_reportwriter.at:1498;Sample Charge Report 3;report runfile;
964;run_reportwriter.at:1798;Sample Charge Report 4;report runfile;
965;run_reportwriter.at:2214;Sample Payroll Report;report runfile;
966;run_reportwriter.at:2895;Sample REPORT with RIGHT/CENTER;report runfile;
967;run_reportwriter.at:3063;STUDENT REPORT with INITIAL;report runfile;
968;run_reportwriter.at:3215;ORDER REPORT; Test substring;report runfile;
969;run_reportwriter.at:3563;Sample Control Break;report runfile;
970;run_reportwriter.at:3792;Sample Inventory Report;report runfile;
971;run_reportwriter.at:3985;Duplicate Detail Line;report runfile;
972;run_reportwriter.at:4113;Report with OCCURS;report runfile;
973;run_reportwriter.at:4217;Report CODE and LIMIT COLUMNS;report runfile occurs;
974;run_reportwriter.at:4435;Test Report dump DECLARATIVES;dump;
975;run_reportwriter.at:4580;Duplicate INITIATE;report runfile;
976;run_reportwriter.at:4646;Missing INITIATE and GENERATE;report runfile;
977;run_reportwriter.at:4706;Missing INITIATE and TERMINATE;report runfile;
978;run_reportwriter.at:4760;Next Group Next Page;report runfile;
979;run_reportwriter.at:9083;Report PRESENT AFTER;report runfile;
980;run_reportwriter.at:9345;Varying and Nested OCCURS;report;
981;run_reportwriter.at:9519;BEFORE REPORTING;report;
982;run_returncode.at:23;RETURN-CODE moving;returncode;
983;run_returncode.at:49;RETURN-CODE passing;returncode;
984;run_returncode.at:101;RETURN-CODE nested;returncode;
985;run_functions.at:24;FUNCTION ABS;functions;
986;run_functions.at:46;FUNCTION ACOS;functions packed-decimal comp-3 comp-6;
987;run_functions.at:80;FUNCTION ANNUITY;functions;
988;run_functions.at:102;FUNCTION ASIN;functions packed-decimal comp-3 comp-6;
989;run_functions.at:141;FUNCTION ATAN;functions;
990;run_functions.at:165;FUNCTION BYTE-LENGTH;functions length;
991;run_functions.at:221;FUNCTION CHAR;functions;
992;run_functions.at:259;FUNCTION COMBINED-DATETIME;functions;
993;run_functions.at:284;FUNCTION CONCAT / CONCATENATE;functions;
994;run_functions.at:331;FUNCTION CONCATENATE with reference modding;functions;
995;run_functions.at:359;FUNCTION BIT-OF and BIT-TO-CHAR;functions literal ibm;
996;run_functions.at:416;FUNCTION HEX-OF and HEX-TO-CHAR;functions literal ibm national;
997;run_functions.at:547;FUNCTION CONTENT-LENGTH;functions length;
998;run_functions.at:581;FUNCTION CONTENT-OF;functions pointer literal based allocate free exception-status;
999;run_functions.at:656;FUNCTION as CALL parameter BY CONTENT;functions;
1000;run_functions.at:692;FUNCTION COS;functions;
1001;run_functions.at:716;FUNCTION CURRENCY-SYMBOL;functions;
1002;run_functions.at:739;FUNCTION CURRENT-DATE;functions;
1003;run_functions.at:810;FUNCTION DATE-OF-INTEGER;functions;
1004;run_functions.at:835;FUNCTION DATE-TO-YYYYMMDD;functions;
1005;run_functions.at:860;FUNCTION DAY-OF-INTEGER;functions;
1006;run_functions.at:885;FUNCTION DAY-TO-YYYYDDD;functions;
1007;run_functions.at:910;FUNCTION E;functions;
1008;run_functions.at:934;FUNCTION EXCEPTION-FILE;functions exceptions;
1009;run_functions.at:969;FUNCTION EXCEPTION-LOCATION;functions exceptions;
1010;run_functions.at:1057;FUNCTION EXCEPTION-STATEMENT;functions exceptions;
1011;run_functions.at:1092;FUNCTION EXCEPTION-STATUS;functions exceptions;
1012;run_functions.at:1127;FUNCTION EXP;functions;
1013;run_functions.at:1151;FUNCTION EXP10;functions;
1014;run_functions.at:1176;FUNCTION FACTORIAL;functions;
1015;run_functions.at:1201;FUNCTION FORMATTED-CURRENT-DATE;functions;
1016;run_functions.at:1229;FUNCTION FORMATTED-DATE;functions;
1017;run_functions.at:1292;FUNCTION FORMATTED-DATE with ref modding;functions;
1018;run_functions.at:1317;FUNCTION FORMATTED-DATETIME;functions;
1019;run_functions.at:1374;FUNCTION FORMATTED-DATETIME with ref modding;functions;
1020;run_functions.at:1400;FUNCTION FORMATTED-TIME;functions;
1021;run_functions.at:1487;FUNCTION FORMATTED-TIME DP.COMMA;functions;
1022;run_functions.at:1518;FUNCTION FORMATTED-TIME with ref modding;functions;
1023;run_functions.at:1543;FUNCTION FRACTION-PART;functions;
1024;run_functions.at:1574;FUNCTION HIGHEST-ALGEBRAIC;functions;
1025;run_functions.at:1642;FUNCTION INTEGER;functions;
1026;run_functions.at:1675;FUNCTION INTEGER-OF-DATE;functions;
1027;run_functions.at:1700;FUNCTION INTEGER-OF-DAY;functions;
1028;run_functions.at:1725;FUNCTION INTEGER-OF-FORMATTED-DATE;functions;
1029;run_functions.at:1775;FUNCTION INTEGER-PART;functions;
1030;run_functions.at:1801;FUNCTION LENGTH;functions;
1031;run_functions.at:1883;FUNCTION LOCALE-COMPARE;functions;
1032;run_functions.at:1913;FUNCTION LOCALE-DATE;functions;
1033;run_functions.at:1939;FUNCTION LOCALE-TIME;functions;
1034;run_functions.at:1965;FUNCTION LOCALE-TIME-FROM-SECONDS;functions;
1035;run_functions.at:1991;FUNCTION LOG;functions;
1036;run_functions.at:2015;FUNCTION LOG10;functions;
1037;run_functions.at:2039;FUNCTION LOWER-CASE;functions;
1038;run_functions.at:2067;FUNCTION LOWER-CASE with reference modding;functions;
1039;run_functions.at:2093;FUNCTION LOWEST-ALGEBRAIC;functions;
1040;run_functions.at:2146;FUNCTION MAX;functions;
1041;run_functions.at:2168;FUNCTION MEAN;functions;
1042;run_functions.at:2190;FUNCTION MEDIAN;functions;
1043;run_functions.at:2212;FUNCTION MIDRANGE;functions;
1044;run_functions.at:2234;FUNCTION MIN;functions;
1045;run_functions.at:2256;FUNCTION MOD (valid);functions;
1046;run_functions.at:2286;FUNCTION MOD (invalid);functions exceptions;
1047;run_functions.at:2317;FUNCTION MODULE-CALLER-ID;functions;
1048;run_functions.at:2351;FUNCTION MODULE-DATE;functions;
1049;run_functions.at:2376;FUNCTION MODULE-FORMATTED-DATE;functions;
1050;run_functions.at:2401;FUNCTION MODULE-ID;functions;
1051;run_functions.at:2422;FUNCTION MODULE-PATH;functions;
1052;run_functions.at:2447;FUNCTION MODULE-SOURCE;functions;
1053;run_functions.at:2468;FUNCTION MODULE-TIME;functions;
1054;run_functions.at:2493;FUNCTION MONETARY-DECIMAL-POINT;functions;
1055;run_functions.at:2516;FUNCTION MONETARY-THOUSANDS-SEPARATOR;functions;
1056;run_functions.at:2539;FUNCTION NUMERIC-DECIMAL-POINT;functions;
1057;run_functions.at:2562;FUNCTION NUMERIC-THOUSANDS-SEPARATOR;functions;
1058;run_functions.at:2585;FUNCTION NUMVAL;functions;
1059;run_functions.at:2658;FUNCTION NUMVAL-C;functions numval;
1060;run_functions.at:2719;FUNCTION NUMVAL-C DP.COMMA;functions numval;
1061;run_functions.at:2747;FUNCTION NUMVAL-F;functions numval;
1062;run_functions.at:2782;FUNCTION ORD;functions;
1063;run_functions.at:2803;FUNCTION ORD-MAX;functions;
1064;run_functions.at:2824;FUNCTION ORD-MIN;functions;
1065;run_functions.at:2845;FUNCTION PI;functions;
1066;run_functions.at:2867;FUNCTION PRESENT-VALUE;functions;
1067;run_functions.at:2888;FUNCTION RANDOM;functions;
1068;run_functions.at:2910;FUNCTION RANGE;functions;
1069;run_functions.at:2932;FUNCTION REM (valid);functions;
1070;run_functions.at:2954;FUNCTION REM (invalid);functions exceptions;
1071;run_functions.at:2981;FUNCTION REVERSE;functions;
1072;run_functions.at:3004;FUNCTION REVERSE with reference modding;functions;
1073;run_functions.at:3027;FUNCTION SECONDS-FROM-FORMATTED-TIME;functions;
1074;run_functions.at:3082;FUNCTION SECONDS-PAST-MIDNIGHT;functions;
1075;run_functions.at:3104;FUNCTION SIGN;functions;
1076;run_functions.at:3148;FUNCTION SIN;functions;
1077;run_functions.at:3170;FUNCTION SQRT;functions;
1078;run_functions.at:3192;FUNCTION STANDARD-DEVIATION;functions;
1079;run_functions.at:3214;FUNCTION STORED-CHAR-LENGTH;functions;
1080;run_functions.at:3238;FUNCTION SUBSTITUTE;functions;
1081;run_functions.at:3265;FUNCTION SUBSTITUTE with reference modding;functions;
1082;run_functions.at:3291;FUNCTION SUBSTITUTE-CASE;functions;
1083;run_functions.at:3316;FUNCTION SUBSTITUTE-CASE with reference mod;functions;
1084;run_functions.at:3342;FUNCTION SUM;functions;
1085;run_functions.at:3364;FUNCTION TAN;functions;
1086;run_functions.at:3386;FUNCTION TEST-DATE-YYYYMMDD;functions;
1087;run_functions.at:3408;FUNCTION TEST-DAY-YYYYDDD;functions;
1088;run_functions.at:3430;FUNCTION TEST-FORMATTED-DATETIME with dates;functions;
1089;run_functions.at:3531;FUNCTION TEST-FORMATTED-DATETIME with times;functions;
1090;run_functions.at:3612;FUNCTION TEST-FORMATTED-DATETIME with datetimes;functions;
1091;run_functions.at:3665;FUNCTION TEST-FORMATTED-DATETIME DP.COMMA;functions;
1092;run_functions.at:3706;FUNCTION TEST-NUMVAL;functions;
1093;run_functions.at:3857;FUNCTION TEST-NUMVAL-C;functions numval;
1094;run_functions.at:3957;FUNCTION TEST-NUMVAL-F;functions numval;
1095;run_functions.at:4057;FUNCTION TRIM;functions;
1096;run_functions.at:4083;FUNCTION TRIM with reference modding;functions;
1097;run_functions.at:4109;FUNCTION TRIM zero length;functions;
1098;run_functions.at:4136;FUNCTION UPPER-CASE;functions;
1099;run_functions.at:4161;FUNCTION UPPER-CASE with reference modding;functions;
1100;run_functions.at:4186;FUNCTION VARIANCE;functions compute decimal;
1101;run_functions.at:4216;FUNCTION WHEN-COMPILED;functions;
1102;run_functions.at:4270;FUNCTION YEAR-TO-YYYY;functions;
1103;run_functions.at:4294;Formatted funcs w/ invalid variable format;functions formatted-current-date formatted-date formatted-time formatted-datetime;
1104;run_functions.at:4375;FORMATTED-(DATE)TIME with SYSTEM-OFFSET;functions formatted-time formatted-datetime extensions;
1105;run_functions.at:4413;Intrinsics without FUNCTION keyword (1);functions;
1106;run_functions.at:4434;Intrinsics without FUNCTION keyword (2);functions;
1107;run_functions.at:4457;User-Defined FUNCTION with/without parameter;functions;
1108;run_functions.at:4508;UDF in COMPUTE;functions;
1109;run_functions.at:4551;UDF replacing intrinsic function;functions substitute;
1110;run_functions.at:4594;UDF with recursion;functions local-storage;
1111;run_extensions.at:25;CALL BY CONTENT binary and literal;extensions literals;
1112;run_extensions.at:72;Numeric Boolean literals;extensions;
1113;run_extensions.at:101;ACUCOBOL literals;extensions acu binary octal hexadecimal;
1114;run_extensions.at:127;HP COBOL octal literals;extensions;
1115;run_extensions.at:188;Hexadecimal numeric literals;extensions;
1116;run_extensions.at:217;Semi-parenthesized condition;extensions;
1117;run_extensions.at:237;ADDRESS OF;extensions;
1118;run_extensions.at:287;LENGTH OF;extensions value renames;
1119;run_extensions.at:451;SET TO SIZE OF;extensions acu length;
1120;run_extensions.at:488;WHEN-COMPILED;extensions;
1121;run_extensions.at:517;Complex OCCURS DEPENDING ON (1);extensions;
1122;run_extensions.at:546;Complex OCCURS DEPENDING ON (2);extensions;
1123;run_extensions.at:609;Complex OCCURS DEPENDING ON (3);extensions;
1124;run_extensions.at:673;Complex OCCURS DEPENDING ON (4);extensions;
1125;run_extensions.at:739;Complex OCCURS DEPENDING ON (5);extensions;
1126;run_extensions.at:805;Complex OCCURS DEPENDING ON (6);extensions runsubscripts nested subscripts odo odoslide;
1127;run_extensions.at:846;OCCURS UNBOUNDED (1);extensions runsubscripts subscripts;
1128;run_extensions.at:908;OCCURS UNBOUNDED (2);extensions runsubscripts depending odo subscripts;
1129;run_extensions.at:1048;INITIALIZE OCCURS UNBOUNDED;extensions runsubscripts subscripts refmod exceptions ibm;
1130;run_extensions.at:1151;INITIALIZE OCCURS ODOSLIDE;extensions runsubscripts subscripts ibm;
1131;run_extensions.at:1248;DEPENDING ON with ODOSLIDE;nested odo;
1132;run_extensions.at:1463;DEPENDING ON with ODOSLIDE for IBM;occurs odo;
1133;run_extensions.at:1568;INITIALIZE level 01 OCCURS;extensions;
1134;run_extensions.at:1625;MOVE of non-integer to alphanumeric;extensions;
1135;run_extensions.at:1715;CALL USING file-name;extensions;
1136;run_extensions.at:1761;CALL unusual PROGRAM-ID.;extensions;
1137;run_extensions.at:1826;CALL / GOBACK with LOCAL-STORAGE;extensions;
1138;run_extensions.at:1877;CALL BY VALUE alphanumeric item;extensions;
1139;run_extensions.at:1914;CALL BY VALUE numeric literal with SIZE IS;extensions;
1140;run_extensions.at:2019;CALL BY VALUE to C;extensions size chaining;
1141;run_extensions.at:2101;Case-sensitive PROGRAM-ID;extensions;
1142;run_extensions.at:2126;Quoted PROGRAM-ID;extensions;
1143;run_extensions.at:2149;PROGRAM-ID AS clause;extensions;
1144;run_extensions.at:2172;NUMBER-OF-CALL-PARAMETERS;extensions;
1145;run_extensions.at:2253;TALLY register;extensions;
1146;run_extensions.at:2285;Redefining TALLY;extensions register;
1147;run_extensions.at:2321;PROCEDURE DIVISION USING BY ...;extensions;
1148;run_extensions.at:2374;PROCEDURE DIVISION CHAINING;extensions call initialize;
1149;run_extensions.at:2497;STOP RUN RETURNING/GIVING;extensions;
1150;run_extensions.at:2553;GOBACK/EXIT PROGRAM RETURNING/GIVING;extensions;
1151;run_extensions.at:2603;ENTRY;extensions exceptions ibm;
1152;run_extensions.at:2654;ASSIGN to KEYBOARD/DISPLAY;extensions;
1153;run_extensions.at:2712;SORT ASSIGN KEYBOARD to ASSIGN DISPLAY;extensions;
1154;run_extensions.at:2774;Environment/Argument variable;extensions;
1155;run_extensions.at:2820;78 Level (1);extensions;
1156;run_extensions.at:2843;78 Level (2);extensions;
1157;run_extensions.at:2869;78 Level (3);extensions;
1158;run_extensions.at:2893;SWITCHES with non-standard names;runmisc extensions;
1159;run_extensions.at:3006;Larger REDEFINES lengths;extensions;
1160;run_extensions.at:3071;REDEFINES: non-referenced ambiguous item;extensions redefines mf;
1161;run_extensions.at:3097;Obsolete 2002 keywords with COBOL2014;extensions;
1162;run_extensions.at:3127;System routine with wrong number of parameters;extensions narg;
1163;run_extensions.at:3170;System routine C\$NARG;extensions narg;
1164;run_extensions.at:3247;System routine C\$PARAMSIZE;extensions;
1165;run_extensions.at:3289;System routine C\$CALLEDBY;extensions;
1166;run_extensions.at:3335;System routine C\$JUSTIFY;extensions;
1167;run_extensions.at:3360;System routine C\$PRINTABLE;extensions;
1168;run_extensions.at:3389;System routine C\$MAKEDIR;extensions;
1169;run_extensions.at:3410;System routine C\$GETPID;extensions;
1170;run_extensions.at:3435;System routine C\$TOUPPER;extensions;
1171;run_extensions.at:3460;System routine C\$TOLOWER;extensions;
1172;run_extensions.at:3485;System routine CBL_OR;extensions;
1173;run_extensions.at:3512;System routine CBL_NOR;extensions;
1174;run_extensions.at:3539;System routine CBL_AND;extensions;
1175;run_extensions.at:3566;System routine CBL_XOR;extensions;
1176;run_extensions.at:3593;System routine CBL_IMP;extensions;
1177;run_extensions.at:3620;System routine CBL_NIMP;extensions;
1178;run_extensions.at:3647;System routine CBL_NOT;extensions;
1179;run_extensions.at:3673;System routine CBL_EQ;extensions;
1180;run_extensions.at:3700;System routine CBL_GC_GETOPT;extensions;
1181;run_extensions.at:4137;System routine CBL_GC_FORK;extensions c\$getpid;
1182;run_extensions.at:4205;System routine CBL_GC_WAITPID;extensions cbl_gc_fork;
1183;run_extensions.at:4257;System routine CBL_GC_HOSTED;extensions errno external based pointer;
1184;run_extensions.at:4387;System routine SYSTEM, parameter handling;chaining trim;
1185;run_extensions.at:4498;System routine CBL_EXIT_PROC;extensions;
1186;run_extensions.at:4608;System routine CBL_ERROR_PROC (1);extensions exceptions error exception-location exception-statement exception-file exception-status;
1187;run_extensions.at:4707;System routine CBL_ERROR_PROC (2);extensions exceptions error local-storage recursive exception-location exception-statement exception-file exception-status;
1188;run_extensions.at:4788;System routine x'91' function NN;extensions;
1189;run_extensions.at:4804;CALL own PROGRAM-ID and RECURSIVE attribute;extensions exceptions;
1190;run_extensions.at:4869;DISPLAY DIRECTIVE and \$DISPLAY;extensions;
1191;run_extensions.at:4902;Conditional / define directives (1);extensions directive;
1192;run_extensions.at:4927;Conditional / define directives (2);extensions directive;
1193;run_extensions.at:4952;Conditional / define directives (3);extensions directive;
1194;run_extensions.at:4980;Conditional / define directives (4);extensions directive;
1195;run_extensions.at:5006;Invalid source format;extensions runmisc;
1196;run_extensions.at:5035;Variable format;extensions runmisc;
1197;run_extensions.at:5074;COBOLX format;extensions runmisc;
1198;run_extensions.at:5113;X/Open free-form format;fundamental xopen extensions;
1199;run_extensions.at:5162;TERMINAL format;fundamental extensions;
1200;run_extensions.at:5246;MF FREE format (X/Open);fundamental xopen extensions directives;
1201;run_extensions.at:5296;Binary COMP-1 (1);extensions;
1202;run_extensions.at:5327;Binary COMP-1 (2);extensions directive;
1203;run_extensions.at:5363;EXHIBIT statement;extensions osvs sort-return tally;
1204;run_extensions.at:5393;Bit Operations;bit-wise;
1205;run_extensions.at:5496;Bit Shift Operations;bit-wise;
1206;run_extensions.at:5571;GCOS floating-point usages;gcos;
1207;run_extensions.at:5610;PICTURE L (basic);extensions gcos picture-l odo;
1208;run_extensions.at:5740;PICTURE L (under/over shoot);extensions gcos picture-l odo;
1209;run_extensions.at:5795;PICTURE L (MOVE CORRESPONDING);extensions gcos picture-l odo;
1210;run_extensions.at:5873;PICTURE L (OCCURS ... PIC L);extensions gcos picture-l odo;
1211;run_extensions.at:5942;PICTURE L (REDEFINES);extensions gcos picture-l odo;
1212;run_extensions.at:6030;INSPECT TRAILING;extensions;
1213;run_extensions.at:6100;INSPECT REPLACING TRAILING ZEROS BY SPACES;runmisc figurative constant;
1214;run_extensions.at:6122;INSPECT REPLACING complex;runmisc characters trailing;
1215;run_extensions.at:6159;EXAMINE TALLYING;runmisc;
1216;run_extensions.at:6216;EXAMINE REPLACING;runmisc;
1217;run_extensions.at:6252;GCOS literals with EBCDIC symbols (run);extensions;
1218;run_ml.at:19;XML GENERATE general;extensions;
1219;run_ml.at:127;XML GENERATE SUPPRESS;extensions;
1220;run_ml.at:204;XML GENERATE exceptions;extensions xml-code;
1221;run_ml.at:316;XML GENERATE record selection;extensions;
1222;run_ml.at:360;XML GENERATE trimming;extensions;
1223;run_ml.at:457;XML DPC-IN-DATA directive;extensions;
1224;run_ml.at:488;XML dpc-in-data config option;extensions;
1225;run_ml.at:532;JSON GENERATE general;extensions;
1226;run_ml.at:589;JSON GENERATE SUPPRESS;extensions;
1227;run_ml.at:628;JSON GENERATE exceptions;extensions json-code;
1228;run_ml.at:693;JSON GENERATE record selection;extensions;
1229;run_ml.at:737;JSON GENERATE trimming;extensions;
1230;run_ml.at:837;JSON DPC-IN-DATA directive;extensions;
1231;run_ml.at:868;JSON dpc-in-data config option;extensions;
1232;data_binary.at:23;BINARY: 2-4-8 big-endian;binary;
1233;data_binary.at:205;BINARY: 2-4-8 native;binary;
1234;data_binary.at:393;BINARY: 1-2-4-8 big-endian;binary;
1235;data_binary.at:575;BINARY: 1-2-4-8 native;binary;
1236;data_binary.at:763;BINARY: 1--8 big-endian;binary;
1237;data_binary.at:945;BINARY: 1--8 native;binary;
1238;data_binary.at:1133;BINARY: full-print;binary;
1239;data_binary.at:1185;BINARY: 64bit unsigned compare;binary;
1240;data_binary.at:1215;BINARY: 64bit unsigned arithmetic notrunc;binary;
1241;data_binary.at:1242;BINARY: 64bit signed negative constant range;binary;
1242;data_binary.at:1262;COMP-4 Truncate;binary numeric;
1243;data_binary.at:1323;COMP-4 No Truncate;binary numeric;
1244;data_binary.at:1409;MOVE DISPLAY to BINARY;fundamental ppp;
1245;data_binary.at:1595;MOVE PACKED-DECIMAL to BINARY;fundamental ppp;
1246;data_binary.at:1781;MOVE BINARY to PACKED-DECIMAL;fundamental ppp;
1247;data_binary.at:1961;MOVE BINARY to BINARY;fundamental ppp;
1248;data_binary.at:2143;PPP COMP-5;fundamental binary move display add subtract multiply divide;
1249;data_binary.at:2217;arithmetic truncation with USAGE BINARY;fundamental compute;
1250;data_display.at:22;DISPLAY: Sign ASCII;display;
1251;data_display.at:81;DISPLAY: Sign ASCII (2);display;
1252;data_display.at:127;DISPLAY: Sign EBCDIC;display;
1253;data_display.at:172;DISPLAY: unsigned;display;
1254;data_display.at:226;MOVE DISPLAY to DISPLAY;fundamental ppp;
1255;data_display.at:408;PPP DISPLAY;fundamental move add subtract multiply divide;
1256;data_display.at:480;arithmetic truncation with USAGE DISPLAY;fundamental compute;
1257;data_display.at:533;DISPLAY: ADD and SUBTRACT w/o SIZE ERROR;display fundamental arithmetic;
1258;data_display.at:16940;DISPLAY: ADD and SUBTRACT, all ROUNDED MODEs;display fundamental arithmetic subtract mode away-from-zero nearest-away-from-zero nearest-even nearest-toward-zero toward-greater toward-lesser prohibited truncation;
1259;data_packed.at:27;PACKED-DECIMAL dump;packed-decimal comp-3;
1260;data_packed.at:163;PACKED-DECIMAL used with DISPLAY;packed-decimal comp-3;
1261;data_packed.at:221;PACKED-DECIMAL used with MOVE;display;
1262;data_packed.at:459;MOVE PACKED-DECIMAL to PACKED-DECIMAL;fundamental ppp;
1263;data_packed.at:639;MOVE PACKED-DECIMAL to DISPLAY;fundamenta pppl;
1264;data_packed.at:825;MOVE DISPLAY to PACKED-DECIMAL;fundamental ppp;
1265;data_packed.at:1026;PACKED-DECIMAL used with INITIALIZE;packed-decimal display;
1266;data_packed.at:1063;PACKED-DECIMAL arithmetic;packed-decimal comp-3;
1267;data_packed.at:1187;PACKED-DECIMAL comparison;packed-decimal comp-3;
1268;data_packed.at:1269;PACKED-DECIMAL numeric test (1);packed-decimal comp-3;
1269;data_packed.at:1333;PACKED-DECIMAL numeric test (2);packed-decimal comp-3;
1270;data_packed.at:1399;COMP-6 used with DISPLAY;packed-decimal comp-3;
1271;data_packed.at:1432;COMP-6 used with MOVE;packed-decimal comp-3;
1272;data_packed.at:1474;COMP-6 arithmetic;packed-decimal comp-3;
1273;data_packed.at:1563;COMP-6 numeric;packed-decimal comp-3;
1274;data_packed.at:1609;COMP-6 comparison;packed-decimal comp-3;
1275;data_packed.at:1671;COMP-3 vs. COMP-6 - BCD comparison;packed-decimal;
1276;data_packed.at:1971;PPP COMP-3;packed-decimal fundamental move display add subtract multiply divide;
1277;data_packed.at:2083;PPP COMP-6;packed-decimal fundamental move display add subtract multiply divide;
1278;data_packed.at:2174;arithmetic truncation with USAGE PACKED-DECIMAL;fundamental compute comp-3;
1279;data_packed.at:2236;MOVE between several BCD fields;fundamental comp-3 comp-6 packed-decimal;
1280;data_packed.at:12326;BCD ADD and SUBTRACT w/o SIZE ERROR;fundamental arithmetic comp-3 comp-6 packed-decimal;
1281;data_packed.at:28746;BCD ADD and SUBTRACT, all ROUNDED MODEs;fundamental arithmetic subtract mode comp-3 comp-6 packed-decimal away-from-zero nearest-away-from-zero nearest-even nearest-toward-zero toward-greater toward-lesser prohibited truncation;
1282;data_pointer.at:21;POINTER: display;pointer 64bit;
"
# List of the all the test groups.
at_groups_all=`$as_echo "$at_help_all" | sed 's/;.*//'`

# at_fn_validate_ranges NAME...
# -----------------------------
# Validate and normalize the test group number contained in each variable
# NAME. Leading zeroes are treated as decimal.
at_fn_validate_ranges ()
{
  for at_grp
  do
    eval at_value=\$$at_grp
    if test $at_value -lt 1 || test $at_value -gt 1282; then
      $as_echo "invalid test group: $at_value" >&2
      exit 1
    fi
    case $at_value in
      0*) # We want to treat leading 0 as decimal, like expr and test, but
	  # AS_VAR_ARITH treats it as octal if it uses $(( )).
	  # With XSI shells, ${at_value#${at_value%%[1-9]*}} avoids the
	  # expr fork, but it is not worth the effort to determine if the
	  # shell supports XSI when the user can just avoid leading 0.
	  eval $at_grp='`expr $at_value + 0`' ;;
    esac
  done
}

at_prev=
for at_option
do
  # If the previous option needs an argument, assign it.
  if test -n "$at_prev"; then
    at_option=$at_prev=$at_option
    at_prev=
  fi

  case $at_option in
  *=?*) at_optarg=`expr "X$at_option" : '[^=]*=\(.*\)'` ;;
  *)    at_optarg= ;;
  esac

  # Accept the important Cygnus configure options, so we can diagnose typos.

  case $at_option in
    --help | -h )
	at_help_p=:
	;;

    --list | -l )
	at_list_p=:
	;;

    --version | -V )
	at_version_p=:
	;;

    --clean | -c )
	at_clean=:
	;;

    --color )
	at_color=always
	;;
    --color=* )
	case $at_optarg in
	no | never | none) at_color=never ;;
	auto | tty | if-tty) at_color=auto ;;
	always | yes | force) at_color=always ;;
	*) at_optname=`echo " $at_option" | sed 's/^ //; s/=.*//'`
	   as_fn_error $? "unrecognized argument to $at_optname: $at_optarg" ;;
	esac
	;;

    --debug | -d )
	at_debug_p=:
	;;

    --errexit | -e )
	at_debug_p=:
	at_errexit_p=:
	;;

    --verbose | -v )
	at_verbose=; at_quiet=:
	;;

    --trace | -x )
	at_traceon='set -x'
	at_trace_echo=echo
	at_check_filter_trace=at_fn_filter_trace
	;;

    [0-9] | [0-9][0-9] | [0-9][0-9][0-9] | [0-9][0-9][0-9][0-9])
	at_fn_validate_ranges at_option
	as_fn_append at_groups "$at_option$as_nl"
	;;

    # Ranges
    [0-9]- | [0-9][0-9]- | [0-9][0-9][0-9]- | [0-9][0-9][0-9][0-9]-)
	at_range_start=`echo $at_option |tr -d X-`
	at_fn_validate_ranges at_range_start
	at_range=`$as_echo "$at_groups_all" | \
	  sed -ne '/^'$at_range_start'$/,$p'`
	as_fn_append at_groups "$at_range$as_nl"
	;;

    -[0-9] | -[0-9][0-9] | -[0-9][0-9][0-9] | -[0-9][0-9][0-9][0-9])
	at_range_end=`echo $at_option |tr -d X-`
	at_fn_validate_ranges at_range_end
	at_range=`$as_echo "$at_groups_all" | \
	  sed -ne '1,/^'$at_range_end'$/p'`
	as_fn_append at_groups "$at_range$as_nl"
	;;

    [0-9]-[0-9] | [0-9]-[0-9][0-9] | [0-9]-[0-9][0-9][0-9] | \
    [0-9]-[0-9][0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9] | \
    [0-9][0-9]-[0-9][0-9][0-9] | [0-9][0-9]-[0-9][0-9][0-9][0-9] | \
    [0-9][0-9][0-9]-[0-9][0-9][0-9] | \
    [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] | \
    [0-9][0-9][0-9][0-9]-[0-9][0-9][0-9][0-9] )
	at_range_start=`expr $at_option : '\(.*\)-'`
	at_range_end=`expr $at_option : '.*-\(.*\)'`
	if test $at_range_start -gt $at_range_end; then
	  at_tmp=$at_range_end
	  at_range_end=$at_range_start
	  at_range_start=$at_tmp
	fi
	at_fn_validate_ranges at_range_start at_range_end
	at_range=`$as_echo "$at_groups_all" | \
	  sed -ne '/^'$at_range_start'$/,/^'$at_range_end'$/p'`
	as_fn_append at_groups "$at_range$as_nl"
	;;

    # Directory selection.
    --directory | -C )
	at_prev=--directory
	;;
    --directory=* )
	at_change_dir=:
	at_dir=$at_optarg
	if test x- = "x$at_dir" ; then
	  at_dir=./-
	fi
	;;

    # Parallel execution.
    --jobs | -j )
	at_jobs=0
	;;
    --jobs=* | -j[0-9]* )
	if test -n "$at_optarg"; then
	  at_jobs=$at_optarg
	else
	  at_jobs=`expr X$at_option : 'X-j\(.*\)'`
	fi
	case $at_jobs in *[!0-9]*)
	  at_optname=`echo " $at_option" | sed 's/^ //; s/[0-9=].*//'`
	  as_fn_error $? "non-numeric argument to $at_optname: $at_jobs" ;;
	esac
	;;

    # Keywords.
    --keywords | -k )
	at_prev=--keywords
	;;
    --keywords=* )
	at_groups_selected=$at_help_all
	at_save_IFS=$IFS
	IFS=,
	set X $at_optarg
	shift
	IFS=$at_save_IFS
	for at_keyword
	do
	  at_invert=
	  case $at_keyword in
	  '!'*)
	    at_invert="-v"
	    at_keyword=`expr "X$at_keyword" : 'X!\(.*\)'`
	    ;;
	  esac
	  # It is on purpose that we match the test group titles too.
	  at_groups_selected=`$as_echo "$at_groups_selected" |
	      grep -i $at_invert "^[1-9][^;]*;.*[; ]$at_keyword[ ;]"`
	done
	# Smash the keywords.
	at_groups_selected=`$as_echo "$at_groups_selected" | sed 's/;.*//'`
	as_fn_append at_groups "$at_groups_selected$as_nl"
	;;
    --recheck)
	at_recheck=:
	;;

    *=*)
	at_envvar=`expr "x$at_option" : 'x\([^=]*\)='`
	# Reject names that are not valid shell variable names.
	case $at_envvar in
	  '' | [0-9]* | *[!_$as_cr_alnum]* )
	    as_fn_error $? "invalid variable name: \`$at_envvar'" ;;
	esac
	at_value=`$as_echo "$at_optarg" | sed "s/'/'\\\\\\\\''/g"`
	# Export now, but save eval for later and for debug scripts.
	export $at_envvar
	as_fn_append at_debug_args " $at_envvar='$at_value'"
	;;

     *) $as_echo "$as_me: invalid option: $at_option" >&2
	$as_echo "Try \`$0 --help' for more information." >&2
	exit 1
	;;
  esac
done

# Verify our last option didn't require an argument
if test -n "$at_prev"; then :
  as_fn_error $? "\`$at_prev' requires an argument"
fi

# The file containing the suite.
at_suite_log=$at_dir/$as_me.log

# Selected test groups.
if test -z "$at_groups$at_recheck"; then
  at_groups=$at_groups_all
else
  if test -n "$at_recheck" && test -r "$at_suite_log"; then
    at_oldfails=`sed -n '
      /^Failed tests:$/,/^Skipped tests:$/{
	s/^[ ]*\([1-9][0-9]*\):.*/\1/p
      }
      /^Unexpected passes:$/,/^## Detailed failed tests/{
	s/^[ ]*\([1-9][0-9]*\):.*/\1/p
      }
      /^## Detailed failed tests/q
      ' "$at_suite_log"`
    as_fn_append at_groups "$at_oldfails$as_nl"
  fi
  # Sort the tests, removing duplicates.
  at_groups=`$as_echo "$at_groups" | sort -nu | sed '/^$/d'`
fi

if test x"$at_color" = xalways \
   || { test x"$at_color" = xauto && test -t 1; }; then
  at_red=`printf '\033[0;31m'`
  at_grn=`printf '\033[0;32m'`
  at_lgn=`printf '\033[1;32m'`
  at_blu=`printf '\033[1;34m'`
  at_std=`printf '\033[m'`
else
  at_red= at_grn= at_lgn= at_blu= at_std=
fi

# Help message.
if $at_help_p; then
  cat <<_ATEOF || at_write_fail=1
Usage: $0 [OPTION]... [VARIABLE=VALUE]... [TESTS]

Run all the tests, or the selected TESTS, given by numeric ranges, and
save a detailed log file.  Upon failure, create debugging scripts.

Do not change environment variables directly.  Instead, set them via
command line arguments.  Set \`AUTOTEST_PATH' to select the executables
to exercise.  Each relative directory is expanded as build and source
directories relative to the top level of this distribution.
E.g., from within the build directory /tmp/foo-1.0, invoking this:

  $ $0 AUTOTEST_PATH=bin

is equivalent to the following, assuming the source directory is /src/foo-1.0:

  PATH=/tmp/foo-1.0/bin:/src/foo-1.0/bin:\$PATH $0
_ATEOF
cat <<_ATEOF || at_write_fail=1

Operation modes:
  -h, --help     print the help message, then exit
  -V, --version  print version number, then exit
  -c, --clean    remove all the files this test suite might create and exit
  -l, --list     describes all the tests, or the selected TESTS
_ATEOF
cat <<_ATEOF || at_write_fail=1

Execution tuning:
  -C, --directory=DIR
                 change to directory DIR before starting
      --color[=never|auto|always]
                 disable colored test results, or enable even without terminal
  -j, --jobs[=N]
                 Allow N jobs at once; infinite jobs with no arg (default 1)
  -k, --keywords=KEYWORDS
                 select the tests matching all the comma-separated KEYWORDS
                 multiple \`-k' accumulate; prefixed \`!' negates a KEYWORD
      --recheck  select all tests that failed or passed unexpectedly last time
  -e, --errexit  abort as soon as a test fails; implies --debug
  -v, --verbose  force more detailed output
                 default for debugging scripts
  -d, --debug    inhibit clean up and top-level logging
                 default for debugging scripts
  -x, --trace    enable tests shell tracing
_ATEOF
cat <<_ATEOF || at_write_fail=1

Report bugs to <bug-gnucobol@gnu.org>.
GnuCOBOL home page: <https://www.gnu.org/software/gnucobol/>.
_ATEOF
  exit $at_write_fail
fi

# List of tests.
if $at_list_p; then
  cat <<_ATEOF || at_write_fail=1
GnuCOBOL 3.2 test suite: GnuCOBOL Tests test groups:

 NUM: FILE-NAME:LINE     TEST-GROUP-NAME
      KEYWORDS

_ATEOF
  # Pass an empty line as separator between selected groups and help.
  $as_echo "$at_groups$as_nl$as_nl$at_help_all" |
    awk 'NF == 1 && FS != ";" {
	   selected[$ 1] = 1
	   next
	 }
	 /^$/ { FS = ";" }
	 NF > 0 {
	   if (selected[$ 1]) {
	     printf " %3d: %-18s %s\n", $ 1, $ 2, $ 3
	     if ($ 4) {
	       lmax = 79
	       indent = "     "
	       line = indent
	       len = length (line)
	       n = split ($ 4, a, " ")
	       for (i = 1; i <= n; i++) {
		 l = length (a[i]) + 1
		 if (i > 1 && len + l > lmax) {
		   print line
		   line = indent " " a[i]
		   len = length (line)
		 } else {
		   line = line " " a[i]
		   len += l
		 }
	       }
	       if (n)
		 print line
	     }
	   }
	 }' || at_write_fail=1
  exit $at_write_fail
fi
if $at_version_p; then
  $as_echo "$as_me (GnuCOBOL 3.2)" &&
  cat <<\_ATEOF || at_write_fail=1

Test cases Copyright (C) 2023 Free Software Foundation, Inc.

Written by Keisuke Nishida, Roger While, Simon Sobisch, Edward Hart,
Ron Norman, Brian Tiffin, Dave Pitts

Copyright (C) 2012 Free Software Foundation, Inc.
This test suite is free software; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
_ATEOF
  exit $at_write_fail
fi

# Should we print banners?  Yes if more than one test is run.
case $at_groups in #(
  *$as_nl* )
      at_print_banners=: ;; #(
  * ) at_print_banners=false ;;
esac
# Text for banner N, set to a single space once printed.
# Banner 1. testsuite.at:32
# Category starts at test group 1.
at_banner_text_1="General tests of used binaries"
# Banner 2. testsuite.at:37
# Category starts at test group 50.
at_banner_text_2="Syntax tests"
# Banner 3. testsuite.at:57
# Category starts at test group 475.
at_banner_text_3="Listing tests"
# Banner 4. testsuite.at:62
# Category starts at test group 511.
at_banner_text_4="Run tests"
# Banner 5. testsuite.at:78
# Category starts at test group 1232.
at_banner_text_5="Data Representation"

# Take any -C into account.
if $at_change_dir ; then
  test x != "x$at_dir" && cd "$at_dir" \
    || as_fn_error $? "unable to change directory"
  at_dir=`pwd`
fi

# Load the config files for any default variable assignments.
for at_file in atconfig atlocal
do
  test -r $at_file || continue
  . ./$at_file || as_fn_error $? "invalid content: $at_file"
done

# Autoconf <=2.59b set at_top_builddir instead of at_top_build_prefix:
: "${at_top_build_prefix=$at_top_builddir}"

# Perform any assignments requested during argument parsing.
eval "$at_debug_args"

# atconfig delivers names relative to the directory the test suite is
# in, but the groups themselves are run in testsuite-dir/group-dir.
if test -n "$at_top_srcdir"; then
  builddir=../..
  for at_dir_var in srcdir top_srcdir top_build_prefix
  do
    eval at_val=\$at_$at_dir_var
    case $at_val in
      [\\/$]* | ?:[\\/]* ) at_prefix= ;;
      *) at_prefix=../../ ;;
    esac
    eval "$at_dir_var=\$at_prefix\$at_val"
  done
fi

## -------------------- ##
## Directory structure. ##
## -------------------- ##

# This is the set of directories and files used by this script
# (non-literals are capitalized):
#
# TESTSUITE         - the testsuite
# TESTSUITE.log     - summarizes the complete testsuite run
# TESTSUITE.dir/    - created during a run, remains after -d or failed test
# + at-groups/      - during a run: status of all groups in run
# | + NNN/          - during a run: meta-data about test group NNN
# | | + check-line  - location (source file and line) of current AT_CHECK
# | | + status      - exit status of current AT_CHECK
# | | + stdout      - stdout of current AT_CHECK
# | | + stder1      - stderr, including trace
# | | + stderr      - stderr, with trace filtered out
# | | + test-source - portion of testsuite that defines group
# | | + times       - timestamps for computing duration
# | | + pass        - created if group passed
# | | + xpass       - created if group xpassed
# | | + fail        - created if group failed
# | | + xfail       - created if group xfailed
# | | + skip        - created if group skipped
# + at-stop         - during a run: end the run if this file exists
# + at-source-lines - during a run: cache of TESTSUITE line numbers for extraction
# + 0..NNN/         - created for each group NNN, remains after -d or failed test
# | + TESTSUITE.log - summarizes the group results
# | + ...           - files created during the group

# The directory the whole suite works in.
# Should be absolute to let the user `cd' at will.
at_suite_dir=$at_dir/$as_me.dir
# The file containing the suite ($at_dir might have changed since earlier).
at_suite_log=$at_dir/$as_me.log
# The directory containing helper files per test group.
at_helper_dir=$at_suite_dir/at-groups
# Stop file: if it exists, do not start new jobs.
at_stop_file=$at_suite_dir/at-stop
# The fifo used for the job dispatcher.
at_job_fifo=$at_suite_dir/at-job-fifo

if $at_clean; then
  test -d "$at_suite_dir" &&
    find "$at_suite_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
  rm -f -r "$at_suite_dir" "$at_suite_log"
  exit $?
fi

# Don't take risks: use only absolute directories in PATH.
#
# For stand-alone test suites (ie. atconfig was not found),
# AUTOTEST_PATH is relative to `.'.
#
# For embedded test suites, AUTOTEST_PATH is relative to the top level
# of the package.  Then expand it into build/src parts, since users
# may create executables in both places.
AUTOTEST_PATH=`$as_echo "$AUTOTEST_PATH" | sed "s|:|$PATH_SEPARATOR|g"`
at_path=
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $AUTOTEST_PATH $PATH
do
  IFS=$as_save_IFS
  test -z "$as_dir" && as_dir=.
    test -n "$at_path" && as_fn_append at_path $PATH_SEPARATOR
case $as_dir in
  [\\/]* | ?:[\\/]* )
    as_fn_append at_path "$as_dir"
    ;;
  * )
    if test -z "$at_top_build_prefix"; then
      # Stand-alone test suite.
      as_fn_append at_path "$as_dir"
    else
      # Embedded test suite.
      as_fn_append at_path "$at_top_build_prefix$as_dir$PATH_SEPARATOR"
      as_fn_append at_path "$at_top_srcdir/$as_dir"
    fi
    ;;
esac
  done
IFS=$as_save_IFS


# Now build and simplify PATH.
#
# There might be directories that don't exist, but don't redirect
# builtins' (eg., cd) stderr directly: Ultrix's sh hates that.
at_new_path=
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $at_path
do
  IFS=$as_save_IFS
  test -z "$as_dir" && as_dir=.
    test -d "$as_dir" || continue
case $as_dir in
  [\\/]* | ?:[\\/]* ) ;;
  * ) as_dir=`(cd "$as_dir" && pwd) 2>/dev/null` ;;
esac
case $PATH_SEPARATOR$at_new_path$PATH_SEPARATOR in
  *$PATH_SEPARATOR$as_dir$PATH_SEPARATOR*) ;;
  $PATH_SEPARATOR$PATH_SEPARATOR) at_new_path=$as_dir ;;
  *) as_fn_append at_new_path "$PATH_SEPARATOR$as_dir" ;;
esac
  done
IFS=$as_save_IFS

PATH=$at_new_path
export PATH

# Setting up the FDs.



# 5 is the log file.  Not to be overwritten if `-d'.
if $at_debug_p; then
  at_suite_log=/dev/null
else
  : >"$at_suite_log"
fi
exec 5>>"$at_suite_log"

# Banners and logs.
$as_echo "## ---------------------------------------- ##
## GnuCOBOL 3.2 test suite: GnuCOBOL Tests. ##
## ---------------------------------------- ##"
{
  $as_echo "## ---------------------------------------- ##
## GnuCOBOL 3.2 test suite: GnuCOBOL Tests. ##
## ---------------------------------------- ##"
  echo

  $as_echo "$as_me: command line was:"
  $as_echo "  \$ $0 $at_cli_args"
  echo

  # If ChangeLog exists, list a few lines in case it might help determining
  # the exact version.
  if test -n "$at_top_srcdir" && test -f "$at_top_srcdir/ChangeLog"; then
    $as_echo "## ---------- ##
## ChangeLog. ##
## ---------- ##"
    echo
    sed 's/^/| /;10q' "$at_top_srcdir/ChangeLog"
    echo
  fi

  {
cat <<_ASUNAME
## --------- ##
## Platform. ##
## --------- ##

hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
uname -m = `(uname -m) 2>/dev/null || echo unknown`
uname -r = `(uname -r) 2>/dev/null || echo unknown`
uname -s = `(uname -s) 2>/dev/null || echo unknown`
uname -v = `(uname -v) 2>/dev/null || echo unknown`

/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`

/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
/usr/bin/hostinfo      = `(/usr/bin/hostinfo) 2>/dev/null      || echo unknown`
/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`

_ASUNAME

as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
  IFS=$as_save_IFS
  test -z "$as_dir" && as_dir=.
    $as_echo "PATH: $as_dir"
  done
IFS=$as_save_IFS

}
  echo

  # Contents of the config files.
  for at_file in atconfig atlocal
  do
    test -r $at_file || continue
    $as_echo "$as_me: $at_file:"
    sed 's/^/| /' $at_file
    echo
  done
} >&5


## ------------------------- ##
## Autotest shell functions. ##
## ------------------------- ##

# at_fn_banner NUMBER
# -------------------
# Output banner NUMBER, provided the testsuite is running multiple groups and
# this particular banner has not yet been printed.
at_fn_banner ()
{
  $at_print_banners || return 0
  eval at_banner_text=\$at_banner_text_$1
  test "x$at_banner_text" = "x " && return 0
  eval "at_banner_text_$1=\" \""
  if test -z "$at_banner_text"; then
    $at_first || echo
  else
    $as_echo "$as_nl$at_banner_text$as_nl"
  fi
} # at_fn_banner

# at_fn_check_prepare_notrace REASON LINE
# ---------------------------------------
# Perform AT_CHECK preparations for the command at LINE for an untraceable
# command; REASON is the reason for disabling tracing.
at_fn_check_prepare_notrace ()
{
  $at_trace_echo "Not enabling shell tracing (command contains $1)"
  $as_echo "$2" >"$at_check_line_file"
  at_check_trace=: at_check_filter=:
  : >"$at_stdout"; : >"$at_stderr"
}

# at_fn_check_prepare_trace LINE
# ------------------------------
# Perform AT_CHECK preparations for the command at LINE for a traceable
# command.
at_fn_check_prepare_trace ()
{
  $as_echo "$1" >"$at_check_line_file"
  at_check_trace=$at_traceon at_check_filter=$at_check_filter_trace
  : >"$at_stdout"; : >"$at_stderr"
}

# at_fn_check_prepare_dynamic COMMAND LINE
# ----------------------------------------
# Decide if COMMAND at LINE is traceable at runtime, and call the appropriate
# preparation function.
at_fn_check_prepare_dynamic ()
{
  case $1 in
    *$as_nl*)
      at_fn_check_prepare_notrace 'an embedded newline' "$2" ;;
    *)
      at_fn_check_prepare_trace "$2" ;;
  esac
}

# at_fn_filter_trace
# ------------------
# Remove the lines in the file "$at_stderr" generated by "set -x" and print
# them to stderr.
at_fn_filter_trace ()
{
  mv "$at_stderr" "$at_stder1"
  grep '^ *+' "$at_stder1" >&2
  grep -v '^ *+' "$at_stder1" >"$at_stderr"
}

# at_fn_log_failure FILE-LIST
# ---------------------------
# Copy the files in the list on stdout with a "> " prefix, and exit the shell
# with a failure exit code.
at_fn_log_failure ()
{
  for file
    do $as_echo "$file:"; sed 's/^/> /' "$file"; done
  echo 1 > "$at_status_file"
  exit 1
}

# at_fn_check_skip EXIT-CODE LINE
# -------------------------------
# Check whether EXIT-CODE is a special exit code (77 or 99), and if so exit
# the test group subshell with that same exit code. Use LINE in any report
# about test failure.
at_fn_check_skip ()
{
  case $1 in
    99) echo 99 > "$at_status_file"; at_failed=:
	$as_echo "$2: hard failure"; exit 99;;
    77) echo 77 > "$at_status_file"; exit 77;;
  esac
}

# at_fn_check_status EXPECTED EXIT-CODE LINE
# ------------------------------------------
# Check whether EXIT-CODE is the EXPECTED exit code, and if so do nothing.
# Otherwise, if it is 77 or 99, exit the test group subshell with that same
# exit code; if it is anything else print an error message referring to LINE,
# and fail the test.
at_fn_check_status ()
{
  case $2 in
    $1 ) ;;
    77) echo 77 > "$at_status_file"; exit 77;;
    99) echo 99 > "$at_status_file"; at_failed=:
	$as_echo "$3: hard failure"; exit 99;;
    *) $as_echo "$3: exit code was $2, expected $1"
      at_failed=:;;
  esac
}

# at_fn_diff_devnull FILE
# -----------------------
# Emit a diff between /dev/null and FILE. Uses "test -s" to avoid useless diff
# invocations.
at_fn_diff_devnull ()
{
  test -s "$1" || return 0
  $at_diff "$at_devnull" "$1"
}

# at_fn_test NUMBER
# -----------------
# Parse out test NUMBER from the tail of this file.
at_fn_test ()
{
  eval at_sed=\$at_sed$1
  sed "$at_sed" "$at_myself" > "$at_test_source"
}

# at_fn_create_debugging_script
# -----------------------------
# Create the debugging script $at_group_dir/run which will reproduce the
# current test group.
at_fn_create_debugging_script ()
{
  {
    echo "#! /bin/sh" &&
    echo 'test "${ZSH_VERSION+set}" = set && alias -g '\''${1+"$@"}'\''='\''"$@"'\''' &&
    $as_echo "cd '$at_dir'" &&
    $as_echo "exec \${CONFIG_SHELL-$SHELL} \"$at_myself\" -v -d $at_debug_args $at_group \${1+\"\$@\"}" &&
    echo 'exit 1'
  } >"$at_group_dir/run" &&
  chmod +x "$at_group_dir/run"
}

## -------------------------------- ##
## End of autotest shell functions. ##
## -------------------------------- ##
{
  $as_echo "## ---------------- ##
## Tested programs. ##
## ---------------- ##"
  echo
} >&5

# Report what programs are being tested.
for at_program in : $at_tested
do
  test "$at_program" = : && continue
  case $at_program in
    [\\/]* | ?:[\\/]* ) $at_program_=$at_program ;;
    * )
    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
for as_dir in $PATH
do
  IFS=$as_save_IFS
  test -z "$as_dir" && as_dir=.
    test -f "$as_dir/$at_program" && break
  done
IFS=$as_save_IFS

    at_program_=$as_dir/$at_program ;;
  esac
  if test -f "$at_program_"; then
    {
      $as_echo "$at_srcdir/testsuite.at:26: $at_program_ --version"
      "$at_program_" --version </dev/null
      echo
    } >&5 2>&1
  else
    as_fn_error $? "cannot find $at_program" "$LINENO" 5
  fi
done

{
  $as_echo "## ------------------ ##
## Running the tests. ##
## ------------------ ##"
} >&5

at_start_date=`date`
at_start_time=`date +%s 2>/dev/null`
$as_echo "$as_me: starting at: $at_start_date" >&5

# Create the master directory if it doesn't already exist.
as_dir="$at_suite_dir"; as_fn_mkdir_p ||
  as_fn_error $? "cannot create \`$at_suite_dir'" "$LINENO" 5

# Can we diff with `/dev/null'?  DU 5.0 refuses.
if diff /dev/null /dev/null >/dev/null 2>&1; then
  at_devnull=/dev/null
else
  at_devnull=$at_suite_dir/devnull
  >"$at_devnull"
fi

# Use `diff -u' when possible.
if at_diff=`diff -u "$at_devnull" "$at_devnull" 2>&1` && test -z "$at_diff"
then
  at_diff='diff -u'
else
  at_diff=diff
fi

# Get the last needed group.
for at_group in : $at_groups; do :; done

# Extract the start and end lines of each test group at the tail
# of this file
awk '
BEGIN { FS="" }
/^#AT_START_/ {
  start = NR
}
/^#AT_STOP_/ {
  test = substr ($ 0, 10)
  print "at_sed" test "=\"1," start "d;" (NR-1) "q\""
  if (test == "'"$at_group"'") exit
}' "$at_myself" > "$at_suite_dir/at-source-lines" &&
. "$at_suite_dir/at-source-lines" ||
  as_fn_error $? "cannot create test line number cache" "$LINENO" 5
rm -f "$at_suite_dir/at-source-lines"

# Set number of jobs for `-j'; avoid more jobs than test groups.
set X $at_groups; shift; at_max_jobs=$#
if test $at_max_jobs -eq 0; then
  at_jobs=1
fi
if test $at_jobs -ne 1 &&
   { test $at_jobs -eq 0 || test $at_jobs -gt $at_max_jobs; }; then
  at_jobs=$at_max_jobs
fi

# If parallel mode, don't output banners, don't split summary lines.
if test $at_jobs -ne 1; then
  at_print_banners=false
  at_quiet=:
fi

# Set up helper dirs.
rm -rf "$at_helper_dir" &&
mkdir "$at_helper_dir" &&
cd "$at_helper_dir" &&
{ test -z "$at_groups" || mkdir $at_groups; } ||
as_fn_error $? "testsuite directory setup failed" "$LINENO" 5

# Functions for running a test group.  We leave the actual
# test group execution outside of a shell function in order
# to avoid hitting zsh 4.x exit status bugs.

# at_fn_group_prepare
# -------------------
# Prepare for running a test group.
at_fn_group_prepare ()
{
  # The directory for additional per-group helper files.
  at_job_dir=$at_helper_dir/$at_group
  # The file containing the location of the last AT_CHECK.
  at_check_line_file=$at_job_dir/check-line
  # The file containing the exit status of the last command.
  at_status_file=$at_job_dir/status
  # The files containing the output of the tested commands.
  at_stdout=$at_job_dir/stdout
  at_stder1=$at_job_dir/stder1
  at_stderr=$at_job_dir/stderr
  # The file containing the code for a test group.
  at_test_source=$at_job_dir/test-source
  # The file containing dates.
  at_times_file=$at_job_dir/times

  # Be sure to come back to the top test directory.
  cd "$at_suite_dir"

  # Clearly separate the test groups when verbose.
  $at_first || $at_verbose echo

  at_group_normalized=$at_group

  eval 'while :; do
    case $at_group_normalized in #(
    '"$at_format"'*) break;;
    esac
    at_group_normalized=0$at_group_normalized
  done'


  # Create a fresh directory for the next test group, and enter.
  # If one already exists, the user may have invoked ./run from
  # within that directory; we remove the contents, but not the
  # directory itself, so that we aren't pulling the rug out from
  # under the shell's notion of the current directory.
  at_group_dir=$at_suite_dir/$at_group_normalized
  at_group_log=$at_group_dir/$as_me.log
  if test -d "$at_group_dir"; then
  find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx {} \;
  rm -fr "$at_group_dir"/* "$at_group_dir"/.[!.] "$at_group_dir"/.??*
fi ||
    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: test directory for $at_group_normalized could not be cleaned" >&5
$as_echo "$as_me: WARNING: test directory for $at_group_normalized could not be cleaned" >&2;}
  # Be tolerant if the above `rm' was not able to remove the directory.
  as_dir="$at_group_dir"; as_fn_mkdir_p

  echo 0 > "$at_status_file"

  # In verbose mode, append to the log file *and* show on
  # the standard output; in quiet mode only write to the log.
  if test -z "$at_verbose"; then
    at_tee_pipe='tee -a "$at_group_log"'
  else
    at_tee_pipe='cat >> "$at_group_log"'
  fi
}

# at_fn_group_banner ORDINAL LINE DESC PAD [BANNER]
# -------------------------------------------------
# Declare the test group ORDINAL, located at LINE with group description DESC,
# and residing under BANNER. Use PAD to align the status column.
at_fn_group_banner ()
{
  at_setup_line="$2"
  test -n "$5" && at_fn_banner $5
  at_desc="$3"
  case $1 in
    [0-9])      at_desc_line="  $1: ";;
    [0-9][0-9]) at_desc_line=" $1: " ;;
    *)          at_desc_line="$1: "  ;;
  esac
  as_fn_append at_desc_line "$3$4"
  $at_quiet $as_echo_n "$at_desc_line"
  echo "#                             -*- compilation -*-" >> "$at_group_log"
}

# at_fn_group_postprocess
# -----------------------
# Perform cleanup after running a test group.
at_fn_group_postprocess ()
{
  # Be sure to come back to the suite directory, in particular
  # since below we might `rm' the group directory we are in currently.
  cd "$at_suite_dir"

  if test ! -f "$at_check_line_file"; then
    sed "s/^ */$as_me: WARNING: /" <<_ATEOF
      A failure happened in a test group before any test could be
      run. This means that test suite is improperly designed.  Please
      report this failure to <bug-gnucobol@gnu.org>.
_ATEOF
    $as_echo "$at_setup_line" >"$at_check_line_file"
    at_status=99
  fi
  $at_verbose $as_echo_n "$at_group. $at_setup_line: "
  $as_echo_n "$at_group. $at_setup_line: " >> "$at_group_log"
  case $at_xfail:$at_status in
    yes:0)
	at_msg="UNEXPECTED PASS"
	at_res=xpass
	at_errexit=$at_errexit_p
	at_color=$at_red
	;;
    no:0)
	at_msg="ok"
	at_res=pass
	at_errexit=false
	at_color=$at_grn
	;;
    *:77)
	at_msg='skipped ('`cat "$at_check_line_file"`')'
	at_res=skip
	at_errexit=false
	at_color=$at_blu
	;;
    no:* | *:99)
	at_msg='FAILED ('`cat "$at_check_line_file"`')'
	at_res=fail
	at_errexit=$at_errexit_p
	at_color=$at_red
	;;
    yes:*)
	at_msg='expected failure ('`cat "$at_check_line_file"`')'
	at_res=xfail
	at_errexit=false
	at_color=$at_lgn
	;;
  esac
  echo "$at_res" > "$at_job_dir/$at_res"
  # In parallel mode, output the summary line only afterwards.
  if test $at_jobs -ne 1 && test -n "$at_verbose"; then
    $as_echo "$at_desc_line $at_color$at_msg$at_std"
  else
    # Make sure there is a separator even with long titles.
    $as_echo " $at_color$at_msg$at_std"
  fi
  at_log_msg="$at_group. $at_desc ($at_setup_line): $at_msg"
  case $at_status in
    0|77)
      # $at_times_file is only available if the group succeeded.
      # We're not including the group log, so the success message
      # is written in the global log separately.  But we also
      # write to the group log in case they're using -d.
      if test -f "$at_times_file"; then
	at_log_msg="$at_log_msg     ("`sed 1d "$at_times_file"`')'
	rm -f "$at_times_file"
      fi
      $as_echo "$at_log_msg" >> "$at_group_log"
      $as_echo "$at_log_msg" >&5

      # Cleanup the group directory, unless the user wants the files
      # or the success was unexpected.
      if $at_debug_p || test $at_res = xpass; then
	at_fn_create_debugging_script
	if test $at_res = xpass && $at_errexit; then
	  echo stop > "$at_stop_file"
	fi
      else
	if test -d "$at_group_dir"; then
	  find "$at_group_dir" -type d ! -perm -700 -exec chmod u+rwx \{\} \;
	  rm -fr "$at_group_dir"
	fi
	rm -f "$at_test_source"
      fi
      ;;
    *)
      # Upon failure, include the log into the testsuite's global
      # log.  The failure message is written in the group log.  It
      # is later included in the global log.
      $as_echo "$at_log_msg" >> "$at_group_log"

      # Upon failure, keep the group directory for autopsy, and create
      # the debugging script.  With -e, do not start any further tests.
      at_fn_create_debugging_script
      if $at_errexit; then
	echo stop > "$at_stop_file"
      fi
      ;;
  esac
}


## ------------ ##
## Driver loop. ##
## ------------ ##


if (set -m && set +m && set +b) >/dev/null 2>&1; then
  set +b
  at_job_control_on='set -m' at_job_control_off='set +m' at_job_group=-
else
  at_job_control_on=: at_job_control_off=: at_job_group=
fi

for at_signal in 1 2 15; do
  trap 'set +x; set +e
	$at_job_control_off
	at_signal='"$at_signal"'
	echo stop > "$at_stop_file"
	trap "" $at_signal
	at_pgids=
	for at_pgid in `jobs -p 2>/dev/null`; do
	  at_pgids="$at_pgids $at_job_group$at_pgid"
	done
	test -z "$at_pgids" || kill -$at_signal $at_pgids 2>/dev/null
	wait
	if test "$at_jobs" -eq 1 || test -z "$at_verbose"; then
	  echo >&2
	fi
	at_signame=`kill -l $at_signal 2>&1 || echo $at_signal`
	set x $at_signame
	test 1 -gt 2 && at_signame=$at_signal
	{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: caught signal $at_signame, bailing out" >&5
$as_echo "$as_me: WARNING: caught signal $at_signame, bailing out" >&2;}
	as_fn_arith 128 + $at_signal && exit_status=$as_val
	as_fn_exit $exit_status' $at_signal
done

rm -f "$at_stop_file"
at_first=:

if test $at_jobs -ne 1 &&
     rm -f "$at_job_fifo" &&
     test -n "$at_job_group" &&
     ( mkfifo "$at_job_fifo" && trap 'exit 1' PIPE STOP TSTP ) 2>/dev/null
then
  # FIFO job dispatcher.

  trap 'at_pids=
	for at_pid in `jobs -p`; do
	  at_pids="$at_pids $at_job_group$at_pid"
	done
	if test -n "$at_pids"; then
	  at_sig=TSTP
	  test "${TMOUT+set}" = set && at_sig=STOP
	  kill -$at_sig $at_pids 2>/dev/null
	fi
	kill -STOP $$
	test -z "$at_pids" || kill -CONT $at_pids 2>/dev/null' TSTP

  echo
  # Turn jobs into a list of numbers, starting from 1.
  at_joblist=`$as_echo "$at_groups" | sed -n 1,${at_jobs}p`

  set X $at_joblist
  shift
  for at_group in $at_groups; do
    $at_job_control_on 2>/dev/null
    (
      # Start one test group.
      $at_job_control_off
      if $at_first; then
	exec 7>"$at_job_fifo"
      else
	exec 6<&-
      fi
      trap 'set +x; set +e
	    trap "" PIPE
	    echo stop > "$at_stop_file"
	    echo >&7
	    as_fn_exit 141' PIPE
      at_fn_group_prepare
      if cd "$at_group_dir" &&
	 at_fn_test $at_group &&
	 . "$at_test_source"
      then :; else
	{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5
$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;}
	at_failed=:
      fi
      at_fn_group_postprocess
      echo >&7
    ) &
    $at_job_control_off
    if $at_first; then
      at_first=false
      exec 6<"$at_job_fifo" 7>"$at_job_fifo"
    fi
    shift # Consume one token.
    if test $# -gt 0; then :; else
      read at_token <&6 || break
      set x $*
    fi
    test -f "$at_stop_file" && break
  done
  exec 7>&-
  # Read back the remaining ($at_jobs - 1) tokens.
  set X $at_joblist
  shift
  if test $# -gt 0; then
    shift
    for at_job
    do
      read at_token
    done <&6
  fi
  exec 6<&-
  wait
else
  # Run serially, avoid forks and other potential surprises.
  for at_group in $at_groups; do
    at_fn_group_prepare
    if cd "$at_group_dir" &&
       at_fn_test $at_group &&
       . "$at_test_source"; then :; else
      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unable to parse test group: $at_group" >&5
$as_echo "$as_me: WARNING: unable to parse test group: $at_group" >&2;}
      at_failed=:
    fi
    at_fn_group_postprocess
    test -f "$at_stop_file" && break
    at_first=false
  done
fi

# Wrap up the test suite with summary statistics.
cd "$at_helper_dir"

# Use ?..???? when the list must remain sorted, the faster * otherwise.
at_pass_list=`for f in */pass; do echo $f; done | sed '/\*/d; s,/pass,,'`
at_skip_list=`for f in */skip; do echo $f; done | sed '/\*/d; s,/skip,,'`
at_xfail_list=`for f in */xfail; do echo $f; done | sed '/\*/d; s,/xfail,,'`
at_xpass_list=`for f in ?/xpass ??/xpass ???/xpass ????/xpass; do
		 echo $f; done | sed '/?/d; s,/xpass,,'`
at_fail_list=`for f in ?/fail ??/fail ???/fail ????/fail; do
		echo $f; done | sed '/?/d; s,/fail,,'`

set X $at_pass_list $at_xpass_list $at_xfail_list $at_fail_list $at_skip_list
shift; at_group_count=$#
set X $at_xpass_list; shift; at_xpass_count=$#; at_xpass_list=$*
set X $at_xfail_list; shift; at_xfail_count=$#
set X $at_fail_list; shift; at_fail_count=$#; at_fail_list=$*
set X $at_skip_list; shift; at_skip_count=$#

as_fn_arith $at_group_count - $at_skip_count && at_run_count=$as_val
as_fn_arith $at_xpass_count + $at_fail_count && at_unexpected_count=$as_val
as_fn_arith $at_xfail_count + $at_fail_count && at_total_fail_count=$as_val

# Back to the top directory.
cd "$at_dir"
rm -rf "$at_helper_dir"

# Compute the duration of the suite.
at_stop_date=`date`
at_stop_time=`date +%s 2>/dev/null`
$as_echo "$as_me: ending at: $at_stop_date" >&5
case $at_start_time,$at_stop_time in
  [0-9]*,[0-9]*)
    as_fn_arith $at_stop_time - $at_start_time && at_duration_s=$as_val
    as_fn_arith $at_duration_s / 60 && at_duration_m=$as_val
    as_fn_arith $at_duration_m / 60 && at_duration_h=$as_val
    as_fn_arith $at_duration_s % 60 && at_duration_s=$as_val
    as_fn_arith $at_duration_m % 60 && at_duration_m=$as_val
    at_duration="${at_duration_h}h ${at_duration_m}m ${at_duration_s}s"
    $as_echo "$as_me: test suite duration: $at_duration" >&5
    ;;
esac

echo
$as_echo "## ------------- ##
## Test results. ##
## ------------- ##"
echo
{
  echo
  $as_echo "## ------------- ##
## Test results. ##
## ------------- ##"
  echo
} >&5

if test $at_run_count = 1; then
  at_result="1 test"
  at_were=was
else
  at_result="$at_run_count tests"
  at_were=were
fi
if $at_errexit_p && test $at_unexpected_count != 0; then
  if test $at_xpass_count = 1; then
    at_result="$at_result $at_were run, one passed"
  else
    at_result="$at_result $at_were run, one failed"
  fi
  at_result="$at_result unexpectedly and inhibited subsequent tests."
  at_color=$at_red
else
  # Don't you just love exponential explosion of the number of cases?
  at_color=$at_red
  case $at_xpass_count:$at_fail_count:$at_xfail_count in
    # So far, so good.
    0:0:0) at_result="$at_result $at_were successful." at_color=$at_grn ;;
    0:0:*) at_result="$at_result behaved as expected." at_color=$at_lgn ;;

    # Some unexpected failures
    0:*:0) at_result="$at_result $at_were run,
$at_fail_count failed unexpectedly." ;;

    # Some failures, both expected and unexpected
    0:*:1) at_result="$at_result $at_were run,
$at_total_fail_count failed ($at_xfail_count expected failure)." ;;
    0:*:*) at_result="$at_result $at_were run,
$at_total_fail_count failed ($at_xfail_count expected failures)." ;;

    # No unexpected failures, but some xpasses
    *:0:*) at_result="$at_result $at_were run,
$at_xpass_count passed unexpectedly." ;;

    # No expected failures, but failures and xpasses
    *:1:0) at_result="$at_result $at_were run,
$at_unexpected_count did not behave as expected ($at_fail_count unexpected failure)." ;;
    *:*:0) at_result="$at_result $at_were run,
$at_unexpected_count did not behave as expected ($at_fail_count unexpected failures)." ;;

    # All of them.
    *:*:1) at_result="$at_result $at_were run,
$at_xpass_count passed unexpectedly,
$at_total_fail_count failed ($at_xfail_count expected failure)." ;;
    *:*:*) at_result="$at_result $at_were run,
$at_xpass_count passed unexpectedly,
$at_total_fail_count failed ($at_xfail_count expected failures)." ;;
  esac

  if test $at_skip_count = 0 && test $at_run_count -gt 1; then
    at_result="All $at_result"
  fi
fi

# Now put skips in the mix.
case $at_skip_count in
  0) ;;
  1) at_result="$at_result
1 test was skipped." ;;
  *) at_result="$at_result
$at_skip_count tests were skipped." ;;
esac

if test $at_unexpected_count = 0; then
  echo "$at_color$at_result$at_std"
  echo "$at_result" >&5
else
  echo "${at_color}ERROR: $at_result$at_std" >&2
  echo "ERROR: $at_result" >&5
  {
    echo
    $as_echo "## ------------------------ ##
## Summary of the failures. ##
## ------------------------ ##"

    # Summary of failed and skipped tests.
    if test $at_fail_count != 0; then
      echo "Failed tests:"
      $SHELL "$at_myself" $at_fail_list --list
      echo
    fi
    if test $at_skip_count != 0; then
      echo "Skipped tests:"
      $SHELL "$at_myself" $at_skip_list --list
      echo
    fi
    if test $at_xpass_count != 0; then
      echo "Unexpected passes:"
      $SHELL "$at_myself" $at_xpass_list --list
      echo
    fi
    if test $at_fail_count != 0; then
      $as_echo "## ---------------------- ##
## Detailed failed tests. ##
## ---------------------- ##"
      echo
      for at_group in $at_fail_list
      do
	at_group_normalized=$at_group

  eval 'while :; do
    case $at_group_normalized in #(
    '"$at_format"'*) break;;
    esac
    at_group_normalized=0$at_group_normalized
  done'

	cat "$at_suite_dir/$at_group_normalized/$as_me.log"
	echo
      done
      echo
    fi
    if test -n "$at_top_srcdir"; then
      sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## ${at_top_build_prefix}config.log ##
_ASBOX
      sed 's/^/| /' ${at_top_build_prefix}config.log
      echo
    fi
  } >&5

  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
## $as_me.log was created. ##
_ASBOX

  echo
  if $at_debug_p; then
    at_msg='per-test log files'
  else
    at_msg="\`${at_testdir+${at_testdir}/}$as_me.log'"
  fi
  $as_echo "Please send $at_msg and all information you think might help:

   To: <bug-gnucobol@gnu.org>
   Subject: [GnuCOBOL 3.2] $as_me: $at_fail_list${at_fail_list:+ failed${at_xpass_list:+, }}$at_xpass_list${at_xpass_list:+ passed unexpectedly}

You may investigate any problem if you feel able to do so, in which
case the test suite provides a good starting point.  Its output may
be found below \`${at_testdir+${at_testdir}/}$as_me.dir'.
"
  exit 1
fi

exit 0

## ------------- ##
## Actual tests. ##
## ------------- ##
#AT_START_1
at_fn_group_banner 1 'used_binaries.at:27' \
  "compiler help and information" "                  " 1
at_xfail=no
(
  $as_echo "1. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: check at least some parts of the output by using $GREP
{ set +x
$as_echo "$at_srcdir/used_binaries.at:31: \$COBC --version"
at_fn_check_prepare_dynamic "$COBC --version" "used_binaries.at:31"
( $at_check_trace; $COBC --version
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:31"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:32: \$COBC -v --version"
at_fn_check_prepare_dynamic "$COBC -v --version" "used_binaries.at:32"
( $at_check_trace; $COBC -v --version
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:32"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:33: \$COBC -q --version"
at_fn_check_prepare_dynamic "$COBC -q --version" "used_binaries.at:33"
( $at_check_trace; $COBC -q --version
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:33"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:34: \$COBC --help"
at_fn_check_prepare_dynamic "$COBC --help" "used_binaries.at:34"
( $at_check_trace; $COBC --help
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:34"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:35: \$COBC --info"
at_fn_check_prepare_dynamic "$COBC --info" "used_binaries.at:35"
( $at_check_trace; $COBC --info
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:35"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:36: \$COBC -v --info"
at_fn_check_prepare_dynamic "$COBC -v --info" "used_binaries.at:36"
( $at_check_trace; $COBC -v --info
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:37: \$COBC -q --info"
at_fn_check_prepare_dynamic "$COBC -q --info" "used_binaries.at:37"
( $at_check_trace; $COBC -q --info
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:37"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:38: \$COBC --list-reserved"
at_fn_check_prepare_dynamic "$COBC --list-reserved" "used_binaries.at:38"
( $at_check_trace; $COBC --list-reserved
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:38"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:39: \$COBC --list-registers"
at_fn_check_prepare_dynamic "$COBC --list-registers" "used_binaries.at:39"
( $at_check_trace; $COBC --list-registers
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:40: \$COBC --list-intrinsics"
at_fn_check_prepare_dynamic "$COBC --list-intrinsics" "used_binaries.at:40"
( $at_check_trace; $COBC --list-intrinsics
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:40"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:41: \$COBC --list-mnemonics"
at_fn_check_prepare_dynamic "$COBC --list-mnemonics" "used_binaries.at:41"
( $at_check_trace; $COBC --list-mnemonics
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:42: \$COBC -std=mf --list-reserved"
at_fn_check_prepare_dynamic "$COBC -std=mf --list-reserved" "used_binaries.at:42"
( $at_check_trace; $COBC -std=mf --list-reserved
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:42"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:43: \$COBC -std=acu --list-registers"
at_fn_check_prepare_dynamic "$COBC -std=acu --list-registers" "used_binaries.at:43"
( $at_check_trace; $COBC -std=acu --list-registers
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:44: \$COBC -std=cobol2002 --list-intrinsics"
at_fn_check_prepare_dynamic "$COBC -std=cobol2002 --list-intrinsics" "used_binaries.at:44"
( $at_check_trace; $COBC -std=cobol2002 --list-intrinsics
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:45: \$COBC -std=ibm --list-mnemonics"
at_fn_check_prepare_dynamic "$COBC -std=ibm --list-mnemonics" "used_binaries.at:45"
( $at_check_trace; $COBC -std=ibm --list-mnemonics
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:46: \$COBC --list-system"
at_fn_check_prepare_dynamic "$COBC --list-system" "used_binaries.at:46"
( $at_check_trace; $COBC --list-system
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:47: \$COBC --list-exceptions"
at_fn_check_prepare_dynamic "$COBC --list-exceptions" "used_binaries.at:47"
( $at_check_trace; $COBC --list-exceptions
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:47"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1
#AT_START_2
at_fn_group_banner 2 'used_binaries.at:51' \
  "compiler warnings" "                              " 1
at_xfail=no
(
  $as_echo "2. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        77 var1    pic 9.
        77 var2    pic 99.
        PROCEDURE DIVISION.
        PERFORM UNTIL 0 = 1
           DISPLAY 'BLA'
        END-PERFORM.
        MOVE var1 to var2
        MOVE var2 to var1
        GOBACK.
_ATEOF

{ set +x
$as_echo "$at_srcdir/used_binaries.at:69: \$COBC -fsyntax-only prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only prog.cob" "used_binaries.at:69"
( $at_check_trace; $COBC -fsyntax-only prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:69"
$at_failed && at_fn_log_failure
$at_traceon; }

# increasing to more warnings
{ set +x
$as_echo "$at_srcdir/used_binaries.at:71: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wadditional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wadditional prog.cob" "used_binaries.at:71"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wadditional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:71"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:74: \$COBC -fsyntax-only -fdiagnostics-plain-output -fno-diagnostics-show-option -Wadditional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -fno-diagnostics-show-option -Wadditional prog.cob" "used_binaries.at:74"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -fno-diagnostics-show-option -Wadditional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: PERFORM FOREVER since UNTIL is always FALSE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:74"
$at_failed && at_fn_log_failure
$at_traceon; }

# which in this case is also included in -Wall
{ set +x
$as_echo "$at_srcdir/used_binaries.at:78: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wall prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wall prog.cob" "used_binaries.at:78"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wall prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: expression '0' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:9: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }

# -Wextra is more descriptive ...
{ set +x
$as_echo "$at_srcdir/used_binaries.at:83: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wextra prog.cob" "used_binaries.at:83"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: expression '0' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:9: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
prog.cob:10: warning: DISPLAY statement not terminated by END-DISPLAY [-Wterminator]
prog.cob:13: warning: some digits may be truncated [-Wpossible-truncate]
prog.cob:7: note: 'var2' defined here as PIC 99 [-Wpossible-truncate]
prog.cob:6: note: 'var1' defined here as PIC 9 [-Wpossible-truncate]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }

# ... the old -W is in for backwards portability
{ set +x
$as_echo "$at_srcdir/used_binaries.at:92: \$COBC -fsyntax-only -fdiagnostics-plain-output -W prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -W prog.cob" "used_binaries.at:92"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -W prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: expression '0' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:9: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
prog.cob:10: warning: DISPLAY statement not terminated by END-DISPLAY [-Wterminator]
prog.cob:13: warning: some digits may be truncated [-Wpossible-truncate]
prog.cob:7: note: 'var2' defined here as PIC 99 [-Wpossible-truncate]
prog.cob:6: note: 'var1' defined here as PIC 9 [-Wpossible-truncate]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }

# a global "error" use implies no warning settings
{ set +x
$as_echo "$at_srcdir/used_binaries.at:101: \$COBC -fsyntax-only -Werror prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -Werror prog.cob" "used_binaries.at:101"
( $at_check_trace; $COBC -fsyntax-only -Werror prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:101"
$at_failed && at_fn_log_failure
$at_traceon; }

# a concrete "error" use implies setting the warning
{ set +x
$as_echo "$at_srcdir/used_binaries.at:103: \$COBC -fsyntax-only -fdiagnostics-plain-output -Werror=additional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Werror=additional prog.cob" "used_binaries.at:103"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Werror=additional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: PERFORM FOREVER since UNTIL is always FALSE [-Werror=additional]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:103"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:106: \$COBC -fsyntax-only -fdiagnostics-plain-output -fno-diagnostics-show-option -Werror=additional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -fno-diagnostics-show-option -Werror=additional prog.cob" "used_binaries.at:106"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -fno-diagnostics-show-option -Werror=additional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: PERFORM FOREVER since UNTIL is always FALSE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:106"
$at_failed && at_fn_log_failure
$at_traceon; }

# a "no-error" use implies nothing
{ set +x
$as_echo "$at_srcdir/used_binaries.at:110: \$COBC -fsyntax-only -Wno-error=additional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -Wno-error=additional prog.cob" "used_binaries.at:110"
( $at_check_trace; $COBC -fsyntax-only -Wno-error=additional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:110"
$at_failed && at_fn_log_failure
$at_traceon; }

# ... now combined
{ set +x
$as_echo "$at_srcdir/used_binaries.at:112: \$COBC -fsyntax-only -Werror -Wno-error=additional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -Werror -Wno-error=additional prog.cob" "used_binaries.at:112"
( $at_check_trace; $COBC -fsyntax-only -Werror -Wno-error=additional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:113: \$COBC -fsyntax-only -fdiagnostics-plain-output -Werror=additional -Wno-error prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Werror=additional -Wno-error prog.cob" "used_binaries.at:113"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Werror=additional -Wno-error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: PERFORM FOREVER since UNTIL is always FALSE [-Werror=additional]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:113"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:116: \$COBC -fsyntax-only -fdiagnostics-plain-output -w -Werror=additional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -w -Werror=additional prog.cob" "used_binaries.at:116"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -w -Werror=additional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: PERFORM FOREVER since UNTIL is always FALSE [-Werror=additional]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:119: \$COBC -fsyntax-only -fdiagnostics-plain-output -w -Wadditional prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -w -Wadditional prog.cob" "used_binaries.at:119"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -w -Wadditional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:119"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:122: \$COBC -fsyntax-only -fdiagnostics-plain-output -w -Wpossible-truncate prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -w -Wpossible-truncate prog.cob" "used_binaries.at:122"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -w -Wpossible-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: warning: some digits may be truncated [-Wpossible-truncate]
prog.cob:7: note: 'var2' defined here as PIC 99 [-Wpossible-truncate]
prog.cob:6: note: 'var1' defined here as PIC 9 [-Wpossible-truncate]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:122"
$at_failed && at_fn_log_failure
$at_traceon; }

# TODO: unknown warnings should only get a diagnostic (in verbose mode)
#AT_CHECK([$COBC -fsyntax-only -Wunknown-warning prog.cob], [0], [], [])
#AT_CHECK([$COBC -fsyntax-only -Wno-unknown-warning prog.cob], [0], [], [])
#AT_CHECK([$COBC -fsyntax-only -v -Wunknown-warning prog.cob], [0], [],
#[cobc: unknown warning option 'unknown-warning'
#])
#AT_CHECK([$COBC -fsyntax-only -v -Wno-unknown-warning prog.cob], [0], [],
#[cobc: unknown warning option 'unknown-warning'
#])

cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TEST-VAR PIC 9(2) VALUE 'A'.
       COPY 'CRUD.CPY'.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           MOVE 12 TO TEST-VAR
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:153: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wall prog2.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wall prog2.cob" "used_binaries.at:153"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wall prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: CRUD.CPY: No such file or directory
prog2.cob:6: warning: numeric value is expected [-Wothers]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:153"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:158: \$COBC -fsyntax-only -fdiagnostics-plain-output -fmax-errors=0 prog2.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -fmax-errors=0 prog2.cob" "used_binaries.at:158"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -fmax-errors=0 prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: CRUD.CPY: No such file or directory
cobc: too many errors [-fmax-errors=0]

cobc: aborting compile of prog2.cob at line 7 (unknown: unknown)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 97 $at_status "$at_srcdir/used_binaries.at:158"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:165: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wfatal-errors prog2.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wfatal-errors prog2.cob" "used_binaries.at:165"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wfatal-errors prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: CRUD.CPY: No such file or directory
cobc: too many errors [-Wfatal-errors]

cobc: aborting compile of prog2.cob at line 7 (unknown: unknown)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 97 $at_status "$at_srcdir/used_binaries.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:172: \$COBC -q -Wfatal-errors=123 prog.cob"
at_fn_check_prepare_dynamic "$COBC -q -Wfatal-errors=123 prog.cob" "used_binaries.at:172"
( $at_check_trace; $COBC -q -Wfatal-errors=123 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: option '-Wfatal-errors' doesn't allow an argument
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:172"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_2
#AT_START_3
at_fn_group_banner 3 'used_binaries.at:179' \
  "compiler outputs (general)" "                     " 1
at_xfail=no
(
  $as_echo "3. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 BLA PIC X(5) VALUE 'bluBb'.
        PROCEDURE DIVISION.
        DISPLAY BLA NO ADVANCING END-DISPLAY
        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:193: \$COBC -C prog.cob"
at_fn_check_prepare_dynamic "$COBC -C prog.cob" "used_binaries.at:193"
( $at_check_trace; $COBC -C prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:193"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:194: \$COBC -v -c prog.c"
at_fn_check_prepare_dynamic "$COBC -v -c prog.c" "used_binaries.at:194"
( $at_check_trace; $COBC -v -c prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:194"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:195: \$COBC -v prog.\$COB_OBJECT_EXT"
at_fn_check_prepare_dynamic "$COBC -v prog.$COB_OBJECT_EXT" "used_binaries.at:195"
( $at_check_trace; $COBC -v prog.$COB_OBJECT_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:195"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:196: \$COBCRUN prog"
at_fn_check_prepare_dynamic "$COBCRUN prog" "used_binaries.at:196"
( $at_check_trace; $COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:196"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:197: \$COBC -x -C prog.cob"
at_fn_check_prepare_dynamic "$COBC -x -C prog.cob" "used_binaries.at:197"
( $at_check_trace; $COBC -x -C prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:197"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:198: \$COBC -v -x -c prog.c"
at_fn_check_prepare_dynamic "$COBC -v -x -c prog.c" "used_binaries.at:198"
( $at_check_trace; $COBC -v -x -c prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:198"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:199: \$COBC -v -x prog.\$COB_OBJECT_EXT -o progo"
at_fn_check_prepare_dynamic "$COBC -v -x prog.$COB_OBJECT_EXT -o progo" "used_binaries.at:199"
( $at_check_trace; $COBC -v -x prog.$COB_OBJECT_EXT -o progo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:199"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:200: \$COBCRUN_DIRECT ./progo"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progo" "used_binaries.at:200"
( $at_check_trace; $COBCRUN_DIRECT ./progo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:200"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:201: \$COBC -E prog.cob"
at_fn_check_prepare_dynamic "$COBC -E prog.cob" "used_binaries.at:201"
( $at_check_trace; $COBC -E prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "#line 1 \"prog.cob\"

 IDENTIFICATION DIVISION.
 PROGRAM-ID. prog.
 DATA DIVISION.
 WORKING-STORAGE SECTION.
 01 BLA PIC X(5) VALUE 'bluBb'.
 PROCEDURE DIVISION.
 DISPLAY BLA NO ADVANCING END-DISPLAY
 STOP RUN.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:201"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:213: \$COBC -E -o prog.i prog.cob"
at_fn_check_prepare_dynamic "$COBC -E -o prog.i prog.cob" "used_binaries.at:213"
( $at_check_trace; $COBC -E -o prog.i prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:213"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:214: \$COBC -x prog.i"
at_fn_check_prepare_dynamic "$COBC -x prog.i" "used_binaries.at:214"
( $at_check_trace; $COBC -x prog.i
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:214"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:215: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:215"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:215"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_3
#AT_START_4
at_fn_group_banner 4 'used_binaries.at:219' \
  "compiler outputs (file specified)" "              " 1
at_xfail=no
(
  $as_echo "4. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 BLA PIC X(5) VALUE 'bluBb'.
        PROCEDURE DIVISION.
        MAIN-PROC SECTION.
        00.
        COPY PROC.
        END-PROC  SECTION.
        COPY PROCE in "sub".
        EX.
            STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:238: mkdir -p sub/copy"
at_fn_check_prepare_trace "used_binaries.at:238"
( $at_check_trace; mkdir -p sub/copy
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:238"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >sub/copy/PROC.cpy <<'_ATEOF'

           DISPLAY BLA NO ADVANCING.
_ATEOF

cat >sub/PROCE.cpy <<'_ATEOF'

           DISPLAY ' END' NO ADVANCING.
_ATEOF





{ set +x
$as_echo "$at_srcdir/used_binaries.at:250: \$COBC -I sub/copy prog.cob -o prog.c"
at_fn_check_prepare_dynamic "$COBC -I sub/copy prog.cob -o prog.c" "used_binaries.at:250"
( $at_check_trace; $COBC -I sub/copy prog.cob -o prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:250"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:251: \$COBC -I sub/copy prog.c -o prog.\$COB_OBJECT_EXT"
at_fn_check_prepare_dynamic "$COBC -I sub/copy prog.c -o prog.$COB_OBJECT_EXT" "used_binaries.at:251"
( $at_check_trace; $COBC -I sub/copy prog.c -o prog.$COB_OBJECT_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:251"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:252: \$COBC -I sub/copy prog.\$COB_OBJECT_EXT -o prog.\$COB_MODULE_EXT"
at_fn_check_prepare_dynamic "$COBC -I sub/copy prog.$COB_OBJECT_EXT -o prog.$COB_MODULE_EXT" "used_binaries.at:252"
( $at_check_trace; $COBC -I sub/copy prog.$COB_OBJECT_EXT -o prog.$COB_MODULE_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:252"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:253: \$COBCRUN prog"
at_fn_check_prepare_dynamic "$COBCRUN prog" "used_binaries.at:253"
( $at_check_trace; $COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb END" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:253"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:254: \$COBC -I sub/copy -x prog.cob -o prog.c"
at_fn_check_prepare_dynamic "$COBC -I sub/copy -x prog.cob -o prog.c" "used_binaries.at:254"
( $at_check_trace; $COBC -I sub/copy -x prog.cob -o prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:254"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:255: \$COBC -I sub/copy -x prog.c -o prog.\$COB_OBJECT_EXT"
at_fn_check_prepare_dynamic "$COBC -I sub/copy -x prog.c -o prog.$COB_OBJECT_EXT" "used_binaries.at:255"
( $at_check_trace; $COBC -I sub/copy -x prog.c -o prog.$COB_OBJECT_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:255"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:256: \$COBC -I sub/copy -x prog.\$COB_OBJECT_EXT -o progo\$COB_EXE_EXT"
at_fn_check_prepare_dynamic "$COBC -I sub/copy -x prog.$COB_OBJECT_EXT -o progo$COB_EXE_EXT" "used_binaries.at:256"
( $at_check_trace; $COBC -I sub/copy -x prog.$COB_OBJECT_EXT -o progo$COB_EXE_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:256"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:257: \$COBCRUN_DIRECT ./progo"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progo" "used_binaries.at:257"
( $at_check_trace; $COBCRUN_DIRECT ./progo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb END" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:257"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

# making the extension explicit here to not let case-insensitive file-systems catch a .CPY...
{ set +x
$as_echo "$at_srcdir/used_binaries.at:259: \$COBC -I sub/copy prog.cob -ext=cpy -o prog.i"
at_fn_check_prepare_dynamic "$COBC -I sub/copy prog.cob -ext=cpy -o prog.i" "used_binaries.at:259"
( $at_check_trace; $COBC -I sub/copy prog.cob -ext=cpy -o prog.i
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:259"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:260: \$COBC -x prog.i -o prog\$COB_EXE_EXT"
at_fn_check_prepare_dynamic "$COBC -x prog.i -o prog$COB_EXE_EXT" "used_binaries.at:260"
( $at_check_trace; $COBC -x prog.i -o prog$COB_EXE_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:260"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:261: \$COBCRUN_DIRECT ./prog\$COB_EXE_EXT"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog$COB_EXE_EXT" "used_binaries.at:261"
( $at_check_trace; $COBCRUN_DIRECT ./prog$COB_EXE_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb END" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:261"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:262: \$COBC -x prog.i -fgen-c-line-directives -fgen-c-labels -save-temps"
at_fn_check_prepare_dynamic "$COBC -x prog.i -fgen-c-line-directives -fgen-c-labels -save-temps" "used_binaries.at:262"
( $at_check_trace; $COBC -x prog.i -fgen-c-line-directives -fgen-c-labels -save-temps
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:262"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:263: \$GREP 'prog.i'   prog.c"
at_fn_check_prepare_dynamic "$GREP 'prog.i'   prog.c" "used_binaries.at:263"
( $at_check_trace; $GREP 'prog.i'   prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:263"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:264: \$GREP 'prog.i'   prog.c | \$GREP '#line'"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:264"
( $at_check_trace; $GREP 'prog.i'   prog.c | $GREP '#line'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:264"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:265: \$GREP 'prog.cob' prog.c | \$GREP '#line'"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:265"
( $at_check_trace; $GREP 'prog.cob' prog.c | $GREP '#line'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:265"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:266: \$GREP 'PROC.cpy' prog.c | \$GREP '#line'"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:266"
( $at_check_trace; $GREP 'PROC.cpy' prog.c | $GREP '#line'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:266"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:267: \$GREP 'ENTRY_PROG:'          prog.c"
at_fn_check_prepare_dynamic "$GREP 'ENTRY_PROG:'          prog.c" "used_binaries.at:267"
( $at_check_trace; $GREP 'ENTRY_PROG:'          prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:267"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:268: \$GREP 'SECTION_END__PROC:'   prog.c"
at_fn_check_prepare_dynamic "$GREP 'SECTION_END__PROC:'   prog.c" "used_binaries.at:268"
( $at_check_trace; $GREP 'SECTION_END__PROC:'   prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:268"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:269: \$GREP 'PARAGRAPH_00_l_4:'    prog.c"
at_fn_check_prepare_dynamic "$GREP 'PARAGRAPH_00_l_4:'    prog.c" "used_binaries.at:269"
( $at_check_trace; $GREP 'PARAGRAPH_00_l_4:'    prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:269"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:270: \$GREP 'PARAGRAPH_EX_l_7:'    prog.c"
at_fn_check_prepare_dynamic "$GREP 'PARAGRAPH_EX_l_7:'    prog.c" "used_binaries.at:270"
( $at_check_trace; $GREP 'PARAGRAPH_EX_l_7:'    prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:270"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:271: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:271"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb END" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:271"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c"
$at_traceon; }



{ set +x
$as_echo "$at_srcdir/used_binaries.at:274: \$COBC -I sub/copy prog.cob -ext=cpy -o prog.i -MF prog.d -MT \"prog.c prog.h\" -MT prog\$COB_EXE_EXT -MT prog.\$COB_OBJECT_EXT -MT prog.i  -fsyntax-only"
at_fn_check_prepare_dynamic "$COBC -I sub/copy prog.cob -ext=cpy -o prog.i -MF prog.d -MT \"prog.c prog.h\" -MT prog$COB_EXE_EXT -MT prog.$COB_OBJECT_EXT -MT prog.i  -fsyntax-only" "used_binaries.at:274"
( $at_check_trace; $COBC -I sub/copy prog.cob -ext=cpy -o prog.i -MF prog.d -MT "prog.c prog.h" -MT prog$COB_EXE_EXT -MT prog.$COB_OBJECT_EXT -MT prog.i  -fsyntax-only
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:274"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:275: \$GREP 'prog.c prog.h '       prog.d"
at_fn_check_prepare_dynamic "$GREP 'prog.c prog.h '       prog.d" "used_binaries.at:275"
( $at_check_trace; $GREP 'prog.c prog.h '       prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:275"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:276: \$GREP ' prog.i:'             prog.d"
at_fn_check_prepare_dynamic "$GREP ' prog.i:'             prog.d" "used_binaries.at:276"
( $at_check_trace; $GREP ' prog.i:'             prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:276"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP 'sub/copy/PROC.cpy'    prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub/copy/PROC.cpy'    prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP 'sub/copy/PROC.cpy'    prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
if $at_failed; then :

  # Previous test "failed" --> no entry with slash available, check backslash for this and following tests
  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP ' sub\\\\copy\\\\PROC.cpy \\\\'  prog.d"
at_fn_check_prepare_dynamic "$GREP ' sub\\\\copy\\\\PROC.cpy \\\\'  prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP ' sub\\copy\\PROC.cpy \\'  prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP ' sub\\\\PROCE.cpy'          prog.d"
at_fn_check_prepare_dynamic "$GREP ' sub\\\\PROCE.cpy'          prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP ' sub\\PROCE.cpy'          prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP 'sub\\\\copy\\\\PROC.cpy:'     prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub\\\\copy\\\\PROC.cpy:'     prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP 'sub\\copy\\PROC.cpy:'     prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP 'sub\\\\PROCE.cpy:'          prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub\\\\PROCE.cpy:'          prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP 'sub\\PROCE.cpy:'          prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }


else

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP ' sub/copy/PROC.cpy \\\\'    prog.d"
at_fn_check_prepare_dynamic "$GREP ' sub/copy/PROC.cpy \\\\'    prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP ' sub/copy/PROC.cpy \\'    prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP ' sub/PROCE.cpy'           prog.d"
at_fn_check_prepare_dynamic "$GREP ' sub/PROCE.cpy'           prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP ' sub/PROCE.cpy'           prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP 'sub/copy/PROC.cpy:'       prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub/copy/PROC.cpy:'       prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP 'sub/copy/PROC.cpy:'       prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

  { set +x
$as_echo "$at_srcdir/used_binaries.at:277: \$GREP 'sub/PROCE.cpy:'           prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub/PROCE.cpy:'           prog.d" "used_binaries.at:277"
( $at_check_trace; $GREP 'sub/PROCE.cpy:'           prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:277"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }


fi
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }


# test again with trailing slash which should not result in different files
{ set +x
$as_echo "$at_srcdir/used_binaries.at:291: \$COBC -I sub/copy/ prog.cob -ext=cpy -o prog.i -MF prog.d -MT \"prog.c prog.h\" -MT prog\$COB_EXE_EXT -MT prog.\$COB_OBJECT_EXT -MT prog.i  -fsyntax-only"
at_fn_check_prepare_dynamic "$COBC -I sub/copy/ prog.cob -ext=cpy -o prog.i -MF prog.d -MT \"prog.c prog.h\" -MT prog$COB_EXE_EXT -MT prog.$COB_OBJECT_EXT -MT prog.i  -fsyntax-only" "used_binaries.at:291"
( $at_check_trace; $COBC -I sub/copy/ prog.cob -ext=cpy -o prog.i -MF prog.d -MT "prog.c prog.h" -MT prog$COB_EXE_EXT -MT prog.$COB_OBJECT_EXT -MT prog.i  -fsyntax-only
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:291"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:292: \$GREP 'sub/copy/PROC.cpy'    prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub/copy/PROC.cpy'    prog.d" "used_binaries.at:292"
( $at_check_trace; $GREP 'sub/copy/PROC.cpy'    prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:292"
if $at_failed; then :

  # Previous test "failed" --> no entry with slash available, check backslash for this test
  { set +x
$as_echo "$at_srcdir/used_binaries.at:292: \$GREP 'sub\\\\copy\\\\PROC.cpy'  prog.d"
at_fn_check_prepare_dynamic "$GREP 'sub\\\\copy\\\\PROC.cpy'  prog.d" "used_binaries.at:292"
( $at_check_trace; $GREP 'sub\\copy\\PROC.cpy'  prog.d
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:292"
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }


fi
$at_failed && at_fn_log_failure  \
"prog.i" \
"prog.c" \
"prog.d"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_4
#AT_START_5
at_fn_group_banner 5 'used_binaries.at:300' \
  "compiler outputs (path specified)" "              " 1
at_xfail=no
(
  $as_echo "5. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 BLA PIC X(5) VALUE 'bluBb'.
        PROCEDURE DIVISION.
        DISPLAY BLA NO ADVANCING END-DISPLAY
        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:314: mkdir -p sub"
at_fn_check_prepare_trace "used_binaries.at:314"
( $at_check_trace; mkdir -p sub
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:315: \$COBC prog.cob -o sub/prog.c"
at_fn_check_prepare_dynamic "$COBC prog.cob -o sub/prog.c" "used_binaries.at:315"
( $at_check_trace; $COBC prog.cob -o sub/prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:315"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:316: \$COBC \$(_return_path \"sub/prog.c\") -o \$(_return_path \"sub/prog.\$COB_OBJECT_EXT\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:316"
( $at_check_trace; $COBC $(_return_path "sub/prog.c") -o $(_return_path "sub/prog.$COB_OBJECT_EXT")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:316"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:317: \$COBC \$(_return_path \"sub/prog.\$COB_OBJECT_EXT\") -o \$(_return_path \"sub/prog\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:317"
( $at_check_trace; $COBC $(_return_path "sub/prog.$COB_OBJECT_EXT") -o $(_return_path "sub/prog")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:317"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:318: \$COBCRUN -M \$(_return_path \"sub/\") prog"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:318"
( $at_check_trace; $COBCRUN -M $(_return_path "sub/") prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:318"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:319: \$COBC -x prog.cob -o \$(_return_path \"sub/prog.c\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:319"
( $at_check_trace; $COBC -x prog.cob -o $(_return_path "sub/prog.c")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:319"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:320: \$COBC -x \$(_return_path \"sub/prog.c\") -o \$(_return_path \"sub/prog.\$COB_OBJECT_EXT\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:320"
( $at_check_trace; $COBC -x $(_return_path "sub/prog.c") -o $(_return_path "sub/prog.$COB_OBJECT_EXT")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:320"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:321: \$COBC -x \$(_return_path \"sub/prog.\$COB_OBJECT_EXT\") -o \$(_return_path \"sub/progo\$COB_EXE_EXT\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:321"
( $at_check_trace; $COBC -x $(_return_path "sub/prog.$COB_OBJECT_EXT") -o $(_return_path "sub/progo$COB_EXE_EXT")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:322: \$COBCRUN_DIRECT ./sub/progo"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./sub/progo" "used_binaries.at:322"
( $at_check_trace; $COBCRUN_DIRECT ./sub/progo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:322"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:323: \$COBC prog.cob -o \$(_return_path \"sub/prog.i\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:323"
( $at_check_trace; $COBC prog.cob -o $(_return_path "sub/prog.i")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:323"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:324: \$COBC -x sub/prog.i -o \$(_return_path \"sub/prog\$COB_EXE_EXT\")"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:324"
( $at_check_trace; $COBC -x sub/prog.i -o $(_return_path "sub/prog$COB_EXE_EXT")
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:324"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:325: \$COBCRUN_DIRECT ./sub/prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./sub/prog" "used_binaries.at:325"
( $at_check_trace; $COBCRUN_DIRECT ./sub/prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:325"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_5
#AT_START_6
at_fn_group_banner 6 'used_binaries.at:329' \
  "compiler outputs (assembler)" "                   " 1
at_xfail=no
(
  $as_echo "6. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 BLA PIC X(5) VALUE 'bluBb'.
        PROCEDURE DIVISION.
        DISPLAY BLA NO ADVANCING END-DISPLAY
        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:343: \$COBC -v -S prog.cob"
at_fn_check_prepare_dynamic "$COBC -v -S prog.cob" "used_binaries.at:343"
( $at_check_trace; $COBC -v -S prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:343"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:344: test -f prog.s"
at_fn_check_prepare_trace "used_binaries.at:344"
( $at_check_trace; test -f prog.s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:344"
if $at_failed; then :
  # Previous test "failed" --> prog.s not available --> likely a VS build
# only check for file as cl.exe cannot create executables from self-created
# assembler sources
{ set +x
$as_echo "$at_srcdir/used_binaries.at:344: test -f prog.asm"
at_fn_check_prepare_trace "used_binaries.at:344"
( $at_check_trace; test -f prog.asm
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:344"
$at_failed && at_fn_log_failure
$at_traceon; }

else
  # Previous test "passed" --> prog.s is available, test compilation and run
{ set +x
$as_echo "$at_srcdir/used_binaries.at:344: \$COBC -v prog.s"
at_fn_check_prepare_dynamic "$COBC -v prog.s" "used_binaries.at:344"
( $at_check_trace; $COBC -v prog.s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:344"
$at_failed && at_fn_log_failure
$at_traceon; }

 { set +x
$as_echo "$at_srcdir/used_binaries.at:344: \$COBCRUN prog"
at_fn_check_prepare_dynamic "$COBCRUN prog" "used_binaries.at:344"
( $at_check_trace; $COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:344"
$at_failed && at_fn_log_failure
$at_traceon; }

fi
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:352: \$COBC -v -x -S prog.cob"
at_fn_check_prepare_dynamic "$COBC -v -x -S prog.cob" "used_binaries.at:352"
( $at_check_trace; $COBC -v -x -S prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:352"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:353: test -f prog.s"
at_fn_check_prepare_trace "used_binaries.at:353"
( $at_check_trace; test -f prog.s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:353"
if $at_failed; then :
  # Previous test "failed" --> prog.s not available --> likely a VS build
# only check for file as cl.exe cannot create executables from self-created
# assembler sources
{ set +x
$as_echo "$at_srcdir/used_binaries.at:353: test -f prog.asm"
at_fn_check_prepare_trace "used_binaries.at:353"
( $at_check_trace; test -f prog.asm
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:353"
$at_failed && at_fn_log_failure
$at_traceon; }

else
  # Previous test "passed" --> prog.s is available, test compilation and run
{ set +x
$as_echo "$at_srcdir/used_binaries.at:353: \$COBC -v -x prog.s"
at_fn_check_prepare_dynamic "$COBC -v -x prog.s" "used_binaries.at:353"
( $at_check_trace; $COBC -v -x prog.s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:353"
$at_failed && at_fn_log_failure
$at_traceon; }

 { set +x
$as_echo "$at_srcdir/used_binaries.at:353: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:353"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "bluBb" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:353"
$at_failed && at_fn_log_failure
$at_traceon; }

fi
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_6
#AT_START_7
at_fn_group_banner 7 'used_binaries.at:364' \
  "source file not found" "                          " 1
at_xfail=no
(
  $as_echo "7. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/used_binaries.at:367: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "used_binaries.at:367"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: prog.cob: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:367"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_7
#AT_START_8
at_fn_group_banner 8 'used_binaries.at:374' \
  "temporary path invalid" "                         " 1
at_xfail=no
(
  $as_echo "8. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: may be either removed completely as there was a report about
#       this test "failing" - or skipped as this very often fails for
#       WIN32 builds

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:390: TMPDIR=\"\" TMP=\"notthere\" TEMP=\"\" \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "TMPDIR=\"\" TMP=\"notthere\" TEMP=\"\" $COMPILE prog.cob" "used_binaries.at:390"
( $at_check_trace; TMPDIR="" TMP="notthere" TEMP="" $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: Temporary directory TMP is invalid, adjust TMPDIR!
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:390"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:393: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:393"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:393"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:394: TMPDIR=\"\" TMP=\"\" TEMP=\"./prog.cob\" \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "TMPDIR=\"\" TMP=\"\" TEMP=\"./prog.cob\" $COMPILE prog.cob" "used_binaries.at:394"
( $at_check_trace; TMPDIR="" TMP="" TEMP="./prog.cob" $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: Temporary directory TEMP is invalid, adjust TMPDIR!
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:394"
$at_failed && at_fn_log_failure
$at_traceon; }

# TMPDIR is only checked when actually needed which is currently only the case
# for SORT
#AT_CHECK([TMPDIR="./prog.cob" $COBCRUN_DIRECT ./prog], [0], [OK],
#[libcob: warning: Temporary directory TEMP is invalid, adjust TMPDIR!
#])
#AT_CHECK([COB_DISABLE_WARNINGS=1 TMPDIR="./prog.cob" $COBCRUN_DIRECT ./prog], [0], [OK],
#[libcob: warning: Temporary directory TEMP is invalid, adjust TMPDIR!
#])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_8
#AT_START_9
at_fn_group_banner 9 'used_binaries.at:409' \
  "use of full path for cobc" "                      " 1
at_xfail=no
(
  $as_echo "9. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:421: \$COMPILE \"\$(_return_path \"\$(pwd)/prog.cob\")\""
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:421"
( $at_check_trace; $COMPILE "$(_return_path "$(pwd)/prog.cob")"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:421"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:422: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:422"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:422"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_9
#AT_START_10
at_fn_group_banner 10 'used_binaries.at:427' \
  "C Compiler optimizations" "                       " 1
at_xfail=no
(
  $as_echo "10. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:439: \$COMPILE -v -O  -o prog  prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -v -O  -o prog  prog.cob" "used_binaries.at:439"
( $at_check_trace; $COMPILE -v -O  -o prog  prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:439"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:440: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:440"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:440"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:442: \$COMPILE -v -O2 -o prog2 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -v -O2 -o prog2 prog.cob" "used_binaries.at:442"
( $at_check_trace; $COMPILE -v -O2 -o prog2 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:442"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:443: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "used_binaries.at:443"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:443"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:445: \$COMPILE -v -Os -o progs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -v -Os -o progs prog.cob" "used_binaries.at:445"
( $at_check_trace; $COMPILE -v -Os -o progs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:445"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:446: \$COBCRUN_DIRECT ./progs"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progs" "used_binaries.at:446"
( $at_check_trace; $COBCRUN_DIRECT ./progs
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:446"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:448: \$COMPILE -v -O3 -o prog3 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -v -O3 -o prog3 prog.cob" "used_binaries.at:448"
( $at_check_trace; $COMPILE -v -O3 -o prog3 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:448"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:449: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "used_binaries.at:449"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:449"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:451: \$COMPILE -v -O0  -o prog  prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -v -O0  -o prog  prog.cob" "used_binaries.at:451"
( $at_check_trace; $COMPILE -v -O0  -o prog  prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:451"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:452: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "used_binaries.at:452"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:452"
$at_failed && at_fn_log_failure
$at_traceon; }


# last test with O2 (strips output) and output name
{ set +x
$as_echo "$at_srcdir/used_binaries.at:455: mkdir -p sub"
at_fn_check_prepare_trace "used_binaries.at:455"
( $at_check_trace; mkdir -p sub
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:455"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:456: \$COMPILE_MODULE -v -O2 -o \$(_return_path \"sub/prog\") prog.cob"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:456"
( $at_check_trace; $COMPILE_MODULE -v -O2 -o $(_return_path "sub/prog") prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:456"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:457: \$COBCRUN -M sub/ prog"
at_fn_check_prepare_dynamic "$COBCRUN -M sub/ prog" "used_binaries.at:457"
( $at_check_trace; $COBCRUN -M sub/ prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:457"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:458: \$COMPILE -v -O2 -o \$(_return_path \"sub/prog\$COB_EXE_EXT\") prog.cob"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:458"
( $at_check_trace; $COMPILE -v -O2 -o $(_return_path "sub/prog$COB_EXE_EXT") prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:458"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:459: \$COBCRUN_DIRECT ./sub/prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./sub/prog" "used_binaries.at:459"
( $at_check_trace; $COBCRUN_DIRECT ./sub/prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:459"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_10
#AT_START_11
at_fn_group_banner 11 'used_binaries.at:464' \
  "invalid cobc option" "                            " 1
at_xfail=no
(
  $as_echo "11. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
_ATEOF


# normal option
{ set +x
$as_echo "$at_srcdir/used_binaries.at:473: \$COMPILE -q --thisoptiondoesntexist prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -q --thisoptiondoesntexist prog.cob" "used_binaries.at:473"
( $at_check_trace; $COMPILE -q --thisoptiondoesntexist prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: unrecognized option '--thisoptiondoesntexist'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:473"
$at_failed && at_fn_log_failure
$at_traceon; }

# flag
{ set +x
$as_echo "$at_srcdir/used_binaries.at:477: \$COMPILE -q -flagdoesntexist prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -q -flagdoesntexist prog.cob" "used_binaries.at:477"
( $at_check_trace; $COMPILE -q -flagdoesntexist prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: unrecognized option '-flagdoesntexist'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:477"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_11
#AT_START_12
at_fn_group_banner 12 'used_binaries.at:484' \
  "cobcrun help and information" "                   " 1
at_xfail=no
(
  $as_echo "12. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: check at least some parts of the output by using $GREP
{ set +x
$as_echo "$at_srcdir/used_binaries.at:488: \$COBCRUN --version"
at_fn_check_prepare_dynamic "$COBCRUN --version" "used_binaries.at:488"
( $at_check_trace; $COBCRUN --version
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:488"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:489: \$COBCRUN -v --version"
at_fn_check_prepare_dynamic "$COBCRUN -v --version" "used_binaries.at:489"
( $at_check_trace; $COBCRUN -v --version
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:489"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:490: \$COBCRUN -q --version"
at_fn_check_prepare_dynamic "$COBCRUN -q --version" "used_binaries.at:490"
( $at_check_trace; $COBCRUN -q --version
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:490"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:491: \$COBCRUN --help"
at_fn_check_prepare_dynamic "$COBCRUN --help" "used_binaries.at:491"
( $at_check_trace; $COBCRUN --help
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:491"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:492: \$COBCRUN --info"
at_fn_check_prepare_dynamic "$COBCRUN --info" "used_binaries.at:492"
( $at_check_trace; $COBCRUN --info
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:492"
$at_failed && at_fn_log_failure
$at_traceon; }

# we explicit do not want to run this here, as it initializes curses
# AT_CHECK([$COBCRUN -v --info], [0], [ignore], [])
{ set +x
$as_echo "$at_srcdir/used_binaries.at:495: \$COBCRUN -q --info"
at_fn_check_prepare_dynamic "$COBCRUN -q --info" "used_binaries.at:495"
( $at_check_trace; $COBCRUN -q --info
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:495"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:496: \$COBCRUN --dumpversion"
at_fn_check_prepare_dynamic "$COBCRUN --dumpversion" "used_binaries.at:496"
( $at_check_trace; $COBCRUN --dumpversion
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:496"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_12
#AT_START_13
at_fn_group_banner 13 'used_binaries.at:500' \
  "cobcrun validation" "                             " 1
at_xfail=no
(
  $as_echo "13. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 WRK-VAR       PIC X(5).
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           DISPLAY EXT-VAR NO ADVANCING
           END-DISPLAY.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       01 WRK-VAR       PIC X(5).
       PROCEDURE        DIVISION.
           MOVE "Hello" TO EXT-VAR.
           CALL "callee"
           END-CALL.
           DISPLAY EXT-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:533: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "used_binaries.at:533"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:533"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:534: \$COMPILE_MODULE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE caller.cob" "used_binaries.at:534"
( $at_check_trace; $COMPILE_MODULE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:534"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:535: \$COBCRUN caller"
at_fn_check_prepare_dynamic "$COBCRUN caller" "used_binaries.at:535"
( $at_check_trace; $COBCRUN caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "HelloWorld" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:535"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_13
#AT_START_14
at_fn_group_banner 14 'used_binaries.at:540' \
  "cobcrun -M DSO entry argument" "                  " 1
at_xfail=no
(
  $as_echo "14. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/used_binaries.at:543: \$COBCRUN -M \"\" nope"
at_fn_check_prepare_dynamic "$COBCRUN -M \"\" nope" "used_binaries.at:543"
( $at_check_trace; $COBCRUN -M "" nope
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "invalid module argument ''
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:543"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           DISPLAY EXT-VAR END-DISPLAY.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Hello" TO EXT-VAR.
           CALL "callee" END-CALL.
           DISPLAY EXT-VAR END-DISPLAY.
           STOP RUN.
       END PROGRAM caller.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      inside.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       01 CLA-VAR       PIC X(5).
       PROCEDURE        DIVISION.
           MOVE "Aloha" TO EXT-VAR.
           CALL "callee" END-CALL.
           DISPLAY EXT-VAR END-DISPLAY.
           ACCEPT CLA-VAR FROM COMMAND-LINE END-ACCEPT.
           DISPLAY CLA-VAR END-DISPLAY.
           STOP RUN.
       END PROGRAM inside.
_ATEOF


cat >caller2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      inside2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       01 CLA-VAR       PIC X(5).
       PROCEDURE        DIVISION.
           DISPLAY "Aloha2".
           CALL "inside".
           GOBACK. *> never gets here
       END PROGRAM inside2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:602: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "used_binaries.at:602"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:602"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:603: \$COMPILE_MODULE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE caller.cob" "used_binaries.at:603"
( $at_check_trace; $COMPILE_MODULE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:603"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:604: \$COBCRUN -M ./caller inside again"
at_fn_check_prepare_dynamic "$COBCRUN -M ./caller inside again" "used_binaries.at:604"
( $at_check_trace; $COBCRUN -M ./caller inside again
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Aloha
World
again
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:604"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:610: \$COMPILE_MODULE caller2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE caller2.cob" "used_binaries.at:610"
( $at_check_trace; $COMPILE_MODULE caller2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:610"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:611: COB_PRE_LOAD=caller2 \$COBCRUN -M ./caller inside2 again"
at_fn_check_prepare_dynamic "COB_PRE_LOAD=caller2 $COBCRUN -M ./caller inside2 again" "used_binaries.at:611"
( $at_check_trace; COB_PRE_LOAD=caller2 $COBCRUN -M ./caller inside2 again
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Aloha2
Aloha
World
again
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:611"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_14
#AT_START_15
at_fn_group_banner 15 'used_binaries.at:626' \
  "cobcrun -M directory/ default" "                  " 1
at_xfail=no
(
  $as_echo "15. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           DISPLAY EXT-VAR END-DISPLAY.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Hello" TO EXT-VAR.
           CALL "callee" END-CALL.
           DISPLAY EXT-VAR END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:654: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "used_binaries.at:654"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:654"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:655: \$COMPILE_MODULE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE caller.cob" "used_binaries.at:655"
( $at_check_trace; $COMPILE_MODULE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:655"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:656: \$COBCRUN -M ./ caller"
at_fn_check_prepare_dynamic "$COBCRUN -M ./ caller" "used_binaries.at:656"
( $at_check_trace; $COBCRUN -M ./ caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello
World
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:656"
$at_failed && at_fn_log_failure
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_15
#AT_START_16
at_fn_group_banner 16 'used_binaries.at:665' \
  "cobcrun -M directory/dso alternate" "             " 1
at_xfail=no
(
  $as_echo "16. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           DISPLAY EXT-VAR END-DISPLAY.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Hello" TO EXT-VAR.
           CALL "callee" END-CALL.
           DISPLAY EXT-VAR END-DISPLAY.
           STOP RUN.
       END PROGRAM caller.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      inside.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Aloha" TO EXT-VAR.
           CALL "callee" END-CALL.
           DISPLAY EXT-VAR END-DISPLAY.
           STOP RUN.
       END PROGRAM inside.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:706: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "used_binaries.at:706"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:706"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:707: \$COMPILE_MODULE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE caller.cob" "used_binaries.at:707"
( $at_check_trace; $COMPILE_MODULE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:707"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:708: \$COBCRUN -M ./caller inside"
at_fn_check_prepare_dynamic "$COBCRUN -M ./caller inside" "used_binaries.at:708"
( $at_check_trace; $COBCRUN -M ./caller inside
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Aloha
World
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:708"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_16
#AT_START_17
at_fn_group_banner 17 'used_binaries.at:716' \
  "cobcrun -M DSO entry multiple arguments" "        " 1
at_xfail=no
(
  $as_echo "17. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Test that modules can be called with ARGUMENT-VALUES
cat >called.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      called.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 CLI-ARGS      PIC X(27).
       01 ARG-TWO       PIC X(6).
       PROCEDURE        DIVISION.
           ACCEPT CLI-ARGS FROM COMMAND-LINE END-ACCEPT.
           DISPLAY 2 UPON ARGUMENT-NUMBER END-DISPLAY.
           ACCEPT ARG-TWO FROM ARGUMENT-VALUE END-ACCEPT.
           DISPLAY CLI-ARGS ":" ARG-TWO END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


cat >mainer.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      mainer.
       PROCEDURE        DIVISION.
           STOP RUN.
       END PROGRAM mainer.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:743: \$COBC -b \${FLAGS} mainer.cob called.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "used_binaries.at:743"
( $at_check_trace; $COBC -b ${FLAGS} mainer.cob called.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:743"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:744: \$COBCRUN -M ./mainer called \"first argument\" \"second\" \"third\""
at_fn_check_prepare_dynamic "$COBCRUN -M ./mainer called \"first argument\" \"second\" \"third\"" "used_binaries.at:744"
( $at_check_trace; $COBCRUN -M ./mainer called "first argument" "second" "third"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "first argument second third:second
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:744"
$at_failed && at_fn_log_failure
$at_traceon; }


# additional test with environment configuration settings removed:
{ set +x
$as_echo "$at_srcdir/used_binaries.at:749: unset COB_PRE_LOAD COB_LIBRARY_PATH ; \\
   \$COBCRUN -M ./mainer called \"first argument\" \"second\" \"third\""
at_fn_check_prepare_notrace 'an embedded newline' "used_binaries.at:749"
( $at_check_trace; unset COB_PRE_LOAD COB_LIBRARY_PATH ; \
   $COBCRUN -M ./mainer called "first argument" "second" "third"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "first argument second third:second
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:749"
$at_failed && at_fn_log_failure
$at_traceon; }


# additional test with showing the preloaded environment
# FIXME: check at least some parts of the output ("configuration" and the expected output) by using $GREP
{ set +x
$as_echo "$at_srcdir/used_binaries.at:756: \$COBCRUN -M ./mainer --runtime-conf called \"first argument\" \"second\" \"third\""
at_fn_check_prepare_dynamic "$COBCRUN -M ./mainer --runtime-conf called \"first argument\" \"second\" \"third\"" "used_binaries.at:756"
( $at_check_trace; $COBCRUN -M ./mainer --runtime-conf called "first argument" "second" "third"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:756"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_17
#AT_START_18
at_fn_group_banner 18 'used_binaries.at:762' \
  "cobcrun error messages" "                         " 1
at_xfail=no
(
  $as_echo "18. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/used_binaries.at:765: \$COBCRUN -q"
at_fn_check_prepare_dynamic "$COBCRUN -q" "used_binaries.at:765"
( $at_check_trace; $COBCRUN -q
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobcrun: missing PROGRAM name
Try 'cobcrun --help' for more information.
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:765"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:769: \$COBCRUN -q -prog"
at_fn_check_prepare_dynamic "$COBCRUN -q -prog" "used_binaries.at:769"
( $at_check_trace; $COBCRUN -q -prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobcrun: unrecognized option '-prog'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:769"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:772: \$COBCRUN noprog"
at_fn_check_prepare_dynamic "$COBCRUN noprog" "used_binaries.at:772"
( $at_check_trace; $COBCRUN noprog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: module 'noprog' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:772"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:775: \$COBCRUN -q -M"
at_fn_check_prepare_dynamic "$COBCRUN -q -M" "used_binaries.at:775"
( $at_check_trace; $COBCRUN -q -M
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobcrun: option requires an argument -- 'M'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:775"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:778: \$COBCRUN -q -M noprog"
at_fn_check_prepare_dynamic "$COBCRUN -q -M noprog" "used_binaries.at:778"
( $at_check_trace; $COBCRUN -q -M noprog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobcrun: missing PROGRAM name
Try 'cobcrun --help' for more information.
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:778"
$at_failed && at_fn_log_failure
$at_traceon; }

# this was previously checked in cobcrun, now only done in the runtime
{ set +x
$as_echo "$at_srcdir/used_binaries.at:783: \$COBCRUN ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL"
at_fn_check_prepare_dynamic "$COBCRUN ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL" "used_binaries.at:783"
( $at_check_trace; $COBCRUN ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL: PROGRAM name exceeds 31 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:783"
$at_failed && at_fn_log_failure
$at_traceon; }

# it would be allowed for preloading
# this was previously checked in cobcrun, now only done in the runtime
{ set +x
$as_echo "$at_srcdir/used_binaries.at:788: \$COBCRUN -q -M ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL noprog"
at_fn_check_prepare_dynamic "$COBCRUN -q -M ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL noprog" "used_binaries.at:788"
( $at_check_trace; $COBCRUN -q -M ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL noprog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: preloading of 'ThisIsANameThatIsReallyNotAllowedAsProgIdInCOBOL' failed
libcob: error: module 'noprog' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:788"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_18
#AT_START_19
at_fn_group_banner 19 'used_binaries.at:796' \
  "run job with unsuccessful compilation" "          " 1
at_xfail=no
(
  $as_echo "19. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "jobby"
           EXIT HERE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:808: \$COMPILE -j prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -j prog.cob" "used_binaries.at:808"
( $at_check_trace; $COMPILE -j prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:808"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_19
#AT_START_20
at_fn_group_banner 20 'used_binaries.at:815' \
  "run job after compilation" "                      " 1
at_xfail=no
(
  $as_echo "20. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "job" WITH NO ADVANCING END-DISPLAY
           STOP RUN WITH NORMAL STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:826: \$COMPILE -jd prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -jd prog.cob" "used_binaries.at:826"
( $at_check_trace; $COMPILE -jd prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:826"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:827: \$COMPILE_MODULE -jd prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -jd prog.cob" "used_binaries.at:827"
( $at_check_trace; $COMPILE_MODULE -jd prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:827"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_20
#AT_START_21
at_fn_group_banner 21 'used_binaries.at:832' \
  "run job after compilation (path specified)" "     " 1
at_xfail=no
(
  $as_echo "21. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "job" WITH NO ADVANCING END-DISPLAY
           STOP RUN WITH NORMAL STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:843: mkdir -p sub"
at_fn_check_prepare_trace "used_binaries.at:843"
( $at_check_trace; mkdir -p sub
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:843"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:844: \$COMPILE_MODULE -jd -o \$(_return_path \"sub/prog\") prog.cob"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:844"
( $at_check_trace; $COMPILE_MODULE -jd -o $(_return_path "sub/prog") prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:844"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:845: \$COMPILE -jd -o \$(_return_path \"sub/prog\$COB_EXE_EXT\") prog.cob"
at_fn_check_prepare_notrace 'a $(...) command substitution' "used_binaries.at:845"
( $at_check_trace; $COMPILE -jd -o $(_return_path "sub/prog$COB_EXE_EXT") prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_21
#AT_START_22
at_fn_group_banner 22 'used_binaries.at:850' \
  "run job with optional arguments" "                " 1
at_xfail=no
(
  $as_echo "22. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 CLI           PIC X(8).
       PROCEDURE        DIVISION.
           ACCEPT CLI FROM COMMAND-LINE
           DISPLAY CLI WITH NO ADVANCING END-DISPLAY
           STOP RUN WITH NORMAL STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:865: \$COMPILE -j=\"job 123\" prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -j=\"job 123\" prog.cob" "used_binaries.at:865"
( $at_check_trace; $COMPILE -j="job 123" prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job 123 " | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:865"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:866: \$COMPILE -jdg prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -jdg prog.cob" "used_binaries.at:866"
( $at_check_trace; $COMPILE -jdg prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "        " | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:866"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:867: \$COMPILE_MODULE --job=job123 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE --job=job123 prog.cob" "used_binaries.at:867"
( $at_check_trace; $COMPILE_MODULE --job=job123 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job123  " | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:867"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_22
#AT_START_23
at_fn_group_banner 23 'used_binaries.at:872' \
  "compile from stdin" "                             " 1
at_xfail=no
(
  $as_echo "23. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      a.
       PROCEDURE        DIVISION.
           STOP RUN WITH NORMAL STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:882: cat prog.cob | \$COMPILE_MODULE -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:882"
( $at_check_trace; cat prog.cob | $COMPILE_MODULE -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:882"
if $at_failed; then :
  # Previous test failed run again with full verbose output
# leading to an (expected) fail, but with decent messages
{ set +x
$as_echo "$at_srcdir/used_binaries.at:882: cat prog.cob | \$COMPILE_MODULE -vv -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:882"
( $at_check_trace; cat prog.cob | $COMPILE_MODULE -vv -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:882"
$at_failed && at_fn_log_failure
$at_traceon; }


fi
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:887: \$COBCRUN a"
at_fn_check_prepare_dynamic "$COBCRUN a" "used_binaries.at:887"
( $at_check_trace; $COBCRUN a
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:887"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:889: cat prog.cob | \$COMPILE -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:889"
( $at_check_trace; cat prog.cob | $COMPILE -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:889"
if $at_failed; then :
  # more to debug ...
{ set +x
$as_echo "$at_srcdir/used_binaries.at:889: cat prog.cob | \$COMPILE -vv -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:889"
( $at_check_trace; cat prog.cob | $COMPILE -vv -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:889"
$at_failed && at_fn_log_failure
$at_traceon; }


fi
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:893: \$COBCRUN_DIRECT ./a.out"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./a.out" "used_binaries.at:893"
( $at_check_trace; $COBCRUN_DIRECT ./a.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:893"
$at_failed && at_fn_log_failure
$at_traceon; }




  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_23
#AT_START_24
at_fn_group_banner 24 'used_binaries.at:900' \
  "run job after compilation from stdin" "           " 1
at_xfail=no
(
  $as_echo "24. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      a.
       PROCEDURE        DIVISION.
           DISPLAY "job" WITH NO ADVANCING END-DISPLAY
           STOP RUN WITH NORMAL STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/used_binaries.at:911: cat prog.cob | \$COMPILE -j -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:911"
( $at_check_trace; cat prog.cob | $COMPILE -j -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:911"
if $at_failed; then :
  # Previous test failed run again with full verbose output
# leading to an (expected) fail, but with decent messages
{ set +x
$as_echo "$at_srcdir/used_binaries.at:911: cat prog.cob | \$COMPILE -vv -j -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:911"
( $at_check_trace; cat prog.cob | $COMPILE -vv -j -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:911"
$at_failed && at_fn_log_failure
$at_traceon; }


fi
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:916: cat prog.cob | \$COMPILE_MODULE -j -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:916"
( $at_check_trace; cat prog.cob | $COMPILE_MODULE -j -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "job" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:916"
if $at_failed; then :
  # more to debug ...
{ set +x
$as_echo "$at_srcdir/used_binaries.at:916: cat prog.cob | \$COMPILE_MODULE -vv -j -"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:916"
( $at_check_trace; cat prog.cob | $COMPILE_MODULE -vv -j -
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:916"
$at_failed && at_fn_log_failure
$at_traceon; }


fi
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_24
#AT_START_25
at_fn_group_banner 25 'used_binaries.at:924' \
  "cobc diagnostics show caret" "                    " 1
at_xfail=no
(
  $as_echo "25. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([cobc diagnostics])

cat >progprep.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.	  	#
       01 TEST-VAR PIC 9(2) VALUE 'A'.
       COPY 'CRUD.CPY'.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           MOVE 12 TO TEST-VAR
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           STOP RUN...
_ATEOF


# Testcase includes trailing whitespace, setup by dropping '#'
{ set +x
$as_echo "$at_srcdir/used_binaries.at:944: cat progprep.cob | tr -d '#' > prog.cob"
at_fn_check_prepare_notrace 'a shell pipeline' "used_binaries.at:944"
( $at_check_trace; cat progprep.cob | tr -d '#' > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/used_binaries.at:944"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:946: \$COBC -fdiagnostics-plain-output -Wall prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -Wall prog.cob" "used_binaries.at:946"
( $at_check_trace; $COBC -fdiagnostics-plain-output -Wall prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: CRUD.CPY: No such file or directory
prog.cob:6: warning: numeric value is expected [-Wothers]
prog.cob:14: warning: ignoring redundant . [-Wothers]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:946"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/used_binaries.at:951: \$COBC -fdiagnostics-show-caret -fdiagnostics-show-line-numbers prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-show-caret -fdiagnostics-show-line-numbers prog.cob" "used_binaries.at:951"
( $at_check_trace; $COBC -fdiagnostics-show-caret -fdiagnostics-show-line-numbers prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: CRUD.CPY: No such file or directory
    5 |        WORKING-STORAGE  SECTION.
    6 |        01 TEST-VAR PIC 9(2) VALUE 'A'.
    7 >        COPY 'CRUD.CPY'.
    8 |        PROCEDURE        DIVISION.
    9 |            DISPLAY TEST-VAR NO ADVANCING
prog.cob:6: warning: numeric value is expected [-Wothers]
    4 |        DATA             DIVISION.
    5 |        WORKING-STORAGE  SECTION.
    6 >        01 TEST-VAR PIC 9(2) VALUE 'A'.
    7 |        COPY 'CRUD.CPY'.
    8 |        PROCEDURE        DIVISION.
prog.cob:14: warning: ignoring redundant . [-Wothers]
   12 |            DISPLAY TEST-VAR NO ADVANCING
   13 |            END-DISPLAY
   14 >            STOP RUN...
   15 | <EOF>
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:951"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/used_binaries.at:971: \$COBC -fdiagnostics-plain-output -fdiagnostics-show-caret prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -fdiagnostics-show-caret prog.cob" "used_binaries.at:971"
( $at_check_trace; $COBC -fdiagnostics-plain-output -fdiagnostics-show-caret prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: CRUD.CPY: No such file or directory
          WORKING-STORAGE  SECTION.
          01 TEST-VAR PIC 9(2) VALUE 'A'.
 >        COPY 'CRUD.CPY'.
          PROCEDURE        DIVISION.
              DISPLAY TEST-VAR NO ADVANCING
prog.cob:6: warning: numeric value is expected [-Wothers]
          DATA             DIVISION.
          WORKING-STORAGE  SECTION.
 >        01 TEST-VAR PIC 9(2) VALUE 'A'.
          COPY 'CRUD.CPY'.
          PROCEDURE        DIVISION.
prog.cob:14: warning: ignoring redundant . [-Wothers]
              DISPLAY TEST-VAR NO ADVANCING
              END-DISPLAY
 >            STOP RUN...
   <EOF>
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:971"
$at_failed && at_fn_log_failure
$at_traceon; }


# Testcase for line too long and printing only one line
cat >longgy.cob <<'_ATEOF'
ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd
_ATEOF


# note: this is actually an error in the parser line number,
#       but until that is solved, it is a nice edge case of "line not available"
{ set +x
$as_echo "$at_srcdir/used_binaries.at:997: \$COBC -fdiagnostics-plain-output -fdiagnostics-show-caret -Wno-others longgy.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -fdiagnostics-show-caret -Wno-others longgy.cob" "used_binaries.at:997"
( $at_check_trace; $COBC -fdiagnostics-plain-output -fdiagnostics-show-caret -Wno-others longgy.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "longgy.cob:2: error: PROGRAM-ID header missing
   dddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd..
 > <EOF>
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/used_binaries.at:997"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_25
#AT_START_26
at_fn_group_banner 26 'configuration.at:22' \
  "cobc with standard configuration file" "          " 1
at_xfail=no
(
  $as_echo "26. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# default configuration permits this extension
{ set +x
$as_echo "$at_srcdir/configuration.at:36: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "configuration.at:36"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_26
#AT_START_27
at_fn_group_banner 27 'configuration.at:43' \
  "cobc dialect features for all -std" "             " 1
at_xfail=no
(
  $as_echo "27. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:56: \$COMPILE_ONLY -std=default prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=default prog.cob" "configuration.at:56"
( $at_check_trace; $COMPILE_ONLY -std=default prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:56"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:59: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "configuration.at:59"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:59"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:62: \$COMPILE_ONLY -std=cobol2002 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 prog.cob" "configuration.at:62"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: AUTHOR does not conform to COBOL 2002
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:65: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "configuration.at:65"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: AUTHOR does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:65"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:68: \$COMPILE_ONLY -std=xopen prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=xopen prog.cob" "configuration.at:68"
( $at_check_trace; $COMPILE_ONLY -std=xopen prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:68"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:71: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "configuration.at:71"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in ACUCOBOL-GT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:71"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:74: \$COMPILE_ONLY -std=bs2000-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=bs2000-strict prog.cob" "configuration.at:74"
( $at_check_trace; $COMPILE_ONLY -std=bs2000-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: AUTHOR does not conform to BS2000 COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:74"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:77: \$COMPILE_ONLY -std=ibm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict prog.cob" "configuration.at:77"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in IBM COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:77"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:80: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "configuration.at:80"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in Micro Focus COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:80"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:83: \$COMPILE_ONLY -std=rm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=rm-strict prog.cob" "configuration.at:83"
( $at_check_trace; $COMPILE_ONLY -std=rm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in RM-COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:86: \$COMPILE_ONLY -std=realia-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=realia-strict prog.cob" "configuration.at:86"
( $at_check_trace; $COMPILE_ONLY -std=realia-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:86"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:87: \$COMPILE_ONLY -std=mvs-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mvs-strict prog.cob" "configuration.at:87"
( $at_check_trace; $COMPILE_ONLY -std=mvs-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in IBM COBOL for MVS & VM
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:87"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:90: \$COMPILE_ONLY -std=gcos-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=gcos-strict prog.cob" "configuration.at:90"
( $at_check_trace; $COMPILE_ONLY -std=gcos-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in GCOS
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:93: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "configuration.at:93"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:94: \$COMPILE_ONLY -std=bs2000 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=bs2000 prog.cob" "configuration.at:94"
( $at_check_trace; $COMPILE_ONLY -std=bs2000 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:95: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "configuration.at:95"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:95"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:96: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "configuration.at:96"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:96"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:97: \$COMPILE_ONLY -std=rm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=rm prog.cob" "configuration.at:97"
( $at_check_trace; $COMPILE_ONLY -std=rm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:98: \$COMPILE_ONLY -std=realia prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=realia prog.cob" "configuration.at:98"
( $at_check_trace; $COMPILE_ONLY -std=realia prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:98"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:99: \$COMPILE_ONLY -std=mvs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mvs prog.cob" "configuration.at:99"
( $at_check_trace; $COMPILE_ONLY -std=mvs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:100: \$COMPILE_ONLY -std=gcos prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=gcos prog.cob" "configuration.at:100"
( $at_check_trace; $COMPILE_ONLY -std=gcos prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:100"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_27
#AT_START_28
at_fn_group_banner 28 'configuration.at:105' \
  "cobc with configuration file via -std" "          " 1
at_xfail=no
(
  $as_echo "28. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# check if -std loads configuration file and if override works
{ set +x
$as_echo "$at_srcdir/configuration.at:119: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "configuration.at:119"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: AUTHOR does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:119"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_28
#AT_START_29
at_fn_group_banner 29 'configuration.at:126' \
  "cobc with standard configuration file via -conf" "" 1
at_xfail=no
(
  $as_echo "29. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# check if override via -conf works
{ set +x
$as_echo "$at_srcdir/configuration.at:140: \$COMPILE_ONLY -conf=cobol2014.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=cobol2014.conf prog.cob" "configuration.at:140"
( $at_check_trace; $COMPILE_ONLY -conf=cobol2014.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: AUTHOR does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_29
#AT_START_30
at_fn_group_banner 30 'configuration.at:147' \
  "cobc with own configuration file via -conf" "     " 1
at_xfail=no
(
  $as_echo "30. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.conf <<'_ATEOF'

include "default.conf"
name: "Sample Conf"
comment-paragraphs:                       ok
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# check if override via -conf works and if include works
{ set +x
$as_echo "$at_srcdir/configuration.at:167: \$COMPILE_ONLY -conf=test.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=test.conf prog.cob" "configuration.at:167"
( $at_check_trace; $COMPILE_ONLY -conf=test.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }


# check if configuration file loading with full path works
{ set +x
$as_echo "$at_srcdir/configuration.at:170: \$COMPILE_ONLY \\
-conf=\"\$(_return_path \"\$(pwd)/test.conf\")\" prog.cob"
at_fn_check_prepare_notrace 'a $(...) command substitution' "configuration.at:170"
( $at_check_trace; $COMPILE_ONLY \
-conf="$(_return_path "$(pwd)/test.conf")" prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:170"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_30
#AT_START_31
at_fn_group_banner 31 'configuration.at:176' \
  "cobc configuration: recursive include" "          " 1
at_xfail=no
(
  $as_echo "31. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.conf <<'_ATEOF'

# different line for "include" to check the line number
include "test2.conf"
_ATEOF


cat >test2.conf <<'_ATEOF'

# include in
# line 4
include "test3.conf"
_ATEOF


cat >test3.conf <<'_ATEOF'

include "test.conf"
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:203: \$COMPILE_ONLY -conf=test.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=test.conf prog.cob" "configuration.at:203"
( $at_check_trace; $COMPILE_ONLY -conf=test.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
test.conf: recursive inclusion
test3.conf:2: configuration file was included here
test2.conf:4: configuration file was included here
test.conf:3: configuration file was included here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:203"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_31
#AT_START_32
at_fn_group_banner 32 'configuration.at:214' \
  "cobc with -std and -conf" "                       " 1
at_xfail=no
(
  $as_echo "32. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.conf <<'_ATEOF'

include "mf.conf"
name: "Sample Conf"
comment-paragraphs:                       ok
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# check if override via -conf works and if include works
{ set +x
$as_echo "$at_srcdir/configuration.at:234: \$COMPILE_ONLY -std=default -conf=test.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=default -conf=test.conf prog.cob" "configuration.at:234"
( $at_check_trace; $COMPILE_ONLY -std=default -conf=test.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration warning: test.conf: The previous loaded configuration 'GnuCOBOL' will be discarded.
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:234"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_32
#AT_START_33
at_fn_group_banner 33 'configuration.at:241' \
  "cobc compiler flag on command line" "             " 1
at_xfail=no
(
  $as_echo "33. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:254: \$COMPILE_ONLY -fcomment-paragraphs=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fcomment-paragraphs=ok prog.cob" "configuration.at:254"
( $at_check_trace; $COMPILE_ONLY -fcomment-paragraphs=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:254"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_33
#AT_START_34
at_fn_group_banner 34 'configuration.at:260' \
  "cobc compiler flag on command line (priority)" "  " 1
at_xfail=no
(
  $as_echo "34. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.conf <<'_ATEOF'

include "default.conf"
name: "Sample Conf"
comment-paragraphs:   unconformable
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# configuration flags must work
{ set +x
$as_echo "$at_srcdir/configuration.at:280: \$COMPILE_ONLY \\
-fcomment-paragraphs=ok prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:280"
( $at_check_trace; $COMPILE_ONLY \
-fcomment-paragraphs=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:280"
$at_failed && at_fn_log_failure
$at_traceon; }


# configuration flag on command line must override all (no matter where it's used)
{ set +x
$as_echo "$at_srcdir/configuration.at:284: \$COMPILE_ONLY \\
-fcomment-paragraphs=ok -conf=test.conf prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:284"
( $at_check_trace; $COMPILE_ONLY \
-fcomment-paragraphs=ok -conf=test.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:284"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:286: \$COMPILE_ONLY \\
-conf=test.conf -fcomment-paragraphs=ok prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:286"
( $at_check_trace; $COMPILE_ONLY \
-conf=test.conf -fcomment-paragraphs=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:286"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_34
#AT_START_35
at_fn_group_banner 35 'configuration.at:293' \
  "cobc configuration: entries" "                    " 1
at_xfail=no
(
  $as_echo "35. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# conf entries must be clean
{ set +x
$as_echo "$at_srcdir/configuration.at:306: \$COMPILE_ONLY -q \\
-fcomment-paragraphsok prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:306"
( $at_check_trace; $COMPILE_ONLY -q \
-fcomment-paragraphsok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: unrecognized option '-fcomment-paragraphsok'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:306"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:310: \$COMPILE_ONLY \\
-fassign-clause=cobol-2002 prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:310"
( $at_check_trace; $COMPILE_ONLY \
-fassign-clause=cobol-2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
-fassign-clause=cobol-2002: invalid value 'cobol-2002' for configuration tag 'assign-clause';
	should be one of the following values: dynamic, external, mf, ibm
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:310"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:316: \$COMPILE_ONLY \\
-freserved-words=default prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:316"
( $at_check_trace; $COMPILE_ONLY \
-freserved-words=default prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:316"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:318: \$COMPILE_ONLY \\
-freserved-words=defaults prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:318"
( $at_check_trace; $COMPILE_ONLY \
-freserved-words=defaults prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
-freserved-words=defaults: Could not access word list for 'defaults'
defaults.words: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:318"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:324: \$COMPILE_ONLY \\
-fword-length=thirty prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:324"
( $at_check_trace; $COMPILE_ONLY \
-fword-length=thirty prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
-fword-length=thirty: invalid value 'thirty' for configuration tag 'word-length';
	must be numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:324"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:330: \$COMPILE_ONLY \\
-fstandard-define=99 prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:330"
( $at_check_trace; $COMPILE_ONLY \
-fstandard-define=99 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
-fstandard-define=99: invalid value '99' for configuration tag 'standard-define';
	maximum value: 9
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:330"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_35
#AT_START_36
at_fn_group_banner 36 'configuration.at:340' \
  "cobc configuration: conf missing" "               " 1
at_xfail=no
(
  $as_echo "36. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >defunc.conf <<'_ATEOF'

include "notthere.conf"
_ATEOF


cat >defunc2.conf <<'_ATEOF'

include
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:351: \$COMPILE_ONLY -conf=notthere.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=notthere.conf prog.cob" "configuration.at:351"
( $at_check_trace; $COMPILE_ONLY -conf=notthere.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
notthere.conf: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:351"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:355: \$COMPILE_ONLY -conf=defunc.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=defunc.conf prog.cob" "configuration.at:355"
( $at_check_trace; $COMPILE_ONLY -conf=defunc.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
notthere.conf: No such file or directory
defunc.conf:2: configuration file was included here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:355"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:360: \$COMPILE_ONLY -conf=defunc2.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=defunc2.conf prog.cob" "configuration.at:360"
( $at_check_trace; $COMPILE_ONLY -conf=defunc2.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
defunc2.conf:2: invalid configuration tag 'include'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:360"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_36
#AT_START_37
at_fn_group_banner 37 'configuration.at:368' \
  "cobc configuration: conf optional" "              " 1
at_xfail=no
(
  $as_echo "37. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >defunc.conf <<'_ATEOF'

include "default.conf"
includeif "notthere.conf"
_ATEOF


cat >test.conf <<'_ATEOF'

include "default.conf"
include "test2.conf"
_ATEOF


cat >test2.conf <<'_ATEOF'

name: "Sample Conf"
comment-paragraphs:                       ok
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       AUTHOR. tester.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:396: \$COMPILE_ONLY -conf=defunc.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=defunc.conf prog.cob" "configuration.at:396"
( $at_check_trace; $COMPILE_ONLY -conf=defunc.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: AUTHOR is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:396"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:399: \$COMPILE_ONLY -conf=test.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=test.conf prog.cob" "configuration.at:399"
( $at_check_trace; $COMPILE_ONLY -conf=test.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:399"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_37
#AT_START_38
at_fn_group_banner 38 'configuration.at:404' \
  "cobc configuration: incomplete" "                 " 1
at_xfail=no
(
  $as_echo "38. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.conf <<'_ATEOF'

name: "Empty Conf"
_ATEOF


# check if incomplete configuration result in error
{ set +x
$as_echo "$at_srcdir/configuration.at:412: \$COMPILE_ONLY -conf=test.conf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -conf=test.conf prog.cob" "configuration.at:412"
( $at_check_trace; $COMPILE_ONLY -conf=test.conf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
test.conf: missing definitions:
	no definition of 'reserved-words'
	no definition of 'tab-width'
	no definition of 'text-column'
	no definition of 'pic-length'
	no definition of 'word-length'
	no definition of 'literal-length'
	no definition of 'numeric-literal-length'
	no definition of 'defaultbyte'
	no definition of 'standard-define'
	no definition of 'format'
	no definition of 'binary-size'
	no definition of 'binary-byteorder'
	no definition of 'assign-clause'
	no definition of 'screen-section-rules'
	no definition of 'dpc-in-data'
	no definition of 'subscript-check'
	no definition of 'filename-mapping'
	no definition of 'pretty-display'
	no definition of 'binary-truncate'
	no definition of 'complex-odo'
	no definition of 'odoslide'
	no definition of 'init-justify'
	no definition of 'indirect-redefines'
	no definition of 'relax-syntax-checks'
	no definition of 'ref-mod-zero-length'
	no definition of 'relax-level-hierarchy'
	no definition of 'select-working'
	no definition of 'local-implies-recursive'
	no definition of 'sticky-linkage'
	no definition of 'move-ibm'
	no definition of 'perform-osvs'
	no definition of 'arithmetic-osvs'
	no definition of 'constant-folding'
	no definition of 'hostsign'
	no definition of 'program-name-redefinition'
	no definition of 'accept-update'
	no definition of 'accept-auto'
	no definition of 'console-is-crt'
	no definition of 'no-echo-means-secure'
	no definition of 'line-col-zero-default'
	no definition of 'display-special-fig-consts'
	no definition of 'binary-comp-1'
	no definition of 'numeric-pointer'
	no definition of 'move-non-numeric-lit-to-numeric-is-zero'
	no definition of 'implicit-assign-dynamic-var'
	no definition of 'device-mnemonics'
	no definition of 'xml-parse-xmlss'
	no definition of 'areacheck'
	no definition of 'comment-paragraphs'
	no definition of 'control-division'
	no definition of 'partial-replace-when-literal-src'
	no definition of 'memory-size-clause'
	no definition of 'multiple-file-tape-clause'
	no definition of 'label-records-clause'
	no definition of 'value-of-clause'
	no definition of 'data-records-clause'
	no definition of 'top-level-occurs-clause'
	no definition of 'same-as-clause'
	no definition of 'type-to-clause'
	no definition of 'usage-type'
	no definition of 'synchronized-clause'
	no definition of 'sync-left-right'
	no definition of 'special-names-clause'
	no definition of 'goto-statement-without-name'
	no definition of 'stop-literal-statement'
	no definition of 'stop-identifier-statement'
	no definition of 'stop-error-statement'
	no definition of 'debugging-mode'
	no definition of 'use-for-debugging'
	no definition of 'padding-character-clause'
	no definition of 'next-sentence-phrase'
	no definition of 'listing-statements'
	no definition of 'title-statement'
	no definition of 'entry-statement'
	no definition of 'move-noninteger-to-alphanumeric'
	no definition of 'move-figurative-constant-to-numeric'
	no definition of 'move-figurative-space-to-numeric'
	no definition of 'move-figurative-quote-to-numeric'
	no definition of 'odo-without-to'
	no definition of 'section-segments'
	no definition of 'alter-statement'
	no definition of 'call-overflow'
	no definition of 'numeric-boolean'
	no definition of 'hexadecimal-boolean'
	no definition of 'national-literals'
	no definition of 'hexadecimal-national-literals'
	no definition of 'national-character-literals'
	no definition of 'hp-octal-literals'
	no definition of 'acu-literals'
	no definition of 'ebcdic-symbolic-characters'
	no definition of 'word-continuation'
	no definition of 'not-exception-before-exception'
	no definition of 'accept-display-extensions'
	no definition of 'renames-uncommon-levels'
	no definition of 'larger-redefines'
	no definition of 'symbolic-constant'
	no definition of 'constant-78'
	no definition of 'constant-01'
	no definition of 'perform-varying-without-by'
	no definition of 'reference-out-of-declaratives'
	no definition of 'program-prototypes'
	no definition of 'call-convention-mnemonic'
	no definition of 'call-convention-linkage'
	no definition of 'using-optional'
	no definition of 'numeric-value-for-edited-item'
	no definition of 'incorrect-conf-sec-order'
	no definition of 'define-constant-directive'
	no definition of 'free-redefines-position'
	no definition of 'records-mismatch-record-clause'
	no definition of 'record-delimiter'
	no definition of 'sequential-delimiters'
	no definition of 'record-delim-with-fixed-recs'
	no definition of 'missing-statement'
	no definition of 'missing-period'
	no definition of 'zero-length-literals'
	no definition of 'xml-generate-extra-phrases'
	no definition of 'continue-after'
	no definition of 'goto-entry'
	no definition of 'assign-variable'
	no definition of 'assign-using-variable'
	no definition of 'assign-ext-dyn'
	no definition of 'assign-disk-from'
	no definition of 'vsam-status'
	no definition of 'self-call-recursive'
	no definition of 'record-contains-depending-clause'
	no definition of 'picture-l'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:412"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_38
#AT_START_39
at_fn_group_banner 39 'configuration.at:546' \
  "runtime configuration" "                          " 1
at_xfail=no
(
  $as_echo "39. $at_setup_line: testing $at_desc ..."
  $at_traceon



# check if --runtime-conf exits without error
# don't compare stdout
{ set +x
$as_echo "$at_srcdir/configuration.at:551: \$COBCRUN --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN --runtime-conf" "configuration.at:551"
( $at_check_trace; $COBCRUN --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:551"
$at_failed && at_fn_log_failure
$at_traceon; }


# check if --runtime-conf points to a file called "runtime_empty.cfg"
# use tr to remove newlines and spaces as the path likely is split
# into two lines
{ set +x
$as_echo "$at_srcdir/configuration.at:556: \$COBCRUN --runtime-conf | tr -d '\\n ' | \\
\$GREP \"runtime_empty.cfg\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:556"
( $at_check_trace; $COBCRUN --runtime-conf | tr -d '\n ' | \
$GREP "runtime_empty.cfg"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:556"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:558: COB_RUNTIME_CONFIG=\"\" \$COBCRUN --runtime-conf | tr -d '\\n ' \\
| \$GREP \"runtime.cfg\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:558"
( $at_check_trace; COB_RUNTIME_CONFIG="" $COBCRUN --runtime-conf | tr -d '\n ' \
| $GREP "runtime.cfg"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:558"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_39
#AT_START_40
at_fn_group_banner 40 'configuration.at:565' \
  "runtime configuration file" "                     " 1
at_xfail=no
(
  $as_echo "40. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.cfg <<'_ATEOF'

include "test2.cfg"
_ATEOF


cat >test2.cfg <<'_ATEOF'

physical_cancel true
_ATEOF


cat >test3.cfg <<'_ATEOF'

setenv COB_PHYSICAL_CANCEL=true
_ATEOF



# verify that default for physical cancel is still "no"
{ set +x
$as_echo "$at_srcdir/configuration.at:582: \$COBCRUN --runtime-conf | \\
\$GREP \"COB_PHYSICAL_CANCEL\" | \$GREP \"no\" | \$GREP \"default\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:582"
( $at_check_trace; $COBCRUN --runtime-conf | \
$GREP "COB_PHYSICAL_CANCEL" | $GREP "no" | $GREP "default"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:582"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that override via -c works and if include works
{ set +x
$as_echo "$at_srcdir/configuration.at:586: \$COBCRUN -c test2.cfg --runtime-conf | \\
\$GREP \"physical_cancel\" | \$GREP \"yes\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:586"
( $at_check_trace; $COBCRUN -c test2.cfg --runtime-conf | \
$GREP "physical_cancel" | $GREP "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:586"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:588: \$COBCRUN -c test.cfg --runtime-conf | \\
\$GREP \"physical_cancel\" | \$GREP \"yes\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:588"
( $at_check_trace; $COBCRUN -c test.cfg --runtime-conf | \
$GREP "physical_cancel" | $GREP "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:588"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:590: \$COBCRUN -c test3.cfg --runtime-conf | \\
\$GREP \"COB_PHYSICAL_CANCEL\" | \$GREP \"yes\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:590"
( $at_check_trace; $COBCRUN -c test3.cfg --runtime-conf | \
$GREP "COB_PHYSICAL_CANCEL" | $GREP "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:590"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that that long option works
{ set +x
$as_echo "$at_srcdir/configuration.at:594: \$COBCRUN --config=test3.cfg --runtime-conf | \\
\$GREP \"COB_PHYSICAL_CANCEL\" | \$GREP \"yes\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:594"
( $at_check_trace; $COBCRUN --config=test3.cfg --runtime-conf | \
$GREP "COB_PHYSICAL_CANCEL" | $GREP "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:594"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that that environment setting works
{ set +x
$as_echo "$at_srcdir/configuration.at:598: COB_RUNTIME_CONFIG=test3.cfg \$COBCRUN --runtime-conf | \\
\$GREP \"COB_PHYSICAL_CANCEL\" | \$GREP \"yes\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:598"
( $at_check_trace; COB_RUNTIME_CONFIG=test3.cfg $COBCRUN --runtime-conf | \
$GREP "COB_PHYSICAL_CANCEL" | $GREP "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:598"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that configuration file loading with full path works
{ set +x
$as_echo "$at_srcdir/configuration.at:602: \$COBCRUN -c \"\$(_return_path \"\$(pwd)/test.cfg\")\" --runtime-conf"
at_fn_check_prepare_notrace 'a $(...) command substitution' "configuration.at:602"
( $at_check_trace; $COBCRUN -c "$(_return_path "$(pwd)/test.cfg")" --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:602"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_40
#AT_START_41
at_fn_group_banner 41 'configuration.at:608' \
  "runtime configuration: recursive include" "       " 1
at_xfail=no
(
  $as_echo "41. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.cfg <<'_ATEOF'

# different line for "include" to check the line number
include "test2.cfg"
_ATEOF


cat >test2.cfg <<'_ATEOF'

# include in
# line 4
include "test3.cfg"
_ATEOF


cat >test3.cfg <<'_ATEOF'

include "test.cfg"
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:626: \$COBCRUN -c test.cfg -r"
at_fn_check_prepare_dynamic "$COBCRUN -c test.cfg -r" "configuration.at:626"
( $at_check_trace; $COBCRUN -c test.cfg -r
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
test.cfg: recursive inclusion
test3.cfg:2: configuration file was included here
test2.cfg:4: configuration file was included here
test.cfg:3: configuration file was included here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:626"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_41
#AT_START_42
at_fn_group_banner 42 'configuration.at:637' \
  "runtime configuration: environment priority" "    " 1
at_xfail=no
(
  $as_echo "42. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.cfg <<'_ATEOF'

physical_cancel true
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:644: COB_PHYSICAL_CANCEL=false \$COBCRUN -c test.cfg --runtime-conf | \\
\$GREP \"COB_PHYSICAL_CANCEL\" | \$GREP \"no\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:644"
( $at_check_trace; COB_PHYSICAL_CANCEL=false $COBCRUN -c test.cfg --runtime-conf | \
$GREP "COB_PHYSICAL_CANCEL" | $GREP "no"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:644"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_42
#AT_START_43
at_fn_group_banner 43 'configuration.at:650' \
  "runtime configuration: entries" "                 " 1
at_xfail=no
(
  $as_echo "43. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/configuration.at:653: echo \"\$PATHSEP\""
at_fn_check_prepare_dynamic "echo \"$PATHSEP\"" "configuration.at:653"
( $at_check_trace; echo "$PATHSEP"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ";
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:653"
if $at_failed; then :


# Previous test "failed" --> PATHSEP isn't ;

  cat >defunc.cfg <<'_ATEOF'

novar
physical_cancel notwithme
load_case  insensitive
varseq_format big
sort_chunk 4K
sort_memory 4G # too big by some byte
setenv nothing
sort_chunk
trace_file /tmp:/temp
_ATEOF


# conf entries must be clean
  { set +x
$as_echo "$at_srcdir/configuration.at:653: \$COBCRUN -c defunc.cfg --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN -c defunc.cfg --runtime-conf" "configuration.at:653"
( $at_check_trace; $COBCRUN -c defunc.cfg --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
defunc.cfg:2: unknown configuration tag 'novar'
defunc.cfg:3: invalid value 'notwithme' for configuration tag 'physical_cancel';
	should be one of the following values: true, false
defunc.cfg:4: invalid value 'insensitive' for configuration tag 'load_case';
	should be one of the following values: LOWER(1), UPPER(2), not set(0)
defunc.cfg:5: invalid value 'big' for configuration tag 'varseq_format';
	should be one of the following values: 0, 1, 2, 3
defunc.cfg:6: invalid value '4K' for configuration tag 'sort_chunk';
	minimum value: 131072
defunc.cfg:7: invalid value '4G' for configuration tag 'sort_memory';
	maximum value: 4294967294
defunc.cfg:8: WARNING - 'setenv nothing' without a value - ignored!
defunc.cfg:9: WARNING - 'sort_chunk' without a value - ignored!
defunc.cfg:10: invalid value '/tmp:/temp' for configuration tag 'trace_file';
	should not contain ':'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:653"
$at_failed && at_fn_log_failure
$at_traceon; }



else

# Previous test "passed" --> PATHSEP is ;

  cat >defunc.cfg <<'_ATEOF'

novar
physical_cancel notwithme
load_case  insensitive
varseq_format big
sort_chunk 4K
sort_memory 4G # too big by some byte
setenv nothing
sort_chunk
trace_file C:\tmp;C:\temp
_ATEOF


# conf entries must be clean
  { set +x
$as_echo "$at_srcdir/configuration.at:653: \$COBCRUN -c defunc.cfg --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN -c defunc.cfg --runtime-conf" "configuration.at:653"
( $at_check_trace; $COBCRUN -c defunc.cfg --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
defunc.cfg:2: unknown configuration tag 'novar'
defunc.cfg:3: invalid value 'notwithme' for configuration tag 'physical_cancel';
	should be one of the following values: true, false
defunc.cfg:4: invalid value 'insensitive' for configuration tag 'load_case';
	should be one of the following values: LOWER(1), UPPER(2), not set(0)
defunc.cfg:5: invalid value 'big' for configuration tag 'varseq_format';
	should be one of the following values: 0, 1, 2, 3
defunc.cfg:6: invalid value '4K' for configuration tag 'sort_chunk';
	minimum value: 131072
defunc.cfg:7: invalid value '4G' for configuration tag 'sort_memory';
	maximum value: 4294967294
defunc.cfg:8: WARNING - 'setenv nothing' without a value - ignored!
defunc.cfg:9: WARNING - 'sort_chunk' without a value - ignored!
defunc.cfg:10: invalid value 'C:\\tmp;C:\\temp' for configuration tag 'trace_file';
	should not contain ';'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:653"
$at_failed && at_fn_log_failure
$at_traceon; }



fi
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_43
#AT_START_44
at_fn_group_banner 44 'configuration.at:731' \
  "runtime configuration: conf missing" "            " 1
at_xfail=no
(
  $as_echo "44. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >defunc.cfg <<'_ATEOF'

include "notthere.cfg"
_ATEOF


cat >defunc2.cfg <<'_ATEOF'

include
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:742: \$COBCRUN -c notthere.cfg --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN -c notthere.cfg --runtime-conf" "configuration.at:742"
( $at_check_trace; $COBCRUN -c notthere.cfg --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
notthere.cfg: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:742"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:746: \$COBCRUN -c defunc.cfg --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN -c defunc.cfg --runtime-conf" "configuration.at:746"
( $at_check_trace; $COBCRUN -c defunc.cfg --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
notthere.cfg: No such file or directory
defunc.cfg:2: configuration file was included here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:746"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/configuration.at:752: \$COBCRUN -c defunc2.cfg --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN -c defunc2.cfg --runtime-conf" "configuration.at:752"
( $at_check_trace; $COBCRUN -c defunc2.cfg --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
defunc2.cfg:2: 'include' without a value!
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:752"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_44
#AT_START_45
at_fn_group_banner 45 'configuration.at:760' \
  "runtime configuration: conf optional" "           " 1
at_xfail=no
(
  $as_echo "45. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >defunc.cfg <<'_ATEOF'

include "runtime_empty.cfg"
includeif "notthere.cfg"
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:768: \$COBCRUN -c defunc.cfg --runtime-conf"
at_fn_check_prepare_dynamic "$COBCRUN -c defunc.cfg --runtime-conf" "configuration.at:768"
( $at_check_trace; $COBCRUN -c defunc.cfg --runtime-conf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:768"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_45
#AT_START_46
at_fn_group_banner 46 'configuration.at:773' \
  "runtime configuration: strings and environment" " " 1
at_xfail=no
(
  $as_echo "46. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/configuration.at:776: unset greet name ; \\
   TESTME=\"this is a test\" \\
   COB_EXIT_MSG='\${greet:Bye} \${name:-user}, \${TESTME}' \\
   \$COBCRUN --runtime-conf | \\
\$GREP \"COB_EXIT_MSG\" | \$GREP \"Bye user, this is a test\""
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "configuration.at:776"
( $at_check_trace; unset greet name ; \
   TESTME="this is a test" \
   COB_EXIT_MSG='${greet:Bye} ${name:-user}, ${TESTME}' \
   $COBCRUN --runtime-conf | \
$GREP "COB_EXIT_MSG" | $GREP "Bye user, this is a test"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:776"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:781: \$COBCRUN --runtime-conf | \\
\$GREP \"COB_EXIT_MSG\" | \$GREP \"end of program, please press a key to exit\""
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:781"
( $at_check_trace; $COBCRUN --runtime-conf | \
$GREP "COB_EXIT_MSG" | $GREP "end of program, please press a key to exit"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:781"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_46
#AT_START_47
at_fn_group_banner 47 'configuration.at:787' \
  "validation of COB_CONFIG_DIR" "                   " 1
at_xfail=no
(
  $as_echo "47. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:797: echo \"\$PATHSEP\""
at_fn_check_prepare_dynamic "echo \"$PATHSEP\"" "configuration.at:797"
( $at_check_trace; echo "$PATHSEP"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ";
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:797"
if $at_failed; then :
  # Previous test "failed" --> PATHSEP isn't ;

{ set +x
$as_echo "$at_srcdir/configuration.at:802: COB_CONFIG_DIR=\".:/temp:/tmp\" \\
\$COMPILE prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:802"
( $at_check_trace; COB_CONFIG_DIR=".:/temp:/tmp" \
$COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: environment variable 'COB_CONFIG_DIR' is '.:/temp:/tmp'; should not contain ':'
configuration error:
./default.conf: No such file or directory
cobc: error: please check environment variables as noted above
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:802"
$at_failed && at_fn_log_failure
$at_traceon; }



else
  # Previous test "passed" --> PATHSEP is ;

{ set +x
$as_echo "$at_srcdir/configuration.at:814: COB_CONFIG_DIR=\".;C:\\temp;C:\\tmp\" \\
\$COMPILE prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "configuration.at:814"
( $at_check_trace; COB_CONFIG_DIR=".;C:\temp;C:\tmp" \
$COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: environment variable 'COB_CONFIG_DIR' is '.;C:\\temp;C:\\tmp'; should not contain ';'
configuration error:
.\\default.conf: No such file or directory
cobc: error: please check environment variables as noted above
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:814"
$at_failed && at_fn_log_failure
$at_traceon; }



fi
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_47
#AT_START_48
at_fn_group_banner 48 'configuration.at:827' \
  "cobc configuration: source format" "              " 1
at_xfail=no
(
  $as_echo "48. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >fixed.cob <<'_ATEOF'

      *Example prog in fixed format (the default)
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      fixed.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      /
       PROCEDURE        DIVISION.
      D    DISPLAY 'START'
           DISPLAY '     20        30        40         50       60    '
           DISPLAY '     20        30        40         50       60
      -            '    70'
      D    DISPLAY 'STOP'
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:846: \$COMPILE_ONLY -fformat=unknown fixed.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=unknown fixed.cob" "configuration.at:846"
( $at_check_trace; $COMPILE_ONLY -fformat=unknown fixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration error:
-fformat=unknown: invalid value 'unknown' for configuration tag 'format';
	should be one of the following values: FIXED, FREE, COBOL85, VARIABLE, XOPEN, XCARD, CRT, TERMINAL, COBOLX
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:846"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:851: \$COMPILE_ONLY -fixed fixed.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fixed fixed.cob" "configuration.at:851"
( $at_check_trace; $COMPILE_ONLY -fixed fixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:851"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:852: \$COMPILE_ONLY -fformat=fixed fixed.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed fixed.cob" "configuration.at:852"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed fixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:852"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:853: \$COMPILE_ONLY -fformat=cobol85 fixed.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 fixed.cob" "configuration.at:853"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 fixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:853"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >wide.cob <<'_ATEOF'

      *Example prog in fixed format with wider record length
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      wide.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      /
       PROCEDURE        DIVISION.
           DISPLAY '     20        30        40         50       60         70 '
           DISPLAY '     20        30        40         50       60         70
      -            '        80'
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/configuration.at:868: \$COMPILE_ONLY -fformat=fixed wide.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed wide.cob" "configuration.at:868"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed wide.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "wide.cob:10: error: continuation character expected
wide.cob:9: error: invalid literal: '  ...'
wide.cob:9: note: missing terminating ' character
wide.cob:9: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:868"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:874: \$COMPILE_ONLY -fformat=cobol85 wide.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 wide.cob" "configuration.at:874"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 wide.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "wide.cob:10: error: continuation character expected
wide.cob:9: error: invalid literal: '  ...'
wide.cob:9: note: missing terminating ' character
wide.cob:9: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:874"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:880: \$COMPILE_ONLY -ftext-column=80 wide.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -ftext-column=80 wide.cob" "configuration.at:880"
( $at_check_trace; $COMPILE_ONLY -ftext-column=80 wide.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:880"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_48
#AT_START_49
at_fn_group_banner 49 'configuration.at:885' \
  "cobc configuration: ebcdic-table" "               " 1
at_xfail=no
(
  $as_echo "49. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           OBJECT-COMPUTER.
             PROGRAM COLLATING SEQUENCE IS an-ebcdic.
       SPECIAL-NAMES.
           ALPHABET an-ebcdic IS EBCDIC.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# Note: these tests need compile to C, as -febcdic-table handling is postponed to codegen

{ set +x
$as_echo "$at_srcdir/configuration.at:903: \$COMPILE -C -febcdic-table=default prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=default prog.cob" "configuration.at:903"
( $at_check_trace; $COMPILE -C -febcdic-table=default prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:903"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:904: \$COMPILE -C -febcdic-table=alternate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=alternate prog.cob" "configuration.at:904"
( $at_check_trace; $COMPILE -C -febcdic-table=alternate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:904"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:905: \$COMPILE -C -febcdic-table=ebcdic500_ascii7bit prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=ebcdic500_ascii7bit prog.cob" "configuration.at:905"
( $at_check_trace; $COMPILE -C -febcdic-table=ebcdic500_ascii7bit prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:905"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:906: \$COMPILE -C -febcdic-table=ebcdic500_ascii8bit prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=ebcdic500_ascii8bit prog.cob" "configuration.at:906"
( $at_check_trace; $COMPILE -C -febcdic-table=ebcdic500_ascii8bit prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:906"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:907: \$COMPILE -C -febcdic-table=ebcdic500_latin1 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=ebcdic500_latin1 prog.cob" "configuration.at:907"
( $at_check_trace; $COMPILE -C -febcdic-table=ebcdic500_latin1 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:907"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:908: \$COMPILE -C -febcdic-table=unknown prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=unknown prog.cob" "configuration.at:908"
( $at_check_trace; $COMPILE -C -febcdic-table=unknown prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: can't open translation table 'unknown'
cobc: error: invalid parameter: -febcdic-table
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:908"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >valid.ttbl <<'_ATEOF'

000102039C09867F978D8E0B0C0D0E0F101112139D8508871819928F1C1D1E1F80818283840A171B
88898A8B8C050607909116939495960498999A9B14159E1A20A0E2E4E0E1E3E5E7F15B2E3C282B21
26E9EAEBE8EDEEEFECDF5D242A293B5E2D2FC2C4C0C1C3C5C7D1A62C255F3E3FF8C9CACBC8CDCECF
CC603A2340273D22D8616263646566676869ABBBF0FDFEB1B06A6B6C6D6E6F707172AABAE6B8C6A4
B57E737475767778797AA1BFD0DDDEAEA2A3A5B7A9A7B6BCBDBEAC7CAFA8B4D77B41424344454647
4849ADF4F6F2F3F57D4A4B4C4D4E4F505152B9FBFCF9FAFF5CF7535455565758595AB2D4D6D2D3D5
30313233343536373839B3DBDCD9DA9F
_ATEOF


cat >valid2.ttbl <<'_ATEOF'

# we may have any comments in here
00 01 02 03 9C 09 86 7F 97 8D 8E 0B 0C 0D 0E 0F 10 11 12 13 9D 85 08 87 18 19 92
8F 1C 1D 1E 1F 80 81 82 83 84 0A 17 1B 88 89 8A 8B 8C 05 06 07 90 91 16 93 94 95

# even within

96 04 98 99 9A 9B 14 15 9E 1A 20 A0 E2 E4 E0 E1 E3 E5 E7 F1 5B 2E 3C 28 2B 21 26
E9 EA EB E8 ED EE EF EC DF 5D 24 2A 29 3B 5E 2D 2F C2 C4 C0 C1 C3 C5 C7 D1 A6 2C
25 5F 3E 3F F8 C9 CA CB C8 CD CE CF CC 60 3A 23 40 27 3D 22 D8 61 62 63 64 65 66
67 68 69 AB BB F0 FD FE B1 B0 6A 6B 6C 6D 6E 6F 70 71 72 AA BA E6 B8 C6 A4 B5 7E
73 74 75 76 77 78 79 7A A1 BF D0 DD DE AE A2 A3 A5 B7 A9 A7 B6 BC BD BE AC 7C AF
A8 B4 D7 7B 41 42 43 44 45 46 47 48 49 AD F4 F6 F2 F3 F5 7D 4A 4B 4C 4D 4E 4F 50
51 52 B9 FB FC F9 FA FF 5C F7 53 54 55 56 57 58 59 5A B2 D4 D6 D2 D3 D5 30 31 32
33 34 35 36 37 38 39 B3 DB DC D9 DA 9F
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:940: \$COMPILE -C -febcdic-table=./valid.ttbl prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=./valid.ttbl prog.cob" "configuration.at:940"
( $at_check_trace; $COMPILE -C -febcdic-table=./valid.ttbl prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:940"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/configuration.at:941: \$COMPILE -C -febcdic-table=./valid2.ttbl prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=./valid2.ttbl prog.cob" "configuration.at:941"
( $at_check_trace; $COMPILE -C -febcdic-table=./valid2.ttbl prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/configuration.at:941"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >invalid.ttbl <<'_ATEOF'

000102039C09867F978D8E0B0C0D0E0F101112139D8508871819928F1C1D1E1F80818283840A171B
88898A8B8C050607909116939495960498999A9B14159E1A20A0E2E4E0E1E3E5E7F15B2E3C282B21
26E9EAEBE8EDEEEFECDF5D242A293B5E2D2FC2C4C0C1C3C5C7D1A62X255F3E3FF8C9CACBC8CDCECF
CC60YA2340273D22D8616263646566676869ABBBF0FDFEB1B06A6B6C6D6E6F707172AABAE6B8C6A4
B57E737475767778797AA1BFD0DDDEAEA2A3A5B7A9A7B6BCBDBEAC7CAFA8B4D77B41424344454647
4849ADF4F6F2F3F57D4A4B4C4D4E4F505152B9FBFCF9FAFF5CF7535455565758595AB2D4D6D2D3D5
30313233343536373839B3DBDCD9DA9F
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:953: \$COMPILE -C -febcdic-table=./invalid.ttbl prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=./invalid.ttbl prog.cob" "configuration.at:953"
( $at_check_trace; $COMPILE -C -febcdic-table=./invalid.ttbl prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: errors in translation table './invalid.ttbl':
libcob: error: invalid hex byte on line 4: '2X'
libcob: error: invalid hex byte on line 5: 'YA'
cobc: error: invalid parameter: -febcdic-table
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:953"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >shorter.ttbl <<'_ATEOF'

0102039C09867F978D8E0B0C0D0E0F101112139D8508871819928F1C1D1E1F80818283840A171B88
898A8B8C050607909116939495960498999A9B14159E1A20A0E2E4E0E1E3E5E7F15B2E3C282B2126
E9EAEBE8EDEEEFECDF5D242A293B5E2D2FC2C4C0C1C3C5C7D1A62C255F3E3FF8C9CACBC8CDCECFCC
603A2340273D22D8616263646566676869ABBBF0FDFEB1B06A6B6C6D6E6F707172AABAE6B8C6A4B5
7E737475767778797AA1BFD0DDDEAEA2A3A5B7A9A7B6BCBDBEAC7CAFA8B4D77B4142434445464748
49ADF4F6F2F3F57D4A4B4C4D4E4F505152B9FBFCF9FAFF5CF7535455565758595AB2D4D6D2D3D530
313233343536373839B3DBDCD9DA9F
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:970: \$COMPILE -C -febcdic-table=./shorter.ttbl prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=./shorter.ttbl prog.cob" "configuration.at:970"
( $at_check_trace; $COMPILE -C -febcdic-table=./shorter.ttbl prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: not enough data in translation table './shorter.ttbl'
cobc: error: invalid parameter: -febcdic-table
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:970"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >shorter_longer.ttbl <<'_ATEOF'

000102039C09867F978D8E0B0C0D0E0F101112139D8508871819928F1C1D1E1F80818283840A171B
88898A8B8C050607909116939495960498999A9B14159E1A20A0E2E4E0E1E3E5E7F15B2E3C282B21
26E9EAEBE8EDEEEFECDF5D242A293B5E2D2FC2C4C0C1C3C5C7D1A62C255F3E3FF8C9CACBC8CDCECF
CC603A2340273D22D8616263646566676869ABBBF0FDFEB1B06A6B6C6D6E6F707172AABAE6B8C6A4
B57E737475767778797AA1BFD0DDDEAEA2A3A5B7A9A7B6BCBDBEAC7CAFA8B4D77B41424344454647
4849ADF4F6F2F3F57D4A4B4C4D4E4F505152B9FBFCF9FAFF5CF7535455565758595AB2D4D6D2D3D5
30313233343536373839B3DBDCD9DA9FFF
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:985: \$COMPILE -C -febcdic-table=./shorter_longer.ttbl prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=./shorter_longer.ttbl prog.cob" "configuration.at:985"
( $at_check_trace; $COMPILE -C -febcdic-table=./shorter_longer.ttbl prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: either not enough or too much data in translation table './shorter_longer.ttbl'
cobc: error: invalid parameter: -febcdic-table
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:985"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >longer.ttbl <<'_ATEOF'

000102039C09867F978D8E0B0C0D0E0F101112139D8508871819928F1C1D1E1F80818283840A171B
88898A8B8C050607909116939495960498999A9B14159E1A20A0E2E4E0E1E3E5E7F15B2E3C282B21
26E9EAEBE8EDEEEFECDF5D242A293B5E2D2FC2C4C0C1C3C5C7D1A62C255F3E3FF8C9CACBC8CDCECF
CC603A2340273D22D8616263646566676869ABBBF0FDFEB1B06A6B6C6D6E6F707172AABAE6B8C6A4
B57E737475767778797AA1BFD0DDDEAEA2A3A5B7A9A7B6BCBDBEAC7CAFA8B4D77B41424344454647
4849ADF4F6F2F3F57D4A4B4C4D4E4F505152B9FBFCF9FAFF5CF7535455565758595AB2D4D6D2D3D5
30313233343536373839B3DBDCD9DA9F
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
_ATEOF


{ set +x
$as_echo "$at_srcdir/configuration.at:1007: \$COMPILE -C -febcdic-table=./longer.ttbl prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -febcdic-table=./longer.ttbl prog.cob" "configuration.at:1007"
( $at_check_trace; $COMPILE -C -febcdic-table=./longer.ttbl prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: too much data in translation table './longer.ttbl'
cobc: error: invalid parameter: -febcdic-table
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/configuration.at:1007"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_49
#AT_START_50
at_fn_group_banner 50 'syn_copy.at:23' \
  "COPY: IN / OF / -I" "                             " 2
at_xfail=no
(
  $as_echo "50. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc" IN SUB.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc" OF SUB.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc" OF SUB.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


# TODO: Should default to auto-folding when IN "sub2" (literal) is used
#       and therefore don't work on case-sensitive file-systems
cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc" IN sub2.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc".
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc" IN CBD.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:94: mkdir -p SUB"
at_fn_check_prepare_trace "syn_copy.at:94"
( $at_check_trace; mkdir -p SUB
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >SUB/copy.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE '1'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:99: mkdir -p sub2"
at_fn_check_prepare_trace "syn_copy.at:99"
( $at_check_trace; mkdir -p sub2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >sub2/copy.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE '2'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:104: mkdir -p SUB/UNDER"
at_fn_check_prepare_trace "syn_copy.at:104"
( $at_check_trace; mkdir -p SUB/UNDER
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >SUB/UNDER/copy.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE '3'.
_ATEOF

cat >copy.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE '4'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:112: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:112"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:113: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_copy.at:113"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:113"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:114: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_copy.at:114"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:114"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:115: \$COMPILE_ONLY prog4.cob -I SUB"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog4.cob -I SUB" "syn_copy.at:115"
( $at_check_trace; $COMPILE_ONLY prog4.cob -I SUB
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:116: unset COB_COPY_LIB_CBD; \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "unset COB_COPY_LIB_CBD; $COMPILE_ONLY prog5.cob" "syn_copy.at:116"
( $at_check_trace; unset COB_COPY_LIB_CBD; $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog5.cob:6: warning: copybook not found in library 'CBD', library-name ignored
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:119: COB_COPY_LIB_CBD=\"./SUB/UNDER\" \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "COB_COPY_LIB_CBD=\"./SUB/UNDER\" $COMPILE_ONLY prog5.cob" "syn_copy.at:119"
( $at_check_trace; COB_COPY_LIB_CBD="./SUB/UNDER" $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:119"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:120: COB_COPY_LIB_CBD=\"\" \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "COB_COPY_LIB_CBD=\"\" $COMPILE_ONLY prog5.cob" "syn_copy.at:120"
( $at_check_trace; COB_COPY_LIB_CBD="" $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:120"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_50
#AT_START_51
at_fn_group_banner 51 'syn_copy.at:125' \
  "COPY: relative copybooks" "                       " 2
at_xfail=yes
(
  $as_echo "51. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO - the source for the COPY statement is currently completely ignored


{ set +x
$as_echo "$at_srcdir/syn_copy.at:131: mkdir -p SUB/SUB2/SUB3"
at_fn_check_prepare_trace "syn_copy.at:131"
( $at_check_trace; mkdir -p SUB/SUB2/SUB3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:131"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >SUB/prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc" IN SUB2.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR TEST-VAR2.
           STOP RUN.
_ATEOF



cat >SUB/SUB2/copy.inc <<'_ATEOF'

       COPY "copy2.inc" IN SUB3.
_ATEOF

cat >SUB/SUB2/SUB3/copy2.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE '1'.
       COPY "copy3.inc".
_ATEOF

# for compatibility reasons (older GC versions) it was considered to add
# the current working directory, but this idea was dropped:
# explicit add via -I. or COB_COPY_DIR/COBCPY (where both "empty" and "." work)
cat >copy3.inc <<'_ATEOF'

       COPY "copy4.inc" IN "SUBX".
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:158: mkdir -p SUBX"
at_fn_check_prepare_trace "syn_copy.at:158"
( $at_check_trace; mkdir -p SUBX
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:158"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >SUBX/copy4.inc <<'_ATEOF'

       77  TEST-VAR2    PIC X VALUE '2'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:163: \$COMPILE_ONLY -I. SUB/prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -I. SUB/prog.cob" "syn_copy.at:163"
( $at_check_trace; $COMPILE_ONLY -I. SUB/prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:164: COB_COPY_DIR=\".\" \$COMPILE_ONLY SUB/prog.cob"
at_fn_check_prepare_dynamic "COB_COPY_DIR=\".\" $COMPILE_ONLY SUB/prog.cob" "syn_copy.at:164"
( $at_check_trace; COB_COPY_DIR="." $COMPILE_ONLY SUB/prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:164"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:165: COB_COPY_DIR=\":\" \$COMPILE_ONLY SUB/prog.cob"
at_fn_check_prepare_dynamic "COB_COPY_DIR=\":\" $COMPILE_ONLY SUB/prog.cob" "syn_copy.at:165"
( $at_check_trace; COB_COPY_DIR=":" $COMPILE_ONLY SUB/prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_51
#AT_START_52
at_fn_group_banner 52 'syn_copy.at:170' \
  "COPY: extension" "                                " 2
at_xfail=no
(
  $as_echo "52. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc".
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy".
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "sub.inc" OF SUB.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "sub" OF SUB.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "sub" OF "..".
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >prog6.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "sub".
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >copy.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE 'V'.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:242: mkdir -p SUB/OSUB"
at_fn_check_prepare_trace "syn_copy.at:242"
( $at_check_trace; mkdir -p SUB/OSUB
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:242"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >SUB/sub.inc <<'_ATEOF'

       77  TEST-VAR     PIC X VALUE 'V'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:247: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:247"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:247"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:248: \$COMPILE_ONLY prog2.cob -ext=inc"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob -ext=inc" "syn_copy.at:248"
( $at_check_trace; $COMPILE_ONLY prog2.cob -ext=inc
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:248"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:249: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_copy.at:249"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:249"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:250: \$COMPILE_ONLY prog4.cob -ext=inc"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog4.cob -ext=inc" "syn_copy.at:250"
( $at_check_trace; $COMPILE_ONLY prog4.cob -ext=inc
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:250"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:251: \$COMPILE_ONLY prog5.cob -ext=inc -I SUB/OSUB"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog5.cob -ext=inc -I SUB/OSUB" "syn_copy.at:251"
( $at_check_trace; $COMPILE_ONLY prog5.cob -ext=inc -I SUB/OSUB
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:251"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:252: \$COMPILE_ONLY prog6.cob -ext=inc -I SUB"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog6.cob -ext=inc -I SUB" "syn_copy.at:252"
( $at_check_trace; $COMPILE_ONLY prog6.cob -ext=inc -I SUB
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:252"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_52
#AT_START_53
at_fn_group_banner 53 'syn_copy.at:257' \
  "COPY: within comment" "                           " 2
at_xfail=no
(
  $as_echo "53. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *COPY "copy.inc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

  IDENTIFICATION   DIVISION.
  PROGRAM-ID.      prog2.
  DATA             DIVISION.
  WORKING-STORAGE  SECTION.
  *> COPY "copy.inc".
  PROCEDURE        DIVISION.
  STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:280: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:280"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:280"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:281: \$COMPILE_ONLY -free prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free prog2.cob" "syn_copy.at:281"
( $at_check_trace; $COMPILE_ONLY -free prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:281"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_53
#AT_START_54
at_fn_group_banner 54 'syn_copy.at:286' \
  "COPY: file not found" "                           " 2
at_xfail=no
(
  $as_echo "54. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: possibly move "name without literal" to an extra test
#        also testing the library name part (as "found", because
#        of different slash)

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:303: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:303"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: copy.inc: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:303"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY copy.inc.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:317: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_copy.at:317"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:6: error: COPY.INC: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:317"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY copy.INC.inc.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:331: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_copy.at:331"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:6: error: COPY.INC.INC: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:331"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_copy.at:335: \$COMPILE_ONLY -ffold-copy=lower prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -ffold-copy=lower prog3.cob" "syn_copy.at:335"
( $at_check_trace; $COMPILE_ONLY -ffold-copy=lower prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:6: error: copy.inc.inc: No such file or directory
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:335"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_54
#AT_START_55
at_fn_group_banner 55 'syn_copy.at:342' \
  "COPY: recursive" "                                " 2
at_xfail=no
(
  $as_echo "55. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY copy1.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR.
           STOP RUN.
_ATEOF


cat >copy1.CPY <<'_ATEOF'

       COPY copy2.
       01 TEST-VAR  PIC X(2) VALUE "V1".
_ATEOF


cat >copy2.CPY <<'_ATEOF'

       01 TEST-VAR2 PIC X(2) VALUE "V2".
       COPY copy3.
_ATEOF


cat >copy3.CPY <<'_ATEOF'
       COPY "copy1.CPY".
       01 TEST-VAR3 PIC X(2) VALUE "V3".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:371: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:371"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "in file included from prog.cob:6:
in file included from copy1.CPY:2:
in file included from copy2.CPY:3:
in file included from copy3.CPY:1:
copy1.CPY: error: recursive inclusion
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:371"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_55
#AT_START_56
at_fn_group_banner 56 'syn_copy.at:382' \
  "COPY: replacement order" "                        " 2
at_xfail=no
(
  $as_echo "56. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01 TEST-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
          REPLACING ==TEST-VAR== BY ==FIRST-MATCH==
                    ==TEST-VAR== BY ==SECOND-MATCH==.
       PROCEDURE        DIVISION.
           DISPLAY FIRST-MATCH NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:403: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_copy.at:403"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:403"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:404: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:404"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:404"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_56
#AT_START_57
at_fn_group_banner 57 'syn_copy.at:409' \
  "COPY: separators" "                               " 2
at_xfail=no
(
  $as_echo "57. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01 TEST-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
          REPLACING ==TEST-VAR==, BY ==FIRST-MATCH==,
                 ,  ==TEST-VAR==; BY ==SECOND-MATCH==;
                 ;  ==TEST-VAR== , BY ==THIRD-MATCH==
                    ==TEST-VAR== ; BY ==FOURTH-MATCH==.
       PROCEDURE        DIVISION.
           DISPLAY FIRST-MATCH NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:432: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_copy.at:432"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:432"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:433: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:433"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:433"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_57
#AT_START_58
at_fn_group_banner 58 'syn_copy.at:438' \
  "COPY: partial replacement" "                      " 2
at_xfail=no
(
  $as_echo "58. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01 :TEST:-VAR PIC X(2) VALUE "OK".
       01 (TEST)-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
          REPLACING ==:TEST:== BY ==COLON==
                    ==(TEST)== BY ==PAREN==.
       PROCEDURE        DIVISION.
           DISPLAY COLON-VAR NO ADVANCING
           END-DISPLAY.
           DISPLAY PAREN-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:462: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_copy.at:462"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:462"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:463: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:463"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:463"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_58
#AT_START_59
at_fn_group_banner 59 'syn_copy.at:468' \
  "COPY: LEADING replacement" "                      " 2
at_xfail=no
(
  $as_echo "59. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01  TEST-VAR PIC X(2) VALUE "OK".
       01  NORM-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
            REPLACING LEADING ==TEST== BY ==FIRST==
                      LEADING ==NORM== BY ==SECOND==.
       PROCEDURE        DIVISION.
           DISPLAY FIRST-VAR NO ADVANCING
           END-DISPLAY.
           DISPLAY SECOND-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:492: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_copy.at:492"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:492"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:493: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:493"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:493"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_59
#AT_START_60
at_fn_group_banner 60 'syn_copy.at:498' \
  "COPY: TRAILING replacement" "                     " 2
at_xfail=no
(
  $as_echo "60. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01  TEST-FIRST  PIC X(2) VALUE "OK".
       01  TEST-SECOND PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
            REPLACING TRAILING ==FIRST== BY ==VAR1==
                      TRAILING ==SECOND== BY ==VAR2==.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR1 NO ADVANCING
           END-DISPLAY.
           DISPLAY TEST-VAR2 NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:522: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_copy.at:522"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:522"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:523: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:523"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:523"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_60
#AT_START_61
at_fn_group_banner 61 'syn_copy.at:528' \
  "COPY: partial replacement BY literal" "           " 2
at_xfail=no
(
  $as_echo "61. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01  TEST-VAR PIC X(2) VALUE "OK".
       01  NORM-VAR PIC X(2) VALUE "OK".
       01  X        PIC X(2) VALUE "OK".
_ATEOF


cat >copy2.inc <<'_ATEOF'

       01  TEST-FIRST PIC X(2) VALUE "OK".
       01  TEST-SECND PIC X(2) VALUE "OK".
       01  Y          PIC X(2) VALUE "OK".
_ATEOF


# When `-fpartial-replace-when-literal-src' is "skip", X and
# Y are available: partial replacement with a source literal does not
# apply when the replacement does not lead to a valid word (cf GCOS
# reference manual, pp 537--538, 542).
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
            REPLACING LEADING "TEST" BY "FIRST"
                      LEADING "NORM" BY "SECOND"
                      LEADING "X" BY "".
       COPY "copy2.inc"
            REPLACING TRAILING "FIRST" BY "VAR1"
                      TRAILING "SECND" BY "VAR2"
                      TRAILING "Y" BY "".
       PROCEDURE        DIVISION.
           DISPLAY FIRST-VAR  NO ADVANCING END-DISPLAY.
           DISPLAY SECOND-VAR NO ADVANCING END-DISPLAY.
           DISPLAY X          NO ADVANCING END-DISPLAY.
           DISPLAY TEST-VAR1  NO ADVANCING END-DISPLAY.
           DISPLAY TEST-VAR2  NO ADVANCING END-DISPLAY.
           DISPLAY Y          NO ADVANCING END-DISPLAY.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:569: \$COMPILE -fpartial-replace-when-literal-src=skip -o prog-skip prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fpartial-replace-when-literal-src=skip -o prog-skip prog.cob" "syn_copy.at:569"
( $at_check_trace; $COMPILE -fpartial-replace-when-literal-src=skip -o prog-skip prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:569"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:570: \$COBCRUN_DIRECT ./prog-skip"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-skip" "syn_copy.at:570"
( $at_check_trace; $COBCRUN_DIRECT ./prog-skip
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOKOKOKOKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:570"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:571: \$COMPILE -fpartial-replace-when-literal-src=ok -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fpartial-replace-when-literal-src=ok -o prog prog.cob" "syn_copy.at:571"
( $at_check_trace; $COMPILE -fpartial-replace-when-literal-src=ok -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "copy.inc:2: error: parentheses must be preceded by a picture symbol
copy.inc:2: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
copy.inc:3: error: parentheses must be preceded by a picture symbol
copy.inc:3: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
copy.inc:4: error: parentheses must be preceded by a picture symbol
copy.inc:4: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:17: error: 'X' cannot be used here
prog.cob:20: error: 'Y' cannot be used here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:571"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:581: \$COMPILE_ONLY -fpartial-replace-when-literal-src=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=error prog.cob" "syn_copy.at:581"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: partial replacing with literal used
prog.cob:7: error: partial replacing with literal used
prog.cob:8: error: partial replacing with literal used
prog.cob:8: error: partial replacing with literal used
prog.cob:9: error: partial replacing with literal used
prog.cob:9: error: partial replacing with literal used
prog.cob:11: error: partial replacing with literal used
prog.cob:11: error: partial replacing with literal used
prog.cob:12: error: partial replacing with literal used
prog.cob:12: error: partial replacing with literal used
prog.cob:13: error: partial replacing with literal used
prog.cob:13: error: partial replacing with literal used
copy.inc:2: error: parentheses must be preceded by a picture symbol
copy.inc:2: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
copy.inc:3: error: parentheses must be preceded by a picture symbol
copy.inc:3: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
copy.inc:4: error: parentheses must be preceded by a picture symbol
copy.inc:4: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:17: error: 'X' cannot be used here
prog.cob:20: error: 'Y' cannot be used here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:581"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_err.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
            REPLACING LEADING TEST BY "FIRST"
                      LEADING "NORM" BY SECOND.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:616: \$COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog_err.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog_err.cob" "syn_copy.at:616"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog_err.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err.cob:7: error: unexpected COBOL word in partial replacement phrase
prog_err.cob:8: error: unexpected COBOL word in partial replacement phrase
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:616"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:620: \$COMPILE_ONLY -fpartial-replace-when-literal-src=unconformable prog_err.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=unconformable prog_err.cob" "syn_copy.at:620"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=unconformable prog_err.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err.cob:7: error: unexpected COBOL word in partial replacement phrase
prog_err.cob:7: error: partial replacing with literal does not conform to GnuCOBOL
prog_err.cob:8: error: partial replacing with literal does not conform to GnuCOBOL
prog_err.cob:8: error: unexpected COBOL word in partial replacement phrase
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:620"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_61
#AT_START_62
at_fn_group_banner 62 'syn_copy.at:630' \
  "COPY: recursive replacement" "                    " 2
at_xfail=no
(
  $as_echo "62. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy-2.inc <<'_ATEOF'

       01 TEST-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >copy-1.inc <<'_ATEOF'

       COPY "copy-2.inc".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy-1.inc"
           REPLACING ==TEST-VAR== BY ==COPY-VAR==.
       PROCEDURE        DIVISION.
           DISPLAY COPY-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:654: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_copy.at:654"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:654"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:655: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:655"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:655"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_62
#AT_START_63
at_fn_group_banner 63 'syn_copy.at:660' \
  "COPY: fixed/free format" "                        " 2
at_xfail=no
(
  $as_echo "63. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       >>SOURCE FIXED
       01 TEST-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

  IDENTIFICATION   DIVISION.
  PROGRAM-ID.      prog.
  DATA             DIVISION.
  WORKING-STORAGE  SECTION.
  COPY "copy.inc".
  PROCEDURE        DIVISION.
   DISPLAY TEST-VAR NO ADVANCING
   END-DISPLAY.
   STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:680: \$COMPILE -free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -free prog.cob" "syn_copy.at:680"
( $at_check_trace; $COMPILE -free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:680"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:681: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_copy.at:681"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:681"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_63
#AT_START_64
at_fn_group_banner 64 'syn_copy.at:686' \
  "REPLACE: partial replacement BY SPACE" "          " 2
at_xfail=no
(
  $as_echo "64. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       REPLACE LEADING "PREFIX-" BY SPACES
               TRAILING "-SUFFIX" BY SPACE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 PREFIX-VAR1 PIC X(2) VALUE "OK".
       01 VAR2-SUFFIX PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY "VAR1: " VAR1 NO ADVANCING.
           DISPLAY "VAR1: " VAR2 NO ADVANCING.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:703: \$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog.cob" "syn_copy.at:703"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:703"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:704: \$COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog.cob" "syn_copy.at:704"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:704"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       COPY prog REPLACING LEADING "VAR1" BY SPACES.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:709: \$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog2.cob" "syn_copy.at:709"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:709"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_err.cob <<'_ATEOF'

       COPY prog REPLACING LEADING SPACES BY "PREFIX-".
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:714: \$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err.cob" "syn_copy.at:714"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err.cob:2: error: unexpected COBOL word in partial replacement phrase
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:714"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_copy.at:717: \$COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog_err.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog_err.cob" "syn_copy.at:717"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=skip prog_err.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err.cob:2: error: unexpected COBOL word in partial replacement phrase
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:717"
$at_failed && at_fn_log_failure
$at_traceon; }


# Check that partial replacement rejects spaces in right operand:
cat >prog_err2.cob <<'_ATEOF'

       COPY prog REPLACING LEADING "VAR" BY "VAR1 ".
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:725: \$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err2.cob" "syn_copy.at:725"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err2.cob:2: error: invalid partial replacing operand
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:725"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_err3.cob <<'_ATEOF'

       COPY prog REPLACING LEADING "VAR" BY " VAR1".
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_copy.at:732: \$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err3.cob" "syn_copy.at:732"
( $at_check_trace; $COMPILE_ONLY -fpartial-replace-when-literal-src=ok prog_err3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err3.cob:2: error: invalid partial replacing operand
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:732"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_64
#AT_START_65
at_fn_group_banner 65 'syn_copy.at:739' \
  "COPY: simple partial match" "                     " 2
at_xfail=no
(
  $as_echo "65. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

         02 TEST-VAR PIC X(2) VALUE "OK".
         02 TEST-CC PIC X(4) VALUE "OK 2".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GET-VALUE.
       COPY "copy.inc" REPLACING ==TEST-VAR== BY ==TEST-AVR==
         == 02 TEST-EE == BY == 02 TEST-FF ==.
       PROCEDURE DIVISION.
       main.
           DISPLAY TEST-AVR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:761: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:761"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:761"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_65
#AT_START_66
at_fn_group_banner 66 'syn_copy.at:766' \
  "COPY: with LEADING, multiple partial matches" "   " 2
at_xfail=no
(
  $as_echo "66. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

         02 TEST-VAR PIC X(2) VALUE "OK".
         02 TEST-VAR-BIS PIC X(6) VALUE "OK BIS".
         02 TEST-CC PIC X(4) VALUE "OK 2".
         02 TEST-OK PIC X(4) VALUE "OK 3".
         02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GET-VALUE.
       COPY "copy.inc"
         REPLACING LEADING ==TEST-VAR==     BY ==TEST-AVR==
                           == 02 TEST-OK == BY == 02 TEST-KO ==
                           ==TEST-CC==      BY ==TEST-DD==
                           == 02 TEST-EE == BY == 02 TEST-FF ==
                           == PIC ==        BY == pic ==.
       PROCEDURE DIVISION.
       main.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:799: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:799"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:799"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_66
#AT_START_67
at_fn_group_banner 67 'syn_copy.at:804' \
  "COPY: multiple partial matches with an error" "   " 2
at_xfail=no
(
  $as_echo "67. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

         02 TEST-VAR PIC X(2) VALUE "OK".
         02 TEST-VAR-BIS PIC X(6) VALUE "OK BIS".
         02 TEST-CC PIC X(4) VALUE "OK 2".
         02 TEST-OK PIC X(4) VALUE "OK 3".
         02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GET-VALUE.
       COPY "copy.inc" REPLACING ==TEST-VAR==     BY ==TEST-AVR==
                                 == 02 TEST-OK == BY == 02 TEST-KO ==
                                 ==TEST-CC==      BY ==TEST-DD==
                                 == 02 TEST-EE == BY == 02 TEST-FF ==
                                 == PIC ==        BY == pic ==.
       PROCEDURE DIVISION.
       main.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:836: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:836"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'main':
prog.cob:15: error: 'TEST-AVR-BIS' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:836"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_67
#AT_START_68
at_fn_group_banner 68 'syn_copy.at:844' \
  "COPY: Multiple partial matches (1)" "             " 2
at_xfail=no
(
  $as_echo "68. $at_setup_line: testing $at_desc ..."
  $at_traceon

# testing with multiple spaces in the including source file


cat >copy.inc <<'_ATEOF'

         02 TEST-VAR PIC X(2) VALUE "OK".
         02 TEST-VAR-BIS PIC X(6) VALUE "OK BIS".
         02 TEST-CC PIC X(4) VALUE "OK 2".
         02 TEST-OK PIC X(4) VALUE "OK 3".
         02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 GET-VALUE.
       COPY "copy.inc"
        REPLACING LEADING ==TEST-VAR==           BY ==TEST-AVR==
         ==         02       TEST-OK         ==  BY == 02 TEST-KO ==
         ==                TEST-CC            == BY == TEST-DD ==
         == 02 TEST-EE                               ==
                                                 BY == 02 TEST-FF ==
         ==                            PIC ==    BY == pic ==.
       PROCEDURE DIVISION.
       main.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:879: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:879"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:879"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_68
#AT_START_69
at_fn_group_banner 69 'syn_copy.at:884' \
  "COPY: Multiple partial matches (2)" "             " 2
at_xfail=no
(
  $as_echo "69. $at_setup_line: testing $at_desc ..."
  $at_traceon

# testing with multiple spaces in the included coypbook


cat >copy.inc <<'_ATEOF'

         02         TEST-VAR      PIC       X(2)     VALUE         "OK".
                02  TEST-VAR-BIS               PIC X(6) VALUE "OK BIS".
         02 TEST-CC PIC X(4)            VALUE "OK 2".
         02 TEST-OK PIC            X(4) VALUE "OK 3".
         02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 GET-VALUE.
       COPY "copy.inc"
       REPLACING LEADING ==TEST-VAR==     BY ==TEST-AVR==
                         == 02 TEST-OK == BY == 02 TEST-KO ==
                         ==TEST-CC==      BY ==TEST-DD==
                         == 02 TEST-EE == BY == 02 TEST-FF ==
                         == PIC ==        BY == pic ==.
       PROCEDURE DIVISION.
       main.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:918: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:918"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:918"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_69
#AT_START_70
at_fn_group_banner 70 'syn_copy.at:923' \
  "COPY and REPLACE in same file" "                  " 2
at_xfail=no
(
  $as_echo "70. $at_setup_line: testing $at_desc ..."
  $at_traceon



# See Bug #831
# the issue with this example is that the outer REPLACE
# _could_ only see the result of the inner REPLACING:
# "COLON", but needs to see "VAR-COLON".

cat >copy.inc <<'_ATEOF'

       01 VAR-:TEST: PIC X(2) VALUE "OK".
_ATEOF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       REPLACE   ==VAR-COLON== BY ==VAR-COMMA==.
       COPY "copy.inc"
          REPLACING ==:TEST:== BY ==COLON==.
       PROCEDURE        DIVISION.
           DISPLAY VAR-COLON NO ADVANCING
           END-DISPLAY.
           STOP RUN.
       REPLACE OFF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:949: \$COMPILE_ONLY -P- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -P- prog.cob" "syn_copy.at:949"
( $at_check_trace; $COMPILE_ONLY -P- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "     1 
     2  IDENTIFICATION   DIVISION.
     3  PROGRAM-ID.      prog.
     4  DATA             DIVISION.
     5  WORKING-STORAGE  SECTION.
     6  
     7  
     8 
     9  01 VAR-COMMA PIC X(2) VALUE \"OK\".
    10 
    11  PROCEDURE        DIVISION.
    12      DISPLAY VAR-COMMA NO ADVANCING
    13      END-DISPLAY.
    14      STOP RUN.
    15  

" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:949"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_copy.at:968: \$COMPILE_LISTING -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- prog.cob" "syn_copy.at:968"
( $at_check_trace; $COMPILE_LISTING -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         REPLACE   ==VAR-COLON== BY ==VAR-COMMA==.
000007         COPY \"copy.inc\"
000001C
000002C        01 VAR-:TEST: PIC X(2) VALUE \"OK\".
000007            REPLACING ==:TEST:== BY ==COLON==.
000008         PROCEDURE        DIVISION.
000009             DISPLAY VAR-COMMA NO ADVANCING
000010             END-DISPLAY.
000011             STOP RUN.
000012         REPLACE OFF.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:968"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_70
#AT_START_71
at_fn_group_banner 71 'syn_copy.at:997' \
  "COPY and REPLACE errors" "                        " 2
at_xfail=no
(
  $as_echo "71. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

           05  VAR                    PIC XX.
_ATEOF


# see Bug #890 - the buffer for the copybook was switched
# already before parsing the DOT; additional the error did
# not stopped at the DOT, so there was max. one error printed

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"  A.
       COPY "copy.inc"  ==A== BY B.
       COPY "copy.inc"  REPLACING.
       COPY "copy.inc"  REPLACING ABC.
       COPY "copy.inc"  REPLACING 'POST' IN.
       COPY "copy.inc"  REPLACING 'POST' BY BY.
       COPY "copy.inc"
             REPLACING ==some-name== BY ==other-name==
             REPLACING "some lit" BY "other literal".
       COPY "copy.inc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:1027: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:1027"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: syntax error, unexpected Word or Literal, expecting .
prog.cob:7: error: syntax error, unexpected ==, expecting .
prog.cob:8: error: syntax error, unexpected ., expecting == or LEADING or TRAILING or Word or Literal
prog.cob:9: error: syntax error, unexpected ., expecting BY
prog.cob:10: error: syntax error, unexpected ., expecting Word or Literal
prog.cob:11: error: syntax error, unexpected BY, expecting == or IN or OF or Word or Literal
prog.cob:14: error: syntax error, unexpected REPLACING, expecting .
copy.inc:2: error: level number must begin with 01 or 77
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_copy.at:1027"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_71
#AT_START_72
at_fn_group_banner 72 'syn_copy.at:1041' \
  "COPY and REPLACE with reserved words" "           " 2
at_xfail=no
(
  $as_echo "72. $at_setup_line: testing $at_desc ..."
  $at_traceon



# see Bug #23
cat >copy.inc <<'_ATEOF'

           05  WS-'POST'                    PIC XX.
           05  'POST'-A                     PIC XX.
           05  'POST'-WS                    PIC XX.
_ATEOF

cat >proc.inc <<'_ATEOF'

           DISPLAY VAR VAR-2
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 INPUT-REC.
       COPY "copy.inc"
          REPLACING 'POST' BY IN.
       PROCEDURE        DIVISION.
           DISPLAY WS-IN IN-A IN-WS NO ADVANCING.
           IF WS-IN EQUALS IN-A
       COPY "proc.inc"
          REPLACING VAR       BY IN-A IN INPUT-REC
                    ==VAR-2== BY ==IN-WS (1:1)==.
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_copy.at:1072: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_copy.at:1072"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_copy.at:1072"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_72
#AT_START_73
at_fn_group_banner 73 'syn_definition.at:25' \
  "Invalid source name" "                            " 2
at_xfail=no
(
  $as_echo "73. $at_setup_line: testing $at_desc ..."
  $at_traceon



: >short.cob

{ set +x
$as_echo "$at_srcdir/syn_definition.at:30: \$COMPILE_ONLY short.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY short.cob" "syn_definition.at:30"
( $at_check_trace; $COMPILE_ONLY short.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "short.cob: error: invalid file base name 'short' - name duplicates a 'C' keyword
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:30"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_73
#AT_START_74
at_fn_group_banner 74 'syn_definition.at:37' \
  "Invalid PROGRAM-ID" "                             " 2
at_xfail=no
(
  $as_echo "74. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: the name check is identical for the ENTRY statement

cat >SHORT.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      short.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:49: \$COMPILE_ONLY SHORT.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY SHORT.cob" "syn_definition.at:49"
( $at_check_trace; $COMPILE_ONLY SHORT.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "SHORT.cob:3: error: invalid PROGRAM-ID 'short' - name duplicates a 'C' keyword
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >SHORT2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "_short".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:60: \$COMPILE_ONLY SHORT2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY SHORT2.cob" "syn_definition.at:60"
( $at_check_trace; $COMPILE_ONLY SHORT2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:60"
$at_failed && at_fn_log_failure
$at_traceon; }



cat >SHORT3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      _short.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:70: \$COMPILE_ONLY SHORT3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY SHORT3.cob" "syn_definition.at:70"
( $at_check_trace; $COMPILE_ONLY SHORT3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "SHORT3.cob:3: error: invalid symbol '_' - skipping word
SHORT3.cob:4: error: syntax error, unexpected DIVISION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:70"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >SHORT4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "-short".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:82: \$COMPILE_ONLY SHORT4.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY SHORT4.cob" "syn_definition.at:82"
( $at_check_trace; $COMPILE_ONLY SHORT4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "SHORT4.cob:3: error: invalid PROGRAM-ID '-short' - name cannot begin with space or hyphen
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:82"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_74
#AT_START_75
at_fn_group_banner 75 'syn_definition.at:89' \
  "Invalid PROGRAM-ID type clause (1)" "             " 2
at_xfail=no
(
  $as_echo "75. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog IS COMMON.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:99: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:99"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: error: COMMON may only be used in a contained program
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:99"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_75
#AT_START_76
at_fn_group_banner 76 'syn_definition.at:106' \
  "invalid PROGRAM-ID type clause (2)" "             " 2
at_xfail=no
(
  $as_echo "76. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog IS INITIAL RECURSIVE.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:116: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:116"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: error: syntax error, unexpected RECURSIVE, expecting .
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_76
#AT_START_77
at_fn_group_banner 77 'syn_definition.at:123' \
  "INITIAL / RECURSIVE before COMMON" "              " 2
at_xfail=no
(
  $as_echo "77. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >containing-prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      containing-prog.

       PROCEDURE        DIVISION.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog-1 IS INITIAL COMMON.
       PROCEDURE        DIVISION.
           STOP RUN.
       END PROGRAM      prog-1.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog-2 IS RECURSIVE COMMON.
       PROCEDURE        DIVISION.
           STOP RUN.
       END PROGRAM      prog-2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:145: \$COMPILE_ONLY containing-prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY containing-prog.cob" "syn_definition.at:145"
( $at_check_trace; $COMPILE_ONLY containing-prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:145"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_77
#AT_START_78
at_fn_group_banner 78 'syn_definition.at:155' \
  "Undefined data name" "                            " 2
at_xfail=no
(
  $as_echo "78. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:166: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:166"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: 'X' cannot be used here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:166"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_78
#AT_START_79
at_fn_group_banner 79 'syn_definition.at:173' \
  "Undefined group name" "                           " 2
at_xfail=no
(
  $as_echo "79. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       PROCEDURE        DIVISION.
           DISPLAY X IN G.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:187: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:187"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: 'X IN G' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:187"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_79
#AT_START_80
at_fn_group_banner 80 'syn_definition.at:194' \
  "Undefined data name in group" "                   " 2
at_xfail=no
(
  $as_echo "80. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X.
       01 Y             PIC X.
       PROCEDURE        DIVISION.
           DISPLAY Y IN G.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:210: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:210"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'Y IN G' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:210"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_80
#AT_START_81
at_fn_group_banner 81 'syn_definition.at:217' \
  "Reference not a group name" "                     " 2
at_xfail=no
(
  $as_echo "81. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       PROCEDURE        DIVISION.
           DISPLAY X IN X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:232: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:232"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: 'X IN X' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:232"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_81
#AT_START_82
at_fn_group_banner 82 'syn_definition.at:239' \
  "Incomplete 01 definition" "                       " 2
at_xfail=no
(
  $as_echo "82. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:250: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:250"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: PICTURE clause required for 'X'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:250"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_82
#AT_START_83
at_fn_group_banner 83 'syn_definition.at:257' \
  "error handling in conditions" "                   " 2
at_xfail=no
(
  $as_echo "83. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 TESTME PIC X(1).

       PROCEDURE DIVISION.

          EVALUATE TRUE
            WHEN TESTME IS NOT-DEFINED
              CONTINUE
            WHEN TESTME = 'A'
              CONTINUE
            WHEN OTHER
              IF NOT TESTME IS NOT-DEFINED
              THEN
                CONTINUE
              ELSE
                CONTINUE
              END-IF
          END-EVALUATE
          EVALUATE TRUE
            WHEN TESTME IS 'ABC'
              CONTINUE
            WHEN TESTME = 'B'
              CONTINUE
          END-EVALUATE
          EVALUATE TRUE
            WHEN TESTME IS TESTME
              CONTINUE
            WHEN TESTME = 'C'
              CONTINUE
          END-EVALUATE
          EVALUATE TRUE
            WHEN TESTME NOT = NOT-DEFINED
              CONTINUE
            WHEN TESTME = 'D'
              CONTINUE
          END-EVALUATE
          EVALUATE TRUE
            WHEN TESTME ELSE NOT-DEFINED
              CONTINUE
            WHEN TESTME = 'E'
              CONTINUE
          END-EVALUATE
          EVALUATE broken
            WHEN NOT-DEFINED
              continue
          END-EVALUATE

          GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:314: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:314"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: syntax error, unexpected Identifier
prog.cob:11: error: WHEN without imperative statement
prog.cob:16: error: syntax error, unexpected Identifier
prog.cob:24: error: syntax error, unexpected Literal
prog.cob:24: error: WHEN without imperative statement
prog.cob:30: error: syntax error, unexpected Identifier
prog.cob:30: error: WHEN without imperative statement
prog.cob:36: error: 'NOT-DEFINED' is not defined
prog.cob:42: error: syntax error, unexpected ELSE
prog.cob:42: error: syntax error, unexpected Identifier
prog.cob:42: error: WHEN without imperative statement
prog.cob:42: error: incomplete expression
prog.cob:47: error: 'broken' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_83
#AT_START_84
at_fn_group_banner 84 'syn_definition.at:333' \
  "Same paragraphs in different sections" "          " 2
at_xfail=no
(
  $as_echo "84. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       S-1 SECTION.
       L.

       S-2 SECTION.
       L.

       S-3 SECTION.
            GO TO L.
       L.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       PROCEDURE        DIVISION.
       S-1 SECTION.
       L.

       S-2 SECTION.
       L.

       S-3 SECTION.
            GO TO L.
       K.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:366: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:366"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:366"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:367: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_definition.at:367"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob: in section 'S-3':
prog2.cob:12: error: 'L' is ambiguous; needs qualification
prog2.cob:6: note: 'L IN S-1' defined here
prog2.cob:9: note: 'L IN S-2' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:367"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_84
#AT_START_85
at_fn_group_banner 85 'syn_definition.at:376' \
  "GO TO sections and foreign paragraphs" "          " 2
at_xfail=no
(
  $as_echo "85. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       S-1 SECTION.
           GO TO S-2.
       E-1.
           IF FUNCTION SECONDS-PAST-MIDNIGHT = 10
              GO TO S-1.  *> check that go to its own section is not warned

       S-2 SECTION.
           GO TO E-3.
       E-2.

       S-3 SECTION.
       E-3.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:397: \$COBC -fdiagnostics-plain-output -fsyntax-only prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -fsyntax-only prog.cob" "syn_definition.at:397"
( $at_check_trace; $COBC -fdiagnostics-plain-output -fsyntax-only prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'S-1':
prog.cob:6: warning: GO TO SECTION 'S-2' [-Wgoto-section]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:397"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:401: \$COBC -fdiagnostics-plain-output -fsyntax-only -Wall -Werror=goto-section prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -fsyntax-only -Wall -Werror=goto-section prog.cob" "syn_definition.at:401"
( $at_check_trace; $COBC -fdiagnostics-plain-output -fsyntax-only -Wall -Werror=goto-section prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'S-1':
prog.cob:6: error: GO TO SECTION 'S-2' [-Werror=goto-section]
prog.cob: in section 'S-2':
prog.cob:12: warning: GO TO paragraph 'E-3' which is defined in another SECTION [-Wgoto-different-section]
prog.cob:16: note: 'E-3 IN S-3' defined here [-Wgoto-different-section]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:401"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_85
#AT_START_86
at_fn_group_banner 86 'syn_definition.at:413' \
  "Redefinition of 01 items" "                       " 2
at_xfail=no
(
  $as_echo "86. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 X             PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:425: \$COBC -fsyntax-only prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only prog.cob" "syn_definition.at:425"
( $at_check_trace; $COBC -fsyntax-only prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:425"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:426: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:426"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'X'
prog.cob:6: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:426"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:430: \$COMPILE_ONLY -Wno-redefinition prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-redefinition prog.cob" "syn_definition.at:430"
( $at_check_trace; $COMPILE_ONLY -Wno-redefinition prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:430"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:431: \$COMPILE_ONLY -Werror=redefinition prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Werror=redefinition prog.cob" "syn_definition.at:431"
( $at_check_trace; $COMPILE_ONLY -Werror=redefinition prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: redefinition of 'X'
prog.cob:6: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:431"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:435: \$COMPILE_ONLY -fdiagnostics-show-option -Werror=redefinition prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Werror=redefinition prog.cob" "syn_definition.at:435"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Werror=redefinition prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: redefinition of 'X' [-Werror=redefinition]
prog.cob:6: note: 'X' previously defined here [-Werror=redefinition]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:435"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_86
#AT_START_87
at_fn_group_banner 87 'syn_definition.at:442' \
  "Redefinition of 01 and 02 items" "                " 2
at_xfail=no
(
  $as_echo "87. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X.
         02 X           PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:454: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:454"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'X'
prog.cob:6: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:454"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_87
#AT_START_88
at_fn_group_banner 88 'syn_definition.at:462' \
  "Redefinition of 02 items" "                       " 2
at_xfail=no
(
  $as_echo "88. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X.
         02 X           PIC X.
_ATEOF


# validation for #881 - error if redefinition on redefines
cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X             PIC X.
         02 X REDEFINES X PIC X.
         02 Y             PIC 9.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:487: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_definition.at:487"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:8: warning: redefinition of 'X'
prog2.cob:7: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:487"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_88
#AT_START_89
at_fn_group_banner 89 'syn_definition.at:495' \
  "Redefinition of 77 items" "                       " 2
at_xfail=no
(
  $as_echo "89. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 X             PIC X.
       77 X             PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:507: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:507"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'X'
prog.cob:6: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:507"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_89
#AT_START_90
at_fn_group_banner 90 'syn_definition.at:515' \
  "Redefinition of 01 and 77 items" "                " 2
at_xfail=no
(
  $as_echo "90. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       77 X             PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:527: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:527"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'X'
prog.cob:6: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:527"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_90
#AT_START_91
at_fn_group_banner 91 'syn_definition.at:535' \
  "Redefinition of 88 items" "                       " 2
at_xfail=no
(
  $as_echo "91. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
         88 A           VALUE "A".
         88 A           VALUE "B".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:548: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:548"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: redefinition of 'A'
prog.cob:7: note: 'A' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:548"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_91
#AT_START_92
at_fn_group_banner 92 'syn_definition.at:556' \
  "Redefinition of program-name by other programs" " " 2
at_xfail=no
(
  $as_echo "92. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  PROG         PIC X.

       PROCEDURE        DIVISION.
           CONTINUE
           .
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      foo COMMON.
       END PROGRAM      foo.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      barr.
       PROCEDURE        DIVISION.
           CONTINUE
           .
       *> This should cause an error (clashes with COMMON subprog foo)
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      foo.
       END PROGRAM      foo.
       END PROGRAM      barr.
       END PROGRAM      prog.


       *> This should cause an error.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  foo          PIC X.

       PROCEDURE        DIVISION.
           CONTINUE
           .
       *> This should clash with the data definition.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      foo.
       END PROGRAM      foo.
       END PROGRAM      prog.

       *> This should cause an error
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      samename.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      samename.
       END PROGRAM      samename.
       END PROGRAM      samename.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:613: \$COMPILE_ONLY --ffold-call=upper -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY --ffold-call=upper -fdiagnostics-show-option prog.cob" "syn_definition.at:613"
( $at_check_trace; $COMPILE_ONLY --ffold-call=upper -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'prog' [-Wredefinition]
prog.cob:3: note: 'prog' previously defined here [-Wredefinition]
prog.cob:23: error: redefinition of program name 'foo'
prog.cob:31: error: redefinition of program name 'prog'
prog.cob:42: error: redefinition of 'foo'
prog.cob:35: note: 'foo' previously defined here [-Wredefinition]
prog.cob:42: error: redefinition of program name 'foo'
prog.cob:49: error: PROCEDURE DIVISION header missing
prog.cob:50: error: redefinition of program name 'samename'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:613"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_definition.at:625: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:625"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:23: error: redefinition of program ID 'foo'
prog.cob:31: error: redefinition of program ID 'prog'
prog.cob:42: error: redefinition of program ID 'foo'
prog.cob:49: error: PROCEDURE DIVISION header missing
prog.cob:50: error: redefinition of program ID 'samename'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:625"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_92
#AT_START_93
at_fn_group_banner 93 'syn_definition.at:636' \
  "Redefinition of program-name within program" "    " 2
at_xfail=no
(
  $as_echo "93. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  prog        PIC 99 VALUE 0.

       PROCEDURE       DIVISION.
       prog.
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:653: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:653"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: redefinition of 'prog'
prog.cob:7: note: 'prog' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:653"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:657: \$COMPILE_ONLY -fno-program-name-redefinition prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fno-program-name-redefinition prog.cob" "syn_definition.at:657"
( $at_check_trace; $COMPILE_ONLY -fno-program-name-redefinition prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'prog'
prog.cob:3: note: 'prog' previously defined here
prog.cob:10: error: redefinition of 'prog'
prog.cob:3: note: 'prog' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:657"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_93
#AT_START_94
at_fn_group_banner 94 'syn_definition.at:666' \
  "Redefinition of function-prototype name" "        " 2
at_xfail=no
(
  $as_echo "94. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       REPOSITORY.
           FUNCTION func
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  func         PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:683: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:683"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: no definition/prototype seen for FUNCTION 'func'
prog.cob:12: error: syntax error, unexpected user function name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:683"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_94
#AT_START_95
at_fn_group_banner 95 'syn_definition.at:691' \
  "PROCEDURE DIVISION RETURNING OMITTED: main" "     " 2
at_xfail=no
(
  $as_echo "95. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION RETURNING OMITTED.
           MOVE 42 TO RETURN-CODE
           GOBACK.
_ATEOF



{ set +x
$as_echo "$at_srcdir/syn_definition.at:703: \$COMPILE_MODULE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog.cob" "syn_definition.at:703"
( $at_check_trace; $COMPILE_MODULE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:703"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:704: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_definition.at:704"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: RETURNING clause cannot be OMITTED for main program
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:704"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_95
#AT_START_96
at_fn_group_banner 96 'syn_definition.at:711' \
  "PROCEDURE DIVISION RETURNING OMITTED: FUNCTION" " " 2
at_xfail=no
(
  $as_echo "96. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func.
       PROCEDURE        DIVISION RETURNING OMITTED.
           MOVE 42 TO RETURN-CODE
           GOBACK.
       END FUNCTION     func.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:723: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:723"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: RETURNING clause cannot be OMITTED for a FUNCTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:723"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_96
#AT_START_97
at_fn_group_banner 97 'syn_definition.at:730' \
  "PROCEDURE DIVISION RETURNING item" "              " 2
at_xfail=no
(
  $as_echo "97. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR-OUT       PIC 9.
       PROCEDURE        DIVISION RETURNING PAR-OUT.
           MOVE 4 TO PAR-OUT
           GOBACK.
       END FUNCTION     func.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 PAR-OUT       PIC 9.
       PROCEDURE        DIVISION RETURNING PAR-OUT.
           MOVE 4 TO PAR-OUT
           GOBACK.
       END FUNCTION     func.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR-OUT       PIC 9 OCCURS 10.
       PROCEDURE        DIVISION RETURNING PAR-OUT.
           MOVE 4 TO PAR-OUT (1)
           GOBACK.
       END FUNCTION     func.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR.
          02 PAR-OUT    PIC 9.
       PROCEDURE        DIVISION RETURNING PAR-OUT.
           MOVE 4 TO PAR-OUT
           GOBACK.
       END FUNCTION     func.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR           PIC 9.
       PROCEDURE        DIVISION USING PAR RETURNING PAR.
           MOVE 4 TO PAR
           GOBACK.
       END FUNCTION     func.

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     func2.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR-IN        PIC 9.
       01 PAR-OUT       REDEFINES PAR-IN PIC 9.
       PROCEDURE        DIVISION USING PAR-IN RETURNING PAR-OUT.
           MOVE 4 TO PAR-OUT
           GOBACK.
       END FUNCTION     func2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:806: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:806"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:806"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:807: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_definition.at:807"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: RETURNING item is not defined in LINKAGE SECTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:807"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:810: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_definition.at:810"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:7: error: RETURNING item should not have OCCURS
prog3.cob:9: error: 'PAR-OUT' requires one subscript
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:810"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:814: \$COMPILE_ONLY prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog4.cob" "syn_definition.at:814"
( $at_check_trace; $COMPILE_ONLY prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog4.cob:8: error: RETURNING item must have level 01
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:814"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:817: \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog5.cob" "syn_definition.at:817"
( $at_check_trace; $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog5.cob:7: error: 'PAR' USING item duplicates RETURNING item
prog5.cob:18: error: 'PAR-OUT' REDEFINES field not allowed here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:817"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_97
#AT_START_98
at_fn_group_banner 98 'syn_definition.at:825' \
  "Data item with same name as program-name" "       " 2
at_xfail=no
(
  $as_echo "98. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       FUNCTION-ID.    x.
       DATA            DIVISION.
       LINKAGE         SECTION.
       01  ret         PIC 99.
       PROCEDURE       DIVISION RETURNING ret.
           CONTINUE
           .
       END FUNCTION x.


       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  x            PIC 999 VALUE 134.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:847: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:847"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:847"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_98
#AT_START_99
at_fn_group_banner 99 'syn_definition.at:852' \
  "Ambiguous reference to 02 items" "                " 2
at_xfail=no
(
  $as_echo "99. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X.
       01 G2.
         02 X           PIC X.
       PROCEDURE        DIVISION.
           DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:869: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:869"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: 'X' is ambiguous; needs qualification
prog.cob:7: note: 'X IN G1' defined here
prog.cob:9: note: 'X IN G2' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:869"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_99
#AT_START_100
at_fn_group_banner 100 'syn_definition.at:878' \
  "Ambiguous reference to 02 and 03 items" "         " 2
at_xfail=no
(
  $as_echo "100. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X.
           03 X         PIC X.
       PROCEDURE        DIVISION.
           DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:894: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:894"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'X' is ambiguous; needs qualification
prog.cob:7: note: 'X IN G' defined here
prog.cob:8: note: 'X IN X IN G' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:894"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_100
#AT_START_101
at_fn_group_banner 101 'syn_definition.at:903' \
  "Ambiguous reference with qualification" "         " 2
at_xfail=no
(
  $as_echo "101. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X.
           03 Y         PIC X.
       01 G2.
         02 X.
           03 Y         PIC X.
       PROCEDURE        DIVISION.
           DISPLAY Y IN X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:922: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:922"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: 'Y IN X' is ambiguous; needs qualification
prog.cob:8: note: 'Y IN X IN G1' defined here
prog.cob:11: note: 'Y IN X IN G2' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:922"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_101
#AT_START_102
at_fn_group_banner 102 'syn_definition.at:931' \
  "Unique reference with ambiguous qualifiers" "     " 2
at_xfail=no
(
  $as_echo "102. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X.
           03 Y         PIC X VALUE "Y".
       01 G2.
         02 X.
           03 Z         PIC X VALUE "Z".
       PROCEDURE        DIVISION.
           DISPLAY Z IN X NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:950: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:950"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:950"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_102
#AT_START_103
at_fn_group_banner 103 'syn_definition.at:955' \
  "SYNCHRONIZED clause" "                            " 2
at_xfail=no
(
  $as_echo "103. $at_setup_line: testing $at_desc ..."
  $at_traceon



# GC simply ignored RIGHT which is wrong according to ANSI/ISO;
# most dialects just skip this, but according to docs IBM handles it

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  CS-FULL            PICTURE 9(4) COMPUTATIONAL SYNCHRONIZED.
       77  CS                 PIC 9(4) COMP SYNC.
       77  CSL                PIC 9(4) COMP SYNC LEFT.
       77  CSR                PIC 9(4) COMP SYNC RIGHT.
       PROCEDURE        DIVISION.
           MOVE 1 TO CS-FULL, CS, CSL, CSR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:975: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "syn_definition.at:975"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:975"
$at_failed && at_fn_log_failure
$at_traceon; }

# currently is:
{ set +x
$as_echo "$at_srcdir/syn_definition.at:977: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:977"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: SYNCHRONIZED LEFT/RIGHT is not implemented
prog.cob:9: warning: SYNCHRONIZED LEFT/RIGHT is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:977"
$at_failed && at_fn_log_failure
$at_traceon; }

# TODO: should be
#AT_CHECK([$COMPILE_ONLY prog.cob], [0], [], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_103
#AT_START_104
at_fn_group_banner 104 'syn_definition.at:998' \
  "Undefined procedure name" "                       " 2
at_xfail=no
(
  $as_echo "104. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           GO TO END-OF-PROGRAM.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1009: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1009"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: 'END-OF-PROGRAM' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1009"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_104
#AT_START_105
at_fn_group_banner 105 'syn_definition.at:1018' \
  "Redefinition of section names" "                  " 2
at_xfail=no
(
  $as_echo "105. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       L SECTION.
       L SECTION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1030: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1030"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'L':
prog.cob:6: error: redefinition of 'L'
prog.cob:5: note: 'L' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1030"
$at_failed && at_fn_log_failure
$at_traceon; }


# FIXME: as long as there is no direct reference to the section
#        this should be not more than a warning,
#        maybe depending on a compiler configuration

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_105
#AT_START_106
at_fn_group_banner 106 'syn_definition.at:1043' \
  "Redefinition of section and paragraph names" "    " 2
at_xfail=no
(
  $as_echo "106. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       L SECTION.
       L.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1055: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1055"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'L':
prog.cob:6: error: redefinition of 'L'
prog.cob:5: note: 'L' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1055"
$at_failed && at_fn_log_failure
$at_traceon; }


# FIXME: as long as there is no direct reference to
#        the paragraph/section this should be not more
#        than a warning, maybe depending on a compiler
#        configuration

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_106
#AT_START_107
at_fn_group_banner 107 'syn_definition.at:1069' \
  "Redefinition of label and variable names" "       " 2
at_xfail=yes
(
  $as_echo "107. $at_setup_line: testing $at_desc ..."
  $at_traceon



# currently failing, see FR #260


cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. WORD.
       data division.
       working-storage section.
      *-----------------------------------------------------------------
       77 word pic 9.
      *-----------------------------------------------------------------
       PROCEDURE DIVISION.
       main section.
      *
           move 0 to word
           perform word
      *
           stop run returning word.
      *-----------------------------------------------------------------
       word section.
           add 1 to word.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1095: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_definition.at:1095"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'main':
prog.cob:17: error: user-defined word re-used with different type does not conform to COBOL 2014
prog.cob:17: error: redefinition of 'word' as label-name
prog.cob:7: note: 'word' previously defined here as data-name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1095"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:1101: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1101"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1101"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_107
#AT_START_108
at_fn_group_banner 108 'syn_definition.at:1106' \
  "Redefinition of paragraph names" "                " 2
at_xfail=no
(
  $as_echo "108. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       L.
       L.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1118: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1118"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1118"
$at_failed && at_fn_log_failure
$at_traceon; }


## Change when we DON'T allow this (likely as a warning,
## depending on compiler configuration)
## AT_CHECK([$COMPILE_ONLY prog.cob], [1], [],
## [prog.cob: in paragraph 'L':
## prog.cob:6: error: redefinition of 'L'
## prog.cob:5: error: 'L' previously defined here
## ])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_108
#AT_START_109
at_fn_group_banner 109 'syn_definition.at:1132' \
  "Ambiguous reference to paragraph name" "          " 2
at_xfail=no
(
  $as_echo "109. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       S-1 SECTION.
       L.
       S-2 SECTION.
       L.
       S-3 SECTION.
           GO TO L.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1148: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1148"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'S-3':
prog.cob:10: error: 'L' is ambiguous; needs qualification
prog.cob:6: note: 'L IN S-1' defined here
prog.cob:8: note: 'L IN S-2' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1148"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_109
#AT_START_110
at_fn_group_banner 110 'syn_definition.at:1158' \
  "Non-matching level numbers (extension)" "         " 2
at_xfail=no
(
  $as_echo "110. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  A.
            05 B.
                10 C PIC X.
           04 D.
            05 E PIC X.
            05 F PIC X.
           04 D2.
            05 E2 PIC X.
           04 D3.
            05 E3 PIC X.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1180: \$COMPILE_ONLY -frelax-level-hierarchy prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-level-hierarchy prog.cob" "syn_definition.at:1180"
( $at_check_trace; $COMPILE_ONLY -frelax-level-hierarchy prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: no previous data item of level 04
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1180"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:1183: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1183"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: no previous data item of level 04
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1183"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_110
#AT_START_111
at_fn_group_banner 111 'syn_definition.at:1190' \
  "CALL BY VALUE alphanumeric item (extension)" "    " 2
at_xfail=no
(
  $as_echo "111. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4).
       PROCEDURE        DIVISION.
           CALL "PROG2" USING BY VALUE X
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1205: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1205"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: BY CONTENT assumed for alphanumeric item 'X'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1205"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_111
#AT_START_112
at_fn_group_banner 112 'syn_definition.at:1212' \
  "CALL BY VALUE national item (extension)" "        " 2
at_xfail=no
(
  $as_echo "112. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  N            PIC N(4).
       PROCEDURE        DIVISION.
           CALL "PROG2" USING BY VALUE N
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1227: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1227"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:8: warning: BY CONTENT assumed for national item 'N'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1227"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_112
#AT_START_113
at_fn_group_banner 113 'syn_definition.at:1235' \
  "CALL BY VALUE figurative constants" "             " 2
at_xfail=no
(
  $as_echo "113. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           CALL "PROG2" USING BY VALUE
                low-value
                high-value
                space
                quote
                zero
           END-CALL.
           CALL "PROG2" USING
                low-value
                high-value
                space
                quote
                zero
           END-CALL.
           CALL "PROG3" USING
                null
           END-CALL.
           STOP RUN.
_ATEOF


# FIXME: should raise an error with -std=cobolNNNN, no warning with -std=default
# -->    revise after rw-merge
{ set +x
$as_echo "$at_srcdir/syn_definition.at:1264: \$COMPILE_ONLY -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -w prog.cob" "syn_definition.at:1264"
( $at_check_trace; $COMPILE_ONLY -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1264"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_113
#AT_START_114
at_fn_group_banner 114 'syn_definition.at:1269' \
  "Duplicate identification division header" "       " 2
at_xfail=no
(
  $as_echo "114. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1278: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1278"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: error: syntax error, unexpected IDENTIFICATION, expecting FUNCTION-ID or PROGRAM-ID
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1278"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_114
#AT_START_115
at_fn_group_banner 115 'syn_definition.at:1284' \
  "RETURNING in STOP RUN / GOBACK / EXIT PROGRAM" "  " 2
at_xfail=no
(
  $as_echo "115. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog1.
       PROCEDURE        DIVISION.
           EXIT PROGRAM RETURNING -1.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       PROCEDURE        DIVISION.
           GOBACK GIVING 2.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       PROCEDURE        DIVISION.
           STOP RUN GIVING 0.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog4.
       PROCEDURE        DIVISION.
           MOVE 42 TO RETURN-CODE
           GOBACK.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog5.
       PROCEDURE        DIVISION.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1323: \$COMPILE prog1.cob prog2.cob prog3.cob prog4.cob prog5.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob prog2.cob prog3.cob prog4.cob prog5.cob" "syn_definition.at:1323"
( $at_check_trace; $COMPILE prog1.cob prog2.cob prog3.cob prog4.cob prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1323"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:1325: \$COMPILE -fnot-register=return-code \\
prog1.cob prog2.cob prog3.cob prog4.cob prog5.cob"
at_fn_check_prepare_notrace 'an embedded newline' "syn_definition.at:1325"
( $at_check_trace; $COMPILE -fnot-register=return-code \
prog1.cob prog2.cob prog3.cob prog4.cob prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog1.cob:5: error: RETURNING/GIVING not allowed for non-returning runtime elements
prog2.cob:5: error: RETURNING/GIVING not allowed for non-returning runtime elements
prog4.cob:5: error: 'RETURN-CODE' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1325"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_115
#AT_START_116
at_fn_group_banner 116 'syn_definition.at:1335' \
  "OSVS register CURRENT-DATE and TIME-OF-DAY" "     " 2
at_xfail=yes
(
  $as_echo "116. $at_setup_line: testing $at_desc ..."
  $at_traceon



# special "special register" - the value is dynamic like a function so needs to
# be either handled as an "internal" function call with c/s reserved words or
# new codegen branch for "set variable on use" which would allow register handling



cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog1.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77 display-out   pic x(10).
       PROCEDURE        DIVISION.
           MOVE CURRENT-DATE TO DISPLAY-OUT
           MOVE TIME-OF-DAY  TO DISPLAY-OUT
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77 current-date  pic x(08).
       PROCEDURE        DIVISION.
           MOVE 'unknown' TO CURRENT-DATE
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       PROCEDURE        DIVISION.
           MOVE 'unknown' TO CURRENT-DATE
           STOP RUN.
_ATEOF


# this extension is NOT available with Enterprise COBOL (also not by default for MF)
{ set +x
$as_echo "$at_srcdir/syn_definition.at:1376: \$COMPILE_ONLY -std=cobol85 prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog1.cob" "syn_definition.at:1376"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog1.cob:8: error: 'CURRENT-DATE' is not defined
prog1.cob:9: error: 'TIME-OF-DAY' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1376"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:1380: \$COMPILE_ONLY -std=ibm-strict prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict prog1.cob" "syn_definition.at:1380"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog1.cob:8: error: 'CURRENT-DATE' is not defined
prog1.cob:9: error: 'TIME-OF-DAY' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1380"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:1384: \$COMPILE_ONLY -std=mf prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog1.cob" "syn_definition.at:1384"
( $at_check_trace; $COMPILE_ONLY -std=mf prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog1.cob:8: error: 'CURRENT-DATE' is not defined
prog1.cob:9: error: 'TIME-OF-DAY' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1384"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1389: \$COMPILE_ONLY prog1.cob prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog1.cob prog2.cob" "syn_definition.at:1389"
( $at_check_trace; $COMPILE_ONLY prog1.cob prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog1.cob:8: error: 'CURRENT-DATE' is not defined
prog1.cob:9: error: 'TIME-OF-DAY' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1389"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:1393: \$COMPILE_ONLY -fregister=current-date,time-of-day \\
  prog1.cob prog2.cob prog3.cob"
at_fn_check_prepare_notrace 'an embedded newline' "syn_definition.at:1393"
( $at_check_trace; $COMPILE_ONLY -fregister=current-date,time-of-day \
  prog1.cob prog2.cob prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:6: warning: redefinition of 'CURRENT-DATE'
prog2.cob:8: error: 'CURRENT-DATE' is ambiguous; needs qualification
prog2.cob:8: note: 'CURRENT-DATE' is a special register
prog2.cob:6: note: 'CURRENT-DATE' defined here
prog3.cob:5: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1393"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_116
#AT_START_117
at_fn_group_banner 117 'syn_definition.at:1405' \
  "Invalid ENVIRONMENT DIVISION order" "             " 2
at_xfail=no
(
  $as_echo "117. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CONSOLE IS CRT
           .
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA
           .
       SOURCE-COMPUTER. a-computer.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1423: \$COMPILE_ONLY -fincorrect-conf-sec-order=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fincorrect-conf-sec-order=error prog.cob" "syn_definition.at:1423"
( $at_check_trace; $COMPILE_ONLY -fincorrect-conf-sec-order=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: duplicate SPECIAL-NAMES
prog.cob:13: error: SOURCE-COMPUTER incorrectly after SPECIAL-NAMES used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1423"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_117
#AT_START_118
at_fn_group_banner 118 'syn_definition.at:1430' \
  "Function without END FUNCTION" "                  " 2
at_xfail=no
(
  $as_echo "118. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. func.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1438: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1438"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: error: syntax error, unexpected end of file, expecting END FUNCTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1438"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_118
#AT_START_119
at_fn_group_banner 119 'syn_definition.at:1444' \
  "Nested programs without END PROGRAM" "            " 2
at_xfail=no
(
  $as_echo "119. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       PROCEDURE DIVISION.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-2.
       PROCEDURE DIVISION.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-3.

       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1462: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1462"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1462"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_119
#AT_START_120
at_fn_group_banner 120 'syn_definition.at:1466' \
  "Nested programs not in procedure division" "      " 2
at_xfail=no
(
  $as_echo "120. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-2.

       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1479: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1479"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: PROCEDURE DIVISION header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1479"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_120
#AT_START_121
at_fn_group_banner 121 'syn_definition.at:1485' \
  "Screen section starts with 78-level" "            " 2
at_xfail=no
(
  $as_echo "121. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       SCREEN SECTION.
       78 const VALUE "x".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1497: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1497"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1497"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_121
#AT_START_122
at_fn_group_banner 122 'syn_definition.at:1501' \
  "Invalid PICTURE strings" "                        " 2
at_xfail=no
(
  $as_echo "122. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  empty-pic PIC.
       01  too-long-pic PIC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
       01  too-long-pic2 PIC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
       01  multiple-symbols.
           03  PIC 9CRCR.
           03  PIC 9DBDB.
           03  PIC SS99S.
           03  PIC 99..9.
           03  PIC 99VV9.
           03  PIC +$99+.
           03  PIC $+99$-.
       01  non-symbols.
           03  PIC 9K.
           03  PIC 999C.
           03  PIC 999D.
       01  too-many-digits PIC 9(50).
       01  too-long-number-in-parens PIC 9(11111111111111).
       01  nested-parens PIC 9((100)).
       01  unbalanced-parens PIC 9(.
       01  multiple-pairs-of-parens PIC 9(5)(3).
       01  no-digit-in-parens PIC 9().
       01  mutually-exclusive-symbols.
           03  PIC P(3)9.9.
           03  PIC 9V.9.
           03  PIC Z*.
           03  PIC +(5)--.
           03  PIC $(4)Z(9).
           03  PIC $$B*(4).
           03  PIC NX.
           03  PIC AN.
           03  PIC AZ(3).
           03  PIC 99.99XXXXX.
           03  PIC SA.
           03  PIC $$$B+++B---.
           03  PIC +++9+.
           03  PIC +9(5)CR.
           03  PIC -9(5)DB.
       01 non-rightmost-leftmost-symbols.
           03  PIC BBB+BB99.
           03  PIC 99-B.
           03  PIC 9CRB.
           03  PIC DB9(5).
           03  PIC 99$$$.
           03  PIC 99$B.
           03  PIC 0$99.
           03  PIC PPPVP9.
       01  missing-symbols.
           03  PIC B(5).
           03  PIC +.
           03  PIC $.

       01  str-constant CONSTANT "hello".
       01  float-constant CONSTANT 1.0.
       01  signed-constant CONSTANT -1.
       01  invalid-constant.
           03  PIC X(str-constant).
           03  PIC X(float-constant).
           03  PIC X(signed-constant).
           03  PIC X(unseen-constant).

       01  integer-constant CONSTANT 5.
       01  valid-pics.
           03  PIC VP9B.
           03  PIC B9P(3).
           03  PIC B$$$.
           03  PIC 0000+B0+++0B,+.
           03  PIC +(5)P(3).
           03  PIC ++.++.
           03  PIC $(integer-constant).
           03  PIC $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
      -(integer-constant).   *> CHECKME: should this be really valid?


       01  PC-COLOR-BACKGROUND-TABLE.
           05  BIT-BACKGROUND-BLACK      PIC 1(8) BIT VALUE B"00000000".
           05  BIT-BACKGROUND-BLUE       PIC 1(8) BIT VALUE B"00010000".
           05  BIT-BACKGROUND-GREEN      PIC 1(8) BIT VALUE B"00100000".
           05  BIT-BACKGROUND-CYAN       PIC 1(8) BIT VALUE B"00110000".
           05  BIT-BACKGROUND-RED        PIC 1(8) BIT VALUE B"01000000".
           05  BIT-BACKGROUND-MAGENTA    PIC 1(8) BIT VALUE B"01010000".
           05  BIT-BACKGROUND-BROWN      PIC 1(8) BIT VALUE B"01100000".
           05  BIT-BACKGROUND-LIGHT-GRAY PIC 1(8) BIT VALUE B"01110000".
       01  FILLER REDEFINES PC-COLOR-BACKGROUND-TABLE.
           05  COLOR-BACKGROUND
               OCCURS 8 TIMES            PIC 1(8) BIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1602: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_definition.at:1602"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: continuation of COBOL words is archaic in COBOL 2014
prog.cob:11: warning: continuation of COBOL words is archaic in COBOL 2014
prog.cob:12: warning: continuation of COBOL words is archaic in COBOL 2014
prog.cob:13: warning: continuation of COBOL words is archaic in COBOL 2014
prog.cob:14: warning: continuation of COBOL words is archaic in COBOL 2014
prog.cob:82: warning: continuation of COBOL words is archaic in COBOL 2014
prog.cob:7: error: missing PICTURE string
prog.cob:8: error: PICTURE string may not contain more than 63 characters; contains 76 characters
prog.cob:10: error: PICTURE string may not contain more than 63 characters; contains 301 characters
prog.cob:16: error: CR or DB may only occur once in a PICTURE string
prog.cob:17: error: CR or DB may only occur once in a PICTURE string
prog.cob:18: error: S may only occur once in a PICTURE string
prog.cob:18: error: S must be at start of PICTURE string
prog.cob:19: error: . may only occur once in a PICTURE string
prog.cob:20: error: V may only occur once in a PICTURE string
prog.cob:21: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:22: error: a leading +/- sign cannot follow a leading currency symbol
prog.cob:22: error: a trailing currency symbol cannot follow a leading currency symbol
prog.cob:22: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:24: error: invalid PICTURE character 'K'
prog.cob:25: error: C must be followed by R
prog.cob:26: error: D must be followed by B
prog.cob:27: error: numeric field cannot be larger than 38 digits
prog.cob:28: error: only up to 10 significant digits are permitted within parentheses
prog.cob:29: error: parentheses must be preceded by a picture symbol
prog.cob:30: error: unbalanced parentheses
prog.cob:31: error: parentheses must be preceded by a picture symbol
prog.cob:32: error: parentheses must contain an unsigned integer
prog.cob:34: error: . cannot follow a P which is after the decimal point
prog.cob:35: error: . cannot follow V
prog.cob:36: error: cannot have both Z and * in PICTURE string
prog.cob:37: error: a trailing +/- sign cannot follow a floating +/- string which is before the decimal point
prog.cob:37: error: a trailing +/- sign may only occur once in a PICTURE string
prog.cob:38: error: a Z or * which is before the decimal point cannot follow a floating currency symbol string which is before the decimal point
prog.cob:39: error: a Z or * which is before the decimal point cannot follow a floating currency symbol string which is before the decimal point
prog.cob:40: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:40: error: A or X cannot follow N
prog.cob:41: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:41: error: N cannot follow A or X
prog.cob:42: error: a Z or * which is before the decimal point cannot follow A or X
prog.cob:43: error: A or X cannot follow .
prog.cob:44: error: A or X cannot follow S
prog.cob:45: error: a leading +/- sign cannot follow B, 0 or /
prog.cob:45: error: a leading +/- sign cannot follow a floating currency symbol string which is before the decimal point
prog.cob:45: error: a leading +/- sign may only occur once in a PICTURE string
prog.cob:45: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:45: error: a trailing +/- sign may only occur once in a PICTURE string
prog.cob:46: error: a trailing +/- sign cannot follow a floating +/- string which is before the decimal point
prog.cob:47: error: CR or DB cannot follow a leading +/- sign
prog.cob:48: error: CR or DB cannot follow a leading +/- sign
prog.cob:50: error: a leading +/- sign cannot follow B, 0 or /
prog.cob:51: error: a leading +/- sign cannot follow 9
prog.cob:52: error: B, 0 or / cannot follow CR or DB
prog.cob:53: error: 9 cannot follow CR or DB
prog.cob:54: error: a floating currency symbol string which is before the decimal point cannot follow 9
prog.cob:55: error: a leading currency symbol cannot follow 9
prog.cob:56: error: a leading currency symbol cannot follow B, 0 or /
prog.cob:57: error: P must be at start or end of PICTURE string
prog.cob:57: error: V cannot follow a P which is after the decimal point
prog.cob:59: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:60: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:61: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:67: error: 'STR-CONSTANT' is not an unsigned positive integer
prog.cob:68: error: 'FLOAT-CONSTANT' is not an unsigned positive integer
prog.cob:69: error: 'SIGNED-CONSTANT' is not an unsigned positive integer
prog.cob:70: error: 'UNSEEN-CONSTANT' is not defined
prog.cob:81: warning: uncommon parentheses
prog.cob:86: warning: USAGE BIT is not implemented
prog.cob:87: warning: USAGE BIT is not implemented
prog.cob:88: warning: USAGE BIT is not implemented
prog.cob:89: warning: USAGE BIT is not implemented
prog.cob:90: warning: USAGE BIT is not implemented
prog.cob:91: warning: USAGE BIT is not implemented
prog.cob:92: warning: USAGE BIT is not implemented
prog.cob:93: warning: USAGE BIT is not implemented
prog.cob:96: warning: USAGE BIT is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1602"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1681: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1681"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: continuation of COBOL words used
prog.cob:11: warning: continuation of COBOL words used
prog.cob:12: warning: continuation of COBOL words used
prog.cob:13: warning: continuation of COBOL words used
prog.cob:14: warning: continuation of COBOL words used
prog.cob:82: warning: continuation of COBOL words used
prog.cob:7: error: missing PICTURE string
prog.cob:10: error: PICTURE string may not contain more than 255 characters; contains 301 characters
prog.cob:16: error: CR or DB may only occur once in a PICTURE string
prog.cob:17: error: CR or DB may only occur once in a PICTURE string
prog.cob:18: error: S may only occur once in a PICTURE string
prog.cob:18: error: S must be at start of PICTURE string
prog.cob:19: error: . may only occur once in a PICTURE string
prog.cob:20: error: V may only occur once in a PICTURE string
prog.cob:21: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:22: error: a leading +/- sign cannot follow a leading currency symbol
prog.cob:22: error: a trailing currency symbol cannot follow a leading currency symbol
prog.cob:22: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:24: error: invalid PICTURE character 'K'
prog.cob:25: error: C must be followed by R
prog.cob:26: error: D must be followed by B
prog.cob:27: error: numeric field cannot be larger than 38 digits
prog.cob:28: error: only up to 10 significant digits are permitted within parentheses
prog.cob:29: error: parentheses must be preceded by a picture symbol
prog.cob:30: error: unbalanced parentheses
prog.cob:31: error: parentheses must be preceded by a picture symbol
prog.cob:32: error: parentheses must contain an unsigned integer
prog.cob:34: error: . cannot follow a P which is after the decimal point
prog.cob:35: error: . cannot follow V
prog.cob:36: error: cannot have both Z and * in PICTURE string
prog.cob:37: error: a trailing +/- sign cannot follow a floating +/- string which is before the decimal point
prog.cob:37: error: a trailing +/- sign may only occur once in a PICTURE string
prog.cob:38: error: a Z or * which is before the decimal point cannot follow a floating currency symbol string which is before the decimal point
prog.cob:39: error: a Z or * which is before the decimal point cannot follow a floating currency symbol string which is before the decimal point
prog.cob:40: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:40: error: A or X cannot follow N
prog.cob:41: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:41: error: N cannot follow A or X
prog.cob:42: error: a Z or * which is before the decimal point cannot follow A or X
prog.cob:43: error: A or X cannot follow .
prog.cob:44: error: A or X cannot follow S
prog.cob:45: error: a leading +/- sign cannot follow B, 0 or /
prog.cob:45: error: a leading +/- sign cannot follow a floating currency symbol string which is before the decimal point
prog.cob:45: error: a leading +/- sign may only occur once in a PICTURE string
prog.cob:45: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:45: error: a trailing +/- sign may only occur once in a PICTURE string
prog.cob:46: error: a trailing +/- sign cannot follow a floating +/- string which is before the decimal point
prog.cob:47: error: CR or DB cannot follow a leading +/- sign
prog.cob:48: error: CR or DB cannot follow a leading +/- sign
prog.cob:50: error: a leading +/- sign cannot follow B, 0 or /
prog.cob:51: error: a leading +/- sign cannot follow 9
prog.cob:52: error: B, 0 or / cannot follow CR or DB
prog.cob:53: error: 9 cannot follow CR or DB
prog.cob:54: error: a floating currency symbol string which is before the decimal point cannot follow 9
prog.cob:55: error: a leading currency symbol cannot follow 9
prog.cob:56: error: a leading currency symbol cannot follow B, 0 or /
prog.cob:57: error: P must be at start or end of PICTURE string
prog.cob:57: error: V cannot follow a P which is after the decimal point
prog.cob:59: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:60: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:61: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:67: error: 'STR-CONSTANT' is not an unsigned positive integer
prog.cob:68: error: 'FLOAT-CONSTANT' is not an unsigned positive integer
prog.cob:69: error: 'SIGNED-CONSTANT' is not an unsigned positive integer
prog.cob:70: error: 'UNSEEN-CONSTANT' is not defined
prog.cob:81: warning: uncommon parentheses
prog.cob:86: warning: USAGE BIT is not implemented
prog.cob:87: warning: USAGE BIT is not implemented
prog.cob:88: warning: USAGE BIT is not implemented
prog.cob:89: warning: USAGE BIT is not implemented
prog.cob:90: warning: USAGE BIT is not implemented
prog.cob:91: warning: USAGE BIT is not implemented
prog.cob:92: warning: USAGE BIT is not implemented
prog.cob:93: warning: USAGE BIT is not implemented
prog.cob:96: warning: USAGE BIT is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1681"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_122
#AT_START_123
at_fn_group_banner 123 'syn_definition.at:1761' \
  "PICTURE string with control character" "          " 2
at_xfail=no
(
  $as_echo "123. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       PIC(P)
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1768: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1768"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:2: error: 'P' is not defined
prog.cob:2: error: invalid PICTURE character ''
prog.cob:2: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:2: error: PROGRAM-ID header missing
prog.cob:2: error: PROCEDURE DIVISION header missing
prog.cob:2: error: syntax error, unexpected PICTURE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1768"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_123
#AT_START_124
at_fn_group_banner 124 'syn_definition.at:1779' \
  "PICTURE strings invalid with BLANK WHEN ZERO" "   " 2
at_xfail=no
(
  $as_echo "124. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC S9(5) BLANK ZERO.
       01  y PIC *(5) BLANK ZERO.

       *> Actually valid
       01  z PIC -9(5) BLANK ZERO.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1795: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1795"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: 'x' cannot have S in PICTURE string and BLANK WHEN ZERO
prog.cob:8: error: 'y' cannot have * in PICTURE string and BLANK WHEN ZERO
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1795"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_124
#AT_START_125
at_fn_group_banner 125 'syn_definition.at:1802' \
  "PICTURE strings invalid with USAGE" "             " 2
at_xfail=no
(
  $as_echo "125. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC XXX, COMP-6.
       01  y PIC +999, PACKED-DECIMAL.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1815: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1815"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: PICTURE clause not compatible with USAGE COMP-6
prog.cob:8: error: PICTURE clause not compatible with USAGE COMP-3
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1815"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_125
#AT_START_126
at_fn_group_banner 126 'syn_definition.at:1822' \
  "Edited monetary PICTURE strings" "                " 2
at_xfail=no
(
  $as_echo "126. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 DOLLARS.
           05  REPORT-LINE.
               10  REPORT-ITEMS                PIC ZZ,ZZZ,ZZZ,ZZ9-.
               10  REPORT-FICA-WAGES           PIC
                     $$$,$$$,$$$,$$$,$$$.99-.
               10  REPORT-FICA-TIPS            PIC
                     $$$,$$$,$$$,$$$,$$$.99-.
               10  REPORT-TOTAL-COMP           PIC
                     $$$,$$$,$$$,$$$,$$$.99-.
               10  REPORT-MEDICARE             PIC
                     $$$,$$$,$$$,$$$,$$$.99-.
           05  ACCT-REPORT-TOTAL-LINE          PIC XXX.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1845: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1845"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:1845"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_126
#AT_START_127
at_fn_group_banner 127 'syn_definition.at:1849' \
  "ALPHABET definition" "                            " 2
at_xfail=no
(
  $as_echo "127. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET TESTME IS
                    'A' THROUGH 'Z', x'00' thru x'05';
                    x'41' ALSO x'42', ALSO x'00', x'C1' ALSO x'C2'.
           ALPHABET FINE
                    'A' also 'B' also 'C' also 'd' also 'e' ALSO 'f',
                    'g' also 'G', '1' thru '9', x'00'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:1866: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:1866"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: duplicate character values in alphabet 'TESTME': x'00', A, B
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:1866"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_127
#AT_START_128
at_fn_group_banner 128 'syn_definition.at:1872' \
  "PROGRAM COLLATING SEQUENCE" "                     " 2
at_xfail=no
(
  $as_echo "128. $at_setup_line: testing $at_desc ..."
  $at_traceon



# check that a reference on the bad alphabet does not break cobc
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        PROGRAM COLLATING SEQUENCE IS TESTME.
       SPECIAL-NAMES.
           ALPHABET TESTME IS
                    x'00' thru x'05', 'A' THROUGH 'Z';
                    x'41' ALSO x'42', ALSO x'00', x'C1' ALSO x'C2'.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        PROGRAM COLLATING SEQUENCE IS TESTNO.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        PROGRAM COLLATING SEQUENCE IS ALPHABET-1,
                                                      ALPHABET-2.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS
                    'A' THROUGH 'Z', x'00' thru x'05'.
           ALPHABET ALPHABET-2
                    n'A' also n'B' ALSO n'f',
                    n'g' also n'G', n'1' thru n'9'.
       END PROGRAM prog3.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3b.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        PROGRAM           SEQUENCE IS ALPHABET-1,
                                                      ALPHABET-2.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS
                    'A' THROUGH 'Z', x'00' thru x'05'.
           ALPHABET ALPHABET-2 IS
                    n'A' ALSO n'f',
                    n'g' also n'G'.
       END PROGRAM prog3b.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3c.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE, SEQUENCE ALPHABET-1, ALPHABET-2.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1    x'00' thru x'05'.
           ALPHABET ALPHABET-2 IS n'g' also n'G', n'1' thru n'9'.
       END PROGRAM prog3c.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3d.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE, SEQUENCE ALPHABET-1, ALPHABET-2.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS 'A' THROUGH 'Z'.
           ALPHABET ALPHABET-2   n'A' also n'B', n'1' thru n'9'.
       END PROGRAM prog3d.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3e.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE, SEQUENCE ALPHABET-1.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS 'Z', x'00'.
       END PROGRAM prog3e.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3f.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        COLLATING SEQUENCE
                          FOR ALPHANUMERIC IS ALPHABET-1.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS
                    'A' THROUGH 'Z', x'00', x'05'.
       END PROGRAM prog3f.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3g.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        SEQUENCE ALPHANUMERIC ALPHABET-1.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS
                    'A' THROUGH 'D'.
       END PROGRAM prog3g.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3h.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        COLLATING SEQUENCE
                          FOR ALPHANUMERIC IS ALPHABET-1
                              NATIONAL     IS ALPHABET-2.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS
                    'A', 'C', x'05'.
           ALPHABET ALPHABET-2
                    n'A', n'1' thru n'9'.
       END PROGRAM prog3h.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3i.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        COLLATING SEQUENCE
                          NATIONAL     ALPHABET-2
                          ALPHANUMERIC ALPHABET-1.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-1 IS
                    'a' THROUGH 'z'.
           ALPHABET ALPHABET-2
                    n'B', n'C'; n'g' also n'G'.
       END PROGRAM prog3i.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3j.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-LINUX.
       OBJECT-COMPUTER. GC-MACHINE,
                        COLLATING SEQUENCE
                          NATIONAL     ALPHABET-2.
       SPECIAL-NAMES.
           ALPHABET ALPHABET-2
                    n'B', n'C'; n'g' also n'G'.
       END PROGRAM prog3j.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2036: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:2036"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: duplicate character values in alphabet 'TESTME': x'00', A, B
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2036"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2039: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_definition.at:2039"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:8: error: 'TESTNO' is not defined
prog2.cob:8: error: 'TESTNO' is not an alphabet-name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2039"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2043: \$COMPILE_ONLY -Wno-unfinished prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog3.cob" "syn_definition.at:2043"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:9: warning: NATIONAL COLLATING SEQUENCE is not implemented
prog3.cob:25: warning: NATIONAL COLLATING SEQUENCE is not implemented
prog3.cob:39: warning: NATIONAL COLLATING SEQUENCE is not implemented
prog3.cob:50: warning: NATIONAL COLLATING SEQUENCE is not implemented
prog3.cob:99: warning: NATIONAL COLLATING SEQUENCE is not implemented
prog3.cob:114: warning: NATIONAL COLLATING SEQUENCE is not implemented
prog3.cob:130: warning: NATIONAL COLLATING SEQUENCE is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2043"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_128
#AT_START_129
at_fn_group_banner 129 'syn_definition.at:2055' \
  "RENAMES item" "                                   " 2
at_xfail=no
(
  $as_echo "129. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  a.
           03  b       PIC 9.
           03  c.
               05 d    PIC 9.
               05 e    PIC 9.

       66  valid-1     RENAMES b.
       66  valid-2     RENAMES d THRU e.

       66  invalid-1   RENAMES a.
       66  invalid-2   RENAMES c THRU d.
       66  invalid-3   RENAMES e THRU d.
       66  invalid-4   RENAMES valid-2.

       01  f.
           03  g       PIC X.
               88  h   VALUE "a".
           03  i       PIC X.
           03  j       OCCURS 5 TIMES.
               05  k   PIC X.
               05  l   PIC 9.
           03  m       PIC 9.
           03  n       POINTER, SYNC.
           03  o.
               05  p   PIC X OCCURS 1 TO 10 DEPENDING ON l.

       66  valid-3     RENAMES g THRU i.
       66  invalid-5   RENAMES h.
       66  invalid-6   RENAMES k THRU l.
       66  invalid-7   RENAMES j.
       66  invalid-8   RENAMES m THRU o.
       66  invalid-9   RENAMES b THRU m.

       78  my-ext-const VALUE "123".
       66  invalid-ec   RENAMES my-ext-const.

       01  my-std-const CONSTANT AS "123".
       66  invalid-sc   RENAMES my-std-const.

       PROCEDURE       DIVISION.
           DISPLAY valid-2 OF a
           IF valid-1 = 1
              CONTINUE
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2110: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_definition.at:2110"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: RENAMES of 01-, 66- and 77-level items does not conform to COBOL 2014
prog.cob:16: error: THRU item 'd' may not be subordinate to 'c'
prog.cob:17: error: THRU item 'd' may not come before 'e'
prog.cob:18: error: RENAMES of 01-, 66- and 77-level items does not conform to COBOL 2014
prog.cob:33: error: RENAMES may not reference a level 88
prog.cob:34: error: cannot use RENAMES on part of the table 'j'
prog.cob:35: error: RENAMES cannot start/end at the OCCURS item 'j'
prog.cob:36: error: RENAMES may not contain 'n' as it is a pointer or object reference
prog.cob:36: error: RENAMES may not contain 'p' as it is an OCCURS DEPENDING table
prog.cob:37: error: 'invalid-9' must immediately follow the record 'a'
prog.cob:37: error: 'b' and 'm' must be in the same record
prog.cob:39: error: 78 VALUE does not conform to COBOL 2014
prog.cob:40: error: a constant may not be used here - 'my-ext-const'
prog.cob:43: error: a constant may not be used here - 'my-std-const'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2110"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_129
#AT_START_130
at_fn_group_banner 130 'syn_definition.at:2129' \
  "RENAMES of 01-, 66- and 77-level items" "         " 2
at_xfail=no
(
  $as_echo "130. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  a PIC X.
       66  renames-a RENAMES a.
       66  renames-a2 RENAMES renames-a.

       77  b PIC X.
       66  renames-b RENAMES b.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2145: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_definition.at:2145"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: RENAMES of 01-, 66- and 77-level items does not conform to COBOL 2014
prog.cob:8: error: RENAMES of 01-, 66- and 77-level items does not conform to COBOL 2014
prog.cob:11: error: RENAMES of 01-, 66- and 77-level items does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2145"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2150: \$COMPILE_ONLY -frenames-uncommon-levels=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frenames-uncommon-levels=ok prog.cob" "syn_definition.at:2150"
( $at_check_trace; $COMPILE_ONLY -frenames-uncommon-levels=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2150"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_130
#AT_START_131
at_fn_group_banner 131 'syn_definition.at:2155' \
  "SAME AS clause" "                                 " 2
at_xfail=no
(
  $as_echo "131. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MESSAGE-TEXT-2 EXTERNAL.
         02 AUSGABE-FILE-NAME   PIC X(50).
         02 FILLER REDEFINES AUSGABE-FILE-NAME.
             05 FILLER          PIC 9999.
         02 AUSGABE-FILE-NAME-2.
             05 FILLER          PIC 9999.
             05 DETAIL-NO       PIC 9999.
         02 FILLER SAME AS AUSGABE-FILE-NAME.

       77 OUTPUT-NAME SAME AS DETAIL-NO GLOBAL.

       01 Z-MESSAGE-T2 SAME AS AUSGABE-FILE-NAME-2.
       01 Z-MESSAGE-T3.
          49 MT3       SAME AS MESSAGE-TEXT-2.
          49 MT3-REN  REDEFINES MT3 SAME AS MESSAGE-TEXT-2.

       PROCEDURE DIVISION.
           DISPLAY AUSGABE-FILE-NAME OF MESSAGE-TEXT-2
           DISPLAY DETAIL-NO         OF Z-MESSAGE-T2
           DISPLAY AUSGABE-FILE-NAME OF MT3
           DISPLAY OUTPUT-NAME
           GOBACK.
_ATEOF


cat >badprog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MESSAGE-TEXT-2.
         02 AUSGABE-FILE-NAME                 PIC X(50).
         02 F1         SAME AS MESSAGE-TEXT-2.
       01 MT2          SAME AS MESSAGE-TEXT-2.
             05 FILLER                        PIC 9999.
       01 MT3          SAME AS MESSAGE-TEXT-2 PIC X.
       77 OUTPUT-NAME  SAME AS MESSAGE-TEXT-2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2201: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:2201"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2201"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2202: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_definition.at:2202"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:15: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:17: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:19: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:20: error: SAME AS clause does not conform to Micro Focus COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2202"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2209: \$COMPILE_ONLY badprog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY badprog.cob" "syn_definition.at:2209"
( $at_check_trace; $COMPILE_ONLY badprog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "badprog.cob:8: error: item may not reference itself
badprog.cob:10: error: entry following SAME AS may not be subordinate to it
badprog.cob:11: error: illegal combination of SAME AS with other clauses
badprog.cob:12: error: elementary item expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2209"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_131
#AT_START_132
at_fn_group_banner 132 'syn_definition.at:2219' \
  "TYPEDEF clause" "                                 " 2
at_xfail=no
(
  $as_echo "132. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 AUSGABE-FILE-NAME-T          PIC X(50) IS TYPEDEF.
       01 SOME-VERY-LONG-TYPEDEF-NAME  PIC 9999  IS TYPEDEF.
       01 AUSGABE-FILE-NAME-2T         IS TYPEDEF.
          05 FILLER    PIC 9999.
          05 DETAIL-NO USAGE SOME-VERY-LONG-TYPEDEF-NAME.
      *
       01  MESSAGE-TEXT-2T IS TYPEDEF.
         02 AUSGABE-FILE-NAME     USAGE AUSGABE-FILE-NAME-T.
         02 FILLER REDEFINES AUSGABE-FILE-NAME.
             05 FILLER PIC 9999.
         02 AUSGABE-FILE-NAME-2   USAGE AUSGABE-FILE-NAME-2T.
         02 FILLER                USAGE AUSGABE-FILE-NAME-T.
      *
       01  MESSAGE-TEXT-2 EXTERNAL USAGE MESSAGE-TEXT-2T.

       77 OUTPUT-NAME USAGE SOME-VERY-LONG-TYPEDEF-NAME GLOBAL.

       01 Z-MESSAGE-T2 USAGE AUSGABE-FILE-NAME-2T.
       01 Z-MESSAGE-T3.
          49 MT3                    USAGE MESSAGE-TEXT-2T.
          49 MT3-REN  REDEFINES MT3 USAGE MESSAGE-TEXT-2T.

       01 CALCULUS             PIC S9(15)V9(03) IS TYPEDEF.
          88 NO-DETAIL         VALUE ZERO.
          88 MIN-DETAIL        VALUE 0.001.
       01 USER-TYPE            IS TYPEDEF.
          02 AMOUNT            USAGE CALCULUS.
          02 FILLER            OCCURS 100.
             05 GRP-AMOUNT     USAGE CALCULUS.
       01 USER-VAR             USAGE USER-TYPE.

       01 PROC                 USAGE PROGRAM-POINTER IS TYPEDEF.
          88 PROC-UNSET        VALUE NULL.
       77 MY-PROC              USAGE PROC VALUE NULL.

       PROCEDURE DIVISION.
           DISPLAY AUSGABE-FILE-NAME OF MESSAGE-TEXT-2
           DISPLAY DETAIL-NO         OF Z-MESSAGE-T2
           DISPLAY AUSGABE-FILE-NAME OF MT3
           DISPLAY OUTPUT-NAME
           MOVE -123.45 TO AMOUNT
           MOVE AMOUNT  TO GRP-AMOUNT (1)
           IF MY-PROC = NULL
              SET MY-PROC TO ADDRESS OF PROGRAM "prog".
           GOBACK.
_ATEOF


cat >progstd.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 AUSGABE-FILE-NAME-T     PIC X(50) IS TYPEDEF.
       01 DETAIL-NO-T             PIC 9999  IS TYPEDEF.
       01 AUSGABE-FILE-NAME-2T              IS TYPEDEF.
          05 FILLER    PIC 9999.
          05 DETAIL-NO TYPE TO DETAIL-NO-T.
      *
       01  MESSAGE-TEXT-2T IS TYPEDEF.
         02 AUSGABE-FILE-NAME     TYPE AUSGABE-FILE-NAME-T.
         02 FILLER REDEFINES AUSGABE-FILE-NAME.
             05 FILLER PIC 9999.
         02 AUSGABE-FILE-NAME-2   TYPE AUSGABE-FILE-NAME-2T.
         02 FILLER                TYPE AUSGABE-FILE-NAME-T.
      *
       01  MESSAGE-TEXT-2 EXTERNAL TYPE MESSAGE-TEXT-2T.

       77 OUTPUT-NAME TYPE TO DETAIL-NO-T GLOBAL.

       01 Z-MESSAGE-T2 TYPE AUSGABE-FILE-NAME-2T.
       01 Z-MESSAGE-T3.
          49 MT3                    TYPE MESSAGE-TEXT-2T.
          49 MT3-REN  REDEFINES MT3 TYPE MESSAGE-TEXT-2T.

       77 CALCULUS             PIC S9(15)V9(03) IS TYPEDEF.

       01 SOME-STRUCT          IS TYPEDEF.
          02 SOME-DATA         PIC 9.
          02 SOME-VALUES       OCCURS 3.
             03 OTHER-DATA     PIC X.
             03 OTHER-VALUES   OCCURS 2 PIC 9.
       77 SOME2-DATA           PIC 9.      *> temporary variant until solved...
       01 SOME-STRUCT2         IS TYPEDEF.
      *>  02 SOME2-DATA        PIC 9.      TODO!
          02 SOME2-VALUES      OCCURS 1 TO 6 DEPENDING ON SOME2-DATA
                               DESCENDING KEY SB SA
                               INDEXED BY SOME2-INDEX.
             05 SA             PIC X VALUE x'12'.
             05 SB             PIC 9 VALUE 0.
             05 SDATA          PIC X(12).

       01 MY-TEST.
          02 AMOUNT            TYPE CALCULUS.
          02 FILLER            OCCURS 100.
             05 GRP-AMOUNT     TYPE CALCULUS.
          02 MY-NAME           TYPE SOME-STRUCT  OCCURS 5.
          02 MY-NAME2          TYPE SOME-STRUCT2.
       01 MY-TEST2             TYPE SOME-STRUCT2.
       LINKAGE SECTION.
       01 MY-STORE             TYPE CALCULUS.

       PROCEDURE DIVISION USING MY-STORE.
           DISPLAY AUSGABE-FILE-NAME OF MESSAGE-TEXT-2
           DISPLAY DETAIL-NO         OF Z-MESSAGE-T2
           DISPLAY AUSGABE-FILE-NAME OF MT3
           DISPLAY OUTPUT-NAME
           SET ADDRESS OF MY-STORE TO NULL
           INITIALIZE MY-NAME(2) GRP-AMOUNT (99)
           INITIALIZE OTHER-VALUES (2, 3, 2)
           SEARCH ALL SOME2-VALUES OF MY-NAME2
      *>     WHEN SA(SOME2-INDEX) = x'12'  CHECKME: Should work
             WHEN SA OF MY-NAME2(SOME2-INDEX OF MY-NAME2) = x'12'
                CONTINUE.
           GOBACK.
_ATEOF


cat >badprog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MESSAGE-TEXT-2T IS TYPEDEF.
         02 AUSGABE-FILE-NAME     PIC X(50).
         02 F1      USAGE MESSAGE-TEXT-2T.
       01 MT2 USAGE MESSAGE-TEXT-2T.
             05 FILLER PIC 9999.
       01 MT3 TYPE TO MESSAGE-TEXT-2T PIC X.
       77 OUTPUT-NAME  TYPE TO MESSAGE-TEXT-2T.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2357: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:2357"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2357"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2358: \$COMPILE_ONLY -std=cobol2002 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 prog.cob" "syn_definition.at:2358"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: USAGE type-name does not conform to COBOL 2002
prog.cob:13: error: USAGE type-name does not conform to COBOL 2002
prog.cob:16: error: USAGE type-name does not conform to COBOL 2002
prog.cob:17: error: USAGE type-name does not conform to COBOL 2002
prog.cob:19: error: USAGE type-name does not conform to COBOL 2002
prog.cob:21: error: USAGE type-name does not conform to COBOL 2002
prog.cob:23: error: USAGE type-name does not conform to COBOL 2002
prog.cob:25: error: USAGE type-name does not conform to COBOL 2002
prog.cob:26: error: USAGE type-name does not conform to COBOL 2002
prog.cob:32: error: USAGE type-name does not conform to COBOL 2002
prog.cob:34: error: USAGE type-name does not conform to COBOL 2002
prog.cob:35: error: USAGE type-name does not conform to COBOL 2002
prog.cob:39: error: USAGE type-name does not conform to COBOL 2002
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2358"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2373: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_definition.at:2373"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2373"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2374: \$COMPILE_ONLY progstd.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY progstd.cob" "syn_definition.at:2374"
( $at_check_trace; $COMPILE_ONLY progstd.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2374"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2375: \$COMPILE_ONLY -std=cobol2002 progstd.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 progstd.cob" "syn_definition.at:2375"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 progstd.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2375"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2376: \$COMPILE_ONLY -std=mf-strict progstd.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict progstd.cob" "syn_definition.at:2376"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict progstd.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "progstd.cob:10: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:13: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:16: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:17: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:19: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:21: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:23: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:25: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:26: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:46: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:48: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:49: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:50: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:51: error: TYPE TO clause does not conform to Micro Focus COBOL
progstd.cob:53: error: TYPE TO clause does not conform to Micro Focus COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2376"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2394: \$COMPILE_ONLY badprog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY badprog.cob" "syn_definition.at:2394"
( $at_check_trace; $COMPILE_ONLY badprog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "badprog.cob:8: error: item may not reference itself
badprog.cob:10: error: entry following TYPE TO may not be subordinate to it
badprog.cob:11: error: illegal combination of TYPE TO with other clauses
badprog.cob:12: error: elementary item expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2394"
$at_failed && at_fn_log_failure
$at_traceon; }


# FIXME: mises NO-DETAIL above MIN-DETAIL (likely bug in copying in field.c)

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2403: \$COMPILE_LISTING0 -t - -Xref -fno-tsource -fno-tmessages prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t - -Xref -fno-tsource -fno-tmessages prog.cob" "syn_definition.at:2403"
( $at_check_trace; $COMPILE_LISTING0 -t - -Xref -fno-tsource -fno-tmessages prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

NAME                           DEFINED                REFERENCES

AUSGABE-FILE-NAME-T            6        13      17                     x2
SOME-VERY-LONG-TYPEDEF-NAME    7        10      21                     x2
AUSGABE-FILE-NAME-2T           8        16      23                     x2
MESSAGE-TEXT-2T                12       19      25      26             x3
MESSAGE-TEXT-2                 19       42                             x1
AUSGABE-FILE-NAME              21       42                             x1
AUSGABE-FILE-NAME-2            21     referenced by parent
DETAIL-NO                      21     referenced by parent
OUTPUT-NAME                    21       45                             x1
Z-MESSAGE-T2                   23       43                             x1
DETAIL-NO                      24       43                             x1
Z-MESSAGE-T3                   24     referenced by child
MT3                            25       44                             x1
AUSGABE-FILE-NAME              26       44                             x1
AUSGABE-FILE-NAME-2            26     referenced by parent
DETAIL-NO                      26     referenced by parent
MT3-REN                        26     not referenced
AUSGABE-FILE-NAME              28     not referenced
AUSGABE-FILE-NAME-2            28     not referenced
DETAIL-NO                      28     not referenced
CALCULUS                       28       32      34                     x2
USER-TYPE                      31       35                             x1
USER-VAR                       35     referenced by child
AMOUNT                         37      *46      47                     x2
MIN-DETAIL                     37     not referenced
GRP-AMOUNT                     37      *47                             x1
MIN-DETAIL                     37     not referenced
PROC                           37       39                             x1
MY-PROC                        39       48     *49                     x2
PROC-UNSET                     41     not referenced


LABEL                          DEFINED                REFERENCES

E prog                         42

" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2403"
$at_failed && at_fn_log_failure
$at_traceon; }




{ set +x
$as_echo "$at_srcdir/syn_definition.at:2449: \$COMPILE_LISTING0 -t symbols.lst -tsymbols -fno-tsource -fno-tmessages prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t symbols.lst -tsymbols -fno-tsource -fno-tmessages prog.cob" "syn_definition.at:2449"
( $at_check_trace; $COMPILE_LISTING0 -t symbols.lst -tsymbols -fno-tsource -fno-tmessages prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2449"
$at_failed && at_fn_log_failure  \
"symbols.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2452: test \"\$COB_HAS_64_BIT_POINTER\" = \"yes\""
at_fn_check_prepare_dynamic "test \"$COB_HAS_64_BIT_POINTER\" = \"yes\"" "syn_definition.at:2452"
( $at_check_trace; test "$COB_HAS_64_BIT_POINTER" = "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2452"
if $at_failed; then :


# Previous test "failed" --> 32 bit

cat >prog-32.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog.cob

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00050 T ALPHANUMERIC 01   AUSGABE-FILE-NAME-T            X(50)

00004 T NUMERIC      01   SOME-VERY-LONG-TYPEDEF-NAME    9999

00008 T GROUP        01   AUSGABE-FILE-NAME-2T
00004 NUMERIC        05   FILLER                         9999
00004 NUMERIC        05   DETAIL-NO                      SOME-VERY-LONG-TYPEDE...

00108 T GROUP        01   MESSAGE-TEXT-2T
00050 ALPHANUMERIC   02   AUSGABE-FILE-NAME              AUSGABE-FILE-NAME-T
00004 GROUP          02   FILLER, REDEFINES AUSGABE-FILE-NAME
00004 NUMERIC        05   FILLER                         9999
00008 GROUP          02   AUSGABE-FILE-NAME-2            AUSGABE-FILE-NAME-2T
00050 ALPHANUMERIC   02   FILLER                         AUSGABE-FILE-NAME-T

00108 GROUP          01   MESSAGE-TEXT-2                 MESSAGE-TEXT-2T EXTERNAL

00004 NUMERIC        77   OUTPUT-NAME                    SOME-VERY-LONG-TYPEDE... GLOBAL

00008 GROUP          01   Z-MESSAGE-T2                   AUSGABE-FILE-NAME-2T

00108 GROUP          01   Z-MESSAGE-T3
00108 GROUP          49   MT3                            MESSAGE-TEXT-2T
00108 GROUP          49   MT3-REN                        MESSAGE-TEXT-2T, REDEFINES MT3

00018 T NUMERIC      01   CALCULUS                       S9(15)V9(03)
      CONDITIONAL    88   NO-DETAIL
      CONDITIONAL    88   MIN-DETAIL

01818 T GROUP        01   USER-TYPE
00018 NUMERIC        02   AMOUNT                         CALCULUS
01800 GROUP          02   FILLER                         OCCURS 100
00018 NUMERIC        05   GRP-AMOUNT                     CALCULUS

01818 GROUP          01   USER-VAR                       USER-TYPE

00004 T POINTER      01   PROC                           PROGRAM-POINTER
      CONDITIONAL    88   PROC-UNSET

00004 POINTER        77   MY-PROC                        PROC


_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2452: diff prog-32.lst symbols.lst"
at_fn_check_prepare_trace "syn_definition.at:2452"
( $at_check_trace; diff prog-32.lst symbols.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2452"
$at_failed && at_fn_log_failure  \
"symbols.lst"
$at_traceon; }



else


# Previous test "passed" --> 64 bit

cat >prog-64.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog.cob

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00050 T ALPHANUMERIC 01   AUSGABE-FILE-NAME-T            X(50)

00004 T NUMERIC      01   SOME-VERY-LONG-TYPEDEF-NAME    9999

00008 T GROUP        01   AUSGABE-FILE-NAME-2T
00004 NUMERIC        05   FILLER                         9999
00004 NUMERIC        05   DETAIL-NO                      SOME-VERY-LONG-TYPEDE...

00108 T GROUP        01   MESSAGE-TEXT-2T
00050 ALPHANUMERIC   02   AUSGABE-FILE-NAME              AUSGABE-FILE-NAME-T
00004 GROUP          02   FILLER, REDEFINES AUSGABE-FILE-NAME
00004 NUMERIC        05   FILLER                         9999
00008 GROUP          02   AUSGABE-FILE-NAME-2            AUSGABE-FILE-NAME-2T
00050 ALPHANUMERIC   02   FILLER                         AUSGABE-FILE-NAME-T

00108 GROUP          01   MESSAGE-TEXT-2                 MESSAGE-TEXT-2T EXTERNAL

00004 NUMERIC        77   OUTPUT-NAME                    SOME-VERY-LONG-TYPEDE... GLOBAL

00008 GROUP          01   Z-MESSAGE-T2                   AUSGABE-FILE-NAME-2T

00108 GROUP          01   Z-MESSAGE-T3
00108 GROUP          49   MT3                            MESSAGE-TEXT-2T
00108 GROUP          49   MT3-REN                        MESSAGE-TEXT-2T, REDEFINES MT3

00018 T NUMERIC      01   CALCULUS                       S9(15)V9(03)
      CONDITIONAL    88   NO-DETAIL
      CONDITIONAL    88   MIN-DETAIL

01818 T GROUP        01   USER-TYPE
00018 NUMERIC        02   AMOUNT                         CALCULUS
01800 GROUP          02   FILLER                         OCCURS 100
00018 NUMERIC        05   GRP-AMOUNT                     CALCULUS

01818 GROUP          01   USER-VAR                       USER-TYPE

00008 T POINTER      01   PROC                           PROGRAM-POINTER
      CONDITIONAL    88   PROC-UNSET

00008 POINTER        77   MY-PROC                        PROC


_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2452: diff prog-64.lst symbols.lst"
at_fn_check_prepare_trace "syn_definition.at:2452"
( $at_check_trace; diff prog-64.lst symbols.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2452"
$at_failed && at_fn_log_failure  \
"symbols.lst"
$at_traceon; }



fi
$at_failed && at_fn_log_failure  \
"symbols.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_132
#AT_START_133
at_fn_group_banner 133 'syn_definition.at:2571' \
  "LIKE clause" "                                    " 2
at_xfail=yes
(
  $as_echo "133. $at_setup_line: testing $at_desc ..."
  $at_traceon



# work in progress


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MESSAGE-TEXT-2 EXTERNAL.
         02 AUSGABE-FILE-NAME     PIC X(50).
         02 FILLER REDEFINES AUSGABE-FILE-NAME.
             05 FILLER PIC 9999.
         02 AUSGABE-FILE-NAME-2.
             05 FILLER PIC 9999.
             05 DETAIL-NO PIC 9999.
         02 FILLER LIKE AUSGABE-FILE-NAME.

       77 OUTPUT-VAL     LIKE DETAIL-NO GLOBAL.
       77 OUTPUT-VAL-P1  LIKE DETAIL-NO (+1).
       77 OUTPUT-VAL-P1b LIKE DETAIL-NO (1).
       77 OUTPUT-VAL-M2  LIKE DETAIL-NO (-2).

       01 Z-MESSAGE-T2 LIKE AUSGABE-FILE-NAME-2.
       01 Z-MESSAGE-T3.
          49 MT3      LIKE MESSAGE-TEXT-2.

       PROCEDURE DIVISION.
           DISPLAY AUSGABE-FILE-NAME OF MESSAGE-TEXT-2
           DISPLAY Z-MESSAGE-T2 (55:LENGTH OF DETAIL-NO)
           DISPLAY MT3 (1:LENGTH OF AUSGABE-FILE-NAME)
           ADD OUTPUT-VAL TO DETAIL-NO
           GOBACK.
_ATEOF


# TODO add tests and syntax checks in cobc
# AT_DATA([badprog.cob], [
#        IDENTIFICATION   DIVISION.
#        PROGRAM-ID.      prog.
#        DATA             DIVISION.
#        WORKING-STORAGE  SECTION.
#
# ])

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2617: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:2617"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_definition.at:2617"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_definition.at:2618: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_definition.at:2618"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:15: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:17: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:19: error: SAME AS clause does not conform to Micro Focus COBOL
prog.cob:20: error: SAME AS clause does not conform to Micro Focus COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2618"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_133
#AT_START_134
at_fn_group_banner 134 'syn_definition.at:2629' \
  "APPLY COMMIT clause" "                            " 2
at_xfail=no
(
  $as_echo "134. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.  *> taken from "commit and rollback example"
                          *> from COBOL 202x draft
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT STCK-FILE
              ASSIGN TO "STOCK"
              ORGANIZATION IS INDEXED
              ACCESS MODE IS RANDOM
              FILE STATUS IS STCK-FILE-STATUS
              RECORD KEY  IS APPLY
              SHARING WITH ALL OTHER.

           SELECT CHNG-FILE
              ASSIGN TO "CHANGE"
              ORGANIZATION IS SEQUENTIAL
              ACCESS MODE IS SEQUENTIAL
              FILE STATUS IS CHNG-FILE-STATUS
              SHARING WITH ALL OTHER.

           SELECT SORT-FILE
              ASSIGN TO "SORT".

       I-O-CONTROL.
           APPLY COMMIT ON STCK-FILE CHNG-FILE STCK-FILE not-there
                 SORT-FILE UPDATE-COUNT not-there-again BASED-STUFF
                 RED-DATA SOME-DATA.

       DATA DIVISION.
       FILE SECTION.

       FD  STCK-FILE.
       01  STCK-REC.
           03  APPLY                   PIC X(5).
           03  STCK-QTY                PIC 9(5)V99.

       SD  SORT-FILE.
       01  SORT-REC                    PIC X(100).

       FD  CHNG-FILE.
       01  CHNG-REC.
           03  CHNG-KEY                PIC X(5).
           03  CHNG-QTY                PIC 9(5)V99.
           03  CHNG-ACTION             PIC X.
           03  CHNG-STATE              PIC X.

       WORKING-STORAGE SECTION.

       01  FILE-STATES.
           03  STCK-FILE-STATUS        PIC XX.
               88  STCK-FILE-OK                  VALUE "00".
           03  CHNG-FILE-STATUS        PIC XX.
               88  CHNG-FILE-OK                  VALUE "00".
       77  UPDATE-COUNT  BINARY-LONG.
       77  BASED-STUFF   PIC X BASED.
       01  DATA-HERE.
           03 SOME-DATA  PIC 9.
       01  RED-DATA REDEFINES DATA-HERE PIC X.

       PROCEDURE DIVISION.

         MAIN SECTION.

           PERFORM INITIALISATION
           PERFORM TERMINATION
           STOP RUN WITH NORMAL STATUS 0

       . INITIALISATION SECTION.

           OPEN I-O CHNG-FILE, STCK-FILE
           IF NOT STCK-FILE-OK OR NOT CHNG-FILE-OK
              PERFORM FATAL-ERROR
           END-IF

       . TERMINATION SECTION.

           COMMIT
           IF NOT STCK-FILE-OK OR NOT CHNG-FILE-OK
              PERFORM FATAL-ERROR
           END-IF

       . FATAL-ERROR SECTION.

           ROLLBACK
           STOP RUN WITH ERROR STATUS 16.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2721: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:2721"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:29: warning: APPLY COMMIT is not implemented
prog.cob:27: error: 'not-there' is not defined
prog.cob:28: error: 'not-there-again' is not defined
prog.cob:27: error: duplicate APPLY COMMIT target: 'STCK-FILE'
prog.cob:28: error: APPLY COMMIT statement invalid for SORT file
prog.cob:29: error: 'RED-DATA' REDEFINES field not allowed here
prog.cob:29: error: 'SOME-DATA' not level 01 or 77
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2721"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_134
#AT_START_135
at_fn_group_banner 135 'syn_definition.at:2734' \
  "GLOBAL record-names" "                            " 2
at_xfail=no
(
  $as_echo "135. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. OUTER-PROGRAM.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT STCK-FILE
              ASSIGN TO "STOCK"
              ORGANIZATION IS INDEXED
              ACCESS MODE IS RANDOM
              FILE STATUS IS STCK-FILE-STATUS
              RECORD People-LastName
              ALTERNATE People-NameKey
                 SOURCE People-FirstName People-LastName
              ALTERNATE People-NameKeyFirst
                 SOURCE People-1stName
              *> validating internal error handling:
              ALTERNATE BadKey People-1stName.
           SELECT LOCAL-FILE
              ASSIGN TO "LOCAL"
              ORGANIZATION IS INDEXED
              ACCESS MODE IS RANDOM
              FILE STATUS IS LOCL-FILE-STATUS
              RECORD LPeople-LastName
              ALTERNATE LPeople-NameKey
                 SOURCE LPeople-FirstName LPeople-LastName.

       DATA DIVISION.
       FILE SECTION.

       FD  STCK-FILE GLOBAL.
       01  STCK-REC.
           02 People-LastName      PIC X(50).
           02 People-FirstName     PIC X(50).
       01  STCK-REC-PART.
           02 People-1stName       PIC X(50).

       FD  LOCAL-FILE.
       01  LOCAL-REC.
           02 LPeople-LastName     PIC X(50).
           02 LPeople-FirstName    PIC X(50).

       WORKING-STORAGE SECTION.

       01  FILE-STATES IS GLOBAL.
           03  STCK-FILE-STATUS        PIC XX.
               88  STCK-FILE-OK        VALUE "00".
           03  LOCL-FILE-STATUS        PIC XX.
               88  LOCL-FILE-OK        VALUE "00".

       PROCEDURE DIVISION.

         MAIN SECTION.

           OPEN OUTPUT LOCAL-FILE
           MOVE "John" TO LPeople-FirstName
           MOVE "Doe"  TO LPeople-LastName
           WRITE LOCAL-REC
           CLOSE LOCAL-FILE

           OPEN OUTPUT STCK-FILE
           MOVE "John" TO People-FirstName
           MOVE "Doe"  TO People-LastName
           WRITE STCK-REC
           CLOSE STCK-FILE

           CALL "INNER-PROGRAM".
           GOBACK.

       PROGRAM-ID. INNER-PROGRAM.
       PROCEDURE DIVISION.
           OPEN INPUT STCK-FILE
           MOVE "John" TO People-FirstName
           MOVE "Doe"  TO People-LastName
           READ STCK-FILE KEY People-NameKey
             NOT INVALID KEY
                DISPLAY People-FirstName " " People-LastName
             INVALID KEY
                DISPLAY "NOT FOUND"
           END-READ
           INITIALIZE STCK-REC
           MOVE "John" TO People-1stName
           READ STCK-FILE KEY People-NameKeyFirst
             NOT INVALID KEY
                DISPLAY People-FirstName " " People-LastName
             INVALID KEY
                DISPLAY "NOT FOUND"
           END-READ
           CLOSE STCK-FILE
           OPEN INPUT LOCAL-FILE
           MOVE "John" TO LPeople-FirstName
           MOVE "Doe"  TO LPeople-LastName
           READ LOCAL-FILE KEY LPeople-NameKey
             NOT INVALID KEY
                DISPLAY LPeople-FirstName " " LPeople-LastName
             INVALID KEY
                DISPLAY "NOT FOUND"
           END-READ
           CLOSE LOCAL-FILE
           GOBACK.
       END PROGRAM INNER-PROGRAM.
      *>****************************************************************
       END PROGRAM OUTER-PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2842: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_definition.at:2842"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: error: syntax error, unexpected Identifier, expecting SEQUENTIAL
prog.cob:18: error: 'BadKey' is not defined
prog.cob:91: error: 'LPeople-FirstName' is not defined
prog.cob:92: error: 'LPeople-LastName' is not defined
prog.cob:93: error: 'LPeople-NameKey' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2842"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_135
#AT_START_136
at_fn_group_banner 136 'syn_definition.at:2853' \
  "Invalid USE BEFORE" "                             " 2
at_xfail=no
(
  $as_echo "136. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       PROCEDURE DIVISION.
       DEPTHDRUSE SECTION.
       USE BEFORE REPORTING DEPTHDR.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_definition.at:2864: \$COMPILE_ONLY -std=default prog.cob "
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=default prog.cob " "syn_definition.at:2864"
( $at_check_trace; $COMPILE_ONLY -std=default prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'DEPTHDRUSE':
prog.cob:6: error: 'DEPTHDR' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_definition.at:2864"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_136
#AT_START_137
at_fn_group_banner 137 'syn_subscripts.at:23' \
  "Non-numeric subscript" "                          " 2
at_xfail=no
(
  $as_echo "137. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X OCCURS 10.
       01 I             PIC X.
       PROCEDURE        DIVISION.
           DISPLAY X(I)
           END-DISPLAY.
           DISPLAY X(I + 1)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:42: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_subscripts.at:42"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'I' is not an integer
prog.cob:12: error: 'I' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:42"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_137
#AT_START_138
at_fn_group_banner 138 'syn_subscripts.at:50' \
  "Subscript range check" "                          " 2
at_xfail=no
(
  $as_echo "138. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           OCCURS 2.
           03 Y         PIC X OCCURS 3.
       PROCEDURE        DIVISION.
           DISPLAY X(0)
           END-DISPLAY.
           DISPLAY X(1)
           END-DISPLAY.
           DISPLAY X(2)
           END-DISPLAY.
           DISPLAY X(3)
           END-DISPLAY.
           DISPLAY Y(1, 0)
           END-DISPLAY.
           DISPLAY Y(1, 1)
           END-DISPLAY.
           DISPLAY Y(1, 3)
           END-DISPLAY.
           DISPLAY Y(1, 4)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:81: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_subscripts.at:81"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: subscript of 'X' out of bounds: 0
prog.cob:16: error: subscript of 'X' out of bounds: 3
prog.cob:18: error: subscript of 'Y' out of bounds: 0
prog.cob:24: error: subscript of 'Y' out of bounds: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:81"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:88: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_subscripts.at:88"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: subscript of 'X' out of bounds: 0
prog.cob:16: warning: subscript of 'X' out of bounds: 3
prog.cob:18: warning: subscript of 'Y' out of bounds: 0
prog.cob:24: warning: subscript of 'Y' out of bounds: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_subscripts.at:88"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_138
#AT_START_139
at_fn_group_banner 139 'syn_subscripts.at:98' \
  "Subscript bounds with OCCURS DEPENDING ON" "      " 2
at_xfail=no
(
  $as_echo "139. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N.
       01 N             PIC 9 VALUE 4.
       PROCEDURE        DIVISION.
           DISPLAY X(0)
           DISPLAY X(7)
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:115: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_subscripts.at:115"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: subscript of 'X' out of bounds: 0
prog.cob:11: error: subscript of 'X' out of bounds: 7
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_139
#AT_START_140
at_fn_group_banner 140 'syn_subscripts.at:125' \
  "Subscripted item requires OCCURS clause" "        " 2
at_xfail=no
(
  $as_echo "140. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X.
       PROCEDURE        DIVISION.
           DISPLAY G(1)
           END-DISPLAY.
           DISPLAY X(1)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:143: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_subscripts.at:143"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: 'G' cannot be subscripted
prog.cob:11: error: 'X' cannot be subscripted
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:143"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_140
#AT_START_141
at_fn_group_banner 141 'syn_subscripts.at:151' \
  "Number of subscripts" "                           " 2
at_xfail=no
(
  $as_echo "141. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           OCCURS 2.
           03 Y         PIC X OCCURS 3.
       PROCEDURE        DIVISION.
           DISPLAY X
           END-DISPLAY.
           DISPLAY X(1)
           END-DISPLAY.
           DISPLAY X(1, 2)
           END-DISPLAY.
           DISPLAY Y(1)
           END-DISPLAY.
           DISPLAY Y(1, 2)
           END-DISPLAY.
           DISPLAY Y(1, 2, 3)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:178: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_subscripts.at:178"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'X' requires one subscript
prog.cob:14: error: 'X' requires one subscript
prog.cob:16: error: 'Y' requires 2 subscripts
prog.cob:20: error: 'Y' requires 2 subscripts
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:178"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:185: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_subscripts.at:185"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: subscript missing for 'X' - defaulting to 1
prog.cob:14: error: 'X' requires one subscript
prog.cob:16: warning: subscript missing for 'Y' - defaulting to 1
prog.cob:20: error: 'Y' requires 2 subscripts
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:185"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_141
#AT_START_142
at_fn_group_banner 142 'syn_subscripts.at:195' \
  "SET SSRANGE syntax" "                             " 2
at_xfail=no
(
  $as_echo "142. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       *> Valid
      $SET SSRANGE
      $SET SSRANGE(1)
      $SET SSRANGE "2"
      $SET SSRANGE (3)

       *> Invalid
      $SET SSRANGE(0)
      $SET SSRANGE(4)
      $SET SSRANGE "variable"

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       PROCEDURE DIVISION.
           GOBACK
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_subscripts.at:217: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_subscripts.at:217"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid SSRANGE directive option '0'
prog.cob:10: error: invalid SSRANGE directive option '4'
prog.cob:11: error: invalid SSRANGE directive option 'variable'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_subscripts.at:217"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_142
#AT_START_143
at_fn_group_banner 143 'syn_occurs.at:29' \
  "OCCURS with level 01 and 77" "                    " 2
at_xfail=no
(
  $as_echo "143. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([occurs])

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-01          PIC X OCCURS 10.
       01 G             OCCURS 10.
         02 X-02        PIC X OCCURS 10.
       01 G2.
         02 X2-02       PIC X OCCURS 10.
       77 X-77          PIC X OCCURS 10.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:45: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_occurs.at:45"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 01/77 OCCURS does not conform to COBOL 2014
prog.cob:7: error: 01/77 OCCURS does not conform to COBOL 2014
prog.cob:11: error: 01/77 OCCURS does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:51: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:51"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:51"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_occurs.at:52: \$COMPILE_ONLY -ftop-level-occurs-clause=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -ftop-level-occurs-clause=warning prog.cob" "syn_occurs.at:52"
( $at_check_trace; $COMPILE_ONLY -ftop-level-occurs-clause=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: 01/77 OCCURS used
prog.cob:7: warning: 01/77 OCCURS used
prog.cob:11: warning: 01/77 OCCURS used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:52"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_143
#AT_START_144
at_fn_group_banner 144 'syn_occurs.at:84' \
  "OCCURS with level 66" "                           " 2
at_xfail=no
(
  $as_echo "144. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  x PIC X.
       66  y RENAMES x OCCURS 10.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:96: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:96"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: syntax error, unexpected OCCURS
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:96"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_144
#AT_START_145
at_fn_group_banner 145 'syn_occurs.at:103' \
  "OCCURS with level 78" "                           " 2
at_xfail=no
(
  $as_echo "145. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([occurs])

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78  c value "a" OCCURS 10.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:114: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:114"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: syntax error, unexpected OCCURS
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:114"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_145
#AT_START_146
at_fn_group_banner 146 'syn_occurs.at:121' \
  "OCCURS with level 88" "                           " 2
at_xfail=no
(
  $as_echo "146. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([occurs])

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  x PIC X.
           88  y VALUE "a" OCCURS 10.
_ATEOF


# note: the message is from level-88 content-validation entry format,
#       which is mixed in the parser (as it may be used as) condition format
{ set +x
$as_echo "$at_srcdir/syn_occurs.at:135: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:135"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: syntax error, unexpected OCCURS
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:135"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_146
#AT_START_147
at_fn_group_banner 147 'syn_occurs.at:143' \
  "OCCURS with variable-occurrence data item" "      " 2
at_xfail=no
(
  $as_echo "147. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 G-2         OCCURS 10.
           03 X         PIC X(10) OCCURS 1 TO 4 DEPENDING ON I.
       77 I             PIC 9.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 G-2         OCCURS 1 TO 10 DEPENDING ON I.
           03 X         PIC X(10) OCCURS 1 TO 4 DEPENDING ON I.
       77 I             PIC 9.
       PROCEDURE        DIVISION.
           DISPLAY  X(I, I) END-DISPLAY
           DISPLAY  G-2 (I) END-DISPLAY
           DISPLAY  G-1     END-DISPLAY
           .

_ATEOF


cat >prog3.cob <<'_ATEOF'

       $SET ODOSLIDE
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 G-2         OCCURS 10.
           03 X         PIC X(10) OCCURS 1 TO 4 DEPENDING ON I.
       77 I             PIC 9.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 G-2         OCCURS 10.
           03 X         PIC X(10) OCCURS 1 TO 4 DEPENDING ON I.
       77 I             PIC X.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         05 G-1-F1      PIC  X(002).
         05 G-2.
          07 G-3
            OCCURS 1 TO 99999
            DEPENDING ON     G-3-ELEMENTS
            ASCENDING KEY IS G-4-KEY
            INDEXED BY       IND.
           10 G-4.
             15 N       PIC  9(001).
      *
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:215: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:215"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: 'G-2' cannot have an OCCURS clause due to 'X'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:215"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:219: \$COMPILE_ONLY -fcomplex-odo prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fcomplex-odo prog.cob" "syn_occurs.at:219"
( $at_check_trace; $COMPILE_ONLY -fcomplex-odo prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:219"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:221: \$COMPILE_ONLY -fcomplex-odo prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fcomplex-odo prog2.cob" "syn_occurs.at:221"
( $at_check_trace; $COMPILE_ONLY -fcomplex-odo prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:8: error: 'X' cannot have nested OCCURS DEPENDING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:221"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:225: \$COMPILE_ONLY -fodoslide prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fodoslide prog2.cob" "syn_occurs.at:225"
( $at_check_trace; $COMPILE_ONLY -fodoslide prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:225"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_occurs.at:226: \$COMPILE_ONLY prog3.cob prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob prog2.cob" "syn_occurs.at:226"
( $at_check_trace; $COMPILE_ONLY prog3.cob prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: 'G-2' cannot have an OCCURS clause due to 'X'
prog2.cob:8: error: 'X' cannot have nested OCCURS DEPENDING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:226"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:231: \$COMPILE_ONLY prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog4.cob" "syn_occurs.at:231"
( $at_check_trace; $COMPILE_ONLY prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog4.cob:7: error: 'G-2' cannot have an OCCURS clause due to 'X'
prog4.cob:8: error: 'I' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:231"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:236: \$COMPILE_ONLY -fcomplex-odo prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fcomplex-odo prog4.cob" "syn_occurs.at:236"
( $at_check_trace; $COMPILE_ONLY -fcomplex-odo prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog4.cob:8: error: 'I' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:236"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:240: \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog5.cob" "syn_occurs.at:240"
( $at_check_trace; $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog5.cob:11: error: 'G-3-ELEMENTS' is not defined
prog5.cob:12: error: 'G-4-KEY IN G-2 IN G-1' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:240"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_147
#AT_START_148
at_fn_group_banner 148 'syn_occurs.at:248' \
  "OCCURS UNBOUNDED" "                               " 2
at_xfail=no
(
  $as_echo "148. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([ibm])

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       LINKAGE  SECTION.
       01 G-1.
          07 G-2-ELEMENTS   PIC 9(08).
          07 G-2
            OCCURS UNBOUNDED
            DEPENDING ON    G-2-ELEMENTS.
           10 X             PIC X.
        PROCEDURE DIVISION USING G-1.
           DISPLAY G-1.
           GOBACK.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       LINKAGE  SECTION.
       01 G-1.
         05 G-1-F1          PIC X(22).
         05 G-1-F2          PIC X(12).
         05 G-2.
          07 G-3-ELEMENTS   PIC 9(08).
          07 G-3
            OCCURS UNBOUNDED
            DEPENDING ON    G-3-ELEMENTS.
           10 G-4.
             15 X           PIC  9(22).
        PROCEDURE DIVISION USING G-1.
           DISPLAY G-1.
           GOBACK.
_ATEOF


cat >bad.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
          07 G-2-ELEMENTS   PIC 9(08).
          07 G-2
            OCCURS UNBOUNDED
            DEPENDING ON    G-2-ELEMENTS.
           10 X             PIC X.
_ATEOF


cat >bad2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         05 G-1-F1          PIC X(22).
         05 G-2.
          07 G-3-ELEMENTS   PIC 9(08).
          07 G-3
             OCCURS UNBOUNDED.
           10 G-4.
             15 X           PIC  9(22).
_ATEOF


cat >bad3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         05 G-1-F1          PIC X(22).
         05 G-1-F2          PIC X(12).
         05 G-2.
          07 G-3
            OCCURS UNBOUNDED
            DEPENDING ON    G-3-ELEMENTS.
           10 G-4.
             15 X           PIC  9(22).
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:331: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:331"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:331"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_occurs.at:332: \$COMPILE_ONLY -std=ibm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict prog.cob" "syn_occurs.at:332"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:332"
$at_failed && at_fn_log_failure
$at_traceon; }


# TODO: opt to a different path, if UNBOUNDED is not reserved
{ set +x
$as_echo "$at_srcdir/syn_occurs.at:335: \$COMPILE_ONLY -std=cobol2014  prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014  prog.cob" "syn_occurs.at:335"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014  prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: syntax error, unexpected Identifier, expecting UNBOUNDED
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:335"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:339: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_occurs.at:339"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:339"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:341: \$COMPILE_ONLY bad.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY bad.cob" "syn_occurs.at:341"
( $at_check_trace; $COMPILE_ONLY bad.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "bad.cob:8: error: 'G-2' is not in LINKAGE SECTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:341"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:345: \$COMPILE_ONLY bad2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY bad2.cob" "syn_occurs.at:345"
( $at_check_trace; $COMPILE_ONLY bad2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "bad2.cob:11: error: syntax error, unexpected ., expecting DEPENDING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:345"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:349: \$COMPILE_ONLY bad3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY bad3.cob" "syn_occurs.at:349"
( $at_check_trace; $COMPILE_ONLY bad3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "bad3.cob:10: error: 'G-3' is not in LINKAGE SECTION
bad3.cob:12: error: 'G-3-ELEMENTS' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:349"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_148
#AT_START_149
at_fn_group_banner 149 'syn_occurs.at:359' \
  "OCCURS data-items for INDEXED and KEY" "          " 2
at_xfail=no
(
  $as_echo "149. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  . *> the "filler" explicit checks bugs #699 and #776
           05  TAB-ENTRY1
                  OCCURS 5 TIMES
                  ASCENDING KEY IS X1
                                OF TAB-ENTRY1
                                OF TAB
                  INDEXED BY IDX1 OF TAB.
              10 X1 PIC 9.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:377: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:377"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: a subscripted data-item cannot be used here
prog.cob:12: error: a subscripted data-item cannot be used here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:377"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_149
#AT_START_150
at_fn_group_banner 150 'syn_occurs.at:399' \
  "Nested OCCURS clause" "                           " 2
at_xfail=no
(
  $as_echo "150. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([occurs])

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
        02 G-2          OCCURS 2.
         03 G-3         OCCURS 2.
          04 G-4        OCCURS 2.
           05 G-5       OCCURS 2.
            06 G-6      OCCURS 2.
             07 G-7     OCCURS 2.
              08 G-8    OCCURS 2.
               09 X     PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:418: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:418"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:418"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_150
#AT_START_151
at_fn_group_banner 151 'syn_occurs.at:436' \
  "OCCURS DEPENDING with wrong size" "               " 2
at_xfail=no
(
  $as_echo "151. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 FILLER.
         02 G-1         PIC X OCCURS  1 TO 1 DEPENDING ON I.
       01 FILLER.
         02 G-2         PIC X OCCURS -1 TO 1 DEPENDING ON I.
       01 FILLER.
         02 G-3         PIC X OCCURS +1 TO 1 DEPENDING ON I.
       01 FILLER.
         02 G-4         PIC X OCCURS  0 TO 1 DEPENDING ON I.
       01 I             PIC 9.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:455: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:455"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: OCCURS TO must be greater than OCCURS FROM
prog.cob:9: error: unsigned integer value expected
prog.cob:11: error: unsigned integer value expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:455"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_151
#AT_START_152
at_fn_group_banner 152 'syn_occurs.at:475' \
  "OCCURS DEPENDING followed by another field" "     " 2
at_xfail=no
(
  $as_echo "152. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 X           PIC X OCCURS 1 TO 3 DEPENDING ON I.
         02 Y           PIC X.
       01 G-2.
         02 G-3         OCCURS 1 TO 3 DEPENDING ON I.
           03 X         PIC X.
         02 Y           PIC X.
       01 G-4.
         02 G-5.
           03 X         PIC X OCCURS 1 TO 3 DEPENDING ON I.
         02 Y           PIC X.
       01 I             PIC 9.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:497: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:497"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: 'X' cannot have OCCURS DEPENDING because of 'Y'
prog.cob:10: error: 'G-3' cannot have OCCURS DEPENDING because of 'Y'
prog.cob:15: error: 'X' cannot have OCCURS DEPENDING because of 'Y'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:497"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:503: \$COMPILE_ONLY -fcomplex-odo prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fcomplex-odo prog.cob" "syn_occurs.at:503"
( $at_check_trace; $COMPILE_ONLY -fcomplex-odo prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:503"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_152
#AT_START_153
at_fn_group_banner 153 'syn_occurs.at:517' \
  "OCCURS with unmatched DEPENDING / TO phrases" "   " 2
at_xfail=no
(
  $as_echo "153. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 Y             PIC 9.
       01 XTAB.
          03 X  PIC X OCCURS 10 DEPENDING ON Y.
       01 XTAB2.
          03 X2 PIC X OCCURS 1 TO 10.
       01 XTAB3.
          03 X3 PIC X OCCURS 1 TO 10 DEPENDING ON MISSING.
       PROCEDURE DIVISION.
           MOVE 'A' TO X(1), X2(2), X3(3)
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:537: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_occurs.at:537"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: OCCURS DEPENDING ON without TO phrase does not conform to COBOL 2014
prog.cob:10: error: TO phrase without DEPENDING phrase
prog.cob:12: error: 'MISSING' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:537"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_occurs.at:542: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:542"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: OCCURS DEPENDING ON without TO phrase used
prog.cob:10: error: TO phrase without DEPENDING phrase
prog.cob:12: error: 'MISSING' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:542"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_occurs.at:547: \$COMPILE_ONLY -frelax-syntax prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax prog.cob" "syn_occurs.at:547"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: OCCURS DEPENDING ON without TO phrase used
prog.cob:10: warning: TO phrase without DEPENDING phrase
prog.cob:10: note: maximum number of occurrences assumed to be exact number
prog.cob:12: error: 'MISSING' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:547"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_153
#AT_START_154
at_fn_group_banner 154 'syn_occurs.at:560' \
  "OCCURS INDEXED before KEY" "                      " 2
at_xfail=no
(
  $as_echo "154. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  TAB.
           05  TAB-ENTRY1
                  OCCURS 5 TIMES
                  INDEXED BY IDX1
                  ASCENDING KEY IS X1
                  DESCENDING Y1.
             10  X1 PIC 9(4).
             10  Y1 PIC X.
           05  TAB-ENTRY
                  OCCURS 2 TIMES
                  INDEXED BY IDX2
                  DESCENDING KEY IS X2
                  ASCENDING  Y2.
             10  X2 PIC 9(4).
             10  Y2 PIC X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:585: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:585"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: INDEXED should follow ASCENDING/DESCENDING
prog.cob:17: error: INDEXED should follow ASCENDING/DESCENDING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:585"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_occurs.at:590: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_occurs.at:590"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: INDEXED should follow ASCENDING/DESCENDING
prog.cob:17: warning: INDEXED should follow ASCENDING/DESCENDING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:590"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_154
#AT_START_155
at_fn_group_banner 155 'syn_occurs.at:598' \
  "OCCURS size check" "                              " 2
at_xfail=no
(
  $as_echo "155. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X1.
          03 X  PIC X OCCURS 1530001234 TIMES.
       01 X2.
          03 X  PIC X OCCURS 2147483648 TIMES.
       01 X3.
          03 X  PIC X OCCURS 9223372036854775808 TIMES.
_ATEOF


# Don't check actual output here as the actual limit depends on INT_MAX, therefore
# all entries may raise this error but only the last error message is guaranteed.
{ set +x
$as_echo "$at_srcdir/syn_occurs.at:616: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_occurs.at:616"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_occurs.at:616"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_occurs.at:617: \$COMPILE_ONLY prog.cob 2>&1 | \\
\$GREP \"prog.cob:11: error: numeric literal '9223372036854775808' exceeds limit\""
at_fn_check_prepare_notrace 'an embedded newline' "syn_occurs.at:617"
( $at_check_trace; $COMPILE_ONLY prog.cob 2>&1 | \
$GREP "prog.cob:11: error: numeric literal '9223372036854775808' exceeds limit"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/syn_occurs.at:617"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_155
#AT_START_156
at_fn_group_banner 156 'syn_redefines.at:28' \
  "REDEFINES: not following entry-name" "            " 2
at_xfail=no
(
  $as_echo "156. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 Y             PIC 9 REDEFINES X.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:40: \$COMPILE_ONLY -ffree-redefines-position=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -ffree-redefines-position=error prog.cob" "syn_redefines.at:40"
( $at_check_trace; $COMPILE_ONLY -ffree-redefines-position=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: REDEFINES clause not following entry-name used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:40"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:44: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:44"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: REDEFINES clause not following entry-name used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_156
#AT_START_157
at_fn_group_banner 157 'syn_redefines.at:53' \
  "REDEFINES: level 02 by 01" "                      " 2
at_xfail=no
(
  $as_echo "157. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X.
       01 Y             REDEFINES X PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:68: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:68"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: level number of REDEFINES entries must be identical
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:68"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_157
#AT_START_158
at_fn_group_banner 158 'syn_redefines.at:74' \
  "REDEFINES: level 03 by 02" "                      " 2
at_xfail=no
(
  $as_echo "158. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 G2.
           03 X         PIC X.
         02 Y           REDEFINES X PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:90: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:90"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: 'X' is not defined in 'G1'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:90"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_158
#AT_START_159
at_fn_group_banner 159 'syn_redefines.at:96' \
  "REDEFINES: level 66" "                            " 2
at_xfail=no
(
  $as_echo "159. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X.
         66 A           RENAMES X.
         66 B           REDEFINES A PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:112: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:112"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: syntax error, unexpected REDEFINES, expecting RENAMES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_159
#AT_START_160
at_fn_group_banner 160 'syn_redefines.at:118' \
  "REDEFINES: level 88" "                            " 2
at_xfail=no
(
  $as_echo "160. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
         88 A           VALUE "A".
         88 B           REDEFINES A VALUE "B".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:133: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:133"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: syntax error, unexpected REDEFINES, expecting VALUE or VALUES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_160
#AT_START_161
at_fn_group_banner 161 'syn_redefines.at:146' \
  "REDEFINES: lower level number" "                  " 2
at_xfail=no
(
  $as_echo "161. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 G2.
           03 X         PIC X.
         02 G3.
           03 A         REDEFINES X PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:163: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:163"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'X' is not defined in 'G3'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_161
#AT_START_162
at_fn_group_banner 162 'syn_redefines.at:172' \
  "REDEFINES: with OCCURS" "                         " 2
at_xfail=no
(
  $as_echo "162. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 2.
         02 Y           REDEFINES X PIC XX.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


# TODO: should be a dialect option, currntly it is _always_ a warning

{ set +x
$as_echo "$at_srcdir/syn_redefines.at:189: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:189"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: the original definition 'X' should not have an OCCURS clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:189"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_162
#AT_START_163
at_fn_group_banner 163 'syn_redefines.at:196' \
  "REDEFINES: with subscript" "                      " 2
at_xfail=no
(
  $as_echo "163. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 G2          OCCURS 2.
           03 X         PIC X.
           03 Y         REDEFINES X(1) PIC X.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:212: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:212"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: 'X' cannot be subscripted here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:212"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_163
#AT_START_164
at_fn_group_banner 164 'syn_redefines.at:219' \
  "REDEFINES: with variable occurrence" "            " 2
at_xfail=no
(
  $as_echo "164. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC XX.
         02 Y           REDEFINES X PIC X OCCURS 1 TO 2 DEPENDING ON I.
       01 G2.
         02 X           PIC XX.
         02 Y           REDEFINES X.
           03 A         PIC X OCCURS 1 TO 2 DEPENDING ON I.
       01 G3.
         02 X.
           03 A         PIC X OCCURS 1 TO 2 DEPENDING ON I.
         02 Y           REDEFINES X PIC X.
       01 I             PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:243: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:243"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: 'Y' cannot be variable length
prog.cob:11: error: 'Y' cannot be variable length
prog.cob:16: error: the original definition 'X' cannot be variable length
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:243"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_164
#AT_START_165
at_fn_group_banner 165 'syn_redefines.at:254' \
  "REDEFINES: with qualification" "                  " 2
at_xfail=no
(
  $as_echo "165. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X.
       01 G2.
         02 X           PIC X.
         02 A           REDEFINES X IN G1.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:271: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:271"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'X' cannot be qualified here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:271"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_165
#AT_START_166
at_fn_group_banner 166 'syn_redefines.at:280' \
  "REDEFINES: multiple redefinition" "               " 2
at_xfail=no
(
  $as_echo "166. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X.
         02 A           REDEFINES X PIC 9.
         02 B           REDEFINES X PIC 9.
         02 C           REDEFINES B PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:297: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:297"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'B' is not the original definition
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:297"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:301: \$COMPILE_ONLY -std=mvs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mvs prog.cob" "syn_redefines.at:301"
( $at_check_trace; $COMPILE_ONLY -std=mvs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:301"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_166
#AT_START_167
at_fn_group_banner 167 'syn_redefines.at:308' \
  "REDEFINES: size exceeds" "                        " 2
at_xfail=no
(
  $as_echo "167. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X.
         02 A           REDEFINES X PIC 99.
       01 G2.
         02 X           PIC X.
         02 A           REDEFINES X PIC 9 OCCURS 2.
       01 EXT-X         PIC X EXTERNAL.
       01 EXT-X-REDEF   REDEFINES EXT-X PIC 99.
      *> other than the above EXTERNAL one, this is explicit "fine"
      *> by COBOL standard (01, non-external) - only warn upon explicit request
       01 WRK-X2        PIC X.
       01 FILLER        REDEFINES WRK-X2 PIC X(4).
          88 WRK-X2-BADDY VALUE "99".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:333: \$COBC -fdiagnostics-plain-output -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -Wextra prog.cob" "syn_redefines.at:333"
( $at_check_trace; $COBC -fdiagnostics-plain-output -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: larger REDEFINES used
prog.cob:8: note: size of 'A' larger than size of 'X' [-Wdialect]
prog.cob:11: error: larger REDEFINES used
prog.cob:11: note: size of 'A' larger than size of 'X' [-Wdialect]
prog.cob:13: error: larger REDEFINES used
prog.cob:13: note: size of 'EXT-X-REDEF' larger than size of 'EXT-X' [-Wdialect]
prog.cob:17: warning: size of 'FILLER 1' larger than size of 'WRK-X2' [-Wlarger-01-redefines]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:333"
$at_failed && at_fn_log_failure
$at_traceon; }


# of course, other dialects ignore the rules, implicit adding a FILLER to the original item...
{ set +x
$as_echo "$at_srcdir/syn_redefines.at:344: \$COBC -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COBC -std=mf prog.cob" "syn_redefines.at:344"
( $at_check_trace; $COBC -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:344"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_redefines.at:345: \$COBC -fdiagnostics-plain-output -flarger-redefines=warning prog.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -flarger-redefines=warning prog.cob" "syn_redefines.at:345"
( $at_check_trace; $COBC -fdiagnostics-plain-output -flarger-redefines=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: larger REDEFINES used [-Wdialect]
prog.cob:8: note: size of 'A' larger than size of 'X' [-Wdialect]
prog.cob:11: warning: larger REDEFINES used [-Wdialect]
prog.cob:11: note: size of 'A' larger than size of 'X' [-Wdialect]
prog.cob:13: warning: larger REDEFINES used [-Wdialect]
prog.cob:13: note: size of 'EXT-X-REDEF' larger than size of 'EXT-X' [-Wdialect]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:345"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_167
#AT_START_168
at_fn_group_banner 168 'syn_redefines.at:359' \
  "REDEFINES: with VALUE" "                          " 2
at_xfail=no
(
  $as_echo "168. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 A             REDEFINES X PIC X VALUE "A".
       01 G             REDEFINES X.
         02 B           PIC X VALUE "A".
       01 Y             REDEFINES X PIC X.
         88 C           VALUE "A".
       PROCEDURE        DIVISION.
           INITIALIZE G ALL TO VALUE *> the reason that this extension is useful
           STOP RUN.
_ATEOF


# FIXME: add a compiler configuration as the COBOL standard forbids this
#        default.conf will allow it (with a warning)

{ set +x
$as_echo "$at_srcdir/syn_redefines.at:381: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:381"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: initial VALUE clause ignored for REDEFINES item 'A'
prog.cob:9: warning: initial VALUE clause ignored for REDEFINES item 'B'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:381"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_redefines.at:385: \$COMPILE -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -frelax-syntax-checks prog.cob" "syn_redefines.at:385"
( $at_check_trace; $COMPILE -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:385"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_168
#AT_START_169
at_fn_group_banner 169 'syn_redefines.at:392' \
  "REDEFINES: with intervention" "                   " 2
at_xfail=no
(
  $as_echo "169. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 Y             PIC X.
       01 A             REDEFINES X PIC X.
       01 G.
         02 G-X         PIC X.
         02 G-Y         PIC X.
         02 G-A         REDEFINES G-X PIC X.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:411: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:411"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: REDEFINES must follow the original definition
prog.cob:12: error: REDEFINES must follow the original definition
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }


# TODO: several implementations allow to specify those anywhere - add
#       dialect option, configure accordingly and test here

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_169
#AT_START_170
at_fn_group_banner 170 'syn_redefines.at:424' \
  "REDEFINES: within REDEFINES" "                    " 2
at_xfail=no
(
  $as_echo "170. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 G             REDEFINES X.
         02 A           PIC X.
         02 B           REDEFINES A PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:440: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:440"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:440"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_170
#AT_START_171
at_fn_group_banner 171 'syn_redefines.at:467' \
  "REDEFINES: for ANY LENGTH item" "                 " 2
at_xfail=no
(
  $as_echo "171. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 X             PIC X ANY LENGTH.
       01 Y REDEFINES X PIC X.
       01 N             PIC 9 ANY NUMERIC.
       01 M REDEFINES N PIC 9.
       PROCEDURE        DIVISION USING X N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:483: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:483"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: the original definition 'X' should not have an ANY LENGTH clause
prog.cob:9: error: the original definition 'N' should not have an ANY LENGTH clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_redefines.at:483"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_171
#AT_START_172
at_fn_group_banner 172 'syn_redefines.at:500' \
  "REDEFINES: non-referenced ambiguous item" "       " 2
at_xfail=no
(
  $as_echo "172. $at_setup_line: testing $at_desc ..."
  $at_traceon



# bad extension, supported for compatibility to at least MicroFocus
# the redefines always applies to the item defined before, verified in
# run_extensions.at, syntax check for redefinition in syn_definition.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 X             PIC X.
       01 G             REDEFINES X PIC 9.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_redefines.at:519: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_redefines.at:519"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: redefinition of 'X'
prog.cob:6: note: 'X' previously defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_redefines.at:519"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_172
#AT_START_173
at_fn_group_banner 173 'syn_value.at:28' \
  "bad VALUES / VALUES ARE in format-1" "            " 2
at_xfail=no
(
  $as_echo "173. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * explicit testing in sub-fields to ensure parsing goes on
       01  WS.
           10  SEPX   PICTURE XX VALUES     ", ".
           10  SEPL   PICTURE X  VALUE      LOW-VALUE.
           10  BADIS  PICTURE 9  VALUE  ARE 1.
           10  BADARE PICTURE 9  VALUES IS  2.
           10  DAYS   PICTURE 99 VALUES ARE 31.
           10  MONTHS PICTURE 99 VALUE  IS  12.
           10  NO-OCCURS   PICTURE 99 VALUES ARE 08 15.

       PROCEDURE DIVISION.
           DISPLAY DAYS SEPX MONTHS SEPL.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:54: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:54"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: unexpected VALUES ARE
prog.cob:13: error: syntax error, unexpected ARE
prog.cob:14: error: syntax error, unexpected IS
prog.cob:15: error: unexpected VALUES ARE
prog.cob:17: error: unexpected VALUES ARE for elementary item
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:54"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_value.at:62: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_value.at:62"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: unexpected VALUES ARE
prog.cob:13: error: syntax error, unexpected ARE
prog.cob:14: error: syntax error, unexpected IS
prog.cob:15: warning: unexpected VALUES ARE
prog.cob:17: error: unexpected VALUES ARE for elementary item
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_173
#AT_START_174
at_fn_group_banner 174 'syn_value.at:76' \
  "OCCURS too many VALUEs" "                         " 2
at_xfail=no
(
  $as_echo "174. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01  WS.
         05  IX1  PIC 99.
         05  IX2  PIC 99.
         05  IX3  PIC 99.
         05  GRP1 OCCURS 3 TIMES.
             10  GRPX  PIC X(99).
         05  MONTH-IN-YEAR OCCURS 13 TIMES PICTURE X(3)
                         VALUES "jan" "feb" "mar" "apr"
                               "may" "jun" "jul" "aug"
                               "sep" "oct" "nov" "dec"
                               "Hi" "Bye" "Dog".
         05  DAYS-IN-MONTH OCCURS 13 TIMES PICTURE 9(2) BINARY
                         VALUES 31 28 31 30 31 30 31 31 30 31 30 31.
         05  DAYS-MONTHS  OCCURS 2 TIMES.
          06  DAYX-MONTHX OCCURS 4 TIMES.
           07  DAY-MONTH  OCCURS 3 TIMES.
             10  XXX1   PICTURE X VALUE " ".
             10  MONTHS PICTURE X(3)
                        VALUES "Jan" "Feb" "Mar" "Apr"
                               "May" "Jun" "Jul" "Aug"
                               "Sep" "Oct" "Nov" "Dec"
                               "JAN" "FEB" "MAR" "APR"
                               "MAY" "JUN" "JUL" "AUG"
                               "SEP" "OCT" "NOV" "DEC" "Bye".
             10  SEPX   PICTURE XX VALUE ", ".
             10  DAYS   PICTURE 99
                        VALUES 31 28 31 30 31 30 31 31 30 31 30 31
                               91 28 91 90 91 90 91 91 90 91 90 91.
             10  PER    PICTURE X VALUE ".".
           07  FLR    PICTURE X(4) VALUES " <A>" " <B>" " <C>" " <D>"
                                  " <E>" " <F>" " <G>" " <H>" " <*>".

       PROCEDURE DIVISION.

       INIT-RTN.
           DISPLAY "Simple OCCURS with multi VALUES".
           PERFORM VARYING IX1 FROM 1 BY 1 UNTIL IX1 > 13
              DISPLAY IX1 ": "
                      MONTH-IN-YEAR (IX1) " has "
                      DAYS-IN-MONTH (IX1) " days"
              END-DISPLAY
           END-PERFORM.
           DISPLAY "Complex OCCURS with multi VALUES".
           PERFORM VARYING IX3 FROM 1 BY 1 UNTIL IX3 > 2
             PERFORM VARYING IX2 FROM 1 BY 1 UNTIL IX2 > 4
                 DISPLAY IX3 "-" IX2 ": "
                         DAYX-MONTHX (IX3, IX2)
                 END-DISPLAY
             END-PERFORM
           END-PERFORM.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:140: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:140"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: elements in VALUE clause for 'MONTH-IN-YEAR' (15) exceed max amount (13)
prog.cob:26: error: elements in VALUE clause for 'MONTHS' (25) exceed max amount (24)
prog.cob:38: error: elements in VALUE clause for 'FLR' (9) exceed max amount (8)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_174
#AT_START_175
at_fn_group_banner 175 'syn_value.at:162' \
  "Numeric item (integer)" "                         " 2
at_xfail=no
(
  $as_echo "175. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-SPACE       PIC 999 VALUE SPACE.
       01 X-ABC         PIC 999 VALUE "abc".
       01 X-12-3        PIC 999 VALUE 12.3.
       01 X-123         PIC 999 VALUE 123.
       01 X-1234        PIC 999 VALUE 1234.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:179: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:179"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: invalid VALUE clause
prog.cob:7: warning: numeric value is expected
prog.cob:8: warning: value size exceeds data size
prog.cob:10: warning: value size exceeds data size
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:179"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_175
#AT_START_176
at_fn_group_banner 176 'syn_value.at:189' \
  "Numeric item (non-integer)" "                     " 2
at_xfail=no
(
  $as_echo "176. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-12          PIC 99V9 VALUE 12.
       01 X-123         PIC 99V9 VALUE 123.
       01 X-12-3        PIC 99V9 VALUE 12.3.
       01 X-12-34       PIC 99V9 VALUE 12.34.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:205: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:205"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: value size exceeds data size
prog.cob:9: warning: value size exceeds data size
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:205"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_176
#AT_START_177
at_fn_group_banner 177 'syn_value.at:213' \
  "Numeric item with picture P" "                    " 2
at_xfail=no
(
  $as_echo "177. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-99PP-0      PIC 99PP VALUE 0.
       01 X-99PP-1200   PIC 99PP VALUE 1200.
       01 X-99PP-1230   PIC 99PP VALUE 1230.
       01 X-99PP-10000  PIC 99PP VALUE 10000.
       01 X-PP99--0     PIC PP99 VALUE .0.
       01 X-PP99--0012  PIC PP99 VALUE .0012.
       01 X-PP99--0123  PIC PP99 VALUE .0123.
       01 X-PP99--00001 PIC PP99 VALUE .00001.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:233: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:233"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: value does not fit the picture string
prog.cob:9: warning: value size exceeds data size
prog.cob:12: warning: value does not fit the picture string
prog.cob:13: warning: value size exceeds data size
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:233"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_177
#AT_START_178
at_fn_group_banner 178 'syn_value.at:245' \
  "Signed numeric literal" "                         " 2
at_xfail=no
(
  $as_echo "178. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-9P          PIC 9  VALUE +1.
       01 X-9N          PIC 9  VALUE -1.
       01 X-S9P         PIC S9 VALUE +1.
       01 X-S9N         PIC S9 VALUE -1.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:261: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:261"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: data item not signed
prog.cob:7: error: data item not signed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:261"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_178
#AT_START_179
at_fn_group_banner 179 'syn_value.at:271' \
  "Alphabetic item" "                                " 2
at_xfail=no
(
  $as_echo "179. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-123         PIC AAA VALUE 123.
       01 X-ZERO        PIC AAA VALUE ZERO.
       01 X-AB1         PIC AAA VALUE "ab1".
       01 X-ABC         PIC AAA VALUE "abc".
       01 X-ABCD        PIC AAA VALUE "abcd".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:288: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:288"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: alphanumeric value is expected
prog.cob:7: error: invalid VALUE clause
prog.cob:8: warning: value does not fit the picture string
prog.cob:10: warning: value size exceeds data size
prog.cob:10: note: value size is 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:288"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_179
#AT_START_180
at_fn_group_banner 180 'syn_value.at:299' \
  "Alphanumeric item" "                              " 2
at_xfail=no
(
  $as_echo "180. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-ABC         PIC XXX VALUE "abc".
       01 X-ABCD        PIC XXX VALUE "abcd".
       01 X-SPACE       PIC XXX VALUE "abc   ".
       01 X-123         PIC XXX VALUE 123.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:315: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:315"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: value size exceeds data size
prog.cob:7: note: value size is 4
prog.cob:8: warning: value does not fit the picture string
prog.cob:9: warning: alphanumeric value is expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:315"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_180
#AT_START_181
at_fn_group_banner 181 'syn_value.at:325' \
  "Alphanumeric group item" "                        " 2
at_xfail=no
(
  $as_echo "181. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1           VALUE 123.
         02 X           PIC XXX.
       01 G-2           VALUE "abc".
         02 X           PIC XXX.
       01 G-3           VALUE "abcd".
         02 X           PIC XXX.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:343: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:343"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: alphanumeric value is expected
prog.cob:10: warning: value size exceeds data size
prog.cob:10: note: value size is 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:343"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_181
#AT_START_182
at_fn_group_banner 182 'syn_value.at:352' \
  "National item" "                                  " 2
at_xfail=no
(
  $as_echo "182. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 N-ABC         PIC NNN VALUE N"abc".
       01 N-ABCD        PIC NNN VALUE N"abcd".
       01 N-SPACE       PIC NNN VALUE N"abc   ".
       01 X-123         PIC NNN VALUE 123.
       01 X-ABC         PIC NNN VALUE "abc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:369: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_value.at:369"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: value size exceeds data size
prog.cob:7: note: value size is 4
prog.cob:8: warning: value does not fit the picture string
prog.cob:9: warning: national value is expected
prog.cob:10: warning: national value is expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:369"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_182
#AT_START_183
at_fn_group_banner 183 'syn_value.at:389' \
  "Numeric-edited item" "                            " 2
at_xfail=no
(
  $as_echo "183. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-SPACE       PIC **99.00  VALUE SPACE.
       01 X-123         PIC **999.00 VALUE 123.
       01 X-ABC         PIC **99.00  VALUE "abc".
       01 X-MATCH       PIC **99.00  VALUE "*123.00".
       01 X-OVERFLOW    PIC **99.00  VALUE "*123.000".
       PROCEDURE        DIVISION.
           MOVE     320.00 TO X-123
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:407: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:407"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: value size exceeds data size
prog.cob:10: note: value size is 8
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:407"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_value.at:411: \$COMPILE_ONLY -std=ibm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict prog.cob" "syn_value.at:411"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: numeric literal in VALUE clause of numeric-edited item used
prog.cob:10: warning: value size exceeds data size
prog.cob:10: note: value size is 8
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_value.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_value.at:416: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "syn_value.at:416"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: numeric literal in VALUE clause of numeric-edited item used
prog.cob:10: warning: value size exceeds data size
prog.cob:10: note: value size is 8
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:416"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_183
#AT_START_184
at_fn_group_banner 184 'syn_value.at:425' \
  "Alphanumeric-edited item" "                       " 2
at_xfail=no
(
  $as_echo "184. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-123         PIC BXX VALUE 123.
       01 X-ABC         PIC BXX VALUE "abc".
       01 X-MATCH       PIC BXX VALUE " ab".
       01 X-OVERFLOW    PIC BXX VALUE " abc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_value.at:441: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_value.at:441"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: alphanumeric value is expected
prog.cob:9: warning: value size exceeds data size
prog.cob:9: note: value size is 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:441"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_184
#AT_START_185
at_fn_group_banner 185 'syn_value.at:494' \
  "Implicit picture from value" "                    " 2
at_xfail=no
(
  $as_echo "185. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 IMPHEAD.
          05 IMPPIC     VALUE " abc".
       PROCEDURE        DIVISION.
           DISPLAY IMPPIC END-DISPLAY
           STOP RUN.
_ATEOF


# Check: should we raise an error without -frelax-syntax-checks?
#AT_CHECK([$COMPILE_ONLY prog.cob], [1], [],
#[prog.cob:7: error: PICTURE clause required for 'IMPPIC'
#])

{ set +x
$as_echo "$at_srcdir/syn_value.at:514: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_value.at:514"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: defining implicit picture size 4 for 'IMPPIC'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:514"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_value.at:518: \$COMPILE_ONLY -frelax-syntax-checks -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks -w prog.cob" "syn_value.at:518"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_value.at:518"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_185
#AT_START_186
at_fn_group_banner 186 'syn_file.at:23' \
  "Missing SELECT" "                                 " 2
at_xfail=no
(
  $as_echo "186. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT file2 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD  file1.
       01  file1-rec PIC X.
       FD  file2.
       01  file2-rec PIC X.
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:43: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:43"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'file1' is not defined
prog.cob:10: error: 'file1' is not a file name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_186
#AT_START_187
at_fn_group_banner 187 'syn_file.at:50' \
  "Duplicated SELECT" "                              " 2
at_xfail=no
(
  $as_echo "187. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK.
       SELECT file2 ASSIGN DISK.
       SELECT file1 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD  file1.
       01  file1-rec PIC X.
       FD  file2.
       01  file2-rec PIC X.
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:72: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:72"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: redefinition of 'file1'
prog.cob:7: note: 'file1' previously defined here
prog.cob:9: error: missing file description for FILE SELECT on line 9
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:72"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_187
#AT_START_188
at_fn_group_banner 188 'syn_file.at:82' \
  "Missing FD" "                                     " 2
at_xfail=no
(
  $as_echo "188. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK.
       SELECT file2 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file2.
       01 file2-rec PIC X.
       PROCEDURE DIVISION.
           OPEN input file1
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:102: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:102"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: missing file description for FILE file1
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:102"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_188
#AT_START_189
at_fn_group_banner 189 'syn_file.at:108' \
  "Duplicated FD" "                                  " 2
at_xfail=no
(
  $as_echo "189. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK.
       SELECT file2 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD  file1.
       01  file1-rec PIC X.
       FD  file2.
       01  file2-rec PIC X.
       FD  file1.
       01  file1-rec-2 PIC X.
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:131: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:131"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: duplicate file description for FILE file1
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:131"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_189
#AT_START_190
at_fn_group_banner 190 'syn_file.at:137' \
  "ASSIGN to device-name" "                          " 2
at_xfail=no
(
  $as_echo "190. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       TO DISK
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       TO DISK 'TFILE'
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       TO DISK FNAME OF F1
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       WORKING-STORAGE  SECTION.
       01 F1.
          05 FNAME      PIC X(255) VALUE 'TFILEOF'.
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:197: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_file.at:197"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:197"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:198: \$COMPILE_ONLY -std=acu prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog2.cob" "syn_file.at:198"
( $at_check_trace; $COMPILE_ONLY -std=acu prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:198"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:199: \$COMPILE_ONLY -std=acu prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog3.cob" "syn_file.at:199"
( $at_check_trace; $COMPILE_ONLY -std=acu prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:199"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_190
#AT_START_191
at_fn_group_banner 191 'syn_file.at:204' \
  "ASSIGN to printer-name" "                         " 2
at_xfail=no
(
  $as_echo "191. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       TO PRINT
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       TO PRINTER 'PFILE'
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       TO PRINTER-1 FNAME OF F1
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       WORKING-STORAGE  SECTION.
       01 F1.
          05 FNAME      PIC X(255) VALUE 'PFILEOF'.
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:264: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_file.at:264"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:264"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:265: \$COMPILE_ONLY -std=acu prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog2.cob" "syn_file.at:265"
( $at_check_trace; $COMPILE_ONLY -std=acu prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:265"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:266: \$COMPILE_ONLY -std=acu prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog3.cob" "syn_file.at:266"
( $at_check_trace; $COMPILE_ONLY -std=acu prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:266"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_191
#AT_START_192
at_fn_group_banner 192 'syn_file.at:271' \
  "ASSIGN to lsq-device-name" "                      " 2
at_xfail=no
(
  $as_echo "192. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TST-FILE1 ASSIGN       TO CARD-PUNCH  "F1".
       SELECT TST-FILE2 ASSIGN       TO CARD-READER "F2".
       SELECT TST-FILE3 ASSIGN       TO CASSETTE    "F3".
       SELECT TST-FILE4 ASSIGN       TO INPUT       "F4".
       SELECT TST-FILE5 ASSIGN       TO INPUT-OUTPUT.
       SELECT TST-FILE6 ASSIGN       TO MAGNETIC-TAPE.
       SELECT TST-FILE7 ASSIGN       TO OUTPUT      "F7".
       DATA             DIVISION.
       FILE             SECTION.
       FD TST-FILE1.
       01 TST1-REC      PIC X(4).
       FD TST-FILE2.
       01 TST2-REC      PIC X(4).
       FD TST-FILE3.
       01 TST3-REC      PIC X(4).
       FD TST-FILE4.
       01 TST4-REC      PIC X(4).
       FD TST-FILE5.
       01 TST5-REC      PIC X(4).
       FD TST-FILE6.
       01 TST6-REC      PIC X(4).
       FD TST-FILE7.
       01 TST7-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TST-FILE1.
           CLOSE TST-FILE1.
           OPEN  INPUT TST-FILE2.
           CLOSE TST-FILE2.
           OPEN  INPUT TST-FILE3.
           CLOSE TST-FILE3.
           OPEN  INPUT TST-FILE4.
           CLOSE TST-FILE4.
           OPEN  INPUT TST-FILE5.
           CLOSE TST-FILE5.
           OPEN  INPUT TST-FILE6.
           CLOSE TST-FILE6.
           OPEN  INPUT TST-FILE7.
           CLOSE TST-FILE7.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:321: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_file.at:321"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_192
#AT_START_193
at_fn_group_banner 193 'syn_file.at:326' \
  "ASSIGN to variable" "                             " 2
at_xfail=no
(
  $as_echo "193. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Valid ASSIGNs
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT test-file-1 ASSIGN TO var-1
               ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-2 ASSIGN USING var-2
              ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-3 ASSIGN TO VARYING var-3
               ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-4 ASSIGN DISK USING var-4
               ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-5 ASSIGN DYNAMIC DISK var-5
               ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-6 ASSIGN DISK FROM var-6
               ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD test-file-1.
       01 test-rec-1    PIC X(4).
       FD test-file-2.
       01 test-rec-2    PIC X(4).
       FD test-file-3.
       01 test-rec-3    PIC X(4).
       FD test-file-4.
       01 test-rec-4    PIC X(4).
       FD test-file-5.
       01 test-rec-5    PIC X(4).
       FD test-file-6.
       01 test-rec-6    PIC X(4).
       WORKING-STORAGE  SECTION.
       01  var-1        PIC X(255).
       01  var-2        PIC X(255).
       01  var-3        PIC X(255).
       01  var-4        PIC X(255).
       01  var-5        PIC X(255).
       01  var-6        PIC X(255).
       PROCEDURE        DIVISION.
           OPEN INPUT test-file-1
           CLOSE test-file-1
           OPEN INPUT test-file-2
           CLOSE test-file-2
           OPEN INPUT test-file-3
           CLOSE test-file-3
           OPEN INPUT test-file-4
           CLOSE test-file-4
           OPEN INPUT test-file-5
           CLOSE test-file-5
           OPEN INPUT test-file-6
           CLOSE test-file-6
           .
_ATEOF


# Invalid assigns
cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT test-file-1 ASSIGN USING not-a-var
              ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-2 ASSIGN DYNAMIC not-a-var
               ORGANIZATION IS SEQUENTIAL.
           SELECT test-file-3 ASSIGN DISK FROM not-a-var
               ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD test-file-1.
       01 test-rec-1    PIC X(4).
       FD test-file-2.
       01 test-rec-2    PIC X(4).
       FD test-file-3.
       01 test-rec-3    PIC X(4).
       PROCEDURE        DIVISION.
           OPEN INPUT test-file-1
           CLOSE test-file-1
           OPEN INPUT test-file-2
           CLOSE test-file-2
           OPEN INPUT test-file-3
           CLOSE test-file-3
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:416: \$COMPILE_ONLY -fassign-variable=warning -fassign-using-variable=warning -fassign-ext-dyn=warning -fassign-disk-from=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fassign-variable=warning -fassign-using-variable=warning -fassign-ext-dyn=warning -fassign-disk-from=warning prog.cob" "syn_file.at:416"
( $at_check_trace; $COMPILE_ONLY -fassign-variable=warning -fassign-using-variable=warning -fassign-ext-dyn=warning -fassign-disk-from=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: ASSIGN USING/VARYING variable used
prog.cob:12: warning: ASSIGN USING/VARYING variable used
prog.cob:14: warning: ASSIGN USING/VARYING variable used
prog.cob:15: warning: ASSIGN EXTERNAL/DYNAMIC used
prog.cob:18: warning: ASSIGN DISK FROM used
prog.cob:7: warning: ASSIGN variable used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:416"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:424: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_file.at:424"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:11: error: 'not-a-var' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:424"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_193
#AT_START_194
at_fn_group_banner 194 'syn_file.at:431' \
  "SELECT without ASSIGN" "                          " 2
at_xfail=no
(
  $as_echo "194. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:452: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:452"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: ASSIGN clause is required for file 'TEST-FILE'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:452"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_194
#AT_START_195
at_fn_group_banner 195 'syn_file.at:459' \
  "START on SEQUENTIAL file" "                       " 2
at_xfail=no
(
  $as_echo "195. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE  ASSIGN       "./TEST-FILE"
                         ORGANIZATION IS SEQUENTIAL.
       SELECT TEST-FILE2 ASSIGN       "./TEST-FILE"
                         ORGANIZATION IS LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       FD TEST-FILE2.
       01 TEST-REC2     PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE TEST-FILE2
           START TEST-FILE  KEY EQUAL TEST-REC
           END-START
           START TEST-FILE2 KEY EQUAL TEST-REC2
           END-START
           CLOSE TEST-FILE TEST-FILE2
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:488: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:488"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:19: error: START not allowed on SEQUENTIAL files
prog.cob:21: error: START not allowed on SEQUENTIAL files
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:488"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_195
#AT_START_196
at_fn_group_banner 196 'syn_file.at:496' \
  "OPEN SEQUENTIAL file REVERSED" "                  " 2
at_xfail=no
(
  $as_echo "196. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: only allowed for INPUT + sequential files (currently not checked).
# If added we likely can allow this for LINE SEQUENTIAL, too.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE
           READ TEST-FILE NEXT
           END-READ
           CLOSE TEST-FILE
           OPEN  INPUT TEST-FILE REVERSED
           READ TEST-FILE NEXT
           END-READ
           CLOSE TEST-FILE
           OPEN  INPUT TEST-FILE WITH LOCK REVERSED
           READ TEST-FILE NEXT
           END-READ
           CLOSE TEST-FILE
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:530: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:530"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: warning: OPEN REVERSED is not implemented
prog.cob:22: warning: OPEN REVERSED is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:530"
$at_failed && at_fn_log_failure
$at_traceon; }


# note: as soon as implemented: won't be obsolete in GnuCOBOL, but leave message for now...
{ set +x
$as_echo "$at_srcdir/syn_file.at:536: \$COMPILE_ONLY -Werror=obsolete -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Werror=obsolete -fdiagnostics-show-option prog.cob" "syn_file.at:536"
( $at_check_trace; $COMPILE_ONLY -Werror=obsolete -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: error: OPEN REVERSED is obsolete in GnuCOBOL [-Werror=obsolete]
prog.cob:22: error: OPEN REVERSED is obsolete in GnuCOBOL [-Werror=obsolete]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:536"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_196
#AT_START_197
at_fn_group_banner 197 'syn_file.at:544' \
  "OPEN SEQUENTIAL file NO REWIND" "                 " 2
at_xfail=no
(
  $as_echo "197. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: only allowed for INPUT/OUTPUT sequential files (currently not checked).

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN  OUTPUT TEST-FILE NO REWIND
           WRITE TEST-REC FROM "tEsT"
           END-WRITE
           WRITE TEST-REC FROM "TeSt"
           END-WRITE
           CLOSE TEST-FILE WITH NO REWIND
           OPEN  INPUT TEST-FILE WITH LOCK WITH NO REWIND
           READ TEST-FILE NEXT  *> should get EOF
           END-READ
           CLOSE TEST-FILE
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:575: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:575"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: warning: OPEN WITH NO REWIND is not implemented
prog.cob:20: warning: OPEN WITH NO REWIND is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:575"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_197
#AT_START_198
at_fn_group_banner 198 'syn_file.at:583' \
  "valid key items" "                                " 2
at_xfail=no
(
  $as_echo "198. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-SOME ASSIGN TO 'FILE-TEST'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD    KEY IS TEST-P2 IN TEST-SOME
                        ALTERNATE KEY IS TEST-P3 IN TEST-SOME.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST2'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD    KEY IS TEST-P1
                        ALTERNATE KEY IS TEST-P4.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-SOME.
       01  SOME-REC.
           05  TEST-P2   PIC S9(4) COMP.
           05  TEST-P3   PIC S9(5) COMP-3.
       FD TEST-FILE.
       01  TEST-REC.
           05 TEST-P1   PIC X(4).
           05 FILLER    PIC X(4).
           05 TEST-P4   PIC X(4).
       WORKING-STORAGE  SECTION.
       01  WS-REC.
           05  TEST-P2   PIC S9(4) COMP.
           05  TEST-P3   PIC S9(5) COMP-3.
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE
           CLOSE TEST-FILE
           OPEN  OUTPUT TEST-SOME
           MOVE CORRESPONDING WS-REC TO SOME-REC
           WRITE SOME-REC
           CLOSE TEST-SOME
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:628: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:628"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:628"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_198
#AT_START_199
at_fn_group_banner 199 'syn_file.at:633' \
  "INDEXED file invalid key items" "                 " 2
at_xfail=no
(
  $as_echo "199. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-SOME ASSIGN TO 'FILE-TEST'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD    KEY IS TEST-P2
                        ALTERNATE KEY IS TEST-P1
                        ALTERNATE KEY IS TEST-P3.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST2'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD    KEY IS TEST-P1
                        ALTERNATE KEY IS TEST-P4
                        ALTERNATE KEY IS NOT-THERE
                        ALTERNATE KEY IS SOME-REC.
       SELECT TEST-MORE ASSIGN TO 'FILE-TEST-EXT'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD KEY    IS NOT-HERE-KEY
                           SOURCE     IS NOT-IN-FILE1
                                         NOT-IN-FILE2.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-SOME.
       01  SOME-REC  PIC X(20).
       FD TEST-FILE.
       01  TEST-REC.
           05 TEST-P1   PIC X(4).
           05 FILLER    PIC X(4).
           05 TEST-P4   PIC X(4).
       FD TEST-MORE.
       01  MORE-REC.
           05 MORE-DATA PIC X(4).
       WORKING-STORAGE  SECTION.
       77  TEST-P2   PIC S9(4) COMP.
       77  TEST-P3   PIC S9(5) COMP-3.
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


# FIXME: "is not defined" should be changed in "is not defined in file ..."
{ set +x
$as_echo "$at_srcdir/syn_file.at:683: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:683"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'TEST-P2' is not defined
prog.cob:11: error: 'TEST-P1' is not defined
prog.cob:12: error: 'TEST-P3' is not defined
prog.cob:18: error: 'NOT-THERE' is not defined
prog.cob:13: error: invalid KEY item 'SOME-REC', not in file 'TEST-FILE'
prog.cob:24: error: 'NOT-IN-FILE1' is not defined
prog.cob:20: error: invalid KEY item 'NOT-HERE-KEY', not in file 'TEST-MORE'
prog.cob:25: error: 'NOT-IN-FILE2' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:683"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_199
#AT_START_200
at_fn_group_banner 200 'syn_file.at:697' \
  "variable record length" "                         " 2
at_xfail=no
(
  $as_echo "200. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE
           RECORD IS VARYING IN SIZE
           RECORD CONTAINS  1 TO 1250 CHARACTERS.
       01  TEST-REC.
           05 TEST-P1   PIC X(4).
           05 TEST-P2   PIC S9(4) COMP.
           05 TEST-P3   PIC S9(5) COMP-3.
           05 TEST-P4   PIC S9(5).
           05 TEST-P5   PIC S9(2) BINARY.
           05 FILLER    PIC X(129).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS INDEXED
                        ACCESS MODE  IS DYNAMIC
                        RECORD KEY IS TEST-P2
                        ALTERNATE KEY IS TEST-P1
                        ALTERNATE KEY IS TEST-P3.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE
           RECORD IS VARYING IN SIZE
              FROM 2 TO 1250 CHARACTERS.
       01  TEST-REC.
           05 TEST-P1   PIC X(4).
           05 TEST-P2   PIC S9(4) COMP.
           05 TEST-P3   PIC S9(5) COMP-3.
           05 TEST-P4   PIC S9(5).
           05 TEST-P5   PIC S9(2) BINARY.
           05 FILLER    PIC X(129).
       01  RECORDSIZE   PIC X(04).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE
           RECORD CONTAINS  5 TO 10 CHARACTERS.
       01  TEST-REC-1.
           05 FILLER    PIC X(4).
       01  TEST-REC-2.
           05 FILLER    PIC X(50).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:779: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:779"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: duplicate RECORD clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:779"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:783: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_file.at:783"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: warning: duplicate RECORD clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:783"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:787: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_file.at:787"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:20: error: minimal record length 2 can not hold the key item 'TEST-P2'; needs to be at least 6
prog2.cob:19: error: minimal record length 2 can not hold the key item 'TEST-P1'; needs to be at least 4
prog2.cob:21: error: minimal record length 2 can not hold the key item 'TEST-P3'; needs to be at least 9
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:787"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:793: \$COMPILE_ONLY -std=cobol2014 prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog3.cob" "syn_file.at:793"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:13: error: size of record 'TEST-REC-1' (4) smaller than minimum of file 'TEST-FILE' (5)
prog3.cob:15: error: size of record 'TEST-REC-2' (50) larger than maximum of file 'TEST-FILE' (10)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:793"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:798: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_file.at:798"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:13: warning: size of record 'TEST-REC-1' (4) smaller than minimum of file 'TEST-FILE' (5)
prog3.cob:13: warning: file size adjusted
prog3.cob:15: warning: size of record 'TEST-REC-2' (50) larger than maximum of file 'TEST-FILE' (10)
prog3.cob:15: warning: file size adjusted
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:798"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_200
#AT_START_201
at_fn_group_banner 201 'syn_file.at:808' \
  "variable record length DEPENDING item" "          " 2
at_xfail=no
(
  $as_echo "201. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS SEQUENTIAL.
       SELECT TEST-FIL2 ASSIGN TO 'FILE-TEST-2'
                        ORGANIZATION IS SEQUENTIAL.
       SELECT TEST-FIL3 ASSIGN TO 'FILE-TEST-3'
                        ORGANIZATION IS SEQUENTIAL.
       SELECT TEST-FIL4 ASSIGN TO 'FILE-TEST-4'
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE
           RECORD IS VARYING IN SIZE
              FROM 12 TO 125 CHARACTERS
                 DEPENDING ON RECORDSIZE.
       01  TEST-REC.
           05 FILLER    PIC X(40).
       FD TEST-FIL2
           RECORD IS VARYING IN SIZE
              FROM 20 TO 250 CHARACTERS
                 DEPENDING ON TEST-FILE.
       01  TEST-REC2.
           05 FILLER       PIC X(129).
           05 RECORDSIZE3  PIC 9(04).
           05 RECORDSIZE4  PIC X(04).
       FD TEST-FIL3
           RECORD IS VARYING IN SIZE
              FROM 40 TO 50  CHARACTERS
                 DEPENDING ON RECORDSIZE3.
       01  TEST-REC3.
           05 FILLER    PIC X(50).
       FD TEST-FIL4
           RECORD IS VARYING IN SIZE
              FROM 1 TO 2  CHARACTERS
                 DEPENDING ON RECORDSIZE4.
       01  TEST-REC4.
           05 FILLER    PIC X(2).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           OPEN  INPUT TEST-FIL2.
           CLOSE TEST-FIL2.
           OPEN  INPUT TEST-FIL3.
           CLOSE TEST-FIL3.
           OPEN  INPUT TEST-FIL4.
           CLOSE TEST-FIL4.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE
           RECORD CONTAINS 12 TO 125 CHARACTERS
             DEPENDING ON RECORDSIZE.
       01  TEST-REC.
           05 FILLER    PIC X(40).
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


# FIXME: the check misses "prog.cob:40: error: RECORD DEPENDING item must be unsigned numeric"
{ set +x
$as_echo "$at_srcdir/syn_file.at:887: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:887"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: error: 'RECORDSIZE' is not defined
prog.cob:26: error: RECORD DEPENDING must reference a data-item
prog.cob:34: error: RECORD DEPENDING item 'RECORDSIZE3' should be defined in WORKING-STORAGE, LOCAL-STORAGE or LINKAGE SECTION
prog.cob:40: error: RECORD DEPENDING item 'RECORDSIZE4' should be defined in WORKING-STORAGE, LOCAL-STORAGE or LINKAGE SECTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:887"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:893: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_file.at:893"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: error: 'RECORDSIZE' is not defined
prog.cob:26: error: RECORD DEPENDING must reference a data-item
prog.cob:34: warning: RECORD DEPENDING item 'RECORDSIZE3' should be defined in WORKING-STORAGE, LOCAL-STORAGE or LINKAGE SECTION
prog.cob:40: warning: RECORD DEPENDING item 'RECORDSIZE4' should be defined in WORKING-STORAGE, LOCAL-STORAGE or LINKAGE SECTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:893"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:899: \$COMPILE_ONLY -frecord-contains-depending-clause=error prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frecord-contains-depending-clause=error prog2.cob" "syn_file.at:899"
( $at_check_trace; $COMPILE_ONLY -frecord-contains-depending-clause=error prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:13: error: RECORD CONTAINS DEPENDING used
prog2.cob:13: error: 'RECORDSIZE' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:899"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:903: \$COMPILE_ONLY -frecord-contains-depending-clause=ok prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frecord-contains-depending-clause=ok prog2.cob" "syn_file.at:903"
( $at_check_trace; $COMPILE_ONLY -frecord-contains-depending-clause=ok prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:13: error: 'RECORDSIZE' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:903"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_201
#AT_START_202
at_fn_group_banner 202 'syn_file.at:910' \
  "DECLARATIVES invalid procedure reference (1)" "   " 2
at_xfail=no
(
  $as_echo "202. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT GO-FILE   ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS LINE SEQUENTIAL.
       SELECT PERF-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD GO-FILE.
       01 GO-REC      PIC X(4).
       FD PERF-FILE.
       01 PERF-REC      PIC X(4).
       PROCEDURE        DIVISION.
       DECLARATIVES.
       G01 SECTION.
           USE AFTER ERROR PROCEDURE ON GO-FILE.
       G02.
           DISPLAY "OK".
      *    explicit check both PERFORM and GO TO - silencing its warning
           GO TO GG02.
       P01 SECTION.
           USE AFTER ERROR PROCEDURE ON PERF-FILE.
       P02.
           DISPLAY "OK"
           END-DISPLAY.
      * programs may do this -> nothing happens there with PERF-FILE
           PERFORM PPOK.
      * programs should not do this
      * (the compiler currently cannot distinguish this)
           PERFORM PP02.
       END DECLARATIVES.
       GG01 SECTION.
       GG02.
           OPEN  INPUT GO-FILE.
           CLOSE GO-FILE.
       PP01 SECTION.
       PP02.
           OPEN  INPUT PERF-FILE.
           CLOSE PERF-FILE.
       PP03.
           DISPLAY 'LOG OUTPUT HERE'.
       PPOK.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:962: \$COMPILE_ONLY -Wno-dialect -Wno-goto-different-section prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-dialect -Wno-goto-different-section prog.cob" "syn_file.at:962"
( $at_check_trace; $COMPILE_ONLY -Wno-dialect -Wno-goto-different-section prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:962"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:964: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:964"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'G01':
prog.cob: in paragraph 'G02':
prog.cob:24: warning: 'GG02' is not in DECLARATIVES
prog.cob: in section 'P01':
prog.cob: in paragraph 'P02':
prog.cob:31: warning: 'PPOK' is not in DECLARATIVES
prog.cob:34: warning: 'PP02' is not in DECLARATIVES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:964"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:974: \$COMPILE_ONLY -freference-out-of-declaratives=ok -Wno-goto-different-section prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freference-out-of-declaratives=ok -Wno-goto-different-section prog.cob" "syn_file.at:974"
( $at_check_trace; $COMPILE_ONLY -freference-out-of-declaratives=ok -Wno-goto-different-section prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:974"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:976: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_file.at:976"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'G01':
prog.cob: in paragraph 'G02':
prog.cob:24: error: 'GG02' is not in DECLARATIVES
prog.cob: in section 'P01':
prog.cob: in paragraph 'P02':
prog.cob:31: error: 'PPOK' is not in DECLARATIVES
prog.cob:34: error: 'PP02' is not in DECLARATIVES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:976"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_file.at:986: \$COMPILE_ONLY -std=cobol2014 -frelax-syntax prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 -frelax-syntax prog.cob" "syn_file.at:986"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 -frelax-syntax prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'G01':
prog.cob: in paragraph 'G02':
prog.cob:24: warning: 'GG02' is not in DECLARATIVES
prog.cob: in section 'P01':
prog.cob: in paragraph 'P02':
prog.cob:31: warning: 'PPOK' is not in DECLARATIVES
prog.cob:34: warning: 'PP02' is not in DECLARATIVES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:986"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_202
#AT_START_203
at_fn_group_banner 203 'syn_file.at:999' \
  "DECLARATIVES invalid procedure reference (2)" "   " 2
at_xfail=no
(
  $as_echo "203. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
       DECLARATIVES.
       P01 SECTION.
           USE AFTER ERROR PROCEDURE ON TEST-FILE.
       P02.
           DISPLAY "OK"
           END-DISPLAY.
       END DECLARATIVES.
       PP01 SECTION.
       PP02.
           OPEN  INPUT TEST-FILE.
           CLOSE TEST-FILE.
           PERFORM P02.
           GO TO P02.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1031: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1031"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'PP01':
prog.cob: in paragraph 'PP02':
prog.cob:26: error: invalid reference to 'P02' (in DECLARATIVES)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1031"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_203
#AT_START_204
at_fn_group_banner 204 'syn_file.at:1040' \
  "EXTERNAL file" "                                  " 2
at_xfail=no
(
  $as_echo "204. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT my-file
               ASSIGN TO "somefile"
               ORGANIZATION IS SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD my-file EXTERNAL.
       01 my-record.
           03 my-record-data PIC X(80).

       PROCEDURE DIVISION.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1064: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1064"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1064"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_204
#AT_START_205
at_fn_group_banner 205 'syn_file.at:1068' \
  "RECORDING MODE" "                                 " 2
at_xfail=no
(
  $as_echo "205. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.dat" LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f RECORDING MODE IS U.
       01  x PIC X.

       PROCEDURE DIVISION.
           OPEN INPUT f
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1091: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1091"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: RECORDING MODE U or S can only be used with RECORD SEQUENTIAL files
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1091"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_205
#AT_START_206
at_fn_group_banner 206 'syn_file.at:1097' \
  "CODE-SET clause" "                                " 2
at_xfail=no
(
  $as_echo "206. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET A IS ASCII, ALPHABET EBC IS EBCDIC.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f, ASSIGN "f.dat", LINE SEQUENTIAL.
           SELECT g, ASSIGN "g.dat", SEQUENTIAL.
           SELECT h, ASSIGN "h.dat", LINE SEQUENTIAL.
           SELECT i, ASSIGN "i.dat", SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f CODE-SET A.
       01  f-rec PIC X(10).

       FD  g CODE-SET foo.
       01  g-rec PIC X(10).

       FD  h CODE-SET ebcdic.
       01  h-rec PIC X(10).

       FD  i CODE-SET ebc FOR h-rec.
       01  i-rec PIC X(10).
_ATEOF


# FIXME: this test will false-positive fail on EBCDIC machines

{ set +x
$as_echo "$at_srcdir/syn_file.at:1133: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1133"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:19: note: ignoring CODE-SET 'A'
prog.cob:22: error: 'foo' is not defined
prog.cob:22: error: 'foo' is not an alphabet-name
prog.cob:25: error: 'ebcdic' cannot be used here
prog.cob:25: error: 'ebcdic' is not an alphabet-name
prog.cob:28: warning: handling of CODE-SET is unfinished; implementation is likely to be changed
prog.cob:28: error: FOR item 'h-rec' is a record
prog.cob:28: error: FOR item 'h-rec' is not in a record associated with 'FILE i'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1133"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_206
#AT_START_207
at_fn_group_banner 207 'syn_file.at:1147' \
  "CODE-SET FOR clause" "                            " 2
at_xfail=no
(
  $as_echo "207. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET A IS EBCDIC.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.dat" LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f CODE-SET A FOR x, y, z.
       01  x.
           03  y PIC X(10).
       01  x-2.
           03  z PIC X(10).
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1172: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1172"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:16: warning: handling of CODE-SET is unfinished; implementation is likely to be changed
prog.cob:16: error: FOR item 'x' is a record
prog.cob:16: error: FOR item 'z' is in different record to 'x'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1172"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_207
#AT_START_208
at_fn_group_banner 208 'syn_file.at:1180' \
  "WRITE / REWRITE FROM clause and FILE" "           " 2
at_xfail=no
(
  $as_echo "208. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       ENVIRONMENT    DIVISION.
       INPUT-OUTPUT   SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS INDEXED
                        ACCESS MODE  IS DYNAMIC
                        RECORD KEY   IS TEST-P1.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01  TEST-REC.
           05 TEST-P1   PIC X(4).
           05 TEST-P2   PIC S9(4) COMP.
       WORKING-STORAGE  SECTION.
       01  SOME-REC     PIC X(04).
           88  SOME-VAL VALUE 'ABCD'.
       PROCEDURE        DIVISION.
           OPEN  I-O TEST-FILE.
           WRITE   SOME-VAL.
           WRITE   SOME-REC.
           WRITE   TEST-REC.
           WRITE   TEST-REC FROM SOME-REC.
           WRITE   TEST-FILE.
           WRITE   FILE TEST-REC.
           WRITE   FILE TEST-FILE.
           WRITE   FILE TEST-FILE FROM TEST-REC.
           WRITE   FILE TEST-FILE FROM SOME-REC.
           REWRITE SOME-VAL.
           REWRITE SOME-REC.
           REWRITE TEST-REC.
           REWRITE TEST-REC FROM SOME-REC.
           REWRITE TEST-FILE.
           REWRITE FILE TEST-REC.
           REWRITE FILE TEST-FILE.
           REWRITE FILE TEST-FILE FROM TEST-REC.
           REWRITE FILE TEST-FILE FROM SOME-REC.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1226: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1226"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:22: error: condition-name not allowed here: 'SOME-VAL'
prog.cob:23: error: WRITE subject does not refer to a record name
prog.cob:26: error: WRITE requires a record name as subject
prog.cob:27: error: 'TEST-REC' is not a file name
prog.cob:28: error: WRITE FILE requires a FROM clause
prog.cob:31: error: condition-name not allowed here: 'SOME-VAL'
prog.cob:32: error: REWRITE subject does not refer to a record name
prog.cob:35: error: REWRITE requires a record name as subject
prog.cob:36: error: 'TEST-REC' is not a file name
prog.cob:37: error: REWRITE FILE requires a FROM clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1226"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_208
#AT_START_209
at_fn_group_banner 209 'syn_file.at:1241' \
  "Clauses following invalid ACCESS clause" "        " 2
at_xfail=no
(
  $as_echo "209. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       ENVIRONMENT    DIVISION.
       INPUT-OUTPUT   SECTION.
       FILE-CONTROL.
           SELECT testfile
               ASSIGN TO filename
               ORGANIZATION RELATIVE
               ACCESS IS sequentia
               STATUS IS stat.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1258: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1258"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: syntax error, unexpected Identifier, expecting DYNAMIC or RANDOM or SEQUENTIAL
prog.cob:8: error: missing file description for FILE testfile
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1258"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_209
#AT_START_210
at_fn_group_banner 210 'syn_file.at:1265' \
  "RELATIVE KEY type validation" "                   " 2
at_xfail=no
(
  $as_echo "210. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT FILE1 ASSIGN DISK
            ORGANIZATION RELATIVE ACCESS MODE RANDOM
            RELATIVE KEY FILE1-KEY.
            SELECT FILE2 ASSIGN DISK
            ORGANIZATION RELATIVE ACCESS MODE RANDOM
            RELATIVE KEY FILE2-KEY.
            SELECT FILE3 ASSIGN DISK
            ORGANIZATION RELATIVE ACCESS MODE RANDOM
            RELATIVE KEY FILE3-KEY.
            SELECT FILE4 ASSIGN DISK
            ORGANIZATION RELATIVE ACCESS MODE RANDOM
            RELATIVE KEY FILE4-KEY.
            SELECT FILE5 ASSIGN DISK
            ORGANIZATION RELATIVE ACCESS MODE RANDOM
            RELATIVE KEY FILE5-KEY.
       DATA DIVISION.
       FILE SECTION.
       FD FILE1.
       01  FILE1-REC PIC X.
       FD FILE2.
       01  FILE2-REC PIC X.
       FD FILE3.
       01  FILE3-REC PIC X.
       FD FILE4.
       01  FILE4-REC.
          05  FLD1      PIC X.
          05  FILE4-KEY PIC 999.
       FD FILE5.
       01  FILE5-REC PIC X.
       WORKING-STORAGE SECTION.
       77  FILE1-KEY PIC XXXX.
       01  FILE2-KEY.
           05  F2-KEY PIC 9(5).
       01  F3-KEY.
           05  FILE3-KEY PIC 9(5) OCCURS 2 TIMES.
       77  FILE5-KEY PIC 999V9.
       PROCEDURE DIVISION.
            STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1314: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1314"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: file FILE1: RELATIVE KEY FILE1-KEY is not numeric
prog.cob:12: error: file FILE2: RELATIVE KEY FILE2-KEY is not numeric
prog.cob:15: error: file FILE3: RELATIVE KEY FILE3-KEY cannot have OCCURS
prog.cob:18: error: RELATIVE KEY FILE4-KEY cannot be in file record belonging to FILE4
prog.cob:21: error: file FILE5: RELATIVE KEY FILE5-KEY must be integer
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1314"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_210
#AT_START_211
at_fn_group_banner 211 'syn_file.at:1325' \
  "Mismatched KEY clause" "                          " 2
at_xfail=no
(
  $as_echo "211. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT file-1 ASSIGN DISK,
                INDEXED, RELATIVE KEY file-1-key.
            SELECT file-2 ASSIGN DISK,
                RELATIVE, RECORD KEY file-2-key.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1340: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1340"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: cannot use RELATIVE KEY clause on INDEXED files
prog.cob:10: error: cannot use RECORD KEY clause on RELATIVE files
prog.cob:7: error: missing file description for FILE file-1
prog.cob:8: error: 'file-1-key' is not defined
prog.cob:9: error: missing file description for FILE file-2
prog.cob:10: error: 'file-2-key' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1340"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_211
#AT_START_212
at_fn_group_banner 212 'syn_file.at:1352' \
  "RECORD DELIMITER" "                               " 2
at_xfail=no
(
  $as_echo "212. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           *> Valid.
           SELECT good-1 ASSIGN "a"
               RECORD DELIMITER LINE-SEQUENTIAL.

           SELECT good-2 ASSIGN "a"
               SEQUENTIAL
               RECORD DELIMITER LINE-SEQUENTIAL.

           SELECT good-3 ASSIGN "a"
               RECORD DELIMITER LINE-SEQUENTIAL
               LINE SEQUENTIAL.

           SELECT good-4 ASSIGN "a"
               RECORD DELIMITER BINARY-SEQUENTIAL.

           *> Warning.
           SELECT ok-i-guess-1 ASSIGN "a"
               RECORD DELIMITER STANDARD-1.

           SELECT ok-i-guess-2 ASSIGN "a"
               RECORD DELIMITER THE-END-OF-THE-WORLD.

           *> Not valid.
           SELECT bad-1 ASSIGN "a"
               RECORD DELIMITER LINE-SEQUENTIAL
               INDEXED
               RECORD KEY bad-1-rec.

           SELECT bad-2 ASSIGN "a"
               INDEXED
               RECORD KEY bad-2-rec
               RECORD DELIMITER LINE-SEQUENTIAL.

           SELECT bad-3 ASSIGN "a"
               LINE SEQUENTIAL
               RECORD DELIMITER BINARY-SEQUENTIAL.

           SELECT bad-4 ASSIGN "a"
               LINE SEQUENTIAL
               RECORD DELIMITER STANDARD-1.

           SELECT bad-5 ASSIGN "a"
               RECORD DELIMITER BINARY-SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  good-1.
       01  good-1-rec PIC 9.
       01  good-1-rec-2 PIC 99.

       FD  good-2 RECORD VARYING FROM 1 TO 5 CHARACTERS.
       01  good-2-rec PIC 9.

       FD  good-3.
       01  good-3-rec PIC 9.
       01  good-3-rec-2 PIC 99.

       FD  good-4 RECORD CONTAINS 1 TO 5 CHARACTERS.
       01  good-4-rec PIC 9.

       FD  ok-i-guess-1.
       01  ok-i-guess-1-rec PIC 9.
       01  ok-i-guess-1-rec-2 PIC 99.

       FD  ok-i-guess-2.
       01  ok-i-guess-2-rec PIC 9.
       01  ok-i-guess-2-rec-2 PIC 99.

       FD  bad-1.
       01  bad-1-rec PIC 9.

       FD  bad-2.
       01  bad-2-rec PIC 9.

       FD  bad-3.
       01  bad-3-rec PIC 9.

       FD  bad-4.
       01  bad-4-rec PIC 9.

       FD  bad-5 RECORD CONTAINS 1 CHARACTERS.
       01  bad-5-rec PIC 9.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1446: \$COMPILE_ONLY -frecord-delim-with-fixed-recs=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frecord-delim-with-fixed-recs=warning prog.cob" "syn_file.at:1446"
( $at_check_trace; $COMPILE_ONLY -frecord-delim-with-fixed-recs=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:25: warning: RECORD DELIMITER STANDARD-1 ignored
prog.cob:28: warning: RECORD DELIMITER THE-END-OF-THE-WORLD not recognized; will be ignored
prog.cob:33: error: ORGANIZATION INDEXED is incompatible with RECORD DELIMITER
prog.cob:39: error: RECORD DELIMITER LINE-SEQUENTIAL only allowed with (LINE) SEQUENTIAL files
prog.cob:36: error: RECORD clause is invalid for file 'bad-2' (file type)
prog.cob:43: error: RECORD DELIMITER BINARY-SEQUENTIAL only allowed with SEQUENTIAL files
prog.cob:47: error: RECORD DELIMITER STANDARD-1 only allowed with SEQUENTIAL files
prog.cob:76: warning: RECORD DELIMITER clause on file with fixed-length records used
prog.cob:88: warning: RECORD DELIMITER clause on file with fixed-length records used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1446"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_212
#AT_START_213
at_fn_group_banner 213 'syn_file.at:1460' \
  "FILE STATUS" "                                    " 2
at_xfail=no
(
  $as_echo "213. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.txt" FILE STATUS fs.
           SELECT g ASSIGN "g.txt" FILE STATUS gs.
           SELECT h ASSIGN "h.txt" FILE STATUS hs.
           SELECT j ASSIGN "j.txt" FILE STATUS js.
           SELECT k ASSIGN "k.txt" FILE STATUS ks.
           SELECT l ASSIGN "l.txt" FILE STATUS ls.
           SELECT m ASSIGN "m.txt" FILE STATUS ms.
           SELECT n ASSIGN "n.txt" FILE STATUS ns.
           SELECT o ASSIGN "o.txt" FILE STATUS os.
           SELECT p ASSIGN "p.txt" FILE STATUS ps.
           SELECT q ASSIGN "q.txt" FILE STATUS non-existent.
           SELECT r ASSIGN "r.txt" FILE STATUS rs.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  hs    PIC XX.
       FD  g.
       01  g-rec PIC X.
       FD  h.
       01  h-rec PIC X.
       FD  j.
       01  j-rec PIC X.
       FD  k.
       01  k-rec PIC X.
       FD  l.
       01  l-rec PIC X.
       FD  m.
       01  m-rec PIC X.
       FD  n.
       01  n-rec PIC X.
       FD  o.
       01  o-rec PIC X.
       FD  p.
       01  p-rec PIC X.
       FD  q.
       01  q-rec PIC X.
       FD  r.
       01  r-rec PIC X.

       WORKING-STORAGE SECTION.
       *> Valid
       01  fs          PIC XX.

       LOCAL-STORAGE   SECTION.
       *> Valid, but warning
       01  gs          PIC 99.

       *> Invalid
       01  js          PIC N.
       01  ks          PIC XX COMP-X.
       01  ls          PIC V99.
       01  ms          PIC 99PP.
       01  ns          PIC XXX.
       01  x.
           03  y       PIC 99.
           03  z       PIC XX OCCURS 1 TO 10 TIMES DEPENDING ON y.
           03  os      PIC XX.
               88  ps  VALUE "00".
           03  z2      PIC XX OCCURS 1 TO 10 TIMES DEPENDING ON y.

       01  rs          CONSTANT "00".

       PROCEDURE DIVISION.
           CONTINUE
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1539: \$COMPILE_ONLY -fodoslide prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fodoslide prog.cob" "syn_file.at:1539"
( $at_check_trace; $COMPILE_ONLY -fodoslide prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:57: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:18: error: 'non-existent' is not defined
prog.cob:9: warning: FILE STATUS 'gs' is a numeric field, but I-O status codes are not numeric in general
prog.cob:10: error: FILE STATUS 'hs' must be in WORKING-STORAGE, LOCAL-STORAGE or LINKAGE
prog.cob:11: error: FILE STATUS 'js' must be an alphanumeric or numeric field
prog.cob:12: warning: FILE STATUS 'ks' is a numeric field, but I-O status codes are not numeric in general
prog.cob:12: error: FILE STATUS 'ks' must be USAGE DISPLAY
prog.cob:13: error: FILE STATUS 'ls' may not be a decimal or have a PIC with a P
prog.cob:14: error: FILE STATUS 'ms' may not be a decimal or have a PIC with a P
prog.cob:15: error: FILE STATUS 'ns' must be 2 characters long
prog.cob:16: error: FILE STATUS 'os' may not be located after an OCCURS DEPENDING field
prog.cob:17: error: FILE STATUS 'ps' must be an alphanumeric or numeric field
prog.cob:19: error: FILE STATUS 'rs' is not a field
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1539"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_213
#AT_START_214
at_fn_group_banner 214 'syn_file.at:1557' \
  "VSAM status" "                                    " 2
at_xfail=no
(
  $as_echo "214. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT file1 ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS INDEXED
                        ACCESS MODE  IS DYNAMIC
                        RECORD KEY   IS file1-key
                        STATUS       IS STATUS-1.
           SELECT file2 ASSIGN TO 'FILE-TEST'
                        ORGANIZATION IS INDEXED
                        ACCESS MODE  IS DYNAMIC
                        RECORD KEY   IS file2-key
                        STATUS       IS STATUS-1, STATUS-2.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE1.
       01  FILE1-REC.
           05 FILE1-KEY PIC X.
       FD  FILE2.
       01  FILE2-REC.
           05 FILE2-KEY PIC 9.
           05 FILE2-DAT PIC X.
       WORKING-STORAGE SECTION.
       77  STATUS-1 PIC X(02).
       77  STATUS-2 PIC X(06).
       PROCEDURE DIVISION.
            STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1592: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "syn_file.at:1592"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1592"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:1593: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1593"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:16: warning: VSAM status ignored
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1593"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:1596: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_file.at:1596"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:16: error: VSAM status does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1596"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_214
#AT_START_215
at_fn_group_banner 215 'syn_file.at:1603' \
  "INDEXED file PASSWORD clause" "                   " 2
at_xfail=no
(
  $as_echo "215. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT file1 ASSIGN TO 'FILE-TEST'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD KEY    IS file1-key PASSWORD IS PASS1
                        STATUS        IS FSTAT.
           SELECT file2 ASSIGN TO 'FILE-TEST-EXT'
                        ORGANIZATION  IS INDEXED
                        ACCESS MODE   IS DYNAMIC
                        RECORD KEY    IS file2-key PASSWORD IS PASS2
                        ALTERNATE RECORD KEY IS NOTHEREKEY
                           SOURCE     IS file2-dat file2-key
                           PASSWORD   IS PASS-EXT
                        STATUS        IS FSTAT.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE1.
       01  FILE1-REC.
           05 FILE1-KEY PIC X.
       FD  FILE2  EXTERNAL.
       01  FILE2-REC.
           05 FILE2-KEY PIC 9.
           05 FILE2-DAT PIC X.
       WORKING-STORAGE SECTION.
       77  FSTAT       PIC X(02).
      *> note: IBM specifies PASSWORDs are cut at / space filled to 8 bytes
       77  PASS1       PIC X(08).
       77  PASS2       PIC X(10).
       77  PASS-EXT    PIC X(04) EXTERNAL.
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1644: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1644"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: PASSWORD clause is not implemented
prog.cob:15: warning: PASSWORD clause is not implemented
prog.cob:18: warning: PASSWORD clause is not implemented
prog.cob:15: error: PASSWORD 'PASS2' for EXTERNAL file 'file2' must have EXTERNAL attribute
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1644"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_215
#AT_START_216
at_fn_group_banner 216 'syn_file.at:1654' \
  "RECORD clause equal limits" "                     " 2
at_xfail=no
(
  $as_echo "216. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f1 ASSIGN "f1".
           SELECT f2 ASSIGN "f2".
           SELECT f3 ASSIGN "f3".
           SELECT f4 ASSIGN "f4".

       DATA DIVISION.
       FILE SECTION.
       FD  f1 RECORD VARYING.
       01  f1-rec-1 PIC X.
       01  f1-rec-2 PIC 9.

       FD  f2 RECORD VARYING 1 TO 1.
       01  f2-rec PIC X.

       FD  f3 RECORD 1 TO 1.
       01  f3-rec PIC X.

       FD  f4 RECORD IS VARYING IN SIZE.
       01  f4-rec-1 PIC X.
       01  f4-rec-2 PIC 99.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1686: \$COMPILE_ONLY -Wadditional prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wadditional prog.cob" "syn_file.at:1686"
( $at_check_trace; $COMPILE_ONLY -Wadditional prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: warning: RECORD VARYING specified without limits, but implied limits are equal
prog.cob:19: error: RECORD clause invalid
prog.cob:22: error: RECORD clause invalid
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1686"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_216
#AT_START_217
at_fn_group_banner 217 'syn_file.at:1694' \
  "FILE ... FROM literal" "                          " 2
at_xfail=no
(
  $as_echo "217. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN TO "ssad".

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-rec PIC 999999.

       WORKING-STORAGE SECTION.
       01  num PIC 9(6) VALUE 123456.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           WRITE FILE f FROM zero
           WRITE FILE f FROM 0
           WRITE FILE f FROM "abc"
           REWRITE FILE f FROM zero
           REWRITE FILE f FROM 0
           REWRITE FILE f FROM "abc"
           CLOSE f
           .
_ATEOF


# FIXME: the references to ZERO should actually show one less

{ set +x
$as_echo "$at_srcdir/syn_file.at:1728: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1728"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:21: error: figurative constants not allowed in FROM clause
prog.cob:21: error: literal in FROM clause must be alphanumeric, utf-8, national or boolean
prog.cob:22: warning: numeric value is expected
prog.cob:13: note: 'f-rec' defined here as PIC 999999
prog.cob:24: error: figurative constants not allowed in FROM clause
prog.cob:24: error: literal in FROM clause must be alphanumeric, utf-8, national or boolean
prog.cob:25: warning: numeric value is expected
prog.cob:13: note: 'f-rec' defined here as PIC 999999
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1728"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:1738: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_file.at:1738"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:22: warning: numeric value is expected
prog.cob:13: note: 'f-rec' defined here as PIC 999999
prog.cob:25: warning: numeric value is expected
prog.cob:13: note: 'f-rec' defined here as PIC 999999
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1738"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:1744: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_file.at:1744"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:22: warning: source is non-numeric - substituting zero
prog.cob:25: warning: source is non-numeric - substituting zero
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1744"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_217
#AT_START_218
at_fn_group_banner 218 'syn_file.at:1753' \
  "WRITE / REWRITE on REPORT files" "                " 2
at_xfail=no
(
  $as_echo "218. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN TO "ssad" LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f REPORT f-rep.
       01  f-rec PIC X(05).

       REPORT SECTION.
       RD  f-rep.
       01  f-rep-line TYPE DE PIC XXX.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           WRITE FILE f FROM "abc"
           REWRITE FILE f FROM "abc"
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1782: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1782"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:21: error: WRITE not allowed on REPORT files
prog.cob:22: error: REWRITE not allowed on REPORT files
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1782"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_218
#AT_START_219
at_fn_group_banner 219 'syn_file.at:1790' \
  "SELECT without fd-name" "                         " 2
at_xfail=no
(
  $as_echo "219. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT ASSIGN "asd".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1803: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1803"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: syntax error, unexpected ASSIGN, expecting Identifier
prog.cob:8: error: syntax error, unexpected Literal
prog.cob:8: error: missing file description for FILE SELECT on line 8
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1803"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_219
#AT_START_220
at_fn_group_banner 220 'syn_file.at:1811' \
  "Undeclared FILE-ID variable" "                    " 2
at_xfail=no
(
  $as_echo "220. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT file1 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD  file1 VALUE OF FILE-ID fid-file1.
       01  file1-rec PIC X.
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1829: \$COMPILE_ONLY -Wimplicit-define prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wimplicit-define prog.cob" "syn_file.at:1829"
( $at_check_trace; $COMPILE_ONLY -Wimplicit-define prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: VALUE OF is obsolete in GnuCOBOL
prog.cob:12: warning: variable 'fid-file1' will be implicitly defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1829"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_220
#AT_START_221
at_fn_group_banner 221 'syn_file.at:1836' \
  "ASSIGN external-name matching filename" "         " 2
at_xfail=no
(
  $as_echo "221. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT SYSUT1    ASSIGN TO sysut1.
       DATA             DIVISION.
       FILE             SECTION.
       FD  SYSUT1.
       01  SYSUT1-REC   PIC X(4).
       PROCEDURE        DIVISION.
           OPEN INPUT SYSUT1.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1856: \$COMPILE_ONLY -fassign-clause=external prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fassign-clause=external prog.cob" "syn_file.at:1856"
( $at_check_trace; $COMPILE_ONLY -fassign-clause=external prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1856"
$at_failed && at_fn_log_failure
$at_traceon; }

# ASSIGN dynamic should still work here, it is to be seen as literal
# as long as it matches the file name (note: it still differs as "external"
# would also cut "labels" from the literal
{ set +x
$as_echo "$at_srcdir/syn_file.at:1860: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1860"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1860"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_221
#AT_START_222
at_fn_group_banner 222 'syn_file.at:1864' \
  "Undeclared ASSIGN variable" "                     " 2
at_xfail=no
(
  $as_echo "222. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN    GLOB-PATH
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE    GLOBAL.
       01  TEST-REC     PIC X(4).
       WORKING-STORAGE  SECTION.
       78  GLOB-PATH           GLOBAL VALUE "GLOBP1".
       01  GLOB-PATH2 CONSTANT GLOBAL       "GLOBP2".
      * Test global vars because of implicitly defined ASSIGN var, too.
       78  GLOB-VAR            GLOBAL VALUE "GLOBV1".
       01  GLOB-VAR2  CONSTANT GLOBAL       "GLOBV2".
       PROCEDURE        DIVISION.
           DISPLAY GLOB-PATH GLOB-VAR
           END-DISPLAY.
           CALL "prog2"
           END-CALL.
           CALL "prog3"
           END-CALL.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        ENVIRONMENT      DIVISION.
        INPUT-OUTPUT     SECTION.
        FILE-CONTROL.
        SELECT TEST2-FILE
               ASSIGN    GLOB-PATH2
        .
        DATA             DIVISION.
        FILE             SECTION.
        FD  TEST2-FILE   GLOBAL.
        01  TEST2-REC    PIC X(4).
        WORKING-STORAGE  SECTION.
        PROCEDURE        DIVISION.
            DISPLAY GLOB-PATH2 GLOB-VAR2
            END-DISPLAY.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST3-FILE
              ASSIGN    GLOB-PATH
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST3-FILE   GLOBAL.
       01  TEST3-REC    PIC X(4).
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY 'in prog3'
           END-DISPLAY
           IF GLOB-PATH NOT = SPACES
              DISPLAY GLOB-PATH
              END-DISPLAY
           END-IF
           EXIT PROGRAM.
       END PROGRAM prog3.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:1937: \$COMPILE_ONLY -Wimplicit-define prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wimplicit-define prog.cob" "syn_file.at:1937"
( $at_check_trace; $COMPILE_ONLY -Wimplicit-define prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:60: warning: variable 'GLOB-PATH' will be implicitly defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:1937"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_222
#AT_START_223
at_fn_group_banner 223 'syn_file.at:1943' \
  "ACCESS RANDOM with ORG SEQUENTIAL" "              " 2
at_xfail=no
(
  $as_echo "223. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT file1 ASSIGN DISK ORGANIZATION SEQUENTIAL
               ACCESS RANDOM.
       DATA DIVISION.
       FILE SECTION.
       FD  file1.
       01  file1-rec PIC X.
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


# TO-DO: Improve error message - say ACCESS RANDOM is incompatible with ORGANIZATION SEQUENTIAL.
{ set +x
$as_echo "$at_srcdir/syn_file.at:1963: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:1963"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: ORGANIZATION clause is invalid for file 'file1'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:1963"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_223
#AT_START_224
at_fn_group_banner 224 'syn_file.at:1970' \
  "ALTERNATE RECORD KEY SUPPRESS WHEN" "             " 2
at_xfail=no
(
  $as_echo "224. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN        "TESTFILE"
              ACCESS        DYNAMIC
              ORGANIZATION  INDEXED
              RECORD KEY    TESTKEY-P1
              ALTERNATE RECORD KEY TESTKEY-P2
                 WITH DUPLICATES
                 SUPPRESS WHEN ZEROES
              ALTERNATE RECORD KEY TESTKEY-P3
                 WITH DUPLICATES
                 SUPPRESS WHEN SPACES
              ALTERNATE RECORD KEY TESTKEY-P4
                 WITH DUPLICATES
                 SUPPRESS WHEN ALL "A"
              ALTERNATE RECORD KEY TESTKEY-P5
                 WITH DUPLICATES
                 SUPPRESS WHEN ALL SPACES
              .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC.
           03  TESTKEY-P1 PIC X(4).
           03  TESTKEY-P2 PIC 9(4).
           03  TESTDATA   PIC X(4).
           03  TESTKEY-P3 PIC X(4).
           03  TESTKEY-P4 PIC X(4).
           03  TESTKEY-P5 PIC X(4).
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:2011: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "syn_file.at:2011"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:2011"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_224
#AT_START_225
at_fn_group_banner 225 'syn_file.at:2015' \
  "RECORD definition with SOURCE IS / =" "           " 2
at_xfail=no
(
  $as_echo "225. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE1
              ASSIGN         "TESTFILE"
              ACCESS         DYNAMIC
              ORGANIZATION   INDEXED
              RECORD KEY     TESTKEY-P1 OF TEST-REC1
              ALTERNATE RECORD KEY
                 TEST1KEY2 = TESTKEY-P2 OF TEST-REC1,
                             TESTKEY-P3 OF TEST-REC1
                 WITH DUPLICATES
              .
       SELECT TEST-FILE2
              ASSIGN         "TESTFILE"
              ACCESS         DYNAMIC
              ORGANIZATION   INDEXED
              RECORD KEY     TESTKEY-P1 OF TEST-REC2
              ALTERNATE RECORD KEY
                 TEST2KEY2 SOURCE IS TESTKEY-P2 OF TEST-REC2,
                                     TESTKEY-P3 OF TEST-REC2
                 WITH DUPLICATES
                 .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE1.
       01  TEST-REC1.
           03  TESTKEY-P1 PIC X(4).
           03  TESTKEY-P2 PIC 9(4).
           03  TESTDATA   PIC X(4).
           03  TESTKEY-P3 PIC X(4).
       FD  TEST-FILE2.
       01  TEST-REC2.
           03  TESTKEY-P1 PIC X(4).
           03  TESTKEY-P2 PIC 9(4).
           03  TESTDATA   PIC X(4).
           03  TESTKEY-P3 PIC X(4).
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:2062: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:2062"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:2062"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_225
#AT_START_226
at_fn_group_banner 226 'syn_file.at:2066' \
  "ALTERNATE RECORD definition WITH NO DUPLICATES" " " 2
at_xfail=yes
(
  $as_echo "226. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN        "TESTFILE"
              ACCESS        DYNAMIC
              ORGANIZATION  INDEXED
              RECORD KEY    TESTKEY1
              ALTERNATE RECORD KEY TESTKEY2
                               WITH DUPLICATES
              ALTERNATE RECORD KEY TESTKEY3
                               WITH NO DUPLICATES
              .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:2089: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:2089"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: non-standard 'NO DUPLICATES'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:2089"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:2092: \$COMPILE_ONLY -frelax-syntax prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax prog.cob" "syn_file.at:2092"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:2092"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_226
#AT_START_227
at_fn_group_banner 227 'syn_file.at:2096' \
  "ALTERNATE RECORD definition omitting RECORD" "    " 2
at_xfail=yes
(
  $as_echo "227. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN        "TESTFILE"
              ACCESS        DYNAMIC
              ORGANIZATION  INDEXED
              RECORD     KEY  TESTKEY1
              ALTERNATE  KEY  TESTKEY2
              .
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:2118: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:2118"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: 'RECORD' is mandatory here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:2118"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:2121: \$COMPILE_ONLY -frelax-syntax prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax prog.cob" "syn_file.at:2121"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:2121"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_227
#AT_START_228
at_fn_group_banner 228 'syn_file.at:2125' \
  "SELECT/OPEN syntax extensions" "                  " 2
at_xfail=no
(
  $as_echo "228. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: split tests, possibly add dialect configuration,
#        add checks for "mutually exclusive" and ORGANIZATION

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE1
              ASSIGN        "TESTFILE1"
      *>      WITH ENCRYPTION    shift/reduce conflict ?
              ORGANIZATION  INDEXED
              ACCESS        DYNAMIC
              RECORD KEY    TESTKEY-1P1
                 WITH DUPLICATES
              ALTERNATE RECORD KEY TESTKEY-1P2
                 WITH NO DUPLICATES
              LOCK EXCLUSIVE MASS-UPDATE
              .
       SELECT TEST-FILE2
              ASSIGN        "TESTFILE2"
      *>      ENCRYPTION         shift/reduce conflict ?
              ORGANIZATION  INDEXED
              ACCESS        DYNAMIC
              RECORD KEY    TESTKEY-2P1
                 WITH NO DUPLICATES
              ALTERNATE RECORD KEY TESTKEY-2P2
                 WITH DUPLICATES
              .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE1.
       01  TEST-REC1.
           03  TESTKEY-1P1 PIC X(4).
           03  TESTKEY-1P2 PIC 9(4).
           03  ENCRYPTION  PIC X(4).
       FD  TEST-FILE2.
       01  TEST-REC2.
           03  TESTKEY-2P1 PIC X(4).
           03  ALLOWING    PIC X(4).
           03  TESTKEY-2P2 PIC 9(4).
       PROCEDURE DIVISION.
           OPEN EXCLUSIVE INPUT TEST-FILE2
           CLOSE TEST-FILE2
           OPEN I-O TEST-FILE1 TEST-FILE2 ALLOWING UPDATERS
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 ALLOWING UPDATERS
           CLOSE TEST-FILE1
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 ALLOWING READERS
           CLOSE TEST-FILE1
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 ALLOWING WRITERS
           CLOSE TEST-FILE1
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 ALLOWING ALL
           CLOSE TEST-FILE1
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 ALLOWING NO
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 ALLOWING NO OTHERS
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 FOR LOCK
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 LOCK
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 BULK-ADDITION
           CLOSE TEST-FILE1
           OPEN I-O TEST-FILE1 MASS-UPDATE
           CLOSE TEST-FILE1
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:2203: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:2203"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: warning: DUPLICATES for primary keys is not implemented
prog.cob:16: warning: WITH MASS-UPDATE is not implemented
prog.cob:65: warning: WITH BULK-ADDITION is not implemented
prog.cob:67: warning: WITH MASS-UPDATE is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:2203"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_file.at:2209: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_file.at:2209"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: warning: DUPLICATES for primary keys is not implemented
prog.cob:16: warning: WITH MASS-UPDATE is not implemented
prog.cob:34: error: syntax error, unexpected ENCRYPTION
prog.cob:38: error: syntax error, unexpected ALLOWING
prog.cob:65: warning: WITH BULK-ADDITION is not implemented
prog.cob:67: warning: WITH MASS-UPDATE is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:2209"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_228
#AT_START_229
at_fn_group_banner 229 'syn_file.at:2220' \
  "GLOBAL FD nested progam" "                        " 2
at_xfail=no
(
  $as_echo "229. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "foo.dat"
               ORGANIZATION INDEXED
               RECORD KEY f-key.

       DATA DIVISION.
       FILE SECTION.
       FD  f                                   GLOBAL.
       01  f-rec                               GLOBAL.
           03  f-key                           PIC 9.

       PROCEDURE DIVISION.
           CALL "output-statement".

       IDENTIFICATION DIVISION.
       PROGRAM-ID. output-statement.

       PROCEDURE DIVISION.
           WRITE f-rec.
           END PROGRAM output-statement.
       END PROGRAM prog.
_ATEOF


# note: we actually want to check codegen -> C compilation here
{ set +x
$as_echo "$at_srcdir/syn_file.at:2253: \$COMPILE -std=cobol2002 -Wno-unsupported prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2002 -Wno-unsupported prog.cob" "syn_file.at:2253"
( $at_check_trace; $COMPILE -std=cobol2002 -Wno-unsupported prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_file.at:2253"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_229
#AT_START_230
at_fn_group_banner 230 'syn_file.at:2258' \
  "Invalid file name in SELECT" "                    " 2
at_xfail=no
(
  $as_echo "230. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. HELLO.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT input ASSIGN "in.txt".

       DATA DIVISION.
       FILE SECTION.
       FD input.
       01 input-rec PIC X.

       PROCEDURE DIVISION.
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_file.at:2280: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_file.at:2280"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: syntax error, unexpected INPUT, expecting Identifier
prog.cob:12: error: syntax error, unexpected INPUT, expecting Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_file.at:2280"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_230
#AT_START_231
at_fn_group_banner 231 'syn_reportwriter.at:23' \
  "REPORT error/warning" "                           " 2
at_xfail=no
(
  $as_echo "231. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TRANSACTION-DATA
           ASSIGN TO EXTERNAL DATAIN
           ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
           ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA             DIVISION.
       FILE             SECTION.
       FD TRANSACTION-DATA.
       01 TRANSACTION-RECORD.
          03 TR-CUSTOMER-NUMBER     PIC 9(04).
          03 FILLER                 PIC X(01).
          03 TR-CUSTOMER-NAME       PIC X(16).
          03 FILLER                 PIC X(01).
          03 TR-ITEM-NUMBER         PIC 9(05).
          03 FILLER                 REDEFINES TR-ITEM-NUMBER.
             05 TR-ITEM-DEPARTMENT  PIC 9(01).
             05 FILLER              PIC 9(04).
          03 FILLER                 PIC X(01).
          03 TR-ITEM-COST           PIC 9(03)V99.
          03 FILLER                 PIC X(47).
       FD REPORT-FILE
          REPORT IS NO-REPORT.
       WORKING-STORAGE  SECTION.
       01 END-OF-FILE-SWITCH        PIC X(1)    VALUE 'N'.
          88 END-OF-FILE            VALUE 'Y'.
          88 GOFOREVER              VALUE 'X'.

       REPORT           SECTION.
       RD NO-REPORT
          PAGE LIMIT IS 66 LINES
          HEADING 1
          FIRST DETAIL 5
          LAST DETAIL 58.

       01 PAGE-HEAD-GROUP TYPE PAGE HEADING.
          02 LINE 1.
             03 COLUMN 27   PIC X(41) VALUE
                'S A M P L E  R E P O R T'.
          02 LINE PLUS 2.
             03 COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
             03 COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
             03 COLUMN 30   PIC X(05) VALUE 'DEPT.'.
             03 COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
             03 COLUMN 51   PIC X(09) VALUE 'ITEM COST'.

       01 CHARGE-DETAIL TYPE DETAIL.
          02 LINE PLUS 1.
             03 COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
             03 COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
             03 COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
             03 COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
             03 COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.

       PROCEDURE        DIVISION.

           OPEN INPUT TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

           PERFORM UNTIL GOFOREVER
              GENERATE CHARGE-DETAIL
              READ TRANSACTION-DATA
                  AT END
                     EXIT PERFORM
              END-READ
           END-PERFORM.

           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
                 REPORT-FILE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:115: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:115"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:67: error: 'CUSTOMER-REPORT' is not defined
prog.cob:67: error: 'CUSTOMER-REPORT' is not a valid report name
prog.cob:82: error: 'CUSTOMER-REPORT' is not a valid report name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:115"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_231
#AT_START_232
at_fn_group_banner 232 'syn_reportwriter.at:124' \
  "REPORT not positive integers in COL / LINE PLUS" "" 2
at_xfail=no
(
  $as_echo "232. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT out-file ASSIGN "blah.txt"
           ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  out-file REPORT rp.

       REPORT SECTION.
       RD  rp.
       01  rp-head TYPE PH.
          02  LINE NUMBER IS 1, COLUMNS 0 VALUE "Hello!".
          02  LINE IS 2,        COLS    2 VALUE "Hello!".
          02  LINE NUMBERS ARE PLUS 1.
              03 COLUMN NUMBER 01  PIC X(09) VALUE 'CUST. NO.'.
              03 COLUMN PLUS 0     PIC X(09) VALUE 'ITEM'.
          02  LINES ARE PLUS 2 COL NUMBERS PLUS 0.
              03 COLUMN 1.5        PIC X(09) VALUE 'CUST. NO.'.
              03 COLUMN + -10      PIC X(09) VALUE 'ITEM'.

       01 rp-detail TYPE DETAIL.
          02 LINE PLUS 1.
             03 COLUMN 03   PIC X(06) VALUE 'SAMPLE'.
             03 COLUMN +9   PIC X(06) VALUE 'REPORT'.

       PROCEDURE DIVISION.
           OPEN OUTPUT out-file.
           INITIATE rp.
           GENERATE rp-detail.
           TERMINATE rp.
           CLOSE out-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:167: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:167"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: error: invalid COLUMN integer; must be > 0
prog.cob:24: error: unsigned integer value expected
prog.cob:25: error: unsigned integer value expected
prog.cob:30: error: unsigned integer value expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_232
#AT_START_233
at_fn_group_banner 233 'syn_reportwriter.at:177' \
  "Missing PICTURE for SOURCE" "                     " 2
at_xfail=no
(
  $as_echo "233. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT out-file ASSIGN "blah.txt"
           ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  out-file REPORT rp.

       WORKING-STORAGE SECTION.
       77  data-source pic x(20) value "data".

       REPORT SECTION.
       RD  rp.
       01  rp-head TYPE IS DETAIL.
          02  LINE 1, COL 2 VALUE "Hello!".
          02  LINE PLUS 1.
              03 COLUMN 01      PIC X(09) VALUE 'CUST. NO.'.
              03 ok  COLUMN PLUS 20 SOURCE IS data-source PIC X(10).
              03 bad COLUMN PLUS 20 SOURCE IS data-source.


       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:211: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:211"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:25: error: PICTURE clause required for 'bad'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_233
#AT_START_234
at_fn_group_banner 234 'syn_reportwriter.at:218' \
  "Missing DETAIL line" "                            " 2
at_xfail=no
(
  $as_echo "234. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT out-file ASSIGN "blah.txt"
           ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  out-file REPORT rp.

       REPORT SECTION.
       RD  rp.
       01  rp-head TYPE PH.
          02  LINE 1, COL 2 VALUE "Hello!".
          02  LINE PLUS 1.
              03 COLUMN 01      PIC X(09) VALUE 'CUST. NO.'.
              03 COLUMN PLUS 20 PIC X(09) VALUE 'ITEM'.


       PROCEDURE DIVISION.
           OPEN OUTPUT out-file.
           INITIATE rp.
           GENERATE rp-detail.
           TERMINATE rp.
           CLOSE out-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:253: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:253"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: warning: no DETAIL line defined in report rp
prog.cob:27: error: 'rp-detail' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:253"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_234
#AT_START_235
at_fn_group_banner 235 'syn_reportwriter.at:261' \
  "REPORT LINE PLUS ZERO" "                          " 2
at_xfail=no
(
  $as_echo "235. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT out-file ASSIGN "blah.txt"
           ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  out-file REPORT rp.

       REPORT SECTION.
       RD  rp.
       01  rp-head TYPE PH.
          02  LINE 1  COL 5 PIC X(20) VALUE "Hello World!".
          02  LINE 2  COL 4 PIC X(20) VALUE "Hello Goodbye!".
          02  LINE PLUS 0.
              03 COLUMN  1      PIC X(09) VALUE 'CUST. No.'.
              03 COLUMN PLUS 0  PIC X(09) VALUE 'ITEM'.
          02  LINE PLUS ZERO.
              03 COLUMN 1       PIC X(09) VALUE 'Cust. No.'.
              03 COLUMN + 10    PIC X(09) VALUE 'Item'.

       01 rp-detail TYPE DETAIL.
          02 LINE PLUS 1.
             03 COLUMN 03   PIC X(06) VALUE 'SAMPLE'.

       PROCEDURE DIVISION.
           OPEN OUTPUT out-file.
           INITIATE rp.
           GENERATE rp-detail.
           TERMINATE rp.
           CLOSE out-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:303: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:303"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: warning: LINE PLUS 0 is not implemented
prog.cob:23: warning: LINE PLUS 0 is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_reportwriter.at:303"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_235
#AT_START_236
at_fn_group_banner 236 'syn_reportwriter.at:311' \
  "Incorrect REPORT NAME" "                          " 2
at_xfail=no
(
  $as_echo "236. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TRANSACTION-DATA
           ASSIGN TO EXTERNAL DATAIN
           ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
           ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA             DIVISION.
       FILE             SECTION.
       FD TRANSACTION-DATA
          LABEL RECORDS ARE OMITTED
         BLOCK CONTAINS 0 RECORDS
         RECORD CONTAINS 80 CHARACTERS
         DATA RECORD IS TRANSACTION-RECORD.
       01 TRANSACTION-RECORD.
          03 TR-CUSTOMER-NUMBER     PIC 9(04).
          03 FILLER                 PIC X(01).
          03 TR-CUSTOMER-NAME       PIC X(16).
          03 FILLER                 PIC X(01).
          03 TR-ITEM-NUMBER         PIC 9(05).
          03 FILLER                 REDEFINES TR-ITEM-NUMBER.
             05 TR-ITEM-DEPARTMENT  PIC 9(01).
             05 FILLER              PIC 9(04).
          03 FILLER                 PIC X(01).
          03 TR-ITEM-COST           PIC 9(03)V99.
          03 FILLER                 PIC X(47).
       FD REPORT-FILE
          LABEL RECORDS ARE OMITTED
          REPORT IS NO-REPORT.
       WORKING-STORAGE  SECTION.
       01 END-OF-FILE-SWITCH        PIC X(1)    VALUE 'N'.
          88 END-OF-FILE            VALUE 'Y'.
          88 GOFOREVER              VALUE 'X'.

       REPORT           SECTION.
       RD SOME-REPORT
          PAGE LIMIT IS 66 LINES
          HEADING 1
          FIRST DETAIL 5
          LAST DETAIL 58.

       01 PAGE-HEAD-GROUP TYPE PAGE HEADING.
          02 LINE 1.
             03 COLUMN 27   PIC X(41) VALUE
                'S A M P L E  R E P O R T'.
          02 LINE PLUS 2.
             03 COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
             03 COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
             03 COLUMN 30   PIC X(05) VALUE 'DEPT.'.
             03 COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
             03 COLUMN 51   PIC X(09) VALUE 'ITEM COST'.

       01 CHARGE-DETAIL TYPE DETAIL.
          02 LINE PLUS 1.
             03 COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
             03 COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
             03 COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
             03 COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
             03 COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.

       PROCEDURE DIVISION.

           OPEN INPUT  TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

           PERFORM UNTIL GOFOREVER
              GENERATE CHARGE-DETAIL
              READ TRANSACTION-DATA
                  AT END
                     EXIT PERFORM
              END-READ
           END-PERFORM.

           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
                 REPORT-FILE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:408: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_reportwriter.at:408"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:17: warning: LABEL RECORDS is obsolete in Micro Focus COBOL
prog.cob:19: warning: RECORD clause ignored for LINE SEQUENTIAL
prog.cob:20: warning: DATA RECORDS is obsolete in Micro Focus COBOL
prog.cob:34: warning: LABEL RECORDS is obsolete in Micro Focus COBOL
prog.cob:42: error: 'SOME-REPORT' is not defined
prog.cob:42: error: 'SOME-REPORT' is not a valid report name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:408"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:417: \$COMPILE_ONLY -std=cobol2002 -fassign-ext-dyn=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 -fassign-ext-dyn=ok prog.cob" "syn_reportwriter.at:417"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 -fassign-ext-dyn=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:17: error: syntax error, unexpected Identifier, expecting EXTERNAL or GLOBAL
prog.cob:34: error: syntax error, unexpected Identifier, expecting EXTERNAL or GLOBAL
prog.cob:36: error: RECORD description missing or invalid
prog.cob:42: error: 'SOME-REPORT' is not defined
prog.cob:42: error: 'SOME-REPORT' is not a valid report name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:417"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_236
#AT_START_237
at_fn_group_banner 237 'syn_reportwriter.at:428' \
  "REPORT with PLUS RIGHT/CENTER" "                  " 2
at_xfail=no
(
  $as_echo "237. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
               SELECT INPUT-FILE ASSIGN TO EXTERNAL STUDENT
                              ORGANIZATION IS LINE SEQUENTIAL.
               SELECT PRINT-FILE ASSIGN TO EXTERNAL
                              LINE ADVANCING REPORT1.

       DATA DIVISION.
       FILE SECTION.
       FD   INPUT-FILE.
       01   INPUT-REC.
               05  STUDENT-ID               PIC  9(5).
               05  STUDENT-NAME             PIC  X(20).
               05  MAJOR                    PIC  XXX.
               05  NUM-COURSES              PIC  9(6).

       FD   PRINT-FILE
             REPORT IS STUDENT-REPORT.

       WORKING-STORAGE SECTION.
       01   ARE-THERE-MORE-RECORDS       PIC  XXX   VALUE  "YES".

       REPORT SECTION.
       RD   STUDENT-REPORT
           PAGE LIMIT 30 LINES
           HEADING 1
           FIRST DETAIL 3
           LAST DETAIL 25
           FOOTING 28.
       01   HEADING-LINE
            TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(2)  VALUE "Ln".
            05  COLUMN 4      PIC X(6)  VALUE "--ID--".
            05  COLUMN 16     PIC X(20) VALUE "--------Name--------".
            05  COLUMN 39     PIC X(5)  VALUE "  Mjr".
            05  COLUMN 48     PIC XXX   VALUE "*-*".
            05  COLUMN 54     PIC X(5)  VALUE "+Num+".

       01   REPORT-LINE
            TYPE DETAIL LINE PLUS  1.
            05  COLUMN PLUS 1 PIC 9(2)
                  SOURCE LINE-COUNTER OF STUDENT-REPORT.
            05  COLUMN LEFT PLUS 1   PIC Z(5)9 SOURCE STUDENT-ID.
            05  COLUMN CENTER 25     PIC X(20) SOURCE STUDENT-NAME.
            05  COLUMN RIGHT  43     PIC X(5)  SOURCE MAJOR.
            05  COLUMN        48     PIC XXX   VALUE "<->".
            05  COLUMN CENTER 56     PIC Z(4)9 SOURCE NUM-COURSES.
            05  COLUMN 60 62 65      PIC Z9 OCCURS 3 TIMES.

       PROCEDURE DIVISION.
       A000-MAINLINE.
           OPEN  INPUT  INPUT-FILE
                 OUTPUT PRINT-FILE
           PERFORM DO-INIT.
           READ INPUT-FILE
               AT END
                   MOVE "NO" TO ARE-THERE-MORE-RECORDS.
           PERFORM A001-LOOP
               UNTIL ARE-THERE-MORE-RECORDS = "NO ".
           PERFORM DO-TERM.
           CLOSE INPUT-FILE
                 PRINT-FILE.
           STOP RUN.

       A001-LOOP.
           GENERATE REPORT-LINE.
           READ INPUT-FILE
               AT END
                   MOVE "NO " TO ARE-THERE-MORE-RECORDS.
       DO-INIT.
           INITIATE STUDENT-REPORT.

       DO-TERM.
           TERMINATE STUDENT-REPORT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:512: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:512"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:46: warning: PLUS is ignored on first field of line
prog.cob:48: error: PLUS is not allowed with LEFT, RIGHT or CENTER
prog.cob:53: error: OCCURS and multi COLUMNs is not allowed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:512"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_237
#AT_START_238
at_fn_group_banner 238 'syn_reportwriter.at:521' \
  "PAGE LIMITS clause" "                             " 2
at_xfail=no
(
  $as_echo "238. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       INPUT-OUTPUT    SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.txt".

       DATA            DIVISION.
       FILE            SECTION.
       FD  f           REPORT r1, r2.
       01  f-rec       PIC XXXXX.

       REPORT          SECTION.
       RD  r1          PAGE LIMIT 1 LINES 1 COLUMNS
                       HEADING f-rec,
                       HEADING f-rec,
                       LINE LIMIT 1.

       RD  r2          PAGE LIMIT 1 COLUMNS
                       HEADING f-rec.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:548: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:548"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:19: error: duplicate HEADING clause
prog.cob:19: error: duplicate LINE LIMIT clause
prog.cob:22: error: cannot specify HEADING without number of lines on page
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:548"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_238
#AT_START_239
at_fn_group_banner 239 'syn_reportwriter.at:556' \
  "Report FD without period" "                       " 2
at_xfail=no
(
  $as_echo "239. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: these samples used to loop in the error handling

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       INPUT-OUTPUT    SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.txt".

       DATA            DIVISION.
       FILE            SECTION.
       FD  f           REPORT
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       INPUT-OUTPUT    SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.txt".

       DATA            DIVISION.
       FILE            SECTION.
       FD  f           REPORT r
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:589: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:589"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: syntax error, unexpected end of file, expecting Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:589"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:592: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_reportwriter.at:592"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:13: error: syntax error, unexpected end of file, expecting EXTERNAL or GLOBAL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:592"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_239
#AT_START_240
at_fn_group_banner 240 'syn_reportwriter.at:598' \
  "REPORT with unreferenced control field" "         " 2
at_xfail=no
(
  $as_echo "240. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT     DIVISION.
       INPUT-OUTPUT    SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.txt".

       DATA            DIVISION.
       FILE            SECTION.
       FD  f           REPORT r.
       01  f-rec       PIC X.

       REPORT          SECTION.
       RD  r.
       01  r0          TYPE DETAIL, PRESENT AFTER NEW f-rec.
_ATEOF


# no compile_only here as we check the C generation
{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:621: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_reportwriter.at:621"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_reportwriter.at:621"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_240
#AT_START_241
at_fn_group_banner 241 'syn_reportwriter.at:626' \
  "Incorrect USAGE clause" "                         " 2
at_xfail=no
(
  $as_echo "241. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT report-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  report-file REPORT rp.

       WORKING-STORAGE SECTION.
       01  foo  PIC X(20).
       01   WS-INPUT-RECORD.
            05  WSI-A                           PIC X(1).
            05  WSI-B                           PIC X(1).
            05  WSI-C                           PIC X(1).
            05  WSI-V                           PIC 9.

       REPORT SECTION.
       RD  rp PAGE LIMIT 3.

       01  rp-detail TYPE DE.
         02  LINE PLUS 1.
            03  FILLER   SOURCE foo  PIC X(30).
            03  FILLER               PIC X(6) SOURCE "<--->".
            03  THING1               PIC 9(3) BINARY VALUE 12.
            03  THING2               COMP-2          VALUE 12.

       01 CF-A TYPE CONTROL FOOTING WSI-A.
           02 LINE PLUS 1.
              03 COLUMN 1 VALUE "**SUM:".
              03 COLUMN PLUS 2 SUM WSI-V.
              03 COLUMN PLUS 2 SUM WSI-V PIC XXX.

       PROCEDURE DIVISION.
           OPEN OUTPUT report-file.
           INITIATE rp.

           MOVE "hello" TO foo.
            GENERATE rp-detail.

           MOVE "goodbye" TO foo.
            GENERATE rp-detail.

           TERMINATE rp.
             CLOSE report-file.
           STOP RUN.
           END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_reportwriter.at:683: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_reportwriter.at:683"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:30: error: syntax error, unexpected BINARY, expecting DISPLAY or DISPLAY-1 or NATIONAL or UTF-8
prog.cob:31: error: syntax error, unexpected COMP-2, expecting DISPLAY or DISPLAY-1 or NATIONAL or UTF-8
prog.cob:36: error: needs PICTURE clause for SUM WSI-V
prog.cob:37: warning: non-numeric PICTURE clause for SUM WSI-V
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_reportwriter.at:683"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_241
#AT_START_242
at_fn_group_banner 242 'syn_refmod.at:26' \
  "valid reference-modification" "                   " 2
at_xfail=no
(
  $as_echo "242. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       77 VAR           PIC 9 VALUE 1.
       PROCEDURE        DIVISION.
           DISPLAY X(1:1) ":" X(1:2) ":" X(1:3) ":" X(1:4) ":" X(1:).
           DISPLAY X(2:1) ":" X(2:2) ":" X(2:3) ":" X(2:).
           DISPLAY X(3:1) ":" X(3:2) ":" X(3:).
           DISPLAY X(4:1) ":" X(4:).
           DISPLAY X(1:4)
           DISPLAY X(VAR:4)
           DISPLAY X(4:)
           DISPLAY X(4:VAR)
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_refmod.at:48: \$COMPILE -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdiagnostics-show-option prog.cob" "syn_refmod.at:48"
( $at_check_trace; $COMPILE -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: warning: suspicious reference-modification: always using max. length [-Wothers]
prog.cob:16: warning: suspicious reference-modification: always using max. position [-Wothers]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_refmod.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_242
#AT_START_243
at_fn_group_banner 243 'syn_refmod.at:55' \
  "invalid reference-modification" "                 " 2
at_xfail=no
(
  $as_echo "243. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
          88 X-AB       VALUE "AB".
       PROCEDURE        DIVISION.
           DISPLAY X-AB(1:1).
      *> TODO: more to add
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_refmod.at:71: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_refmod.at:71"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: 'X-AB' cannot be reference modified
prog.cob:9: error: condition-name not allowed here: 'X-AB'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_refmod.at:71"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_243
#AT_START_244
at_fn_group_banner 244 'syn_refmod.at:79' \
  "Static out of bounds" "                           " 2
at_xfail=no
(
  $as_echo "244. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4).
       01 Y             PIC 9 VALUE 1.
       PROCEDURE        DIVISION.
           DISPLAY X(0:1)
           END-DISPLAY.
           DISPLAY X(0:Y)
           END-DISPLAY.
           DISPLAY X(5:1)
           END-DISPLAY.
           DISPLAY X(5:Y)
           END-DISPLAY.
           DISPLAY X(1:0)
           END-DISPLAY.
           DISPLAY X(Y:0)
           END-DISPLAY.
           DISPLAY X(1:5)
           END-DISPLAY.
           DISPLAY X(Y:5)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_refmod.at:109: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_refmod.at:109"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: offset of 'X' out of bounds: 0
prog.cob:11: error: offset of 'X' out of bounds: 0
prog.cob:13: error: offset of 'X' out of bounds: 5
prog.cob:15: error: offset of 'X' out of bounds: 5
prog.cob:17: error: length of 'X' out of bounds: 0
prog.cob:19: error: length of 'X' out of bounds: 0
prog.cob:21: error: length of 'X' out of bounds: 5
prog.cob:23: error: length of 'X' out of bounds: 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_refmod.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_244
#AT_START_245
at_fn_group_banner 245 'syn_refmod.at:123' \
  "constant-folding out of bounds" "                 " 2
at_xfail=no
(
  $as_echo "245. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: actually checking out of bounds in general, too

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 VAR-LEN       VALUE 4.
       01 X             PIC X(VAR-LEN).
       PROCEDURE        DIVISION.
           IF VAR-LEN < 4
              DISPLAY X(4 - VAR-LEN:1)
              DISPLAY X(1: 4 - VAR-LEN)
              DISPLAY X(9 - VAR-LEN:1)
              DISPLAY X(1:9 - VAR-LEN)
      *>      special test...
              INSPECT X CONVERTING "DEF"  TO X (1:0 + VAR-LEN)
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_refmod.at:147: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-numlit-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-numlit-expression prog.cob" "syn_refmod.at:147"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-numlit-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: offset of 'X' out of bounds: 0 [-Wignored-error]
prog.cob:11: warning: length of 'X' out of bounds: 0 [-Wignored-error]
prog.cob:12: warning: offset of 'X' out of bounds: 5 [-Wignored-error]
prog.cob:13: warning: length of 'X' out of bounds: 5 [-Wignored-error]
prog.cob:15: warning: CONVERTING operands differ in size [-Wignored-error]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_refmod.at:147"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_refmod.at:154: \$COMPILE_ONLY -Wno-constant-numlit-expression -fno-constant-folding prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-constant-numlit-expression -fno-constant-folding prog.cob" "syn_refmod.at:154"
( $at_check_trace; $COMPILE_ONLY -Wno-constant-numlit-expression -fno-constant-folding prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_refmod.at:154"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_245
#AT_START_246
at_fn_group_banner 246 'syn_refmod.at:159' \
  "no static bound check for ANY LENGTH" "           " 2
at_xfail=no
(
  $as_echo "246. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  POS          PIC 9(4).
       LINKAGE SECTION.
       01  TESTME PIC X ANY LENGTH.
       PROCEDURE        DIVISION USING TESTME.
       main.
           evaluate true
           when TESTME(POS:2) = ", "
                continue
           when TESTME(POS:1) = "," and TESTME(1 + POS:1) = " "
                display 'TESTME' pos 1525
           end-evaluate
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_refmod.at:181: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_refmod.at:181"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_refmod.at:181"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_246
#AT_START_247
at_fn_group_banner 247 'syn_misc.at:23' \
  "ambiguous AND/OR" "                               " 2
at_xfail=no
(
  $as_echo "247. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 ONE   PIC 9 VALUE 1.
       01 TWO   PIC 9 VALUE 2.
       01 THREE PIC 9 VALUE 3.
       PROCEDURE        DIVISION.
           IF THREE = ONE AND TWO OR THREE
               DISPLAY "OK"
               END-DISPLAY
           END-IF.
           IF 3 = 1 OR 2 AND 3
               DISPLAY "NO"
               END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:46: \$COMPILE_ONLY -Wno-constant-numlit-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-constant-numlit-expression prog.cob" "syn_misc.at:46"
( $at_check_trace; $COMPILE_ONLY -Wno-constant-numlit-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: suggest parentheses around AND within OR
prog.cob:14: warning: suggest parentheses around OR within AND
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_247
#AT_START_248
at_fn_group_banner 248 'syn_misc.at:54' \
  "warn constant expressions" "                      " 2
at_xfail=no
(
  $as_echo "248. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           IF 3 = 1
           AND 2 OR 3
              DISPLAY "OK"
              END-DISPLAY
           END-IF.
           IF 3 = 1 OR
              2 AND 3
              DISPLAY "NO"
              END-DISPLAY
           END-IF
           IF "a" = "b"
              DISPLAY "NO"
              END-DISPLAY
           END-IF.
           IF "c" = "c    "
              DISPLAY "NO"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


# FIXME positions broken
# Note: also checks that -Wconstant-expression works as "group" warning
{ set +x
$as_echo "$at_srcdir/syn_misc.at:84: \$COMPILE_ONLY -fdiagnostics-show-option -w -Wconstant-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -w -Wconstant-expression prog.cob" "syn_misc.at:84"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -w -Wconstant-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: warning: expression '3' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:6: warning: expression '3' EQUALS '2' is always FALSE [-Wconstant-numlit-expression]
prog.cob:6: warning: expression '3' EQUALS '3' is always TRUE [-Wconstant-numlit-expression]
prog.cob:10: warning: expression '3' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:11: warning: expression '3' EQUALS '2' is always FALSE [-Wconstant-numlit-expression]
prog.cob:11: warning: expression '3' EQUALS '3' is always TRUE [-Wconstant-numlit-expression]
prog.cob:15: warning: expression 'a' EQUALS 'b' is always FALSE [-Wconstant-expression]
prog.cob:19: warning: expression 'c' EQUALS 'c    ' is always TRUE [-Wconstant-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:94: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-parentheses prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-parentheses prog.cob" "syn_misc.at:94"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-parentheses prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: warning: expression '3' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:6: warning: expression '3' EQUALS '2' is always FALSE [-Wconstant-numlit-expression]
prog.cob:6: warning: expression '3' EQUALS '3' is always TRUE [-Wconstant-numlit-expression]
prog.cob:10: warning: expression '3' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:11: warning: expression '3' EQUALS '2' is always FALSE [-Wconstant-numlit-expression]
prog.cob:11: warning: expression '3' EQUALS '3' is always TRUE [-Wconstant-numlit-expression]
prog.cob:15: warning: expression 'a' EQUALS 'b' is always FALSE [-Wconstant-expression]
prog.cob:19: warning: expression 'c' EQUALS 'c    ' is always TRUE [-Wconstant-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:104: \$COMPILE_ONLY -fdiagnostics-show-option -w -Wconstant-numlit-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -w -Wconstant-numlit-expression prog.cob" "syn_misc.at:104"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -w -Wconstant-numlit-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: warning: expression '3' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:6: warning: expression '3' EQUALS '2' is always FALSE [-Wconstant-numlit-expression]
prog.cob:6: warning: expression '3' EQUALS '3' is always TRUE [-Wconstant-numlit-expression]
prog.cob:10: warning: expression '3' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:11: warning: expression '3' EQUALS '2' is always FALSE [-Wconstant-numlit-expression]
prog.cob:11: warning: expression '3' EQUALS '3' is always TRUE [-Wconstant-numlit-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:104"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:112: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-parentheses -Wno-constant-numlit-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-parentheses -Wno-constant-numlit-expression prog.cob" "syn_misc.at:112"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-parentheses -Wno-constant-numlit-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: warning: expression 'a' EQUALS 'b' is always FALSE [-Wconstant-expression]
prog.cob:19: warning: expression 'c' EQUALS 'c    ' is always TRUE [-Wconstant-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_248
#AT_START_249
at_fn_group_banner 249 'syn_misc.at:120' \
  "warn literal size" "                              " 2
at_xfail=no
(
  $as_echo "249. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 WS-LINE-NUMBER         PIC 9(3) VALUE ZERO.
       01 WS-NUMBER              PIC 9(3)V99 VALUE ZERO.
       01 WS-TEXT                PIC X(5) VALUE 'CAT'.
       01 PIC-9-SIGNED           PIC S9(2) VALUE 5.
       01 PIC-9-SIGNED-DECIMAL   PIC S9(2)V99 VALUE 5.
       01 PIC-9-NOT-SIGNED       PIC 9(3) VALUE 5.
       01 PIC-9-NOT-DECIMAL      PIC 9(3) VALUE 5.
       01 XX                     PIC 9(2) VALUE 2.
       01 PIC-9-DECIMAL          PIC 9(3)V9 VALUE 5.
       01 COMPUTE-1              PIC 999V9999 VALUE 654.1873.
       01 GROUP-ITEM-X6.
          05 FILLER              PIC X(6) VALUE 'CAT'.
       78 CONST1                 VALUE 'CAT     '.
       01 CONST2                 CONSTANT AS 00000001234.
       01 IF-D16                 PIC PP99 VALUE .0012.
       PROCEDURE DIVISION.
       MAIN.
           IF GROUP-ITEM-X6 = '1234567'   CONTINUE.
           IF PIC-9-NOT-DECIMAL = 1.1     CONTINUE.
           IF PIC-9-NOT-DECIMAL = 1.0
               CONTINUE.
           IF PIC-9-DECIMAL = 1.01
               CONTINUE.
           IF PIC-9-DECIMAL = 1.100
               CONTINUE.
           IF PIC-9-SIGNED NOT = 11.0
               CONTINUE.
           IF PIC-9-NOT-SIGNED < 0
               CONTINUE.
           IF PIC-9-NOT-SIGNED < ZERO
               CONTINUE.
           IF PIC-9-NOT-SIGNED < (25 - 50)
               CONTINUE.
           IF PIC-9-DECIMAL = (2.24 / 2)
               CONTINUE.
           IF PIC-9-NOT-DECIMAL = "123"
               CONTINUE.
           IF PIC-9-NOT-DECIMAL = "1B0"       *> field is numeric
               CONTINUE.
           IF PIC-9-NOT-DECIMAL (1:3) = "1B0" *> refmod is always alphanumeric
               CONTINUE.
           IF PIC-9-NOT-DECIMAL (1:3) NOT = "Hot Doggy"
               CONTINUE.
           IF PIC-9-NOT-DECIMAL (1:XX) NOT = "Hi"
               CONTINUE.
           IF WS-LINE-NUMBER > '123'
              CONTINUE.
           IF WS-TEXT > 'DOGGY'
              CONTINUE.
           IF WS-NUMBER > 123.999
              CONTINUE.
           IF WS-LINE-NUMBER > 2345
              CONTINUE.
           IF WS-LINE-NUMBER <= 1234
              CONTINUE.
           IF WS-LINE-NUMBER > '1234'
              CONTINUE.
           IF 5432 < WS-LINE-NUMBER
              CONTINUE.
           IF 7855 >= WS-LINE-NUMBER
              CONTINUE.
           IF 1234 < WS-LINE-NUMBER
              CONTINUE.
           IF 5432 >= WS-LINE-NUMBER
              CONTINUE.
           IF WS-TEXT > 'DOGGY++'
              CONTINUE.
           IF WS-TEXT > 3141596
              CONTINUE.
           IF WS-TEXT > 3.141596
              CONTINUE.
           IF WS-TEXT = 3.141596
              CONTINUE.
           IF 'DOG+CAT' NOT = WS-TEXT
              CONTINUE.
           IF WS-TEXT = 'CAT+DOG'
              CONTINUE.
           EVALUATE TRUE
              WHEN 'DOG+CAT' = WS-TEXT
                 CONTINUE
              WHEN CONST1 = 'CAT+DOG'
                 CONTINUE
              WHEN CONST1 = 'CAT'
                 CONTINUE
              WHEN CONST2 = 1234
                 CONTINUE
           END-EVALUATE
           IF WS-LINE-NUMBER > 0000234
              CONTINUE.
           IF WS-TEXT = 'CAT         '
              CONTINUE.
           IF ( COMPUTE-1 < 654.20038) AND
              ( COMPUTE-1 > 654.17422) THEN
              CONTINUE.
           IF ( COMPUTE-1 < 5654.20) CONTINUE.
           IF ( COMPUTE-1 > 5654.20) CONTINUE.
           IF   COMPUTE-1 < 05654.20 CONTINUE.
           IF   COMPUTE-1 > 05654.20 CONTINUE.
           IF ( 5654.20 > COMPUTE-1) CONTINUE.
           IF ( 5654.20 < COMPUTE-1) CONTINUE.
           IF  05654.20 > COMPUTE-1  CONTINUE.
           IF  05654.20 < COMPUTE-1  CONTINUE.
           IF IF-D16 POSITIVE
              CONTINUE.
           IF IF-D16 NOT POSITIVE
              CONTINUE.
           IF IF-D16 NEGATIVE
              CONTINUE.
           IF IF-D16 NOT NEGATIVE
              CONTINUE.
           IF PIC-9-NOT-SIGNED > (25 - 50)
               CONTINUE.
           IF PIC-9-NOT-SIGNED >= -1  CONTINUE.
           IF PIC-9-NOT-SIGNED >= -.1 CONTINUE.
           IF PIC-9-NOT-SIGNED > 0.0  CONTINUE.
           IF PIC-9-NOT-SIGNED >  .0  CONTINUE.
           IF PIC-9-NOT-SIGNED > ZERO
               CONTINUE.
           IF PIC-9-NOT-SIGNED >= 0.0 CONTINUE.
           IF PIC-9-NOT-SIGNED >=  .0 CONTINUE.
           IF PIC-9-NOT-SIGNED >= ZERO
               CONTINUE.
           IF GROUP-ITEM-X6 (1:6) = '123456'
               CONTINUE.
      * Both have correct error check verified in syn_refmod.at
      *    IF GROUP-ITEM-X6 (2:6) = '123456'
      *        CONTINUE.
      *    IF GROUP-ITEM-X6 (WS-LINE-NUMBER:7) = '123456'
      *        CONTINUE.
           IF GROUP-ITEM-X6 (1:5) = '123456'
               CONTINUE.
           IF GROUP-ITEM-X6 (3:) = '12345'
               CONTINUE.
           IF GROUP-ITEM-X6 (3:WS-LINE-NUMBER) = '12345'
               CONTINUE.
           IF GROUP-ITEM-X6 (WS-LINE-NUMBER:3) = '12345'
               CONTINUE.
           IF GROUP-ITEM-X6 (WS-LINE-NUMBER:WS-LINE-NUMBER) = '12345'
               CONTINUE.
           IF GROUP-ITEM-X6 (WS-LINE-NUMBER:) = '12345'
               CONTINUE.
           IF PIC-9-NOT-DECIMAL    >     9     CONTINUE.
           IF PIC-9-NOT-DECIMAL    >   009     CONTINUE.
           IF PIC-9-NOT-DECIMAL    >   900     CONTINUE.
           IF PIC-9-NOT-DECIMAL    >   909     CONTINUE.
           IF PIC-9-NOT-DECIMAL    >   999     CONTINUE.
           IF PIC-9-NOT-DECIMAL    >  0000999  CONTINUE.
           IF PIC-9-DECIMAL        >   999     CONTINUE.
           IF PIC-9-DECIMAL        >   990.9   CONTINUE.
           IF PIC-9-DECIMAL        >   999.9   CONTINUE.
           IF PIC-9-DECIMAL        >  0999.90  CONTINUE.
           IF PIC-9-DECIMAL        > -0999.90  CONTINUE.
           IF PIC-9-SIGNED-DECIMAL >    99.99  CONTINUE.
           IF PIC-9-SIGNED-DECIMAL >=   99.99  CONTINUE.
           IF PIC-9-SIGNED-DECIMAL <   -99.99  CONTINUE.
           IF PIC-9-SIGNED-DECIMAL <= -099.990 CONTINUE.
           IF PIC-9-SIGNED-DECIMAL <= -099.991 CONTINUE.
           IF 99                   > XX CONTINUE.
           IF XX               NOT < 99 CONTINUE.
           IF NOT XX               < 99 CONTINUE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:292: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:292"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN':
prog.cob:23: warning: literal '1234567' is longer than 'GROUP-ITEM-X6'
prog.cob:23: warning: expression is always FALSE
prog.cob:24: warning: literal '1.1' has more decimals than 'PIC-9-NOT-DECIMAL'
prog.cob:24: warning: expression is always FALSE
prog.cob:27: warning: literal '1.01' has more decimals than 'PIC-9-DECIMAL'
prog.cob:27: warning: expression is always FALSE
prog.cob:33: warning: unsigned 'PIC-9-NOT-SIGNED' may not be LESS THAN ZERO
prog.cob:35: warning: unsigned 'PIC-9-NOT-SIGNED' may not be LESS THAN ZERO
prog.cob:38: warning: unsigned 'PIC-9-NOT-SIGNED' may not be LESS THAN -25
prog.cob:40: warning: literal '1.12' has more decimals than 'PIC-9-DECIMAL'
prog.cob:40: warning: expression is always FALSE
prog.cob:43: warning: literal '1B0' is alphanumeric but 'PIC-9-NOT-DECIMAL' is numeric
prog.cob:47: warning: literal 'Hot Doggy' is longer than 'PIC-9-NOT-DECIMAL'
prog.cob:47: warning: expression is always TRUE
prog.cob:55: warning: literal '123.999' has more decimals than 'WS-NUMBER'
prog.cob:57: warning: literal '2345' has more digits than 'WS-LINE-NUMBER'
prog.cob:57: warning: expression is always FALSE
prog.cob:59: warning: literal '1234' has more digits than 'WS-LINE-NUMBER'
prog.cob:59: warning: expression is always TRUE
prog.cob:61: warning: literal '1234' has more digits than 'WS-LINE-NUMBER'
prog.cob:61: warning: expression is always FALSE
prog.cob:63: warning: literal '5432' has more digits than 'WS-LINE-NUMBER'
prog.cob:63: warning: expression is always FALSE
prog.cob:65: warning: literal '7855' has more digits than 'WS-LINE-NUMBER'
prog.cob:65: warning: expression is always TRUE
prog.cob:67: warning: literal '1234' has more digits than 'WS-LINE-NUMBER'
prog.cob:67: warning: expression is always FALSE
prog.cob:69: warning: literal '5432' has more digits than 'WS-LINE-NUMBER'
prog.cob:69: warning: expression is always TRUE
prog.cob:71: warning: literal 'DOGGY++' is longer than 'WS-TEXT'
prog.cob:73: warning: literal '3141596' is longer than 'WS-TEXT'
prog.cob:75: warning: literal '3.141596' is longer than 'WS-TEXT'
prog.cob:77: warning: literal '3.141596' is longer than 'WS-TEXT'
prog.cob:77: warning: expression is always FALSE
prog.cob:79: warning: literal 'DOG+CAT' is longer than 'WS-TEXT'
prog.cob:79: warning: expression is always TRUE
prog.cob:81: warning: literal 'CAT+DOG' is longer than 'WS-TEXT'
prog.cob:81: warning: expression is always FALSE
prog.cob:84: warning: literal 'DOG+CAT' is longer than 'WS-TEXT'
prog.cob:84: warning: expression is always FALSE
prog.cob:86: warning: expression 'CAT     ' EQUALS 'CAT+DOG' is always FALSE
prog.cob:88: warning: expression 'CAT     ' EQUALS 'CAT' is always TRUE
prog.cob:90: warning: expression '00000001234' EQUALS '1234' is always TRUE
prog.cob:97: warning: literal '654.20038' has more decimals than 'COMPUTE-1'
prog.cob:98: warning: literal '654.17422' has more decimals than 'COMPUTE-1'
prog.cob:100: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:100: warning: expression is always TRUE
prog.cob:101: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:101: warning: expression is always FALSE
prog.cob:102: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:102: warning: expression is always TRUE
prog.cob:103: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:103: warning: expression is always FALSE
prog.cob:104: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:104: warning: expression is always TRUE
prog.cob:105: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:105: warning: expression is always FALSE
prog.cob:106: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:106: warning: expression is always TRUE
prog.cob:107: warning: literal '5654.20' has more digits than 'COMPUTE-1'
prog.cob:107: warning: expression is always FALSE
prog.cob:112: warning: unsigned 'IF-D16' may not be LESS THAN ZERO
prog.cob:114: warning: unsigned 'IF-D16' may not be LESS THAN ZERO
prog.cob:117: warning: unsigned 'PIC-9-NOT-SIGNED' may always be GREATER THAN -25
prog.cob:118: warning: unsigned 'PIC-9-NOT-SIGNED' may always be GREATER OR EQUAL -1
prog.cob:119: warning: literal '-.1' has more decimals than 'PIC-9-NOT-SIGNED'
prog.cob:119: warning: unsigned 'PIC-9-NOT-SIGNED' may always be GREATER OR EQUAL -.1
prog.cob:124: warning: unsigned 'PIC-9-NOT-SIGNED' may always be GREATER OR EQUAL ZERO
prog.cob:125: warning: unsigned 'PIC-9-NOT-SIGNED' may always be GREATER OR EQUAL ZERO
prog.cob:126: warning: unsigned 'PIC-9-NOT-SIGNED' may always be GREATER OR EQUAL ZERO
prog.cob:135: warning: literal '123456' is longer than reference-modification of 'GROUP-ITEM-X6'
prog.cob:135: warning: expression is always FALSE
prog.cob:137: warning: literal '12345' is longer than reference-modification of 'GROUP-ITEM-X6'
prog.cob:137: warning: expression is always FALSE
prog.cob:139: warning: literal '12345' is longer than reference-modification of 'GROUP-ITEM-X6'
prog.cob:139: warning: expression is always FALSE
prog.cob:141: warning: literal '12345' is longer than reference-modification of 'GROUP-ITEM-X6'
prog.cob:141: warning: expression is always FALSE
prog.cob:151: warning: 'PIC-9-NOT-DECIMAL' may not be GREATER THAN 999
prog.cob:152: warning: 'PIC-9-NOT-DECIMAL' may not be GREATER THAN 999
prog.cob:155: warning: 'PIC-9-DECIMAL' may not be GREATER THAN 999.9
prog.cob:156: warning: 'PIC-9-DECIMAL' may not be GREATER THAN 999.9
prog.cob:157: warning: unsigned 'PIC-9-DECIMAL' may always be GREATER THAN -999.90
prog.cob:158: warning: 'PIC-9-SIGNED-DECIMAL' may not be GREATER THAN 99.99
prog.cob:159: warning: 'PIC-9-SIGNED-DECIMAL' may not be GREATER THAN 99.99
prog.cob:160: warning: 'PIC-9-SIGNED-DECIMAL' may not be LESS THAN -99.99
prog.cob:161: warning: 'PIC-9-SIGNED-DECIMAL' may not be LESS THAN -99.99
prog.cob:162: warning: literal '-99.991' has more decimals than 'PIC-9-SIGNED-DECIMAL'
prog.cob:164: warning: 'XX' may not be GREATER THAN 99
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:292"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_249
#AT_START_250
at_fn_group_banner 250 'syn_misc.at:388' \
  "warn literal size in constant expr. (level 88)" " " 2
at_xfail=no
(
  $as_echo "250. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.

       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9.
        88 never-true value 99.
       01  y PIC 9.
        88 never-truen value -9.
       01  xx pic x.
        88 some-not values 'a', 'b', 'cd'.
        88 some-not-s values '00', 'a', 'b', 'cd'.

       PROCEDURE DIVISION.
           if never-true
            continue
           end-if
           if never-truen
            continue
           end-if
           if some-not-s
            set some-not   to true
            set some-not-s to true
           end-if
           set never-true  to true
           goback.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:420: \$COMPILE_ONLY -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option prog.cob" "syn_misc.at:420"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: literal '99' has more digits than 'x' [-Wconstant-expression]
prog.cob:8: warning: expression is always FALSE [-Wconstant-expression]
prog.cob:13: warning: literal '00' is longer than 'xx' [-Wconstant-expression]
prog.cob:13: warning: expression is always FALSE [-Wconstant-expression]
prog.cob:13: warning: literal 'cd' is longer than 'xx' [-Wconstant-expression]
prog.cob:13: warning: expression is always FALSE [-Wconstant-expression]
prog.cob:24: warning: value size exceeds data size [-Wtruncate]
prog.cob:24: note: value size is 2 [-Wtruncate]
prog.cob:11: note: 'xx' defined here as PIC X [-Wtruncate]
prog.cob:26: warning: value size exceeds data size [-Wtruncate]
prog.cob:26: note: value is 99 [-Wtruncate]
prog.cob:7: note: 'x' defined here as PIC 9 [-Wtruncate]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:420"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_250
#AT_START_251
at_fn_group_banner 251 'syn_misc.at:438' \
  "Invalid conditional expression (1)" "             " 2
at_xfail=no
(
  $as_echo "251. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  CON          CONSTANT 10.
       01  V            PIC 9.
       78  C78          VALUE 'A'.
       PROCEDURE        DIVISION.
           IF FUNCTION TRIM (' ')
              CONTINUE
              CONTINUE
           END-IF.
           IF CON
              CONTINUE
              CONTINUE
           END-IF.
           IF V
              CONTINUE
              CONTINUE
           END-IF.
           IF C78
              CONTINUE
              CONTINUE
           END-IF.
           IF '2'
              CONTINUE
              CONTINUE
           END-IF.
           IF C78 OR V
               CONTINUE
               CONTINUE
           END-IF.
           EVALUATE TRUE
              WHEN FUNCTION TRIM (' ')
                 CONTINUE
                 CONTINUE
              WHEN CON
                 CONTINUE
                 CONTINUE
              WHEN V
                 CONTINUE
                 CONTINUE
              WHEN C78
                 CONTINUE
                 CONTINUE
              WHEN '2'
                 CONTINUE
              WHEN OTHER
                 CONTINUE
           END-EVALUATE.
           PERFORM VARYING V
                   FROM 1 BY 1
                   UNTIL FUNCTION TRIM (' ')
              CONTINUE
              CONTINUE
           END-PERFORM.
           PERFORM VARYING V
                   FROM 1 BY 1
                   UNTIL V
              CONTINUE
              CONTINUE
           END-PERFORM.
           PERFORM VARYING V
                   FROM 1 BY 1
                   UNTIL C78
              CONTINUE
              CONTINUE
           END-PERFORM.
           PERFORM VARYING V
                   FROM 1 BY 1
                   UNTIL '2'
              CONTINUE
              CONTINUE
           END-PERFORM.
           IF NOTDEFINED = 1 OR 2
              CONTINUE
           END-IF.

           IF (V = 1) AND V
              CONTINUE
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:527: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:527"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: incomplete expression
prog.cob:14: error: incomplete expression
prog.cob:18: error: incomplete expression
prog.cob:22: error: incomplete expression
prog.cob:26: error: incomplete expression
prog.cob:30: error: invalid conditional expression
prog.cob:35: error: incomplete expression
prog.cob:38: error: incomplete expression
prog.cob:41: error: incomplete expression
prog.cob:44: error: incomplete expression
prog.cob:47: error: incomplete expression
prog.cob:54: error: incomplete expression
prog.cob:60: error: incomplete expression
prog.cob:66: error: incomplete expression
prog.cob:72: error: incomplete expression
prog.cob:76: error: 'NOTDEFINED' is not defined
prog.cob:80: error: invalid expression: boolean expected with logical operator
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:527"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_251
#AT_START_252
at_fn_group_banner 252 'syn_misc.at:550' \
  "Invalid conditional expression (2)" "             " 2
at_xfail=no
(
  $as_echo "252. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 WRKN  PIC S999 VALUE 123.
           88 WRKN-IS-ZERO VALUE 0.
        01 WRKX  PIC X(8) VALUE 'House'.
        PROCEDURE DIVISION.
        MAIN.
            EVALUATE WRKN
              GREATER ZERO
              < 0
              > 0
            WHEN TRUE
              DISPLAY "WHAT IS IT?"
            END-EVALUATE.
            IF WRKN = 123 EQUAL 456
              DISPLAY "Strange brew! " WRKN
            END-IF.
            IF WRKN NOT EQUAL 123 NOT = 456
              DISPLAY "Strange brew! " WRKN
            END-IF.
            IF WRKN = 123 OR 456
              DISPLAY "Home brew! " WRKN
            END-IF.
            IF WRKX = "Red" OR "White"
              DISPLAY "Home wine! " WRKX
            END-IF.
            IF WRKX <= "Red" = "White"
              DISPLAY "Home wine! " WRKX
            END-IF.
            IF WRKX = "Red" NOT "White"
              DISPLAY "Home wine! " WRKX
            END-IF.
            IF WRKN = (123 - 12) OR
                   >= (456 + 16)
              DISPLAY "And another brew! " WRKN
            END-IF.
            IF ( WRKN-IS-ZERO + 3  ) > 0
	      DISPLAY "Weird if compiled"
	    END-IF.
            IF ( 3 + WRKN-IS-ZERO  ) > 0
	      DISPLAY "Weird if compiled"
	    END-IF.
            IF ( WRKN-IS-ZERO AND WRKN-IS-ZERO ) > 0
              DISPLAY "Weird if compiled"
            END-IF.
            STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:604: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:604"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN':
prog.cob:13: error: condition expression found where decimal expression was expected
prog.cob:18: error: condition expression found where decimal expression was expected
prog.cob:21: error: condition expression found where decimal expression was expected
prog.cob:30: error: condition expression found where decimal expression was expected
prog.cob:33: error: invalid expression: unfinished expression
prog.cob:40: error: condition-name not allowed here: 'WRKN-IS-ZERO'
prog.cob:43: error: condition-name not allowed here: 'WRKN-IS-ZERO'
prog.cob:46: error: condition expression found where decimal expression was expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:604"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_252
#AT_START_253
at_fn_group_banner 253 'syn_misc.at:619' \
  "Invalid conditional expression (3)" "             " 2
at_xfail=no
(
  $as_echo "253. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
      ******************************************************************
       WORKING-STORAGE SECTION.
      *
       01 FLD1 PIC 9 VALUE 1.
       01 FLD2 PIC 9 VALUE 2.
       01 FLDX PIC 9 VALUE 5.
       01 FLDY PIC 9 VALUE 6.

       PROCEDURE DIVISION.
           IF 1 AND 2 > 1 THEN
                DISPLAY 'Test 1 is WRONG'
           ELSE
                DISPLAY 'Test 1 is OK'.

           IF FLD1 AND FLDX > FLD2 THEN
                DISPLAY 'Test 2 is OK'
           ELSE
                DISPLAY 'Test 2 is Wrong'.

           IF FLD1 OR FLDX > FLD2 THEN
                DISPLAY 'Test 2 is OK'
           ELSE
                DISPLAY 'Test 2 is Wrong'.

           IF FLD1 > 2 AND FLDX > FLD2 THEN
                DISPLAY 'Test 2 is OK'
           ELSE
                DISPLAY 'Test 2 is Wrong'.

           IF FLD2 IS NUMERIC AND FLD1 THEN
                DISPLAY 'Test 2 is OK'
           ELSE
                DISPLAY 'Test 2 is Wrong'.

           IF FLDX > FLD2 AND FLD1 AND 8 THEN
                DISPLAY 'Test 3 is OK ' FLDX ' > ' FLD2 ' & ' FLD1
           ELSE
                DISPLAY 'Test 3 is Wrong'.

           IF FLDX > FLD2 OR FLD1 OR 8 THEN
                DISPLAY 'Test 3 is OK'
           ELSE
                DISPLAY 'Test 3 is Wrong'.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:673: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:673"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: invalid conditional expression
prog.cob:20: error: invalid conditional expression
prog.cob:25: error: invalid conditional expression
prog.cob:35: error: invalid expression: boolean expected with logical operator
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:673"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_253
#AT_START_254
at_fn_group_banner 254 'syn_misc.at:683' \
  "Valid conditional expression" "                   " 2
at_xfail=no
(
  $as_echo "254. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  var         PIC 999.

       PROCEDURE       DIVISION.
           IF  var = 83  AND >  1 + 1
              CONTINUE
           END-IF
           IF  var = 83  AND >  2
              CONTINUE
           END-IF
           IF  var = 83  AND > (1 + 1)
              CONTINUE
           END-IF
           IF (var NOT = 1) OR (var NOT = 2)
               CONTINUE
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:710: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:710"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:710"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:711: \$COMPILE_ONLY -fno-constant-folding prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fno-constant-folding prog.cob" "syn_misc.at:711"
( $at_check_trace; $COMPILE_ONLY -fno-constant-folding prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:711"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_254
#AT_START_255
at_fn_group_banner 255 'syn_misc.at:716' \
  "missing headers" "                                " 2
at_xfail=no
(
  $as_echo "255. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       SOURCE-COMPUTER. GNU-LINUX.
       SPECIAL-NAMES.
            SYMBOLIC NL IS 101
                     NL2   102
            NUMERIC SIGN TRAILING SEPARATE
            DECIMAL-POINT IS COMMA
            .

            SELECT PRINT-FILE ASSIGN "EXTRXW"
            ORGANIZATION LINE SEQUENTIAL
            .
       DATA DIVISION.
       FD  PRINT-FILE EXTERNAL.
       01  PRINT-REC          PIC X(64).

           DISPLAY "X"
           END-DISPLAY
           ACCEPT OMITTED
           END-ACCEPT
           GOBACK
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:743: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:743"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:2: error: PROGRAM-ID header missing
prog.cob:2: error: ENVIRONMENT DIVISION header missing
prog.cob:2: error: CONFIGURATION SECTION header missing
prog.cob:10: error: INPUT-OUTPUT SECTION header missing
prog.cob:10: error: FILE-CONTROL header missing
prog.cob:14: error: FILE SECTION header missing
prog.cob:17: error: PROCEDURE DIVISION header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:743"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:753: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_misc.at:753"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:2: warning: PROGRAM-ID header missing
prog.cob:2: note: PROGRAM-ID header assumed
prog.cob:2: warning: ENVIRONMENT DIVISION header missing
prog.cob:2: note: ENVIRONMENT DIVISION header assumed
prog.cob:2: warning: CONFIGURATION SECTION header missing
prog.cob:2: note: CONFIGURATION SECTION header assumed
prog.cob:10: warning: INPUT-OUTPUT SECTION header missing
prog.cob:10: note: INPUT-OUTPUT SECTION header assumed
prog.cob:10: warning: FILE-CONTROL header missing
prog.cob:10: note: FILE-CONTROL header assumed
prog.cob:14: warning: FILE SECTION header missing
prog.cob:14: note: FILE SECTION header assumed
prog.cob:17: warning: PROCEDURE DIVISION header missing
prog.cob:17: note: PROCEDURE DIVISION header assumed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:753"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_255
#AT_START_256
at_fn_group_banner 256 'syn_misc.at:773' \
  "one line program" "                               " 2
at_xfail=no
(
  $as_echo "256. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'
           DISPLAY "minimal".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:779: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:779"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:1: error: PROGRAM-ID header missing
prog.cob:1: error: PROCEDURE DIVISION header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:779"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:784: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_misc.at:784"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:1: warning: PROGRAM-ID header missing
prog.cob:1: note: PROGRAM-ID header assumed
prog.cob:1: warning: PROCEDURE DIVISION header missing
prog.cob:1: note: PROCEDURE DIVISION header assumed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:784"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_256
#AT_START_257
at_fn_group_banner 257 'syn_misc.at:794' \
  "empty program" "                                  " 2
at_xfail=no
(
  $as_echo "257. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 999 VALUE 124.
       END PROGRAM prog.
_ATEOF


# Note: we need to test for generating a valid C source (with normal/no flags)
#       here, not only for COBOL compilation
{ set +x
$as_echo "$at_srcdir/syn_misc.at:809: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:809"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:809"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:810: \$COBC prog.cob"
at_fn_check_prepare_dynamic "$COBC prog.cob" "syn_misc.at:810"
( $at_check_trace; $COBC prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:810"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 999 VALUE 124.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:821: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "syn_misc.at:821"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:821"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:822: \$COBC prog2.cob"
at_fn_check_prepare_dynamic "$COBC prog2.cob" "syn_misc.at:822"
( $at_check_trace; $COBC prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:822"
$at_failed && at_fn_log_failure
$at_traceon; }


: >prog3.cob

{ set +x
$as_echo "$at_srcdir/syn_misc.at:826: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_misc.at:826"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:1: error: PROGRAM-ID header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:826"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:830: \$COMPILE -fdiagnostics-plain-output -frelax-syntax-checks prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdiagnostics-plain-output -frelax-syntax-checks prog3.cob" "syn_misc.at:830"
( $at_check_trace; $COMPILE -fdiagnostics-plain-output -frelax-syntax-checks prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:1: warning: PROGRAM-ID header missing
prog3.cob:1: note: PROGRAM-ID header assumed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:830"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:834: \$COBC -fdiagnostics-plain-output -frelax-syntax-checks prog3.cob"
at_fn_check_prepare_dynamic "$COBC -fdiagnostics-plain-output -frelax-syntax-checks prog3.cob" "syn_misc.at:834"
( $at_check_trace; $COBC -fdiagnostics-plain-output -frelax-syntax-checks prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:1: warning: PROGRAM-ID header missing [-Wothers]
prog3.cob:1: note: PROGRAM-ID header assumed [-Wothers]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:834"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_257
#AT_START_258
at_fn_group_banner 258 'syn_misc.at:842' \
  "INITIALIZE constant" "                            " 2
at_xfail=no
(
  $as_echo "258. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  CON          CONSTANT 10.
       01  V            PIC 9.
       78  C78          VALUE 'A'.
       PROCEDURE DIVISION.
           INITIALIZE CON.
           INITIALIZE V.
           INITIALIZE V, 9.
           INITIALIZE C78, V.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:860: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:860"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: invalid INITIALIZE statement
prog.cob:12: error: invalid INITIALIZE statement
prog.cob:13: error: invalid INITIALIZE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:860"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_258
#AT_START_259
at_fn_group_banner 259 'syn_misc.at:869' \
  "CLASS duplicate values" "                         " 2
at_xfail=no
(
  $as_echo "259. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
            SYMBOLIC NL IS 101
                     NL2   102
            CLASS    CHECK-VALID    'a' THRU 'z'
                                    'A' THRU 'Z'
                                    'cdef'
            .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(8).
       PROCEDURE        DIVISION.
           IF X         IS CHECK-VALID
              DISPLAY "OK"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:895: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:895"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: duplicate character values in class 'CHECK-VALID'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:895"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_259
#AT_START_260
at_fn_group_banner 260 'syn_misc.at:902' \
  "INSPECT invalid size" "                           " 2
at_xfail=no
(
  $as_echo "260. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
       ALPHABET ALPHA IS ASCII.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01.
         02 X-POS       PIC 9 VALUE 3.
         02 X           PIC X(8) OCCURS 2.
       PROCEDURE        DIVISION.
           INSPECT X(1) REPLACING ALL SPACES BY "AA".
           INSPECT X(1) REPLACING ALL "ABC"  BY "AA".
           INSPECT X(1) REPLACING ALL "DEF"  BY SPACES.
           INSPECT X(1) CONVERTING SPACES TO "AA".
           INSPECT X(1) CONVERTING "ABC"  TO "AA".
           INSPECT X(1) (X-POS:2) CONVERTING "DEF"  TO SPACES.
           INSPECT X(1) CONVERTING "GHI"  TO ALPHA.
      *>   the following is allowed, see NC221A and ref-mod definition
           INSPECT X(1) CONVERTING "DEF"  TO X(2) (X-POS:3).
           INSPECT X(1) CONVERTING "DEF"  TO X(2) (X-POS:4).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:931: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:931"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: REPLACING operands differ in size
prog.cob:15: error: REPLACING operands differ in size
prog.cob:17: error: CONVERTING operands differ in size
prog.cob:18: error: CONVERTING operands differ in size
prog.cob:20: error: CONVERTING operands differ in size
prog.cob:23: error: CONVERTING operands differ in size
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:931"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_260
#AT_START_261
at_fn_group_banner 261 'syn_misc.at:943' \
  "INSPECT invalid target" "                         " 2
at_xfail=no
(
  $as_echo "261. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(8).
       PROCEDURE        DIVISION.
           INSPECT FUNCTION TRIM(X) REPLACING ALL "ABC" BY "DEF".
           INSPECT FUNCTION TRIM(X) CONVERTING "ABC" TO "AAA".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:958: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:958"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: invalid target for REPLACING
prog.cob:9: error: invalid target for CONVERTING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:958"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_261
#AT_START_262
at_fn_group_banner 262 'syn_misc.at:966' \
  "INSPECT missing keyword" "                        " 2
at_xfail=no
(
  $as_echo "262. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(8).
       PROCEDURE        DIVISION.
           INSPECT X REPLACING "AB" BY "CD".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:980: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:980"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: INSPECT missing ALL/FIRST/LEADING/TRAILING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:980"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_262
#AT_START_263
at_fn_group_banner 263 'syn_misc.at:987' \
  "INSPECT repeated keywords" "                      " 2
at_xfail=no
(
  $as_echo "263. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9(5).

       PROCEDURE DIVISION.
      *> Ok
           INSPECT "abcde" TALLYING x FOR CHARACTERS CHARACTERS

      *> Not ok
           INSPECT "abcde" TALLYING x FOR ALL LEADING
               TRAILING ALL ALL ALL TRAILING
           INSPECT "abcde" TALLYING x FOR x FOR LEADING "a"
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1009: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1009"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: missing value between ALL/LEADING/TRAILING words
prog.cob:15: error: missing value between ALL/LEADING/TRAILING words
prog.cob:15: error: missing value between ALL/LEADING/TRAILING words
prog.cob:15: error: missing value between ALL/LEADING/TRAILING words
prog.cob:15: error: missing value between ALL/LEADING/TRAILING words
prog.cob:15: error: missing value between ALL/LEADING/TRAILING words
prog.cob:16: error: TALLYING clause is incomplete
prog.cob:16: error: missing CHARACTERS/ALL/LEADING/TRAILING phrase after FOR phrase
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1009"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_263
#AT_START_264
at_fn_group_banner 264 'syn_misc.at:1023' \
  "INSPECT incomplete clause" "                      " 2
at_xfail=no
(
  $as_echo "264. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9(5).

       PROCEDURE DIVISION.
           INSPECT "abcde" TALLYING x FOR
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1039: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1039"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: TALLYING clause is incomplete
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1039"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_264
#AT_START_265
at_fn_group_banner 265 'syn_misc.at:1045' \
  "INSPECT multiple BEFORE/AFTER clauses" "          " 2
at_xfail=no
(
  $as_echo "265. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC X(10).

       PROCEDURE DIVISION.
           INSPECT x REPLACING CHARACTERS BY "x"
               BEFORE "A" BEFORE "b" AFTER "c"
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1062: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1062"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: syntax error, unexpected BEFORE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1062"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_265
#AT_START_266
at_fn_group_banner 266 'syn_misc.at:1068' \
  "EXAMINE invalid literals" "                       " 2
at_xfail=no
(
  $as_echo "266. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x  PIC X(10).
       01  y  PIC X.
       01  yy PIC XX.

       PROCEDURE DIVISION.
           EXAMINE x TALLYING ALL "AA" REPLACING BY "CC"
           EXAMINE x TALLYING UNTIL FIRST SPACE
           EXAMINE x TALLYING UNTIL FIRST y
           EXAMINE x TALLYING LEADING yy
           EXAMINE y TALLYING ALL x (1).
           EXAMINE y TALLYING ALL x (3:2).
           EXAMINE x TALLYING UNTIL FIRST ALL
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1091: \$COMPILE_ONLY -freserved=EXAMINE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=EXAMINE prog.cob" "syn_misc.at:1091"
( $at_check_trace; $COMPILE_ONLY -freserved=EXAMINE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: single-character literal or data item expected
prog.cob:12: error: single-character literal or data item expected
prog.cob:15: error: single-character literal or data item expected
prog.cob:16: error: single-character literal or data item expected
prog.cob:16: error: syntax error, unexpected (
prog.cob:17: error: single-character literal or data item expected
prog.cob:17: error: syntax error, unexpected (
prog.cob:18: error: syntax error, unexpected ALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1091"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_266
#AT_START_267
at_fn_group_banner 267 'syn_misc.at:1104' \
  "maximum data size" "                              " 2
at_xfail=no
(
  $as_echo "267. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 SINGLE-ITEM   PIC X(9999999999).
       01 GROUP-ITEM1.
          05 FILLER     PIC X(9999999999).
       01 GROUP-ITEM2.
          05 FILLER     PIC X(199999999).
          05 FILLER     PIC X(199999999).
       >> IF P64 SET
          05 FILLER     PIC X(1999999999).
       >> END-IF
       PROCEDURE        DIVISION.
           STOP RUN.

_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1126: test \"\$COB_HAS_64_BIT_POINTER\" = \"yes\""
at_fn_check_prepare_dynamic "test \"$COB_HAS_64_BIT_POINTER\" = \"yes\"" "syn_misc.at:1126"
( $at_check_trace; test "$COB_HAS_64_BIT_POINTER" = "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1126"
if $at_failed; then :
  # Previous test "failed" --> 32 bit
{ set +x
$as_echo "$at_srcdir/syn_misc.at:1126: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1126"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'SINGLE-ITEM' cannot be larger than 268435456 bytes
prog.cob:8: error: 'FILLER 1' cannot be larger than 268435456 bytes
prog.cob:7: error: 'GROUP-ITEM1' cannot be larger than 268435456 bytes
prog.cob:9: error: 'GROUP-ITEM2' cannot be larger than 268435456 bytes
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1126"
$at_failed && at_fn_log_failure
$at_traceon; }



else
  # Previous test "passed" --> 64 bit
{ set +x
$as_echo "$at_srcdir/syn_misc.at:1126: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1126"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'SINGLE-ITEM' cannot be larger than 2147483646 bytes
prog.cob:8: error: 'FILLER 1' cannot be larger than 2147483646 bytes
prog.cob:7: error: 'GROUP-ITEM1' cannot be larger than 2147483646 bytes
prog.cob:9: error: 'GROUP-ITEM2' cannot be larger than 2147483646 bytes
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1126"
$at_failed && at_fn_log_failure
$at_traceon; }



fi
$at_failed && at_fn_log_failure
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_267
#AT_START_268
at_fn_group_banner 268 'syn_misc.at:1152' \
  "unreachable statement" "                          " 2
at_xfail=no
(
  $as_echo "268. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN TO 'f' LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-rec PIC X.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       f-error SECTION.
           USE AFTER ERROR ON f.
           GOBACK
           .
       END DECLARATIVES.

           DISPLAY "VALID"
           END-DISPLAY.

       P01.
           GO TO P02.
           DISPLAY "INVALID"
           END-DISPLAY.
       P02.
           GO TO P03
           CONTINUE.  *> explicit no unreachable warning
       P03.
           GO TO P04
           CONTINUE AFTER 2 SECONDS.  *> that's one again
       P04.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1192: \$COMPILE_ONLY -Wunreachable prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wunreachable prog.cob" "syn_misc.at:1192"
( $at_check_trace; $COMPILE_ONLY -Wunreachable prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'P01':
prog.cob:26: warning: unreachable statement 'DISPLAY'
prog.cob: in paragraph 'P03':
prog.cob:33: warning: unreachable statement 'CONTINUE AFTER'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1192"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_268
#AT_START_269
at_fn_group_banner 269 'syn_misc.at:1202' \
  "CRT STATUS" "                                     " 2
at_xfail=no
(
  $as_echo "269. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CRT STATUS IS MY-CRT-STATUS.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       PROCEDURE        DIVISION.
           ACCEPT X END-ACCEPT.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CRT STATUS IS MY-CRT-STATUS.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       77 MY-CRT-STATUS PIC 9(04).
       PROCEDURE        DIVISION.
           ACCEPT X END-ACCEPT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1236: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1236"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: 'MY-CRT-STATUS' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1236"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1239: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:1239"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1239"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_269
#AT_START_270
at_fn_group_banner 270 'syn_misc.at:1244' \
  "SPECIAL-NAMES clause" "                           " 2
at_xfail=no
(
  $as_echo "270. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: actually this is the only place for some CRT STATUS checks...

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           CRT STATUS IS MY-CRT-STATUS.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  CURSOR-POSITION IS SPECIAL-NAMES CURSOR.
           03  CURSOR-ROW         PIC 999.
           03  CURSOR-COL         PIC 999.
       77  MY-CRT-STATUS PIC 9(04).
       77  CRT-STATUS IS SPECIAL-NAMES CRT STATUS PIC 9(5).
       PROCEDURE        DIVISION.
           ACCEPT OMITTED END-ACCEPT.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  CRT-STATUS IS SPECIAL-NAMES CRT STATUS PIC X(5).
       PROCEDURE        DIVISION.
           ACCEPT OMITTED END-ACCEPT.
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  CURSOR-POSITION IS SPECIAL-NAMES CURSOR.
           03  CURSOR-ROW   PIC 999.
           03  CURSOR-COL   PIC 999.
       77  CRT-STATUS       PIC X(4) IS SPECIAL-NAMES CRT STATUS.
       PROCEDURE        DIVISION.
           ACCEPT OMITTED END-ACCEPT.
           STOP RUN.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  CURSOR-POSITION IS SPECIAL-NAMES CURSOR.
           03  CURSOR-ROW   PIC 999.
           03  CURSOR-COL   PIC 999.
       77  CRT-STATUS       PIC 9(5) IS SPECIAL-NAMES CRT STATUS.
       PROCEDURE        DIVISION.
           ACCEPT OMITTED END-ACCEPT.
           STOP RUN.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  CRT-STATUS   PIC 9(3) IS SPECIAL-NAMES CRT STATUS.
       PROCEDURE        DIVISION.
           ACCEPT OMITTED END-ACCEPT.
           STOP RUN.
_ATEOF


cat >prog6.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  CRT-STATUS   PIC X(3) IS SPECIAL-NAMES CRT STATUS.
       PROCEDURE        DIVISION.
           ACCEPT OMITTED END-ACCEPT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1329: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1329"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: duplicate CRT STATUS clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1329"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1332: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:1332"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:6: error: 'CRT-STATUS' CRT STATUS must be 3 or 4 characters long
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1332"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1335: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_misc.at:1335"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1335"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1336: \$COMPILE_ONLY prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog4.cob" "syn_misc.at:1336"
( $at_check_trace; $COMPILE_ONLY prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1336"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1337: \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog5.cob" "syn_misc.at:1337"
( $at_check_trace; $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog5.cob:6: error: 'CRT-STATUS' numeric CRT STATUS must have at least 4 digits
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1337"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1340: \$COMPILE_ONLY prog6.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog6.cob" "syn_misc.at:1340"
( $at_check_trace; $COMPILE_ONLY prog6.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1340"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_270
#AT_START_271
at_fn_group_banner 271 'syn_misc.at:1345' \
  "CURRENCY SIGN" "                                  " 2
at_xfail=no
(
  $as_echo "271. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY SIGN IS '*'.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY 'DOLLAR'.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY 'DOLLAR'
           WITH PICTURE SYMBOL '$'.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 SOME-CASH     PIC 9(04).99$.
       PROCEDURE        DIVISION.
           MOVE 123.4 TO SOME-CASH
           DISPLAY SOME-CASH END-DISPLAY.
           STOP RUN.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog4.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY '   '
           PICTURE SYMBOL '*'.
_ATEOF


cat >prog5.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog5.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY ' T '
           PICTURE SYMBOL ' '.
_ATEOF


cat >prog6.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog6.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY '+-'
           PICTURE SYMBOL 'TT'.
_ATEOF


cat >prog7.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog7.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY SIGN IS 'T'.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 SOME-CASH     PIC 9(04).99T.
       PROCEDURE        DIVISION.
           MOVE 123.4 TO SOME-CASH
           DISPLAY SOME-CASH END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1429: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1429"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: invalid character '*' in currency symbol
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1429"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1432: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:1432"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: currency symbol must be one character long
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1432"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1435: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_misc.at:1435"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:7: warning: separate currency symbol and currency string is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1435"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1438: \$COMPILE_ONLY prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog4.cob" "syn_misc.at:1438"
( $at_check_trace; $COMPILE_ONLY prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog4.cob:7: warning: separate currency symbol and currency string is not implemented
prog4.cob:7: error: invalid CURRENCY SIGN '   '
prog4.cob:8: error: invalid character '*' in currency symbol
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1438"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1443: \$COMPILE_ONLY prog5.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog5.cob" "syn_misc.at:1443"
( $at_check_trace; $COMPILE_ONLY prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog5.cob:7: warning: separate currency symbol and currency string is not implemented
prog5.cob:8: error: invalid character ' ' in currency symbol
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1443"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1447: \$COMPILE_ONLY prog6.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog6.cob" "syn_misc.at:1447"
( $at_check_trace; $COMPILE_ONLY prog6.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog6.cob:7: warning: separate currency symbol and currency string is not implemented
prog6.cob:7: error: invalid CURRENCY SIGN '+-'
prog6.cob:8: error: currency symbol must be one character long
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1447"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1452: \$COMPILE_ONLY prog7.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog7.cob" "syn_misc.at:1452"
( $at_check_trace; $COMPILE_ONLY prog7.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1452"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_271
#AT_START_272
at_fn_group_banner 272 'syn_misc.at:1457' \
  "SWITCHES" "                                       " 2
at_xfail=no
(
  $as_echo "272. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           SW1
             ON  IS SWIT1-ON
             OFF IS SWIT1-OFF
           .
           SWITCH B IS SWITCH-B
             ON  IS SWIT2-ON
             OFF IS SWIT2-OFF
           .
           SWITCH-25
             ON  IS SWIT25-ON
             OFF IS SWIT25-OFF
           .
           SWITCH-25
             ON  IS SWIT25-IS-ON
             OFF IS SWIT25-IS-OFF
           .
           SWITCH 25
             ON  IS SWIT25-SP-ON
             OFF IS SWIT25-SP-OFF
           .
           SWITCH Y
             ON  IS SWIT25-Y-ON
             OFF IS SWIT25-Y-OFF
           .
           SWITCH Z
             ON  IS SWIT26-ON
             ON  IS SWIT26-OFF
           .
           SWITCH-32
             ON  IS SWIT32-ON
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SWITCH       PIC 99 VALUE 12.
       PROCEDURE        DIVISION.
           ADD SWITCH 1 GIVING SWITCH
           END-ADD.
           IF SWITCH NOT = 13
              DISPLAY "SWITCH (variable) WRONG: "
                      SWITCH
              END-DISPLAY
           END-IF.
           IF SWIT1-ON
              DISPLAY "ON"
              END-DISPLAY
           ELSE
              DISPLAY "OFF"
              END-DISPLAY
           END-IF.
           IF SWIT2-ON
              DISPLAY " ON"
              END-DISPLAY
           ELSE
              DISPLAY " OFF"
              END-DISPLAY
           END-IF.
           SET SWITCH-B TO OFF
           IF SWIT2-ON
              CONTINUE
           END-IF.
           IF SWIT25-ON
              CONTINUE
           END-IF.
           IF SWIT26-ON
              CONTINUE
           END-IF.
           IF SWIT32-ON
              CONTINUE
           END-IF.
           IF SWIT32-OFF
              CONTINUE
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1541: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1541"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: invalid system-name 'SW1'
prog.cob:8: error: ON/OFF usage requires a SWITCH name
prog.cob:9: error: ON/OFF usage requires a SWITCH name
prog.cob:11: error: invalid system-name 'SWITCH B'
prog.cob:12: error: ON/OFF usage requires a SWITCH name
prog.cob:13: error: ON/OFF usage requires a SWITCH name
prog.cob:23: error: invalid system-name 'SWITCH 25'
prog.cob:24: error: ON/OFF usage requires a SWITCH name
prog.cob:25: error: ON/OFF usage requires a SWITCH name
prog.cob:27: error: invalid system-name 'SWITCH Y'
prog.cob:28: error: ON/OFF usage requires a SWITCH name
prog.cob:29: error: ON/OFF usage requires a SWITCH name
prog.cob:31: error: invalid system-name 'SWITCH Z'
prog.cob:32: error: ON/OFF usage requires a SWITCH name
prog.cob:33: error: ON/OFF usage requires a SWITCH name
prog.cob:49: error: 'SWIT1-ON' is not defined
prog.cob:56: error: 'SWIT2-ON' is not defined
prog.cob:63: error: 'SWITCH-B' is not defined
prog.cob:63: error: syntax error, unexpected OFF
prog.cob:70: error: 'SWIT26-ON' is not defined
prog.cob:76: error: 'SWIT32-OFF' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1541"
$at_failed && at_fn_log_failure
$at_traceon; }

# FIXME: There should be an additional
#prog.cob:19: error: duplicate definition of 'SWITCH-25'
#prog.cob:15: note: 'SWITCH-25' previously defined here
#
{ set +x
$as_echo "$at_srcdir/syn_misc.at:1568: \$COMPILE_ONLY -std=acu-strict -fsystem-name=SW1 -fno-relax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict -fsystem-name=SW1 -fno-relax-syntax-checks prog.cob" "syn_misc.at:1568"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict -fsystem-name=SW1 -fno-relax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:33: error: duplicate ON clause
prog.cob:76: error: 'SWIT32-OFF' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1568"
$at_failed && at_fn_log_failure
$at_traceon; }

# FIXME: There should be an additional
#prog.cob:19: error: duplicate definition of 'SWITCH-25'
#prog.cob:15: note: 'SWITCH-25' previously defined here
#prog.cob:23: error: duplicate definition of 'SWITCH 25'
#prog.cob:15: note: 'SWITCH-25' previously defined here
#prog.cob:27: error: duplicate definition of 'SWITCH Y'
#prog.cob:15: note: 'SWITCH-25' previously defined here

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_272
#AT_START_273
at_fn_group_banner 273 'syn_misc.at:1583' \
  "unexpected mnemonic-name location" "              " 2
at_xfail=no
(
  $as_echo "273. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       SPECIAL-NAMES.
           stdin IS my-stdin
           .
       PROCEDURE      DIVISION.
           CALL "something" USING stdout
           CALL "something" USING stdin
           CALL "something" USING my-stdin
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1601: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1601"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: invalid mnemonic identifier
prog.cob:11: error: invalid mnemonic identifier
prog.cob:12: error: invalid mnemonic identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1601"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_273
#AT_START_274
at_fn_group_banner 274 'syn_misc.at:1610' \
  "wrong device for mnemonic-name" "                 " 2
at_xfail=no
(
  $as_echo "274. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77 var          PIC x.
       PROCEDURE       DIVISION.
           ACCEPT  var FROM SYSOUT
           DISPLAY var UPON SYSIN
           ACCEPT  var FROM SYSIN
           DISPLAY var UPON SYSOUT
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1627: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1627"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: 'SYSOUT' is not an input device
prog.cob:9: error: 'SYSIN' is not an output device
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1627"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_274
#AT_START_275
at_fn_group_banner 275 'syn_misc.at:1635' \
  "missing mnemonic-name declaration" "              " 2
at_xfail=no
(
  $as_echo "275. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77 var          PIC x.
       PROCEDURE       DIVISION.
           ACCEPT var FROM mnemonic-name
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1649: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1649"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: unknown device 'mnemonic-name'; not defined in SPECIAL-NAMES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1649"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_275
#AT_START_276
at_fn_group_banner 276 'syn_misc.at:1656' \
  "unknown device in dialect" "                      " 2
at_xfail=no
(
  $as_echo "276. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77 var          PIC x.
       PROCEDURE       DIVISION.
           ACCEPT var  FROM COMMAND-LINE
           DISPLAY var UPON COMMAND-LINE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1671: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1671"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1671"
$at_failed && at_fn_log_failure
$at_traceon; }


# Checkme: Error currently doesn't occur for UPON_COMMAND_LINE as this is already tokenized
# in scanner.l. We just ignore this for now and maybe fix it later.
#AT_CHECK([$COMPILE_ONLY -fnot-reserved=COMMAND-LINE prog.cob], [1], [],
#[prog.cob:8: error: unknown device 'COMMAND-LINE'; it may exist in another dialect
#prog.cob:9: error: unknown device 'COMMAND-LINE'; it may exist in another dialect
#])
{ set +x
$as_echo "$at_srcdir/syn_misc.at:1679: \$COMPILE_ONLY -fnot-reserved=COMMAND-LINE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fnot-reserved=COMMAND-LINE prog.cob" "syn_misc.at:1679"
( $at_check_trace; $COMPILE_ONLY -fnot-reserved=COMMAND-LINE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: unknown device 'COMMAND-LINE'; it may exist in another dialect
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1679"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_276
#AT_START_277
at_fn_group_banner 277 'syn_misc.at:1686' \
  "ACCEPT WITH ( NO ) UPDATE / DEFAULT" "            " 2
at_xfail=no
(
  $as_echo "277. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       PROCEDURE        DIVISION.
           ACCEPT X                 END-ACCEPT.
           ACCEPT X WITH    UPDATE  END-ACCEPT.
           ACCEPT X WITH    DEFAULT END-ACCEPT.
           ACCEPT X WITH NO UPDATE  END-ACCEPT.
           ACCEPT X WITH NO DEFAULT END-ACCEPT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1706: \$COMPILE_ONLY -faccept-update prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -faccept-update prog.cob" "syn_misc.at:1706"
( $at_check_trace; $COMPILE_ONLY -faccept-update prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1706"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_277
#AT_START_278
at_fn_group_banner 278 'syn_misc.at:1711' \
  "ACCEPT WITH AUTO / TAB" "                         " 2
at_xfail=no
(
  $as_echo "278. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       PROCEDURE        DIVISION.
           ACCEPT X                       END-ACCEPT.
           ACCEPT X WITH    AUTO          END-ACCEPT.
           ACCEPT X WITH    AUTO-SKIP     END-ACCEPT.
           ACCEPT X WITH    AUTOTERMINATE END-ACCEPT.
           ACCEPT X WITH    TAB           END-ACCEPT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1731: \$COMPILE_ONLY -faccept-auto prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -faccept-auto prog.cob" "syn_misc.at:1731"
( $at_check_trace; $COMPILE_ONLY -faccept-auto prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1731"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_278
#AT_START_279
at_fn_group_banner 279 'syn_misc.at:1736' \
  "ACCEPT WITH LOWER / UPPER" "                      " 2
at_xfail=no
(
  $as_echo "279. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(05).
       PROCEDURE        DIVISION.
           ACCEPT X WITH LOWER     END-ACCEPT.
           ACCEPT X WITH UPPER     END-ACCEPT.
           ACCEPT X      LOWER
           ACCEPT X      UPPER
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1753: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1753"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1753"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_279
#AT_START_280
at_fn_group_banner 280 'syn_misc.at:1758' \
  "ACCEPT WITH SIZE" "                               " 2
at_xfail=no
(
  $as_echo "280. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(05).
       01 Y             PIC 9(04) BINARY VALUE 4.
       PROCEDURE        DIVISION.
           ACCEPT X WITH           SIZE    0 END-ACCEPT.
           ACCEPT X WITH           SIZE IS 1 END-ACCEPT.
           ACCEPT X WITH PROTECTED SIZE    2 END-ACCEPT.
           ACCEPT X WITH PROTECTED SIZE IS 3 END-ACCEPT.
           ACCEPT X                SIZE    Y END-ACCEPT.
           ACCEPT X                SIZE    0
           ACCEPT X                SIZE IS 1
           ACCEPT X      PROTECTED SIZE    2
           ACCEPT X      PROTECTED SIZE IS 3
           ACCEPT X                SIZE    Y
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1782: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1782"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1782"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_280
#AT_START_281
at_fn_group_banner 281 'syn_misc.at:1787' \
  "DISPLAY WITH SIZE" "                              " 2
at_xfail=no
(
  $as_echo "281. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(05).
       01 Y             PIC 9(04) BINARY VALUE 7.
       PROCEDURE        DIVISION.
           DISPLAY X AT 0101 WITH SIZE    5 END-DISPLAY.
           DISPLAY X AT 0101 WITH SIZE IS 6 END-DISPLAY.
           DISPLAY X AT 0101 WITH SIZE IS Y END-DISPLAY.
           DISPLAY X AT 0101      SIZE    5 END-DISPLAY.
           DISPLAY X AT 0101      SIZE IS 6 END-DISPLAY.
           DISPLAY X AT 0101      SIZE IS Y END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1807: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1807"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1807"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_281
#AT_START_282
at_fn_group_banner 282 'syn_misc.at:1812' \
  "source text after program-text area" "            " 2
at_xfail=no
(
  $as_echo "282. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.                                       COMMENT
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1826: \$COMPILE_ONLY -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wextra prog.cob" "syn_misc.at:1826"
( $at_check_trace; $COMPILE_ONLY -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: source text after program-text area (column 72)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1826"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_282
#AT_START_283
at_fn_group_banner 283 'syn_misc.at:1833' \
  "line overflow in fixed-form / free-form" "        " 2
at_xfail=no
(
  $as_echo "283. $at_setup_line: testing $at_desc ..."
  $at_traceon



# We're testing trailing tabs and whitespace (should not lead to warning)
# along with comments after boundaries (col 72 / col 512)

# remark: some editors remove trailing spaces, the  workaround: add "_" and
# remove it later via sed; AT_DATA would not do that when using double [[  ]]

cat >prog_tmpl.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.                                           																																																																																																																																		_
       DATA             DIVISION.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  _
       WORKING-STORAGE  SECTION.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   *> This is a real comment
       PROCEDURE        DIVISION.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  This is commentary only
           CONTINUE.                                              *> comment after column 72
      *    This is a very long comment that exceeds column 72 but doesn't exceed 512 bytes, therefore not leading to a line overflow. As it is a comment line there is no "Source text after column 72" warning
           CONTINUE.                                                    CONTINUE.
           CONTINUE.                                                                        _
           STOP RUN.
_ATEOF


# AT_DATA workaround via sed:
{ set +x
$as_echo "$at_srcdir/syn_misc.at:1858: \$SED -e 's/_\$//' prog_tmpl.cob > prog.cob"
at_fn_check_prepare_dynamic "$SED -e 's/_$//' prog_tmpl.cob > prog.cob" "syn_misc.at:1858"
( $at_check_trace; $SED -e 's/_$//' prog_tmpl.cob > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1858"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1860: \$COBC -fsyntax-only -fdiagnostics-plain-output -fixed -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -fixed -Wextra prog.cob" "syn_misc.at:1860"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -fixed -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:11: warning: source text after program-text area (column 72) [-Wdangling-text]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1860"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1866: \$COBC -fsyntax-only -fdiagnostics-plain-output -free -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -free -Wextra prog.cob" "syn_misc.at:1866"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -free -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: error: syntax error, unexpected IS, expecting SECTION or .
prog.cob:8: note: unknown statement 'This'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1866"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1873: \$COBC -fsyntax-only -fdiagnostics-plain-output -F -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -F -Wextra prog.cob" "syn_misc.at:1873"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -F -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: error: syntax error, unexpected IS, expecting SECTION or .
prog.cob:8: note: unknown statement 'This'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1873"
$at_failed && at_fn_log_failure
$at_traceon; }


# Check dialect option `format` (fixed for default) does not erase flags like `-F`, `--free`:
{ set +x
$as_echo "$at_srcdir/syn_misc.at:1881: \$COBC -fsyntax-only -fdiagnostics-plain-output -F -std=default -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -F -std=default -Wextra prog.cob" "syn_misc.at:1881"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -F -std=default -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: warning: source text exceeds 512 bytes, will be truncated [-Wothers]
prog.cob:8: error: syntax error, unexpected IS, expecting SECTION or .
prog.cob:8: note: unknown statement 'This'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:1881"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_283
#AT_START_284
at_fn_group_banner 284 'syn_misc.at:1891' \
  "missing newline in fixed-form / free-form" "      " 2
at_xfail=no
(
  $as_echo "284. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       PROCEDURE        DIVISION.
           CONTINUE
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1903: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1903"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1903"
$at_failed && at_fn_log_failure
$at_traceon; }


# fixing the initial setup but now producing a missing newline:
printf "           CONTINUE." >> prog.cob

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1910: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wextra -fixed prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wextra -fixed prog.cob" "syn_misc.at:1910"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wextra -fixed prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: line not terminated by a newline [-Wmissing-newline]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1910"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1913: \$COBC -fsyntax-only -fdiagnostics-plain-output -Wextra -free prog.cob"
at_fn_check_prepare_dynamic "$COBC -fsyntax-only -fdiagnostics-plain-output -Wextra -free prog.cob" "syn_misc.at:1913"
( $at_check_trace; $COBC -fsyntax-only -fdiagnostics-plain-output -Wextra -free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: line not terminated by a newline [-Wmissing-newline]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1913"
$at_failed && at_fn_log_failure
$at_traceon; }

# should not happen if the data only consists of space characters
printf "\n              \t " >> prog.cob

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1919: \$COMPILE_ONLY -Wextra prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wextra prog.cob" "syn_misc.at:1919"
( $at_check_trace; $COMPILE_ONLY -Wextra prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1919"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_284
#AT_START_285
at_fn_group_banner 285 'syn_misc.at:1925' \
  "continuation of COBOL words" "                    " 2
at_xfail=no
(
  $as_echo "285. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           GO
      -    BACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:1936: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_misc.at:1936"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: continuation of COBOL words is archaic in COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1936"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:1939: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:1939"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: continuation of COBOL words used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:1939"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_285
#AT_START_286
at_fn_group_banner 286 'syn_misc.at:1947' \
  "line and floating comments" "                     " 2
at_xfail=no
(
  $as_echo "286. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
      *    DISPLAY 'COMMENT'      END-DISPLAY
      /    DISPLAY 'COMMENTSLASH' END-DISPLAY
*          DISPLAY 'MFCOMMENT'    END-DISPLAY
 *         DISPLAY 'NOMFCOMMENT'  END-DISPLAY
        *> DISPLAY 'FLOATING'     END-DISPLAY
 *>        DISPLAY 'NOFLOATING'   END-DISPLAY
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
      *    DISPLAY 'COMMENT'       END-DISPLAY
      /    DISPLAY 'COMMENTSLASH'  END-DISPLAY
      $    DISPLAY 'COMMENTDOLLAR' END-DISPLAY
*          DISPLAY 'MFCOMMENT'     END-DISPLAY
 *         DISPLAY 'NOMFCOMMENT'   END-DISPLAY
        *> DISPLAY 'FLOATING'      END-DISPLAY
        |  DISPLAY 'ACUFLOATING'   END-DISPLAY
 |         DISPLAY 'NOACUFLOATING' END-DISPLAY
 *>        DISPLAY 'NOFLOATING'    END-DISPLAY
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

IDENTIFICATION   DIVISION.
PROGRAM-ID.      prog3.
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
DATA             DIVISION.
WORKING-STORAGE  SECTION.
PROCEDURE        DIVISION.
      * DISPLAY 'NOCOMMENT'        END-DISPLAY
      / DISPLAY 'NOCOMMENTSLASH'   END-DISPLAY
$       DISPLAY 'ACUCOMMENTDOLLAR' END-DISPLAY
*       DISPLAY 'NOMFCOMMENT'      END-DISPLAY
 |      DISPLAY 'ACUFLOATING'      END-DISPLAY
 *>     DISPLAY 'FLOATING'         END-DISPLAY
      x DISPLAY 'WRONGINDICATOR'   END-DISPLAY
        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2005: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:2005"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2005"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2007: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:2007"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "MFCOMMENT
NOMFCOMMENT
NOFLOATING
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2007"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2013: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:2013"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:11: error: invalid indicator '\$' at column 7
prog2.cob:15: error: invalid symbol '|' - skipping word
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2013"
$at_failed && at_fn_log_failure
$at_traceon; }


# note: for checking the result we actually either need to run the program
#       or change it to string concatenation and raise a constant compile
#       time warning we do (historically) the first (for now)
#
{ set +x
$as_echo "$at_srcdir/syn_misc.at:2022: \$COMPILE -fmfcomment prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fmfcomment prog.cob" "syn_misc.at:2022"
( $at_check_trace; $COMPILE -fmfcomment prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2022"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2025: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:2025"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "NOMFCOMMENT
NOFLOATING
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2025"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2030: \$COMPILE_ONLY -fmfcomment prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fmfcomment prog2.cob" "syn_misc.at:2030"
( $at_check_trace; $COMPILE_ONLY -fmfcomment prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:11: error: invalid indicator '\$' at column 7
prog2.cob:15: error: invalid symbol '|' - skipping word
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2030"
$at_failed && at_fn_log_failure
$at_traceon; }


# COMPILE needed, see note above
{ set +x
$as_echo "$at_srcdir/syn_misc.at:2036: \$COMPILE -facucomment prog.cob -o prog1"
at_fn_check_prepare_dynamic "$COMPILE -facucomment prog.cob -o prog1" "syn_misc.at:2036"
( $at_check_trace; $COMPILE -facucomment prog.cob -o prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2036"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2038: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "syn_misc.at:2038"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "MFCOMMENT
NOMFCOMMENT
NOFLOATING
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2038"
$at_failed && at_fn_log_failure
$at_traceon; }


# COMPILE needed, see note above
{ set +x
$as_echo "$at_srcdir/syn_misc.at:2045: \$COMPILE -facucomment prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -facucomment prog2.cob" "syn_misc.at:2045"
( $at_check_trace; $COMPILE -facucomment prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2045"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2047: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "syn_misc.at:2047"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "MFCOMMENT
NOMFCOMMENT
NOACUFLOATING
NOFLOATING
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2047"
$at_failed && at_fn_log_failure
$at_traceon; }



{ set +x
$as_echo "$at_srcdir/syn_misc.at:2055: \$COMPILE_ONLY -free prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free prog3.cob" "syn_misc.at:2055"
( $at_check_trace; $COMPILE_ONLY -free prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:11: warning: ignoring invalid directive: '\$       DISPLAY'
prog3.cob:9: error: syntax error, unexpected *
prog3.cob:10: error: syntax error, unexpected /
prog3.cob:12: error: syntax error, unexpected *
prog3.cob:13: error: invalid symbol '|' - skipping word
prog3.cob:15: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2055"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2063: \$COMPILE_ONLY -free -fmfcomment prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fmfcomment prog3.cob" "syn_misc.at:2063"
( $at_check_trace; $COMPILE_ONLY -free -fmfcomment prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:11: warning: ignoring invalid directive: '\$       DISPLAY'
prog3.cob:9: error: syntax error, unexpected *
prog3.cob:10: error: syntax error, unexpected /
prog3.cob:12: error: syntax error, unexpected *
prog3.cob:13: error: invalid symbol '|' - skipping word
prog3.cob:15: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2063"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2071: \$COMPILE_ONLY -free -facucomment prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -facucomment prog3.cob" "syn_misc.at:2071"
( $at_check_trace; $COMPILE_ONLY -free -facucomment prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:11: warning: ignoring invalid directive: '\$       DISPLAY'
prog3.cob:9: error: syntax error, unexpected *
prog3.cob:10: error: syntax error, unexpected /
prog3.cob:12: error: syntax error, unexpected *
prog3.cob:15: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2071"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2078: \$COMPILE_ONLY -fformat=terminal -facucomment prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=terminal -facucomment prog3.cob" "syn_misc.at:2078"
( $at_check_trace; $COMPILE_ONLY -fformat=terminal -facucomment prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:9: error: syntax error, unexpected *
prog3.cob:10: error: syntax error, unexpected /
prog3.cob:15: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2078"
$at_failed && at_fn_log_failure
$at_traceon; }

# Check that invalid indicator and doesn't abort preprocessing
# and that errors in preprocessing doesn't abort compilation
{ set +x
$as_echo "$at_srcdir/syn_misc.at:2085: \$COMPILE_ONLY -fixed prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fixed prog3.cob" "syn_misc.at:2085"
( $at_check_trace; $COMPILE_ONLY -fixed prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:2: error: invalid indicator 'F' at column 7
prog3.cob:3: error: invalid indicator 'M' at column 7
prog3.cob:4: error: invalid indicator 'N' at column 7
prog3.cob:5: error: invalid indicator 'U' at column 7
prog3.cob:7: error: invalid indicator 'G' at column 7
prog3.cob:8: error: invalid indicator 'U' at column 7
prog3.cob:15: error: invalid indicator 'x' at column 7
prog3.cob:6: error: PROGRAM-ID header missing
prog3.cob:6: error: PROCEDURE DIVISION header missing
prog3.cob:6: error: syntax error, unexpected DIVISION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2085"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_286
#AT_START_287
at_fn_group_banner 287 'syn_misc.at:2101' \
  "word length" "                                    " 2
at_xfail=no
(
  $as_echo "287. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FILLER        PIC 9(01) VALUE 0.
           88 SOME-SPECIAL-VAL-WITH-LENGTH30    VALUE 0.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-31   VALUE 1.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-32C  VALUE 1.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES      VALUE 3.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE VALUE 4.
       PROCEDURE        DIVISION.
       SOME-SPECIAL-PAR-WITH-LENGTH30.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH30   TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-31.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-31  TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-32C.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-32C TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE TO TRUE.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FILLER        PIC 9(01) VALUE 0.
           88 SOME-SPECIAL-VAL-WITH-LENGTH30    VALUE 0.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-31   VALUE 1.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-32C  VALUE 1.
           88 SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES      VALUE 3.
       PROCEDURE        DIVISION.
       SOME-SPECIAL-PAR-WITH-LENGTH30.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH30   TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-31.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-31  TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-32C.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-32C TO TRUE.
       SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES.
           SET  SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES TO TRUE.
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 COUNTER       PIC 9 VALUE 0.
       PROCEDURE        DIVISION.

       00000000000000000000000000000000000000000000000000000000000
       SECTION.
       000000000000000000000000000000000000000000000000000000000000.
           ADD 1 TO COUNTER END-ADD
           EVALUATE COUNTER
           WHEN 1
           PERFORM
           00000000000000000000000000000000000000000000000000000000000
           WHEN 2
           PERFORM
           000000000000000000000000000000000000000000000000000000000000
           WHEN 3
           MOVE 0 TO COUNTER
           END-EVALUATE.

       100000000000000000000000000000000000000000000000000000000001
       SECTION.
       20000000000000000000000000000000000000000000000000000000002.
           ADD 1 TO COUNTER END-ADD
           EVALUATE COUNTER
           WHEN 1
           PERFORM
           100000000000000000000000000000000000000000000000000000000001
           WHEN 2
           PERFORM
           20000000000000000000000000000000000000000000000000000000002
           WHEN 3
           MOVE 0 TO COUNTER
           END-EVALUATE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2196: \$COMPILE_ONLY -free -fword-length=31 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fword-length=31 prog.cob" "syn_misc.at:2196"
( $at_check_trace; $COMPILE_ONLY -free -fword-length=31 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-32C'
prog.cob:12: error: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog.cob:13: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-31':
prog.cob:19: error: word length exceeds 31 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-32C'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-32C':
prog.cob:20: error: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-32C'
prog.cob:21: error: word length exceeds 31 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES':
prog.cob:22: error: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog.cob:23: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE':
prog.cob:24: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2196"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2212: \$COMPILE_ONLY -free -fword-length=45 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fword-length=45 prog.cob" "syn_misc.at:2212"
( $at_check_trace; $COMPILE_ONLY -free -fword-length=45 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: word length exceeds 45 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog.cob:13: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-32C':
prog.cob:21: error: word length exceeds 45 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES':
prog.cob:22: error: word length exceeds 45 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog.cob:23: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE':
prog.cob:24: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2212"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2224: \$COMPILE_ONLY -free -fword-length=60 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fword-length=60 prog.cob" "syn_misc.at:2224"
( $at_check_trace; $COMPILE_ONLY -free -fword-length=60 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES':
prog.cob:23: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
prog.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE':
prog.cob:24: error: word length exceeds maximum of 63 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-90-CHARS-WHO-NEEDS-THAT-LONG-NAMES-I-CANNOT-THINK-OF-SOMEONE'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2224"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2232: \$COMPILE_ONLY -free -fword-length=45 -frelax-syntax-checks prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fword-length=45 -frelax-syntax-checks prog2.cob" "syn_misc.at:2232"
( $at_check_trace; $COMPILE_ONLY -free -fword-length=45 -frelax-syntax-checks prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:12: warning: word length exceeds 45 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog2.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-32C':
prog2.cob:20: warning: word length exceeds 45 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog2.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES':
prog2.cob:21: warning: word length exceeds 45 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2232"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2240: \$COMPILE_ONLY -free -fword-length=60 prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fword-length=60 prog2.cob" "syn_misc.at:2240"
( $at_check_trace; $COMPILE_ONLY -free -fword-length=60 prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2240"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2242: \$COMPILE_ONLY -free -fword-length=31 -frelax-syntax-checks prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -fword-length=31 -frelax-syntax-checks prog2.cob" "syn_misc.at:2242"
( $at_check_trace; $COMPILE_ONLY -free -fword-length=31 -frelax-syntax-checks prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:11: warning: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-32C'
prog2.cob:12: warning: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog2.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-31':
prog2.cob:18: warning: word length exceeds 31 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-32C'
prog2.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-32C':
prog2.cob:19: warning: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-32C'
prog2.cob:20: warning: word length exceeds 31 characters: 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
prog2.cob: in paragraph 'SOME-SPECIAL-PAR-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES':
prog2.cob:21: warning: word length exceeds 31 characters: 'SOME-SPECIAL-VAL-WITH-LENGTH-58C-WHO-NEEDS-THAT-LONG-NAMES'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2242"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2254: \$COMPILE_ONLY -fword-length=59 prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fword-length=59 prog3.cob" "syn_misc.at:2254"
( $at_check_trace; $COMPILE_ONLY -fword-length=59 prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob: in section '00000000000000000000000000000000000000000000000000000000000':
prog3.cob:11: error: word length exceeds 59 characters: '000000000000000000000000000000000000000000000000000000000000'
prog3.cob: in paragraph '000000000000000000000000000000000000000000000000000000000000':
prog3.cob:25: error: word length exceeds 59 characters: '100000000000000000000000000000000000000000000000000000000001'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2254"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_287
#AT_START_288
at_fn_group_banner 288 'syn_misc.at:2264' \
  "Segmentation Module" "                            " 2
at_xfail=no
(
  $as_echo "288. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       PROCEDURE        DIVISION.

       DECLARATIVES.

       DEC-1 SECTION 49.
           CONTINUE.

       DEC-2 SECTION 50.
           CONTINUE.

       END DECLARATIVES.

       SEC-1 SECTION 00.
           CONTINUE.

       SEC-2 SECTION 01.
           CONTINUE.

       SEC-3 SECTION -00.
           CONTINUE.

       SEC-4 SECTION 100.
           CONTINUE.

       SEC-5 SECTION 49.
           CONTINUE.

       SEC-6 SECTION 50.
           PERFORM SEC-1.

       SEC-7 SECTION 99.
           PERFORM SEC-1.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2307: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2307"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'DEC-1':
prog.cob:9: warning: section segments ignored
prog.cob: in section 'DEC-2':
prog.cob:12: warning: section segments ignored
prog.cob: in section 'SEC-1':
prog.cob:17: warning: section segments ignored
prog.cob: in section 'SEC-2':
prog.cob:20: warning: section segments ignored
prog.cob: in section 'SEC-3':
prog.cob:23: error: unsigned integer value expected
prog.cob:23: warning: section segments ignored
prog.cob: in section 'SEC-4':
prog.cob:26: warning: section segments ignored
prog.cob: in section 'SEC-5':
prog.cob:29: warning: section segments ignored
prog.cob: in section 'SEC-6':
prog.cob:32: warning: section segments ignored
prog.cob: in section 'SEC-7':
prog.cob:35: warning: section segments ignored
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2307"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2328: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:2328"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'DEC-1':
prog.cob:9: warning: section segments is obsolete in COBOL 85
prog.cob:9: warning: SECTION segment within DECLARATIVES is not implemented
prog.cob: in section 'DEC-2':
prog.cob:12: warning: section segments is obsolete in COBOL 85
prog.cob:12: error: SECTION segment-number in DECLARATIVES must be less than 50
prog.cob:12: warning: SECTION segment within DECLARATIVES is not implemented
prog.cob: in section 'SEC-1':
prog.cob:17: warning: section segments is obsolete in COBOL 85
prog.cob: in section 'SEC-2':
prog.cob:20: warning: section segments is obsolete in COBOL 85
prog.cob: in section 'SEC-3':
prog.cob:23: error: unsigned integer value expected
prog.cob:23: warning: section segments is obsolete in COBOL 85
prog.cob: in section 'SEC-4':
prog.cob:26: warning: section segments is obsolete in COBOL 85
prog.cob:26: error: SECTION segment-number must be less than or equal to 99
prog.cob: in section 'SEC-5':
prog.cob:29: warning: section segments is obsolete in COBOL 85
prog.cob: in section 'SEC-6':
prog.cob:32: warning: section segments is obsolete in COBOL 85
prog.cob: in section 'SEC-7':
prog.cob:35: warning: section segments is obsolete in COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2328"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_288
#AT_START_289
at_fn_group_banner 289 'syn_misc.at:2356' \
  "ACCEPT FROM ESCAPE KEY" "                         " 2
at_xfail=no
(
  $as_echo "289. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: add function test to run_manual_screen.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 KEYNUM        PIC 9(04).
       PROCEDURE        DIVISION.

           ACCEPT KEYNUM FROM ESCAPE KEY
           DISPLAY "Key pressed: " KEYNUM
           ACCEPT KEYNUM FROM ESCAPE
           DISPLAY "Key pressed: " KEYNUM
           ACCEPT OMITTED

           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2377: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2377"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2377"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_289
#AT_START_290
at_fn_group_banner 290 'syn_misc.at:2382' \
  "ACUCOBOL USAGE FLOAT / DOUBLE" "                  " 2
at_xfail=no
(
  $as_echo "290. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       77  myfloat       usage float
                         value is 3.97E+24.
       77  mydouble      usage double
                         value is 3.97E+44.
       PROCEDURE DIVISION.
       MAIN.
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2400: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:2400"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2400"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2401: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2401"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2401"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2403: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_misc.at:2403"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'float' is not defined, but is a reserved word in another dialect
prog.cob:8: error: 'double' is not defined, but is a reserved word in another dialect
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2403"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_290
#AT_START_291
at_fn_group_banner 291 'syn_misc.at:2411' \
  "ACUCOBOL USAGE HANDLE" "                          " 2
at_xfail=no
(
  $as_echo "291. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: need a better test here
# TODO: maybe add a compiler support configuration to provide better messages

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       78  listdir-open                value 1.
       78  listdir-next                value 2.
       78  listdir-close               value 3.
       77  pattern           pic x(5) value "*.cob".
       77  directory         pic x(5) value ".".
       77  filename          pic x(256).
       77  mydir             usage handle.

       77  mythread          usage handle of thread.
       77  unused-thread           handle    thread.

       77  mywindow          usage handle of window.

       77  nor-a-handle      usage handle bananas.
       77  neither-a-handle  usage handle of apes.
       77  control-handle    usage handle of label.

       PROCEDURE DIVISION.
       MAIN.
      * Call LISTDIR-OPEN to get a directory handle.
           call "C$LIST-DIRECTORY"
              using listdir-open, directory, pattern.
           move return-code to mydir.
      * Call LISTDIR-NEXT to get the names of the files.
      * Repeat this operation until a filename containing only
      * spaces is returned.  The filenames are not necessarily
      * returned in any particular order.  Filenames may be
      * sorted on some machines and not on others.
           perform thread with test after until filename = spaces
             handle in mywindow
              call "C$LIST-DIRECTORY"
                 using listdir-next, mydir, filename
           end-perform.
           stop thread mywindow
      * Call LISTDIR-CLOSE to close the directory and deallocate
      * memory. Omitting this call will result in memory leaks.
           call "C$LIST-DIRECTORY" using listdir-close, mydir.
      *
           CALL IN THREAD 'NOTHERE'
                HANDLE IN mywindow
                USING  'STUFF'
              NOT ON EXCEPTION  DISPLAY 'called in THREAD'
           END-CALL
      *
      *    Just to check that the handles are still recognized and usable:
           destroy neither-a-handle, control-handle
      *
      *    check for invalid use
           add  neither-a-handle to control-handle
           compute mywindow = 0
           string mydir delimited by size into filename
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2477: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:2477"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:19: error: unknown HANDLE type: bananas
prog.cob:20: error: unknown HANDLE type: apes
prog.cob:21: warning: HANDLE OF control-type is not implemented
prog.cob: in paragraph 'MAIN':
prog.cob:34: warning: THREAD is not implemented
prog.cob:36: warning: THREAD is not implemented
prog.cob:35: error: HANDLE must be either a generic or a THREAD HANDLE
prog.cob:39: error: HANDLE must be either a generic or a THREAD HANDLE
prog.cob:39: warning: STOP THREAD is replaced by STOP RUN
prog.cob:44: warning: THREAD is not implemented
prog.cob:46: warning: THREAD is not implemented
prog.cob:45: error: HANDLE must be either a generic or a THREAD HANDLE
prog.cob:51: warning: GRAPHICAL CONTROL is not implemented
prog.cob:54: error: HANDLE item not allowed here: 'neither-a-handle'
prog.cob:55: error: HANDLE item not allowed here: 'mywindow'
prog.cob:56: error: HANDLE item not allowed here: 'mydir'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2477"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2496: \$COMPILE_ONLY -std=rm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=rm-strict prog.cob" "syn_misc.at:2496"
( $at_check_trace; $COMPILE_ONLY -std=rm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: 'handle' is not defined, but is a reserved word in another dialect
prog.cob:14: error: 'handle' is not defined, but is a reserved word in another dialect
prog.cob:15: error: syntax error, unexpected Identifier
prog.cob:17: error: 'handle' is not defined, but is a reserved word in another dialect
prog.cob:19: error: 'handle' is not defined, but is a reserved word in another dialect
prog.cob:20: error: 'handle' is not defined, but is a reserved word in another dialect
prog.cob:21: error: 'handle' is not defined, but is a reserved word in another dialect
prog.cob: in paragraph 'MAIN':
prog.cob:35: error: 'handle IN mywindow' is not defined
prog.cob:34: error: invalid expression: unfinished expression
prog.cob:38: error: syntax error, unexpected END-PERFORM
prog.cob:39: error: 'thread' is not defined, but is a reserved word in another dialect
prog.cob:39: error: syntax error, unexpected Identifier
prog.cob:44: error: syntax error, unexpected Identifier, expecting THREAD
prog.cob:48: error: syntax error, unexpected END-CALL
prog.cob:51: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2496"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_291
#AT_START_292
at_fn_group_banner 292 'syn_misc.at:2518' \
  "ACUCOBOL WINDOW statements" "                     " 2
at_xfail=no
(
  $as_echo "292. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: need a better tests when we implement this,
#       likely split into multiple ones

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       77  myhandle      usage handle.
       77  mythread      usage handle of thread.
       77  WINDOW-HANDLE usage handle of window.
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY WINDOW, LINE 1, COLUMN 29, SIZE 51, LINES 12,
               ERASE SCREEN BOXED SHADOW, POP-UP AREA IS WINDOW-HANDLE
           END-DISPLAY
           DISPLAY "THIS IS TEXT IN A WINDOW"
           DISPLAY FLOATING WINDOW UPON WINDOW-HANDLE,
               LINE 5, COLUMN 10, SIZE 20, LINES 2,
               ERASE SCREEN, POP-UP AREA IS myhandle
           END-DISPLAY
           DISPLAY "Some text for the floating window"
           ACCEPT OMITTED
           CLOSE WINDOW myhandle
           DISPLAY FLOATING WINDOW,
               LINE 5, COLUMN 10, SIZE 20, LINES 2,
               ERASE SCREEN, POP-UP AREA mythread
           END-DISPLAY
           ACCEPT OMITTED
           DESTROY WINDOW-HANDLE
           DISPLAY WINDOW AT 1020 SIZE 36 LINES 15 BOXED
              FOREGROUND-COLOR IS 7
              BACKGROUND-COLOR IS 0
              TOP CENTERED TITLE IS 'SOME TITLE'
              pop-up area = WINDOW-HANDLE.
           DISPLAY SUBWINDOW UPON WINDOW-HANDLE SHADOW
              AT 0505 SIZE 25 LINES 10
              BOTTOM LEFT TITLE = 'buttom left'
              BACKGROUND-COLOR IS 10
              FOREGROUND-COLOR IS 5.
           DISPLAY WINDOW UPON WINDOW-HANDLE SHADOW
              AT 0808 SIZE 18 LINES 5
              RIGHT TITLE 'top right'
              BACKGROUND-COLOR 1
              FOREGROUND-COLOR 14.
           ACCEPT OMITTED
           DESTROY WINDOW-HANDLE
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2572: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:2572"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN':
prog.cob:11: warning: GRAPHICAL WINDOW is not implemented
prog.cob:15: warning: GRAPHICAL WINDOW is not implemented
prog.cob:21: warning: GRAPHICAL WINDOW is not implemented
prog.cob:22: warning: GRAPHICAL WINDOW is not implemented
prog.cob:24: error: HANDLE must be either a generic or a WINDOW HANDLE or X(10)
prog.cob:27: warning: GRAPHICAL CONTROL is not implemented
prog.cob:28: warning: GRAPHICAL WINDOW is not implemented
prog.cob:33: warning: GRAPHICAL WINDOW is not implemented
prog.cob:38: warning: GRAPHICAL WINDOW is not implemented
prog.cob:44: warning: GRAPHICAL CONTROL is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2572"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2586: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2586"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN':
prog.cob:11: warning: GRAPHICAL WINDOW is not implemented
prog.cob:15: warning: GRAPHICAL WINDOW is not implemented
prog.cob:21: warning: GRAPHICAL WINDOW is not implemented
prog.cob:22: warning: GRAPHICAL WINDOW is not implemented
prog.cob:24: error: HANDLE must be either a generic or a WINDOW HANDLE or X(10)
prog.cob:27: warning: GRAPHICAL CONTROL is not implemented
prog.cob:28: warning: GRAPHICAL WINDOW is not implemented
prog.cob:33: warning: GRAPHICAL WINDOW is not implemented
prog.cob:38: warning: GRAPHICAL WINDOW is not implemented
prog.cob:44: warning: GRAPHICAL CONTROL is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2586"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_292
#AT_START_293
at_fn_group_banner 293 'syn_misc.at:2603' \
  "ACUCOBOL GRAPHICAL controls" "                    " 2
at_xfail=no
(
  $as_echo "293. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: need a better tests when we implement this,
#       likely split into multiple ones

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       77  window-handle USAGE HANDLE OF WINDOW.
       77  lb-row        PIC X(10).
       77  lb-color      PIC 9(05) VALUE 8192.
       77  lb-num-lines  PIC 9(02) VALUE 20.
       77  lb-num-rows   PIC 9(02) VALUE 11.
       77  window-lines  PIC 9(02) VALUE 22.
       77  window-rows   PIC 9(02) VALUE 13.
       77  selection-idx PIC S9(02).
       SCREEN SECTION.
       01 lb-screen.
           03 lb-frm LIST-BOX 3-D
      *             FIXME: the following should be possible in any order
                    UNSORTED
                    EXCEPTION-VALUE = 13
                    COLOR lb-color
                    CLINE 1 CCOL 1
                    LINES = lb-num-lines
                    SIZE  IS lb-num-rows
      *             VALUE lb-row  raises error as no identifer according
      *                           to cobol2002, but here it is fine
                    .
       PROCEDURE DIVISION.
       MAIN.
           MODIFY lb-frm ITEM-TO-ADD = 'Row 1'
           MODIFY lb-frm ITEM-TO-ADD = 'Row 2'
           MODIFY lb-frm ITEM-TO-ADD = 'Row 3'
           MODIFY lb-frm ITEM-TO-ADD = 'Row 4'
           MODIFY lb-frm ITEM-TO-ADD = 'Row 5'
           MODIFY lb-frm ITEM-TO-ADD = 'Row 6'
           MODIFY lb-frm ITEM-TO-ADD = 'Row 7'
           DISPLAY FLOATING WINDOW
               LINE 5 COL 5
               LINES window-lines
               SIZE  window-rows
               BOXED
               COLOR lb-color
               HANDLE IS window-handle
           END-DISPLAY
           DISPLAY lb-screen
           ACCEPT  lb-screen
           IF lb-row = SPACES
              INQUIRE lb-frm SELECTION-INDEX IN selection-idx
              IF selection-idx > ZERO
                 MODIFY  lb-frm QUERY-INDEX = selection-idx
                 INQUIRE lb-frm ITEM-VALUE IN lb-row
              END-IF
           END-IF
           CLOSE WINDOW window-handle
           DISPLAY "chosen row value was '" lb-row "'"
           ACCEPT OMITTED
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2668: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:2668"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:16: warning: GRAPHICAL CONTROL is not implemented
prog.cob:21: warning: COLOR clause (SCREEN) is not implemented
prog.cob:23: warning: LINES clause is not implemented
prog.cob:26: warning: screen positions from data-item is not implemented
prog.cob: in paragraph 'MAIN':
prog.cob:36: warning: GRAPHICAL WINDOW is not implemented
prog.cob:53: warning: GRAPHICAL WINDOW is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2668"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_293
#AT_START_294
at_fn_group_banner 294 'syn_misc.at:2681' \
  "DISPLAY MESSAGE BOX" "                            " 2
at_xfail=no
(
  $as_echo "294. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       77  my-text             pic x(10) value "TEXT".
       78  MB-OK               VALUE 1.
       78  MB-YES-NO           VALUE 2.
       78  MB-OK-CANCEL        VALUE 3.
       78  MB-YES-NO-CANCEL    VALUE 4.
       78  MB-YES              VALUE 1.
       78  MB-NO               VALUE 2.
       78  MB-CANCEL           VALUE 3.
       78  MB-DEFAULT-ICON     VALUE 1.
       78  MB-WARNING-ICON     VALUE 2.
       78  MB-ERROR-ICON       VALUE 3.
       PROCEDURE DIVISION.
           DISPLAY MESSAGE "Important"
                   TITLE "Very important"
                   TYPE = MB-OK
                   ICON IS MB-WARNING-ICON
           DISPLAY MESSAGE "This is" space "my" space my-text
           DISPLAY MESSAGE BOX "More messages?"
                   TYPE  MB-YES-NO
                   TITLE = "box title"
                   DEFAULT IS MB-YES
                   RETURNING RETURN-CODE
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2715: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:2715"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: warning: handling of DISPLAY MESSAGE is unfinished; implementation is likely to be changed
prog.cob:22: warning: handling of DISPLAY MESSAGE is unfinished; implementation is likely to be changed
prog.cob:23: warning: handling of DISPLAY MESSAGE is unfinished; implementation is likely to be changed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2715"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_294
#AT_START_295
at_fn_group_banner 295 'syn_misc.at:2724' \
  "DISPLAY OMITTED" "                                " 2
at_xfail=no
(
  $as_echo "295. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE DIVISION.
           DISPLAY OMITTED WITH BELL
           DISPLAY OMITTED LINE 10 COL 15 ERASE EOL
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2737: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2737"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: warning: handling of DISPLAY OMITTED is unfinished; implementation is likely to be changed
prog.cob:6: warning: handling of DISPLAY OMITTED is unfinished; implementation is likely to be changed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2737"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_295
#AT_START_296
at_fn_group_banner 296 'syn_misc.at:2745' \
  "CGI: EXTERNAL-FORM" "                             " 2
at_xfail=no
(
  $as_echo "296. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: need a better tests when we implement this,
#       likely split into multiple ones

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  GNUCOBOL-URL IS EXTERNAL-FORM
                IDENTIFIED BY "http://www.gnu.org/software/gnucobol/".
       01  WEB-PAGE-1 EXTERNAL-FORM,
                IDENTIFIED "cgipage1".
       01  SIMPLE-FORM IS EXTERNAL-FORM.
           03  SIMPLE-FORM-VAR1  PIC X(10).
           03  SIMPLE-FORM-VAR2  PIC 9(5).
       01  MY-FORM EXTERNAL-FORM.
           03  CGI-VAR1 PIC X(20) IDENTIFIED "Name".
           03  CGI-VAR2 PIC X(50) IDENTIFIED BY CGI-VAR1.

       PROCEDURE DIVISION.
       MAIN.
      *>   CGI display of static content (full URL)
           DISPLAY GNUCOBOL-URL
      *>   CGI display of static content (current URL + "cgipage1" + ".html")
           DISPLAY WEB-PAGE-1
      *>   CGI display of output form
           DISPLAY MY-FORM
      *>   CGI display of input  form (docs say: used for debugging purposes)
           DISPLAY SIMPLE-FORM
      *>   CGI accept
           ACCEPT SIMPLE-FORM
      *>   normal accept
           ACCEPT SIMPLE-FORM-VAR1
      *>   CGI accept with first var (with cgi identifier Name)
      *>   setting the cgi identifier of the second
           ACCEPT MY-FORM
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2788: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:2788"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: EXTERNAL-FORM is not implemented
prog.cob:8: warning: EXTERNAL-FORM is not implemented
prog.cob:10: warning: EXTERNAL-FORM is not implemented
prog.cob:13: warning: EXTERNAL-FORM is not implemented
prog.cob:14: warning: EXTERNAL-FORM (IDENTIFIED BY) is not implemented
prog.cob:15: warning: EXTERNAL-FORM (IDENTIFIED BY) is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2788"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_296
#AT_START_297
at_fn_group_banner 297 'syn_misc.at:2800' \
  "adding/removing reserved words" "                 " 2
at_xfail=no
(
  $as_echo "297. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  hello       PIC X.
       01  foo         PIC X.
       01  bars        PIC X.
       01  file        PIC X.
       01  background-color PIC X.

       PROCEDURE       DIVISION.
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2820: \$COMPILE_ONLY -freserved=hello,foo,bars,background-color -fnot-reserved=file prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=hello,foo,bars,background-color -fnot-reserved=file prog.cob" "syn_misc.at:2820"
( $at_check_trace; $COMPILE_ONLY -freserved=hello,foo,bars,background-color -fnot-reserved=file prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: 'hello' is a reserved word, but isn't supported
prog.cob:8: error: 'foo' is a reserved word, but isn't supported
prog.cob:9: error: 'bars' is a reserved word, but isn't supported
prog.cob:11: error: syntax error, unexpected BACKGROUND-COLOR
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2820"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2826: \$COMPILE_ONLY -fnot-reserved=file prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fnot-reserved=file prog.cob" "syn_misc.at:2826"
( $at_check_trace; $COMPILE_ONLY -fnot-reserved=file prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2826"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_297
#AT_START_298
at_fn_group_banner 298 'syn_misc.at:2830' \
  "adding aliases" "                                 " 2
at_xfail=no
(
  $as_echo "298. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.  prog.

       PROCEDURE DIVISION.
           FOO "Hello, world!"
           .
_ATEOF


# FIXME: user defined words need to store a reference to the name originally defining the word
#        otherwise we can't help the user to know where the error came from
#        (command line is only a special case, but even then it may be wrapped and not visible
#        to the user)
#AT_CHECK([$COMPILE_ONLY -freserved=FOO=DISPLAY* -freserved=BARS:FOO prog.cob], [1], [],
#[configuration warning: -freserved=FOO=DISPLAY*: ignored asterisk at end of alias target
#configuration error:
#-freserved=BARS:FOO: alias target 'FOO' is not a default reserved word
#])

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2852: \$COMPILE_ONLY -freserved=FOO=DISPLAY* -freserved=BARS:FOO prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=FOO=DISPLAY* -freserved=BARS:FOO prog.cob" "syn_misc.at:2852"
( $at_check_trace; $COMPILE_ONLY -freserved=FOO=DISPLAY* -freserved=BARS:FOO prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "configuration warning: -freserved=FOO=DISPLAY*: ignored asterisk at end of alias target
configuration error:
alias target 'FOO' is not a default reserved word
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2852"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2858: \$COMPILE_ONLY -freserved=FOO=DISPLAY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=FOO=DISPLAY prog.cob" "syn_misc.at:2858"
( $at_check_trace; $COMPILE_ONLY -freserved=FOO=DISPLAY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2858"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2859: \$COMPILE_ONLY -freserved=FOO:DISPLAY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=FOO:DISPLAY prog.cob" "syn_misc.at:2859"
( $at_check_trace; $COMPILE_ONLY -freserved=FOO:DISPLAY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2859"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2860: \$COMPILE_ONLY -freserved=\" FOO = DISPLAY  \" prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=\" FOO = DISPLAY  \" prog.cob" "syn_misc.at:2860"
( $at_check_trace; $COMPILE_ONLY -freserved=" FOO = DISPLAY  " prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2860"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_298
#AT_START_299
at_fn_group_banner 299 'syn_misc.at:2864' \
  "overriding default words" "                       " 2
at_xfail=no
(
  $as_echo "299. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.  prog.

       PROCEDURE DIVISION.
           COMP-1 "Hello, world!"
           DISPLAY "Hello, world!".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2876: \$COMPILE_ONLY -freserved=COMP-1=DISPLAY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=COMP-1=DISPLAY prog.cob" "syn_misc.at:2876"
( $at_check_trace; $COMPILE_ONLY -freserved=COMP-1=DISPLAY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2876"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.  prog2.

       PROCEDURE DIVISION.
           COMP-1 "Hello, world!".
           DISPLAY "Hello, world!".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2887: \$COMPILE_ONLY -fnot-reserved=DISPLAY -freserved=COMP-1=DISPLAY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fnot-reserved=DISPLAY -freserved=COMP-1=DISPLAY prog2.cob" "syn_misc.at:2887"
( $at_check_trace; $COMPILE_ONLY -fnot-reserved=DISPLAY -freserved=COMP-1=DISPLAY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: syntax error, unexpected Literal, expecting SECTION or .
prog2.cob:7: note: unknown statement 'DISPLAY'; it may exist in another dialect
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2887"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_299
#AT_START_300
at_fn_group_banner 300 'syn_misc.at:2895' \
  "complete specified word list" "                   " 2
at_xfail=no
(
  $as_echo "300. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.  prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SQLCA.
           03  SQLCABC         USAGE BINARY-LONG VALUE 136.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2907: \$COMPILE_ONLY -std=ibm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict prog.cob" "syn_misc.at:2907"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: 'BINARY-LONG' is not defined, but is a reserved word in another dialect
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2907"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2910: \$COMPILE_ONLY -std=ibm-strict -freserved=BINARY-LONG prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict -freserved=BINARY-LONG prog.cob" "syn_misc.at:2910"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict -freserved=BINARY-LONG prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2910"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2911: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "syn_misc.at:2911"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2911"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_300
#AT_START_301
at_fn_group_banner 301 'syn_misc.at:2915' \
  "ANY LENGTH item as formal parameter" "            " 2
at_xfail=no
(
  $as_echo "301. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA           DIVISION.
       LINKAGE        SECTION.
       01  str        ANY LENGTH PIC X.

       PROCEDURE DIVISION USING str.
           GOBACK
           .
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog2.

       DATA           DIVISION.
       LINKAGE        SECTION.
       01  str        ANY LENGTH PIC X.

       PROCEDURE DIVISION.
           GOBACK
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2943: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2943"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2943"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:2944: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:2944"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: error: 'str' ANY LENGTH item must be a formal parameter
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2944"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_301
#AT_START_302
at_fn_group_banner 302 'syn_misc.at:2950' \
  "ANY LENGTH item as BY VALUE formal parameter" "   " 2
at_xfail=no
(
  $as_echo "302. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA           DIVISION.
       LINKAGE        SECTION.
       01  str        ANY LENGTH PIC X.

       PROCEDURE DIVISION USING VALUE str.
           GOBACK
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:2966: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2966"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: handling of parameters passed BY VALUE is unfinished; implementation is likely to be changed
prog.cob:9: error: ANY LENGTH items may only be BY REFERENCE formal parameters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:2966"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_302
#AT_START_303
at_fn_group_banner 303 'syn_misc.at:2973' \
  "swapped SOURCE- and OBJECT-COMPUTER" "            " 2
at_xfail=no
(
  $as_echo "303. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       OBJECT-COMPUTER. a.
       SOURCE-COMPUTER. b.
_ATEOF


# MF extension, supported by GnuCOBOL
{ set +x
$as_echo "$at_srcdir/syn_misc.at:2987: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:2987"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2987"
$at_failed && at_fn_log_failure
$at_traceon; }

# note: testing with lax configuration, otherwise there would be an error
{ set +x
$as_echo "$at_srcdir/syn_misc.at:2989: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_misc.at:2989"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: SOURCE-COMPUTER incorrectly after OBJECT-COMPUTER used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:2989"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_303
#AT_START_304
at_fn_group_banner 304 'syn_misc.at:2995' \
  "CONF. SECTION paragraphs in wrong order" "        " 2
at_xfail=no
(
  $as_echo "304. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       REPOSITORY.
       SOURCE-COMPUTER. b.
       OBJECT-COMPUTER. a.
       SPECIAL-NAMES.

       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog2.

       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       SOURCE-COMPUTER. b.
       OBJECT-COMPUTER. a.
       REPOSITORY.
       SPECIAL-NAMES.

       END PROGRAM prog2.

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog3.

       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       REPOSITORY.
       SOURCE-COMPUTER. b.
       OBJECT-COMPUTER. a.

       END PROGRAM prog3.

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog4.

       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       REPOSITORY.
       SPECIAL-NAMES.
       SOURCE-COMPUTER. b.
       OBJECT-COMPUTER. a.

       END PROGRAM prog4.
_ATEOF


# MF extension, supported by GnuCOBOL
{ set +x
$as_echo "$at_srcdir/syn_misc.at:3048: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3048"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3048"
$at_failed && at_fn_log_failure
$at_traceon; }

# note: testing with lax configuration, otherwise there would be an error
{ set +x
$as_echo "$at_srcdir/syn_misc.at:3050: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_misc.at:3050"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: SOURCE-COMPUTER incorrectly after REPOSITORY used
prog.cob:22: warning: SPECIAL-NAMES incorrectly after REPOSITORY used
prog.cob:32: warning: SOURCE-COMPUTER incorrectly after REPOSITORY used
prog.cob:43: warning: SPECIAL-NAMES incorrectly after REPOSITORY used
prog.cob:44: warning: SOURCE-COMPUTER incorrectly after SPECIAL-NAMES used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3050"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3057: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_misc.at:3057"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: SOURCE-COMPUTER incorrectly after REPOSITORY used
prog.cob:22: error: SPECIAL-NAMES incorrectly after REPOSITORY used
prog.cob:32: error: SOURCE-COMPUTER incorrectly after REPOSITORY used
prog.cob:43: error: SPECIAL-NAMES incorrectly after REPOSITORY used
prog.cob:44: error: SOURCE-COMPUTER incorrectly after SPECIAL-NAMES used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3057"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_304
#AT_START_305
at_fn_group_banner 305 'syn_misc.at:3067' \
  "NOT ON EXCEPTION with STATIC CALL convention" "   " 2
at_xfail=no
(
  $as_echo "305. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
           CALL STATIC "stuff"
              ON EXCEPTION
                 CONTINUE
           END-CALL
           GOBACK.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog2.
       PROCEDURE      DIVISION.
           CALL "stuff"
              ON EXCEPTION
                 CONTINUE
           END-CALL
           GOBACK.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       >> CALL-CONVENTION STATIC
       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog3.
       PROCEDURE      DIVISION.
           CALL "stuff"
              ON EXCEPTION
                 CONTINUE
           END-CALL
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3104: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3104"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: warning: ON EXCEPTION ignored because of STATIC CALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3104"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3107: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:3107"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3107"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3108: \$COMPILE_ONLY -static prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -static prog2.cob" "syn_misc.at:3108"
( $at_check_trace; $COMPILE_ONLY -static prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3108"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3109: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_misc.at:3109"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:6: warning: STATIC CALL convention ignored because of ON EXCEPTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3109"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_305
#AT_START_306
at_fn_group_banner 306 'syn_misc.at:3115' \
  "NOT ON EXCEPTION phrases before ON EXCEPTION" "   " 2
at_xfail=no
(
  $as_echo "306. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       ENVIRONMENT    DIVISION.
       INPUT-OUTPUT   SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.txt"
               ORGANIZATION LINE SEQUENTIAL.

       DATA           DIVISION.
       FILE           SECTION.
       FD  f LINAGE 10.
       01  f-rec PIC X.

       PROCEDURE      DIVISION.
           WRITE f-rec FROM "x"
               NOT END-OF-PAGE
                   CONTINUE
               END-OF-PAGE
                   CONTINUE
           END-WRITE
           WRITE f-rec FROM "x"
               END-OF-PAGE
                   CONTINUE
               NOT END-OF-PAGE
                   CONTINUE
           END-WRITE
           WRITE f-rec FROM "x"
               NOT END-OF-PAGE
                   CONTINUE
           END-WRITE
           WRITE f-rec FROM "x"
               END-OF-PAGE
                   CONTINUE
           END-WRITE

           DISPLAY "blah"
               ON EXCEPTION
                   CALL "err"
                       NOT ON EXCEPTION
                           CONTINUE
                       ON EXCEPTION
                           CONTINUE.
           DISPLAY "blah"
               NOT ON EXCEPTION
                   CALL "err"
                       ON EXCEPTION
                           CONTINUE
                       NOT ON EXCEPTION
                           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3171: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:3171"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:22: error: NOT AT END-OF-PAGE before AT END-OF-PAGE does not conform to COBOL 85
prog.cob:44: error: NOT EXCEPTION before EXCEPTION does not conform to COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3171"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3175: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3175"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3175"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_306
#AT_START_307
at_fn_group_banner 307 'syn_misc.at:3179' \
  "wrong dialect hints" "                            " 2
at_xfail=no
(
  $as_echo "307. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC X.

       PROCEDURE DIVISION.
           DISPLAY x CONVERSION.
           TRANSFORM x
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3196: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:3196"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'CONVERSION' is not defined, but is a reserved word in another dialect
prog.cob:11: error: syntax error, unexpected Identifier, expecting SECTION or .
prog.cob:11: note: unknown statement 'TRANSFORM'; it may exist in another dialect
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3196"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_307
#AT_START_308
at_fn_group_banner 308 'syn_misc.at:3204' \
  "redundant periods" "                              " 2
at_xfail=no
(
  $as_echo "308. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >a.cpy <<'_ATEOF'

       01  var PIC X
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       REPLACE ==a== BY ==b==.. *> blah blah
       .

       COPY a..

       78  var VALUE "hello".
      * blah blah
          .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3227: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3227"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: ignoring redundant .
prog.cob:12: warning: ignoring redundant .
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3227"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_308
#AT_START_309
at_fn_group_banner 309 'syn_misc.at:3234' \
  "missing periods" "                                " 2
at_xfail=no
(
  $as_echo "309. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Check whether the first line is correcly handled:
cat >prog.cob <<'_ATEOF'
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 DONE COMP-1 VALUE ZERO.

       PROCEDURE DIVISION.
       MAIN SECTION.
           PERFORM SEC-1.
           IF NOT DONE = 1
              DISPLAY "SEC-1 NOT EXECUTED"
           END-IF
           STOP RUN
       SEC-1 SECTION.
           MOVE 1 TO DONE
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3257: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3257"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'MAIN':
prog.cob:15: error: 'SEC-1' is not defined
prog.cob:15: error: syntax error, unexpected SECTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3257"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3262: \$COMPILE_ONLY -fformat=cobol85 -fmissing-period=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 -fmissing-period=error prog.cob" "syn_misc.at:3262"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 -fmissing-period=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'MAIN':
prog.cob:15: error: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3262"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3266: \$COMPILE -fformat=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=cobol85 prog.cob" "syn_misc.at:3266"
( $at_check_trace; $COMPILE -fformat=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'MAIN':
prog.cob:15: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3266"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3270: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:3270"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3270"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_309
#AT_START_310
at_fn_group_banner 310 'syn_misc.at:3275' \
  "missing periods with COPYs" "                     " 2
at_xfail=no
(
  $as_echo "310. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >ok.inc <<'_ATEOF'

       01 FLG PIC XX VALUE "KO".
_ATEOF


cat >sec-1.inc <<'_ATEOF'

       SEC-1 SECTION.
           MOVE "OK" TO FLG
_ATEOF


cat >sec-2.inc <<'_ATEOF'

       SEC-2 SECTION.
           IF FLG NOT EQUAL "OK"
              DISPLAY "DEC-1 NOT EXECUTED"
           END-IF.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       COPY "ok.inc".

       PROCEDURE DIVISION.
       MAIN SECTION.
           PERFORM SEC-1.
           PERFORM SEC-2.
      * Directive purposefully in Area A
        REPLACE ==RUNNN== BY ==RUN==.
           STOP RUNNN
           COPY "sec-1.inc".
      * Also purposefully in Area A
        COPY "sec-2.inc".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3314: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3314"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "sec-1.inc: in section 'MAIN':
sec-1.inc:2: error: 'SEC-1' is not defined
sec-1.inc:2: error: syntax error, unexpected SECTION
sec-2.inc:2: error: 'SEC-2' is not defined
sec-2.inc:2: error: syntax error, unexpected SECTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3314"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3321: \$COMPILE -fformat=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=cobol85 prog.cob" "syn_misc.at:3321"
( $at_check_trace; $COMPILE -fformat=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "sec-1.inc: in section 'MAIN':
sec-1.inc:2: warning: optional period used
sec-2.inc: in section 'SEC-1':
sec-2.inc:2: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3321"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3327: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:3327"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3327"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_err.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       COPY "ok.inc".

       PROCEDURE DIVISION.
       MAIN SECTION.
           PERFORM SEC-1.
           PERFORM SEC-2.
      * Directive purposefully in Area A
        REPLACE ==RUNNN== BY ==RUN==.
           PERFORM SEC-3.
           STOP RUN
           COPY "sec-1.inc".
       COPY "sec-2.inc".
       SEC-3 SECTION.
           DISPLAY KO NO ADVANCING.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3351: \$COMPILE_ONLY -fformat=cobol85 prog_err.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 prog_err.cob" "syn_misc.at:3351"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 prog_err.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "sec-1.inc: in section 'MAIN':
sec-1.inc:2: warning: optional period used
sec-2.inc: in section 'SEC-1':
sec-2.inc:2: warning: optional period used
prog_err.cob: in section 'SEC-3':
prog_err.cob:20: error: 'KO' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3351"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_310
#AT_START_311
at_fn_group_banner 311 'syn_misc.at:3363' \
  "statement in Area A" "                            " 2
at_xfail=no
(
  $as_echo "311. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 FLAG          PIC 9 VALUE ZERO.
       PROCEDURE        DIVISION.
       MAIN
       .
         PERFORM SEC-1
         IF NOT FLAG = 1
              DISPLAY "SEC-1 NOT EXECUTED"
         END-IF
         STOP RUN
         .
       SEC-1 SECTION.
         MOVE 1 TO FLAG
         .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3386: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3386"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3386"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3387: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:3387"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: separator period in Area A
prog.cob: in paragraph 'MAIN':
prog.cob:10: error: start of statement in Area A
prog.cob:11: error: start of statement in Area A
prog.cob:13: error: END-IF should not start in Area A
prog.cob:14: error: start of statement in Area A
prog.cob:15: error: separator period in Area A
prog.cob: in section 'SEC-1':
prog.cob:17: error: start of statement in Area A
prog.cob:18: error: separator period in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3387"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3400: \$COMPILE_ONLY -std=cobol85 -fno-areacheck prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 -fno-areacheck prog.cob" "syn_misc.at:3400"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 -fno-areacheck prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3400"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3401: \$COMPILE_ONLY -std=cobol85 -fformat=fixed prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 -fformat=fixed prog.cob" "syn_misc.at:3401"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 -fformat=fixed prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3401"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_311
#AT_START_312
at_fn_group_banner 312 'syn_misc.at:3406' \
  "pseudotext replacement with text in area A" "     " 2
at_xfail=no
(
  $as_echo "312. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Check whether the first line is correcly handled:
cat >ok.inc <<'_ATEOF'
       01  REPLACE-ME
       01  KO  PIC XX VALUE "KO".
       PROCEDURE DIVISION.
       MAIN SECTION.
           PERFORM SEC-1
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
           COPY "ok.inc" REPLACING == 01 REPLACE-ME == BY ==
       01  OK PIC XX VALUE "OK". ==
           .

           PERFORM SEC-2
           STOP RUN
           CONTINUE
       SEC-1 SECTION.
           IF OK NOT EQUAL "OK" DISPLAY OK
       SEC-2 SECTION.
           IF OK NOT EQUAL "OK" DISPLAY OK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3436: \$COMPILE -std=cobol85 -fmissing-period=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol85 -fmissing-period=warning prog.cob" "syn_misc.at:3436"
( $at_check_trace; $COMPILE -std=cobol85 -fmissing-period=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'MAIN':
prog.cob:14: warning: optional period used
prog.cob: in section 'SEC-1':
prog.cob:16: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3436"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3442: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:3442"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3442"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_err.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
           COPY "ok.inc" REPLACING == 01 REPLACE-ME == BY ==
       01  OK PIC XX VALUE "OK". ==
           .

           PERFORM SEC-2.
           STOP RUN
       SEC-1 SECTION.
           IF OK NOT EQUAL "OK" DISPLAY OK
       SEC-2 SECTION.
           DISPLAY NOT-FOUND.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3461: \$COMPILE -std=gcos prog_err.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=gcos prog_err.cob" "syn_misc.at:3461"
( $at_check_trace; $COMPILE -std=gcos prog_err.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_err.cob: in section 'MAIN':
prog_err.cob:13: warning: optional period used
prog_err.cob: in section 'SEC-1':
prog_err.cob:15: warning: optional period used
prog_err.cob: in section 'SEC-2':
prog_err.cob:16: error: 'NOT-FOUND' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3461"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_312
#AT_START_313
at_fn_group_banner 313 'syn_misc.at:3473' \
  "IF-ELSE statement list with invalid syntax" "     " 2
at_xfail=no
(
  $as_echo "313. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  a-variable PIC 9.

       PROCEDURE DIVISION.
           IF a-variable = 1
               ACCEPT a-variable, not-a-variable
                   ON EXCEPTION
                       CONTINUE
               END-ACCEPT
           ELSE
               CONTINUE
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3496: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3496"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: syntax error, unexpected Identifier
prog.cob:14: error: syntax error, unexpected END-ACCEPT
prog.cob:15: error: syntax error, unexpected ELSE
prog.cob:17: error: syntax error, unexpected END-IF
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3496"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_313
#AT_START_314
at_fn_group_banner 314 'syn_misc.at:3506' \
  "EVALUATE statement with invalid syntax" "         " 2
at_xfail=no
(
  $as_echo "314. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  a-variable PIC 9.

       PROCEDURE DIVISION.
           EVALUATE a-variable

              ALSO true

              WHEN 1

              ALSO a-variable
                 CONTINUE

              WHEN 1 OR 2
                 CONTINUE

           END-EVALUATE
           .
           EVALUATE a-variable

              ALSO true

              WHEN 3
                 CONTINUE

              WHEN 5
                 CONTINUE

           END-EVALUATE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3546: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3546"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:19: error: invalid conditional expression
prog.cob:16: error: invalid expression: boolean expected with logical operator
prog.cob:28: error: wrong number of WHEN parameters
prog.cob:31: error: wrong number of WHEN parameters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3546"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_314
#AT_START_315
at_fn_group_banner 315 'syn_misc.at:3555' \
  "COBOL-WORDS directive" "                          " 2
at_xfail=no
(
  $as_echo "315. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: currently not checked - should all be seen before first IDENTIFICATION DIVISION

cat >prog.cob <<'_ATEOF'

      *> Valid
           >>COBOL-WORDS RESERVE "CAT"
      *> Valid (GC-extension)
           >>COBOL-WORDS RESERVE  "doggy" "catty" "mouse"
      *> Valid
           >>COBOL-WORDS EQUATE "VALUE" WITH "VA"
      *> Invalid - Bread is not reserved.
           >>COBOL-WORDS EQUATE "BREAD" WITH "BARA"
      *> Invalid - ID is already reserved
           >>COBOL-WORDS EQUATE "IDENTIFICATION" WITH "ID"

      *> Valid, BREAD is not reserved.
           >>COBOL-WORDS SUBSTITUTE "program" BY "bread"
      *> Valid (GC-extension)
           >>COBOL-WORDS SUBSTITUTE "DIVISION" BY "DIV", "JUST" BY "JS"
      *> Invalid - Bread is not reserved.
           >>COBOL-WORDS SUBSTITUTE "BREAD" BY "BARA"
      *> Invalid - ID is already reserved
           >>COBOL-WORDS SUBSTITUTE "IDENTIFICATION" BY "ID"
      *> Invalid - needs BY, not WITH
      *> FIXME: error-recovery is bad, see below
      *> >>COBOL-WORDS SUBSTITUTE "INITIALIZE" WITH "INIT"

      *> Valid
           >>COBOL-WORDS UNDEFINE "BREAD"
      *> Valid (GC-extension)
           >>COBOL-WORDS UNDEFINE "DOGGY" "CATTY"
      *> Invalid in Standard COBOL, must be a defined word
           >>COBOL-WORDS UNDEFINE "BREAD"

      *> FIXME: error-recovery is bad, see below
      *>>COBOL-WORDS REMOVE "BREAD"

       IDENTIFICATION DIV.
       PROGRAM-ID. prog.

       DATA DIV.
       WORKING-STORAGE SECTION.
      *> Check EQUATE and SUBSTITUTE work correctly
       01  just PIC XX VA "1" JS.
      *> Check RESERVE
       01  cat PIC 9 VA 1.
      *> Check UNDEFINE
       01  dog PIC 9 VA 1.
_ATEOF


# TODO: add checks for valid reserved word names
# CHECKME: do we follow the rule "The same COBOL word shall not be contained
# in a literal in more than one COBOL-WORDS directive within a single compilation group."
# or specify "this restriction is removed"

# FIXME: error-recovery is really bad, the lines above lead to only directives
# being part of prog.i, ending with the first broken one
# prog.cob:23: error: syntax error, unexpected BY, expecting WITH
# prog.cob:26: error: syntax error, unexpected Literal, expecting EQUATE or UNDEFINE or SUBSTITUTE or RESERVE

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3617: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3617"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: 'BREAD' is not a default reserved word, so cannot be aliased
prog.cob:11: error: 'ID' is already reserved
prog.cob:18: error: 'BREAD' is not a default reserved word, so cannot be aliased
prog.cob:20: error: 'ID' is already reserved
prog.cob:30: error: 'BREAD' is not a reserved word, so cannot be removed
prog.cob:43: error: 'cat' is a reserved word, but isn't supported
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3617"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_315
#AT_START_316
at_fn_group_banner 316 'syn_misc.at:3629' \
  "MF reserved word directives" "                    " 2
at_xfail=no
(
  $as_echo "316. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: currently not checked - should all be seen before first IDENTIFICATION DIVISION

cat >prog.cob <<'_ATEOF'

      *> Valid
           $SET ADDRSV"DOG""CAT"
           $SET ADD-RSV  "doggy" "catty"
      *> Valid
           $SET ADD-SYN "VALUE" = "VA"
      *> Invalid - Bread is not reserved.
           $SET ADDSYN "BREAD" = "BARA"
      *> Invalid - ID is already reserved
           $SET ADDSYN "IDENTIFICATION" = "ID"

      *> Valid
           $SET MAKESYN(PROGRAM) = (FUNCTION)
      *> Invalid - BREAD is not reserved.
           $SET MAKESYN "BREAD" = "PROGRAM"
           $SET MAKE-SYN "program" = "bread"

      *> Valid
           $SET OVERRIDE "DIVISION" = "DIV" "JUST" = "JS"
      *> Invalid - Bread is not reserved
           $SET OVERRIDE "BREAD" = "BARA"
      *>Invalid - ID is already reserved; note: MF documents this rule but
      *>  does not check it and applies the line; we do it better on purpose :-)
           $SET OVERRIDE "IDENTIFICATION" = "ID"

      *> Valid - note: MF rules does allow reserving not reserved words
           $SET REMOVE "BREAD" (BARA)REMOVE(DOG)

       IDENTIFICATION DIV.
       PROGRAM-ID. prog.

       DATA DIV.
       WORKING-STORAGE SECTION.
      *> Check ADDSYN and OVERRIDE work correctly
       01  just PIC XX VA "1" JS.
      *> Check ADDRSV
       01  cat PIC 9 VA 1.
      *> Check REMOVE
       01  dog PIC 9 VA 1.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3675: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3675"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: 'BREAD' is not a default reserved word, so cannot be aliased
prog.cob:10: error: 'ID' is already reserved
prog.cob:10: note: you may want MAKESYN instead
prog.cob:15: error: 'BREAD' is not a default reserved word, so cannot be aliased
prog.cob:16: error: 'BREAD' is not a reserved word
prog.cob:16: note: you may want ADDSYN or OVERRIDE instead
prog.cob:21: error: 'BREAD' is not a default reserved word, so cannot be aliased
prog.cob:24: error: 'ID' is already reserved
prog.cob:24: note: you may want MAKESYN instead
prog.cob:37: error: 'cat' is a reserved word, but isn't supported
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3675"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_316
#AT_START_317
at_fn_group_banner 317 'syn_misc.at:3691' \
  "TURN directive" "                                 " 2
at_xfail=no
(
  $as_echo "317. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
      *> Valid
       >> TURN ec-i-o f CHECKING ON
      *> Invalid
       >> TURN dd CHECKING ON
       >> TURN ec-all f CHECKING ON
       >> TURN EC-I-O-invalid-KEY not-exist CHECKING OFF
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT F ASSIGN "f.txt", SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD  f.
       01  f-rec        PIC X.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3715: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3715"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: invalid exception-name: DD
prog.cob:7: error: invalid exception-name: F
prog.cob:8: error: file 'not-exist' does not exist
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3715"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_317
#AT_START_318
at_fn_group_banner 318 'syn_misc.at:3724' \
  "STRING / UNSTRING with invalid syntax" "          " 2
at_xfail=no
(
  $as_echo "318. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  a   PIC X.
       77  b   PIC X.
       77  c   PIC XXX.

       PROCEDURE DIVISION.
           STRING   DELIMITED BY SPACE INTO
           END-STRING
           STRING a DELIMITED BY SPACE c
           END-STRING
           STRING a DELIMITED BY SPACE INTO
           END-STRING
           STRING
                  DELIMITED BY SPACE
                  INTO c
           END-STRING
           STRING a DELIMITED BY SPACE

                  DELIMITED BY SIZE
                  INTO c
           END-STRING
           STRING a DELIMITED BY SPACE
                  b DELIMITED BY SIZE
                  INTO c
           END-STRING
      *
           UNSTRING   DELIMITED BY SPACE INTO a
           END-UNSTRING
           UNSTRING c DELIMITED BY SPACE a
           END-UNSTRING
           UNSTRING c DELIMITED BY SPACE INTO
           END-UNSTRING
           UNSTRING   DELIMITED BY SPACE INTO a
           END-UNSTRING
           UNSTRING c DELIMITED BY SPACE INTO a
           END-UNSTRING
           UNSTRING c DELIMITED BY SPACE
                      DELIMITED BY SIZE  INTO a
           END-UNSTRING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3774: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3774"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: syntax error, unexpected DELIMITED
prog.cob:15: error: syntax error, unexpected END-STRING, expecting INTO
prog.cob:17: error: syntax error, unexpected END-STRING, expecting Identifier
prog.cob:19: error: syntax error, unexpected DELIMITED
prog.cob:24: error: syntax error, unexpected DELIMITED, expecting INTO
prog.cob:32: error: syntax error, unexpected DELIMITED
prog.cob:34: error: syntax error, unexpected Identifier, expecting INTO
prog.cob:37: error: syntax error, unexpected END-UNSTRING, expecting Identifier
prog.cob:38: error: syntax error, unexpected DELIMITED
prog.cob:43: error: syntax error, unexpected DELIMITED, expecting INTO
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3774"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_318
#AT_START_319
at_fn_group_banner 319 'syn_misc.at:3789' \
  "STRING / UNSTRING POINTER clause" "               " 2
at_xfail=no
(
  $as_echo "319. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  valid-ptr     PIC 99.
       01  valid-ptr-2   BINARY-LONG.
       01  valid-ptr-3   PIC 99 COMP-3.

       01  invalid-ptr   PIC 9.
       01  invalid-ptr-2 PIC 99V99.
       01  invalid-ptr-3 FLOAT-LONG.
       01  invalid-ptr-4 PIC 99PP.
       01  invalid-ptr-5 PIC VPP99.
       01  invalid-ptr-6 PIC X(30).
       01  invalid-ptr-7.
           03  n         PIC 99.
           03  n2        PIC 99.


       01  x             PIC X(9).
       01  y             PIC X(9).

       PROCEDURE       DIVISION.
           STRING "hello" INTO x POINTER valid-ptr
           STRING "hello" INTO x POINTER valid-ptr-2
           STRING "hello" INTO x POINTER valid-ptr-3

           STRING "hello" INTO x POINTER invalid-ptr
           STRING "hello" INTO x POINTER invalid-ptr-2
           STRING "hello" INTO x POINTER invalid-ptr-3
           STRING "hello" INTO x POINTER invalid-ptr-4
           STRING "hello" INTO x POINTER invalid-ptr-5
           STRING "hello" INTO x POINTER invalid-ptr-6
           STRING "hello" INTO x POINTER invalid-ptr-7

           UNSTRING y INTO x POINTER valid-ptr
           UNSTRING y INTO x POINTER valid-ptr-2
           UNSTRING y INTO x POINTER valid-ptr-3

           UNSTRING y INTO x POINTER invalid-ptr
           UNSTRING y INTO x POINTER invalid-ptr-2
           UNSTRING y INTO x POINTER invalid-ptr-3
           UNSTRING y INTO x POINTER invalid-ptr-4
           UNSTRING y INTO x POINTER invalid-ptr-5
           UNSTRING y INTO x POINTER invalid-ptr-6
           UNSTRING y INTO x POINTER invalid-ptr-7
           .
_ATEOF


# Note: the following checks (per COBOL standard) added with [r3678] are 4.x only:
# prog.cob:30: error: 'invalid-ptr' is too small to contain the number 10 (one plus the size of 'x')
# prog.cob:42: error: 'invalid-ptr' is too small to contain the number 10 (one plus the size of 'y')

{ set +x
$as_echo "$at_srcdir/syn_misc.at:3847: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3847"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:31: error: POINTER item 'invalid-ptr-2' must be an integer
prog.cob:32: error: POINTER item 'invalid-ptr-3' must be an integer
prog.cob:33: error: POINTER item 'invalid-ptr-4' may not have PICTURE with P in it
prog.cob:34: error: POINTER item 'invalid-ptr-5' must be an integer
prog.cob:35: error: POINTER item 'invalid-ptr-6' must be an integer
prog.cob:36: error: 'invalid-ptr-7' is not an elementary item
prog.cob:43: error: POINTER item 'invalid-ptr-2' must be an integer
prog.cob:44: error: POINTER item 'invalid-ptr-3' must be an integer
prog.cob:45: error: POINTER item 'invalid-ptr-4' may not have PICTURE with P in it
prog.cob:46: error: POINTER item 'invalid-ptr-5' must be an integer
prog.cob:47: error: POINTER item 'invalid-ptr-6' must be an integer
prog.cob:48: error: 'invalid-ptr-7' is not an elementary item
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3847"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_319
#AT_START_320
at_fn_group_banner 320 'syn_misc.at:3864' \
  "STRING with non-DISPLAY" "                        " 2
at_xfail=no
(
  $as_echo "320. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  I-X        PIC  9(9) COMP-X VALUE 6.
       01  I-B        PIC  9(9) BINARY VALUE 6.
       01  I-P        PIC  9(9) COMP-3 VALUE 6.
       01  I-D        PIC  9(9) VALUE 6.
       01  I-F        COMP-1 VALUE 6.
       01  TSTWRK   PIC X(48).

       PROCEDURE DIVISION.
       MAIN-10.
           STRING " ID:" I-D
               DELIMITED BY SIZE INTO TSTWRK.
           STRING " IX:" I-X " IB:" I-B
                  " ID:" I-D
                  " IP:" I-P " IF:" I-F
               DELIMITED BY SIZE INTO TSTWRK.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3892: \$COMPILE -x -std=mf -debug -Wall prog.cob "
at_fn_check_prepare_dynamic "$COMPILE -x -std=mf -debug -Wall prog.cob " "syn_misc.at:3892"
( $at_check_trace; $COMPILE -x -std=mf -debug -Wall prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-10':
prog.cob:19: error: STRING item 'I-X' must be USAGE DISPLAY or NATIONAL
prog.cob:19: error: STRING item 'I-B' must be USAGE DISPLAY or NATIONAL
prog.cob:21: error: STRING item 'I-P' must be USAGE DISPLAY or NATIONAL
prog.cob:21: error: STRING item 'I-F' must be USAGE DISPLAY or NATIONAL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3892"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_320
#AT_START_321
at_fn_group_banner 321 'syn_misc.at:3903' \
  "UNSTRING COUNT clause" "                          " 2
at_xfail=no
(
  $as_echo "321. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  valid-1       PIC 9.
       01  valid-2       BINARY-LONG.
       01  valid-3       PIC 99 COMP-3.

       01  invalid-1     PIC 99V99.
       01  invalid-2     FLOAT-LONG.
       01  invalid-3     PIC 99PP.
       01  invalid-4     PIC VPP99.
       01  invalid-5     PIC X(30).
           88  invalid-6 VALUE "abc".

       01  x             PIC X(9).
       01  y             PIC X(9).

       PROCEDURE       DIVISION.
           UNSTRING x INTO y COUNT valid-1
           UNSTRING x INTO y COUNT valid-2
           UNSTRING x INTO y COUNT valid-3

           UNSTRING x INTO y COUNT invalid-1
           UNSTRING x INTO y COUNT invalid-2
           UNSTRING x INTO y COUNT invalid-3
           UNSTRING x INTO y COUNT invalid-4
           UNSTRING x INTO y COUNT invalid-5
           UNSTRING x INTO y COUNT invalid-6
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3940: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:3940"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:26: error: COUNT item 'invalid-1' must be an integer
prog.cob:27: error: COUNT item 'invalid-2' must be an integer
prog.cob:28: error: COUNT item 'invalid-3' may not have PICTURE with P in it
prog.cob:29: error: COUNT item 'invalid-4' must be an integer
prog.cob:30: error: COUNT item 'invalid-5' must be an integer
prog.cob:31: error: condition-name not allowed here: 'invalid-6'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:3940"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_321
#AT_START_322
at_fn_group_banner 322 'syn_misc.at:3951' \
  "use of program-prototype-names" "                 " 2
at_xfail=no
(
  $as_echo "322. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       REPOSITORY.
           PROGRAM test-prog
           .
       PROCEDURE       DIVISION.
           CALL test-prog
           CANCEL test-prog
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:3969: \$COMPILE_ONLY -fprogram-prototypes=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fprogram-prototypes=warning prog.cob" "syn_misc.at:3969"
( $at_check_trace; $COMPILE_ONLY -fprogram-prototypes=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: PROGRAM phrase used
prog.cob:8: warning: no definition/prototype seen for PROGRAM 'test-prog'
prog.cob:11: warning: CALL/CANCEL with program-prototype-name used
prog.cob:12: warning: CALL/CANCEL with program-prototype-name used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:3969"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_322
#AT_START_323
at_fn_group_banner 323 'syn_misc.at:3978' \
  "checking prototypes and definitions match" "      " 2
at_xfail=yes
(
  $as_echo "323. $at_setup_line: testing $at_desc ..."
  $at_traceon




# patch #32 was not fully included and the current implementation
# needs updating

cat >prog.cob <<'_ATEOF'

      *> Prototype and definition have different signatures.
       IDENTIFICATION DIVISION.
       FUNCTION-ID. invalid-1 PROTOTYPE.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. x.
       SPECIAL-NAMES.
           DECIMAL-POINT COMMA
           CURRENCY SIGN "F"
           .
       DATA DIVISION.
       LINKAGE SECTION.
       01  x.
           03  x1 PIC X(15).
           03  x2 PIC X(15) JUST.
       01  y PIC +9(30) BLANK ZERO.

       PROCEDURE DIVISION USING x returning y.
       END FUNCTION invalid-1.

      *> Prototype and definition have different signatures.
       IDENTIFICATION DIVISION.
       PROGRAM-ID. invalid-2 PROTOTYPE.
       DATA DIVISION.
       LINKAGE SECTION.
       01  x PIC X.
       PROCEDURE DIVISION USING x.
       END PROGRAM invalid-2.

      *> Prototype and definition have matching signatures.
       IDENTIFICATION DIVISION.
       FUNCTION-ID. valid-1 PROTOTYPE.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT COMMA
           .
       DATA DIVISION.
       LINKAGE SECTION.
       01  ret PIC 999V99.

       PROCEDURE DIVISION RETURNING ret.
       END FUNCTION valid-1.


       IDENTIFICATION DIVISION.
       PROGRAM-ID. blahblah AS "invalid-1".

       DATA DIVISION.
       LINKAGE SECTION.
       01  a.
           03  a-1 PIC X(15) JUST.
           03  a-2 PIC X(15).
       01  b PIC S9(10) SIGN LEADING.

       PROCEDURE DIVISION USING a RETURNING b.
           DISPLAY "yes"
           .
       END PROGRAM blahblah.


       IDENTIFICATION DIVISION.
       PROGRAM-ID. invalid-2.

       DATA DIVISION.
       LINKAGE SECTION.
       01  ret PIC X.

       PROCEDURE DIVISION RETURNING ret.
           MOVE "x" TO ret
           .
       END PROGRAM invalid-2.

       IDENTIFICATION DIVISION.
       FUNCTION-ID. valid-1.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT COMMA
           .
       DATA DIVISION.
       LINKAGE SECTION.
       01  ret PIC 999V99.

       PROCEDURE DIVISION RETURNING ret.
           MOVE 1,5 TO ret
           .
       END FUNCTION valid-1.

      *> Prototypes must be at start of compilation group.
       IDENTIFICATION DIVISION.
       PROGRAM-ID. invalid-3.

       DATA DIVISION.
       LINKAGE SECTION.
       01  x PIC X(10).

       PROCEDURE DIVISION USING x.
       END PROGRAM invalid-3.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. invalid-3 IS PROTOTYPE.

       DATA DIVISION.
       LINKAGE SECTION.
       01  x PIC X(10).

       PROCEDURE DIVISION USING x.
       END PROGRAM invalid-3.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4100: \$COMPILE_ONLY -Wno-unfinished -Wno-pending prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished -Wno-pending prog.cob" "syn_misc.at:4100"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished -Wno-pending prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:60: warning: prototype and definition of 'invalid-1' do not match
prog.cob:60: note: definition is a program but the prototype is a function
prog.cob:60: note: DECIMAL-POINT IS COMMA clauses differ
prog.cob:60: note: CURRENCY clauses differ
prog.cob:60: note: parameters #1 ('a-1' in the definition and 'x1' in the prototype) differ
prog.cob:60: note: returning items ('b' in the definition and 'y' in the prototype) differ
prog.cob:73: warning: prototype and definition of 'invalid-2' do not match
prog.cob:73: note: number of parameters differ
prog.cob:73: note: definition has a RETURNING item but protoype does not
prog.cob:106: error: prototypes must be come before any program/function definitions
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4100"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_323
#AT_START_324
at_fn_group_banner 324 'syn_misc.at:4115' \
  "invalid INSPECT/TRANSFORM operands" "             " 2
at_xfail=no
(
  $as_echo "324. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "A".

       DATA            DIVISION.
       FILE            SECTION.
       FD  f.
       01  f-rec PIC X.

       WORKING-STORAGE SECTION.
       01  not-display PIC 9(5) COMP.
       01  not-a-num   PIC X(5).

       PROCEDURE       DIVISION.
           INSPECT f TALLYING not-a-num FOR ALL 3
               REPLACING FIRST "abcde" BY not-display
           TRANSFORM f FROM 3 TO 2
           TRANSFORM function udf(f-rec) FROM SPACE TO ZERO
           TRANSFORM "yada" FROM SPACE TO ZERO
           INSPECT function trim(f-rec)
               TALLYING not-display FOR ALL SPACES *> valid with func
               REPLACING FIRST ZERO BY SPACE       *> not valid
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4148: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4148"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: error: 'f' is not a field
prog.cob:20: error: 'not-a-num' is not numeric
prog.cob:20: error: 3 is not an alphanumeric literal
prog.cob:20: error: invalid target for TALLYING
prog.cob:21: error: 'not-display' is not USAGE DISPLAY
prog.cob:20: error: REPLACING operands differ in size
prog.cob:20: error: invalid target for REPLACING
prog.cob:22: error: 'f' is not a field
prog.cob:22: error: 3 is not an alphanumeric literal
prog.cob:22: error: 2 is not an alphanumeric literal
prog.cob:22: error: invalid target for TRANSFORM
prog.cob:23: error: syntax error, unexpected intrinsic function name, expecting Identifier
prog.cob:24: error: syntax error, unexpected Literal, expecting Identifier
prog.cob:25: error: invalid target for REPLACING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4148"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_324
#AT_START_325
at_fn_group_banner 325 'syn_misc.at:4167' \
  "SIGN clause checks" "                             " 2
at_xfail=no
(
  $as_echo "325. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  valid-1     SIGN TRAILING.
           03  x       PIC S999.
           03  y       PIC S999.
       01  valid-2     PIC S99.

       01  invalid-1   PIC 99 SIGN LEADING.
       01  invalid-2   PIC S99 SIGN TRAILING, USAGE BINARY.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4185: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4185"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: elementary items with SIGN clause must have S in PICTURE
prog.cob:13: error: elementary items with SIGN clause must be USAGE DISPLAY or NATIONAL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4185"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_325
#AT_START_326
at_fn_group_banner 326 'syn_misc.at:4192' \
  "conflicting entry conventions" "                  " 2
at_xfail=no
(
  $as_echo "326. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       OPTIONS.
           ENTRY-CONVENTION COBOL.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CALL-CONVENTION 0 IS EXTERN.

       PROCEDURE     DIVISION EXTERN.
           CONTINUE
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4209: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4209"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: overriding convention specified in ENTRY-CONVENTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4209"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog2.
       OPTIONS.
           ENTRY-CONVENTION COBOL.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       PROCEDURE     DIVISION WITH C LINKAGE.
           CONTINUE
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4225: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:4225"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:9: warning: overriding convention specified in ENTRY-CONVENTION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4225"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog3.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CALL-CONVENTION 0 IS EXTERN.

       PROCEDURE     DIVISION
           EXTERN
           WITH C LINKAGE.
           CONTINUE
       ENTRY 'ANOTHERSTATEMENT'.
           CONTINUE
       ENTRY EXTERN 'ANOTHERSTATEMENT2'.
           CONTINUE
       ENTRY 'ANOTHERSTATEMENT3' WITH C LINKAGE.
           CONTINUE
       ENTRY
           EXTERN
           'ANOTHERSTATEMENT4'
           WITH C LINKAGE.
           CONTINUE
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4254: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_misc.at:4254"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:11: error: CALL-CONVENTION and WITH LINKAGE are mutually exclusive
prog3.cob:22: error: CALL-CONVENTION and WITH LINKAGE are mutually exclusive
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4254"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_326
#AT_START_327
at_fn_group_banner 327 'syn_misc.at:4261' \
  "conflicting call conventions" "                   " 2
at_xfail=no
(
  $as_echo "327. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       PROCEDURE     DIVISION.
           CALL EXTERN 'callee'.
           CALL 'callee' WITH C LINKAGE.
           CALL
              EXTERN
              'callee'
              WITH C LINKAGE
              .
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4277: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4277"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: CALL-CONVENTION and WITH LINKAGE are mutually exclusive
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4277"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4280: \$COMPILE_ONLY -std=cobol85 -freserved=EXTERN,C prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 -freserved=EXTERN,C prog.cob" "syn_misc.at:4280"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 -freserved=EXTERN,C prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: CALL-/ENTRY-CONVENTION does not conform to COBOL 85
prog.cob:6: error: WITH ... LINKAGE does not conform to COBOL 85
prog.cob:8: error: CALL-/ENTRY-CONVENTION does not conform to COBOL 85
prog.cob:10: error: WITH ... LINKAGE does not conform to COBOL 85
prog.cob:10: error: CALL-CONVENTION and WITH LINKAGE are mutually exclusive
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4280"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_327
#AT_START_328
at_fn_group_banner 328 'syn_misc.at:4290' \
  "dangling LINKAGE items" "                         " 2
at_xfail=no
(
  $as_echo "328. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA DIVISION.
       LINKAGE SECTION.
      * constants may occur anywhere but don't belong to LINKAGE
       78 NSIZE VALUE 1.
      *
      * two variables in USING
       77 A PIC X.
       01 B.
          03 B1 PIC X.
          03 B2 PIC 9(NSIZE).
      * variable not referenced anywhere - no warning
       77 C PIC X.
      * variable referenced by its REDEFINE
       01 D PIC XX.
       01 filler redefines D.
          03 D1 PIC X.
          03 D2 PIC 9(NSIZE).
      * variable referenced by its second REDEFINE
       01 E PIC XX.
       01 filler redefines E.
          03 Ea1 PIC X.
          03 Ea2 PIC 9(NSIZE).
       01 filler redefines E.
          03 Eb1 PIC X.
          03 Eb2 PIC 9(NSIZE).
      * variable referenced by its child
       01 F.
          03 F1 PIC X.
          03 F2 PIC 9(NSIZE).
      * variable referenced by level 88 (a validation entry)
       01 G.
          03 filler  PIC X.
             88 g-val-a value 'a'.
             88 g-val-b value 'b'.
       PROCEDURE       DIVISION USING A B.

           IF D2 OMITTED OR Eb2 OMITTED or F2 OMITTED
             set g-val-b to true
           END-IF
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4337: \$COMPILE_ONLY -Wlinkage prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wlinkage prog.cob" "syn_misc.at:4337"
( $at_check_trace; $COMPILE_ONLY -Wlinkage prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:17: warning: LINKAGE item 'D' is not a PROCEDURE USING parameter
prog.cob:22: warning: LINKAGE item 'E' is not a PROCEDURE USING parameter
prog.cob:30: warning: LINKAGE item 'F' is not a PROCEDURE USING parameter
prog.cob:34: warning: LINKAGE item 'G' is not a PROCEDURE USING parameter
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4337"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_328
#AT_START_329
at_fn_group_banner 329 'syn_misc.at:4346' \
  "duplicate PROCEDURE DIVISION/ENTRY USING items" " " 2
at_xfail=no
(
  $as_echo "329. $at_setup_line: testing $at_desc ..."
  $at_traceon


# see bug #635

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA DIVISION.
       LINKAGE SECTION.
       01  p                    PIC 9.
       01  o                    PIC X(5).
       PROCEDURE DIVISION USING p p o.
       ENTRY "sub" USING o p o.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4360: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4360"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: duplicate USING BY REFERENCE item 'p'
prog.cob:9: error: duplicate USING BY REFERENCE item 'o'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4360"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_329
#AT_START_330
at_fn_group_banner 330 'syn_misc.at:4367' \
  "duplicate CALL USING BY REFERENCE items" "        " 2
at_xfail=no
(
  $as_echo "330. $at_setup_line: testing $at_desc ..."
  $at_traceon


# see bug #635

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  p                    PIC 99.
       01  o                    PIC X(5).
       PROCEDURE DIVISION.
          CALL "prog2"  USING p p o
                              p.
          CALL "prog3"  USING BY REFERENCE p
                              BY CONTENT   p o
                              BY REFERENCE p o(2:).
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4385: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4385"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: duplicate USING BY REFERENCE item 'p'
prog.cob:10: warning: duplicate USING BY REFERENCE item 'p'
prog.cob:13: warning: duplicate USING BY REFERENCE item 'p'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4385"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_330
#AT_START_331
at_fn_group_banner 331 'syn_misc.at:4393' \
  "ADD / SUBTRACT TABLE" "                           " 2
at_xfail=no
(
  $as_echo "331. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  tab1.
           03  tab1-entry    OCCURS 5 PIC S999.
       01  tab2.
           03  tab2-entry    OCCURS 7 PIC S99.
           03  tab2b-entry   OCCURS 7.
               05  x         PIC S99.
       01  tab3.
           03  sub-tab-3  OCCURS 2.
               05 tab3-entry OCCURS 5 PIC S999.

       PROCEDURE       DIVISION.
           ADD      TABLE tab1-entry TO   tab2-entry.
           SUBTRACT TABLE tab2-entry FROM tab1-entry.
           ADD      TABLE tab1-entry TO   tab3-entry (1).
           SUBTRACT TABLE tab2-entry FROM tab3-entry (2).
           ADD      TABLE tab1-entry TO   x.
           SUBTRACT TABLE x          FROM tab1-entry.
           ADD      TABLE tab1-entry TO   tab2b-entry.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4423: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4423"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: warning: ADD TABLE is not implemented
prog.cob:19: warning: SUBTRACT TABLE is not implemented
prog.cob:20: warning: ADD TABLE is not implemented
prog.cob:21: warning: SUBTRACT TABLE is not implemented
prog.cob:22: warning: ADD TABLE is not implemented
prog.cob:23: warning: SUBTRACT TABLE is not implemented
prog.cob:24: warning: ADD TABLE is not implemented
prog.cob:24: error: 'tab2b-entry' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4423"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_331
#AT_START_332
at_fn_group_banner 332 'syn_misc.at:4436' \
  "USE FOR DEBUGGING invalid ref-mod / subscripts" " " 2
at_xfail=no
(
  $as_echo "332. $at_setup_line: testing $at_desc ..."
  $at_traceon



# COBOL85 3.2.3 Syntax Rules 10+12 - "no subscripts. not reference-modified"
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       SOURCE-COMPUTER.
            whatever   WITH DEBUGGING MODE.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  i           PIC 9.
       01  FILLER.
           03 x OCCURS 2 PIC 9.

       PROCEDURE DIVISION.
       DECLARATIVES.
       test-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL OF I (1:1).
           DISPLAY DEBUG-LINE.
       test-DEBUGo SECTION.
           USE FOR DEBUGGING ON ALL OF X (1).
           DISPLAY DEBUG-LINE.
       END DECLARATIVES.

       MAIN SECTION.
           MOVE 1 TO i, x(2)
           STOP RUN.
_ATEOF



{ set +x
$as_echo "$at_srcdir/syn_misc.at:4471: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4471"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'test-DEBUG':
prog.cob:19: error: DEBUGGING target may not be reference modified
prog.cob: in section 'test-DEBUGo':
prog.cob:22: error: DEBUGGING target may not be subscripted
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4471"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_332
#AT_START_333
at_fn_group_banner 333 'syn_misc.at:4481' \
  "USE FOR DEBUGGING duplicate targets" "            " 2
at_xfail=no
(
  $as_echo "333. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: add cd-names and file-names here

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       SOURCE-COMPUTER.
            whatever   WITH DEBUGGING MODE.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  i           PIC 9.
       01  j           PIC 9.

       PROCEDURE DIVISION.
       DECLARATIVES.
       test-DEBUG SECTION.
           USE FOR DEBUGGING ON MAIN MAIN.
           DISPLAY DEBUG-LINE.
       test-DEBUG2 SECTION.
           USE FOR DEBUGGING ON ALL I
                                ALL REFERENCES OF J
                                ALL PROCEDURES.
           DISPLAY DEBUG-LINE.
       test-DEBUG3 SECTION.
           USE FOR DEBUGGING ON ALL PROCEDURES
                                J
                                ALL OF I.
           DISPLAY DEBUG-LINE.
       END DECLARATIVES.

       MAIN SECTION.
           MOVE 1 TO i
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4522: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4522"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'test-DEBUG3':
prog.cob:26: error: duplicate USE DEBUGGING ON ALL PROCEDURES
prog.cob:27: error: duplicate DEBUGGING target: 'j'
prog.cob:28: error: duplicate DEBUGGING target: 'i'
prog.cob: in section 'test-DEBUG':
prog.cob:18: error: DEBUGGING target already specified with ALL PROCEDURES: 'MAIN'
prog.cob:18: error: duplicate DEBUGGING target: 'MAIN'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4522"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_333
#AT_START_334
at_fn_group_banner 334 'syn_misc.at:4534' \
  "USE FOR DEBUGGING implicit statements" "          " 2
at_xfail=no
(
  $as_echo "334. $at_setup_line: testing $at_desc ..."
  $at_traceon



# see bug #693, WHEN created an implicit statement before

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    TESTING.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT TSTFIL1 ASSIGN TO "TSTFIL1"
               ORGANIZATION LINE SEQUENTIAL.
           SELECT TSTFIL2 ASSIGN TO "TSTFIL2"
               ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD TSTFIL1.
       01 TSTREC1              PIC X(256).
       FD TSTFIL2.
       01 TSTREC2              PIC X(256).
       WORKING-STORAGE SECTION.
       01 OODB-RESULT                   PIC X(07).

       PROCEDURE DIVISION.
       DECLARATIVES.
       MY-TEST SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF OODB-RESULT.
       I-O-TEST-OODB-RESULT.
           EVALUATE OODB-RESULT
           WHEN SPACES
               DISPLAY "LINE 1"
           WHEN OTHER
               DISPLAY "LINE 2" END-DISPLAY
           END-EVALUATE.
           CLOSE TSTFIL1, TSTFIL2.
       END DECLARATIVES.

       MAIN SECTION.
       000-BEGIN.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4578: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4578"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4578"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_334
#AT_START_335
at_fn_group_banner 335 'syn_misc.at:4582' \
  "USE FOR DEBUGGING syntax-checks (1)" "            " 2
at_xfail=no
(
  $as_echo "335. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       SOURCE-COMPUTER.
            whatever   WITH DEBUGGING MODE.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  i           PIC 9.

       PROCEDURE DIVISION.
       DECLARATIVES.
       test-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF I
                                MAIN.
           DISPLAY DEBUG-ITEM.
           DISPLAY DEBUG-NAME " AT " DEBUG-LINE " WITH " DEBUG-CONTENTS.
           DISPLAY DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3.
       END DECLARATIVES.

       MAIN SECTION.
           MOVE 1 TO i
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4614: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4614"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4614"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4615: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:4615"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'test-DEBUG':
prog.cob:18: warning: USE FOR DEBUGGING is obsolete in COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4615"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4619: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_misc.at:4619"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'test-DEBUG':
prog.cob:17: error: 'REFERENCES IN i' is not defined
prog.cob:18: error: USE FOR DEBUGGING does not conform to ACUCOBOL-GT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4619"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4624: \$COMPILE_ONLY -std=acu-strict -fuse-for-debugging=ok -freserved=REFERENCES prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict -fuse-for-debugging=ok -freserved=REFERENCES prog.cob" "syn_misc.at:4624"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict -fuse-for-debugging=ok -freserved=REFERENCES prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4624"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that DEBUG-ITEM and friends can only be used when DEBUGGING is actually active
cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog2.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.

       PROCEDURE DIVISION.
       MAIN.
           DISPLAY DEBUG-ITEM.
           DISPLAY DEBUG-NAME " AT " DEBUG-LINE " WITH " DEBUG-CONTENTS.
           DISPLAY DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4641: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:4641"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob: in paragraph 'MAIN':
prog2.cob:10: error: 'DEBUG-ITEM' is not defined
prog2.cob:11: error: 'DEBUG-NAME' is not defined
prog2.cob:11: error: 'DEBUG-LINE' is not defined
prog2.cob:11: error: 'DEBUG-CONTENTS' is not defined
prog2.cob:12: error: 'DEBUG-SUB-1' is not defined
prog2.cob:12: error: 'DEBUG-SUB-2' is not defined
prog2.cob:12: error: 'DEBUG-SUB-3' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4641"
$at_failed && at_fn_log_failure
$at_traceon; }

# HACK to cater for the reserved words hack...
#AT_CHECK([$COMPILE_ONLY -std=cobol85 prog2.cob], [1], [],
{ set +x
$as_echo "$at_srcdir/syn_misc.at:4653: \$COMPILE_ONLY -std=cobol85 prog2.cob \\
-freserved=\"debug-item,debug-name,debug-line,debug-contents\" \\
-freserved=\"debug-sub-1,debug-sub-2,debug-sub-3\" \\
"
at_fn_check_prepare_notrace 'an embedded newline' "syn_misc.at:4653"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog2.cob \
-freserved="debug-item,debug-name,debug-line,debug-contents" \
-freserved="debug-sub-1,debug-sub-2,debug-sub-3" \

) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob: in paragraph 'MAIN':
prog2.cob:10: error: 'DEBUG-ITEM' is not defined
prog2.cob:11: error: 'DEBUG-NAME' is a reserved word, but isn't supported
prog2.cob:11: error: 'DEBUG-NAME' cannot be used here
prog2.cob:11: error: 'DEBUG-LINE' is a reserved word, but isn't supported
prog2.cob:11: error: 'DEBUG-LINE' cannot be used here
prog2.cob:11: error: 'DEBUG-CONTENTS' is a reserved word, but isn't supported
prog2.cob:11: error: 'DEBUG-CONTENTS' cannot be used here
prog2.cob:12: error: 'DEBUG-SUB-1' is a reserved word, but isn't supported
prog2.cob:12: error: 'DEBUG-SUB-2' is a reserved word, but isn't supported
prog2.cob:12: error: 'DEBUG-SUB-1' cannot be used here
prog2.cob:12: error: 'DEBUG-SUB-3' is a reserved word, but isn't supported
prog2.cob:12: error: 'DEBUG-SUB-2' cannot be used here
prog2.cob:12: error: 'DEBUG-SUB-3' cannot be used here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4653"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_335
#AT_START_336
at_fn_group_banner 336 'syn_misc.at:4675' \
  "USE FOR DEBUGGING syntax-checks (2)" "            " 2
at_xfail=yes
(
  $as_echo "336. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: still need tests/checks (3.2.3 Syntax Rules 9+11):
# 09 Identifier must not reference any data item defined in the Report
# Section except sum counters.
# 11 References to the special register DEBUG-ITEM are restricted to
# references from within a debugging section.


# we currently fail to detect references into DECLARATIVES and
# references to debugging-procedures other than PERFORM --> both in prog2

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       SOURCE-COMPUTER.
            whatever   WITH DEBUGGING MODE.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  i           PIC 9.
       01  j           PIC 9.

       PROCEDURE DIVISION.
       DECLARATIVES.
       test-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF I
                                TEST-debug
                                MAIN.
           DISPLAY DEBUG-LINE.
           PERFORM MAIN. PERFORM TEST-DEBUG2. GO TO TEST-DEBUG2.
       test-DEBUG2 SECTION.
           USE FOR DEBUGGING ON ALL OF I
                                TEST-debug.
           DISPLAY DEBUG-LINE.
       END DECLARATIVES.

       MAIN SECTION.
           MOVE 1 TO i, j
           PERFORM TesT-DebuG
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4722: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4722"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'test-DEBUG':
prog.cob:22: warning: 'MAIN' is not in DECLARATIVES
prog.cob:22: error: 'TEST-DEBUG2' may only be referenced with PERFORM
prog.cob:19: error: DEBUGGING target invalid: 'test-DEBUG'
prog.cob: in section 'TEST-DEBUG2':
prog.cob:24: error: duplicate DEBUGGING target: 'i'
prog.cob:25: error: DEBUGGING target invalid: 'test-DEBUG'
prog.cob: in section 'MAIN':
prog.cob:31: warning: 'test-DEBUG' is in DECLARATIVES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4722"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4733: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:4733"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'test-DEBUG':
prog.cob:20: warning: USE FOR DEBUGGING is obsolete in COBOL 85
prog.cob:22: error: 'MAIN' is not in DECLARATIVES
prog.cob:22: error: 'TEST-DEBUG2' may only be referenced with PERFORM
prog.cob:19: error: DEBUGGING target invalid: 'test-DEBUG'
prog.cob: in section 'TEST-DEBUG2':
prog.cob:24: error: duplicate DEBUGGING target: 'i'
prog.cob:25: error: DEBUGGING target invalid: 'test-DEBUG'
prog.cob: in section 'MAIN':
prog.cob:31: error: 'test-DEBUG' is in DECLARATIVES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4733"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_336
#AT_START_337
at_fn_group_banner 337 'syn_misc.at:4748' \
  "Empty PERFORM with DEBUGGING MODE" "              " 2
at_xfail=no
(
  $as_echo "337. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       SOURCE-COMPUTER.
            whatever   WITH DEBUGGING MODE.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  i           PIC 9.

       PROCEDURE DIVISION.
           PERFORM VARYING i FROM 1 BY 1
                   UNTIL i = 5
           END-PERFORM
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4771: \$COMPILE_ONLY -fmissing-statement=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fmissing-statement=ok prog.cob" "syn_misc.at:4771"
( $at_check_trace; $COMPILE_ONLY -fmissing-statement=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4771"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_337
#AT_START_338
at_fn_group_banner 338 'syn_misc.at:4776' \
  "whitespace handling" "                            " 2
at_xfail=no
(
  $as_echo "338. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION
           DIVISION
           .
           author.
           tester.
       PROGRAM-ID
           .
           prog1
           .
           REMARKS;. Should work.,,

       ENVIRONMENT
           DIVISION
           .
       CONFIGURATION
           SECTION
           .
       SOURCE-COMPUTER
           .
             whatever
           WITH
           DEBUGGING
           MODE
           .

      DDATA
      D   DIVISION
      D   .
       WORKING-STORAGE
          SECTION
          .
       01
           i
           PIC
           9
           .

       PROCEDURE
           DIVISION
           .
       >> SOURCE FORMAT IS FREE
IF
i
GREATER
THAN
OR
EQUAL

TO

5

THEN

GOBACK.
           STOP
           RUN
           .
_ATEOF


cat >prog2.cob <<'_ATEOF'

       ID,;DIVISION;,.,;
           author,.;tester.
       PROGRAM-ID,;.;,prog2;,.;,
           REMARKS;. Should work.,,
       ENVIRONMENT,;DIVISION;,.,;
       CONFIGURATION;;,,SECTION;;,,.
       SOURCE-COMPUTER;;.,,whatever;;DEBUGGING,,MODE;,.

      DDATA;DIVISION,.
      DWORKING-STORAGE,SECTION;.
       01;i,PIC;9;.

       PROCEDURE;DIVISION,.;
           IF;,i;,GREATER,;THAN;,OR,;EQUAL ,;TO;;5;
           ,,,THEN;;;GOBACK.
           STOP,RUN;.,
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4859: \$COMPILE_ONLY -Wno-obsolete prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-obsolete prog1.cob" "syn_misc.at:4859"
( $at_check_trace; $COMPILE_ONLY -Wno-obsolete prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4859"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4860: \$COMPILE_ONLY -Wno-obsolete prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-obsolete prog2.cob" "syn_misc.at:4860"
( $at_check_trace; $COMPILE_ONLY -Wno-obsolete prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4860"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_338
#AT_START_339
at_fn_group_banner 339 'syn_misc.at:4864' \
  "STOP identifier" "                                " 2
at_xfail=no
(
  $as_echo "339. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           PIC 9(5) VALUE 1.
       01  y           CONSTANT "ab".

       PROCEDURE       DIVISION.
           STOP x
           STOP y
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4882: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4882"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: warning: STOP identifier is obsolete in GnuCOBOL
prog.cob:12: warning: STOP literal is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4882"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:4886: \$COMPILE_ONLY -fstop-identifier=ok -fstop-literal=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fstop-identifier=ok -fstop-literal=ok prog.cob" "syn_misc.at:4886"
( $at_check_trace; $COMPILE_ONLY -fstop-identifier=ok -fstop-literal=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:4886"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_339
#AT_START_340
at_fn_group_banner 340 'syn_misc.at:4890' \
  "01 CONSTANT" "                                    " 2
at_xfail=no
(
  $as_echo "340. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  NUM2      CONSTANT 3.
       01  CON3      CONSTANT ((1 + 2) * NUM2 - 4.
       01  CON4      CONSTANT (1 + 2) * NUM2 - 4).
       01  CON5      CONSTANT (1 + 2) // NUM2.
       01  CON6      CONSTANT (1 + 2 + 3 + (4)) / (NUM2).
      *
       PROCEDURE DIVISION.
       MAIN.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4909: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4909"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: missing right parenthesis
prog.cob:8: error: missing left parenthesis
prog.cob:9: error: '/' operator misplaced
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4909"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4915: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_misc.at:4915"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: syntax error, unexpected Identifier
prog.cob:7: error: syntax error, unexpected Identifier
prog.cob:8: error: syntax error, unexpected Identifier
prog.cob:9: error: syntax error, unexpected Identifier
prog.cob:10: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4915"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4923: \$COMPILE_ONLY -std=mf-strict -freserved=CONSTANT prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict -freserved=CONSTANT prog.cob" "syn_misc.at:4923"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict -freserved=CONSTANT prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 01 CONSTANT does not conform to Micro Focus COBOL
prog.cob:7: error: 01 CONSTANT does not conform to Micro Focus COBOL
prog.cob:7: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4923"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4929: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "syn_misc.at:4929"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: missing right parenthesis
prog.cob:8: error: missing left parenthesis
prog.cob:9: error: '/' operator misplaced
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4929"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_340
#AT_START_341
at_fn_group_banner 341 'syn_misc.at:4938' \
  "78 VALUE" "                                       " 2
at_xfail=no
(
  $as_echo "341. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       78  NUM2      VALUE   3.
       78  NEG1      VALUE   -1.
       78  CON3      VALUE   ((1 + 2) * NUM2 - 4.
       78  CON4      VALUE   (1 + 2) * NUM2 - 4).
       78  CON5      VALUE   (1 + 2) // NUM2.
       78  CON6      VALUE   (1 + 2 + 3 + (4)) / (NUM2).
      *
       PROCEDURE DIVISION.
       MAIN.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4958: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:4958"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: missing right parenthesis
prog.cob:9: error: missing left parenthesis
prog.cob:10: error: '/' operator misplaced
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4958"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4964: \$COMPILE_ONLY -std=ibm-strict prog.cob "
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict prog.cob " "syn_misc.at:4964"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 78 VALUE does not conform to IBM COBOL
prog.cob:7: error: 78 VALUE does not conform to IBM COBOL
prog.cob:8: error: 78 VALUE does not conform to IBM COBOL
prog.cob:8: error: missing right parenthesis
prog.cob:9: error: 78 VALUE does not conform to IBM COBOL
prog.cob:9: error: missing left parenthesis
prog.cob:10: error: 78 VALUE does not conform to IBM COBOL
prog.cob:10: error: '/' operator misplaced
prog.cob:11: error: 78 VALUE does not conform to IBM COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4964"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:4976: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "syn_misc.at:4976"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: missing right parenthesis
prog.cob:9: error: missing left parenthesis
prog.cob:10: error: '/' operator misplaced
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:4976"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_341
#AT_START_342
at_fn_group_banner 342 'syn_misc.at:4985' \
  "level 78 NEXT / START OF" "                       " 2
at_xfail=no
(
  $as_echo "342. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       78  POS0      VALUE NEXT.
       01  MYREC.
          05  FLD1   PIC 9(2).
          05  FLD2   PIC X(7).
             78  POS3    VALUE NEXT.
          05  FLD3   PIC X(2) OCCURS 5 TIMES.
             78  POS4    VALUE NEXT.
          05  FLD4   PIC X(4).
             78  POS-NEXT   VALUE NEXT.
       77  MYREC2 PIC X.
       01  MYREC3 EXTERNAL.
          05  FLD5   PIC X(4).
             78  POS5    VALUE NEXT.
          05  FLD6   PIC X(4).
       01  PICX      PIC XXX VALUE 'Abc'.
       78  HUN       VALUE 10 * (10 + LENGTH OF PICX) + 12.35-2+3.
       78  HUN2      VALUE HUN * (10 + LENGTH
                                       OF PICX) -4.
       78  DIV1      VALUE 100 / 3.
       78  STRT4     VALUE START OF FLD4.
       LINKAGE SECTION.
       01  XMYREC.
          05  XFLD1   PIC 9(2).
          05  XFLD2   PIC X(7).
             78  XPOS3    VALUE NEXT.
          05  XFLD3   PIC X(2) OCCURS 5 TIMES.
             78  XPOS4    VALUE NEXT.
          05  XFLD4   PIC X(4).
          05  XFLD5   PIC X(4).
       78  XSTRT4     VALUE START OF XFLD4.
      *
       PROCEDURE DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5028: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5028"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: VALUE of 'POS0': NEXT target is invalid
prog.cob:6: error: no previous data-item found
prog.cob:10: error: VALUE of 'POS3': NEXT target is invalid
prog.cob:10: error: target must be in FILE SECTION or LINKAGE SECTION or have the EXTERNAL clause
prog.cob:12: error: VALUE of 'POS4': NEXT target is invalid
prog.cob:12: error: target must be in FILE SECTION or LINKAGE SECTION or have the EXTERNAL clause
prog.cob:14: error: VALUE of 'POS-NEXT': NEXT target is invalid
prog.cob:14: error: target must be in FILE SECTION or LINKAGE SECTION or have the EXTERNAL clause
prog.cob:25: error: VALUE of 'STRT4': START OF target 'FLD4' is invalid
prog.cob:25: error: target must be in FILE SECTION or LINKAGE SECTION or have the EXTERNAL clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5028"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_342
#AT_START_343
at_fn_group_banner 343 'syn_misc.at:5044' \
  "SYMBOLIC CONSTANT" "                              " 2
at_xfail=no
(
  $as_echo "343. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
       SYMBOLIC CONSTANT
         con-1  IS 1
         25156c   "25156c".
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  NUM2      PIC 9.
       01  SHORT-X   PIC X(5).
      *
       PROCEDURE DIVISION.
       MAIN.
           MOVE CON-1  TO NUM2.
           MOVE 25156C TO SHORT-X
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5068: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5068"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN':
prog.cob:18: warning: value size exceeds data size
prog.cob:18: note: value size is 6
prog.cob:13: note: 'SHORT-X' defined here as PIC X(5)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5068"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5075: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_misc.at:5075"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid SYMBOLIC clause
prog.cob:9: error: integer value expected
prog.cob: in paragraph 'MAIN':
prog.cob:17: error: 'con-1' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5075"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5082: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_misc.at:5082"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: SYMBOLIC CONSTANT does not conform to COBOL 2014
prog.cob: in paragraph 'MAIN':
prog.cob:18: warning: value size exceeds data size
prog.cob:18: note: value size is 6
prog.cob:13: note: 'SHORT-X' defined here as PIC X(5)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5082"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_343
#AT_START_344
at_fn_group_banner 344 'syn_misc.at:5093' \
  "Constant Expressions (1)" "                       " 2
at_xfail=no
(
  $as_echo "344. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  var       PIC X(200).
       01  othervar  PIC X(115).
       01  A         PIC 9 VALUE 1.
       01  B         PIC 9 VALUE 2.
       01  C         PIC 9 VALUE 3.
       78  var-len   value 115.

       PROCEDURE DIVISION.

           IF var-len < 16
               move othervar (1:var-len - 8)
                 to var (17 - var-len:var-len - 8)
           ELSE
               move othervar to var
           END-IF

           IF (2 = 3)
               move othervar to var
           ELSE
              IF 1 = 1
                 move var to othervar
              ELSE
                 move othervar (1:var-len - 8)
                   to var (17 - var-len:var-len - 8)
                 IF 1 = 1
                    move var to othervar
                 END-IF
              END-IF
              move A to B
              IF 1 = 1
                IF 2 = 1
                 move othervar (1:var-len - 8)
                   to var (17 - var-len:var-len - 8)
           .

           PERFORM WITH TEST BEFORE UNTIL 1 = 3
               move othervar to var
           END-PERFORM

           PERFORM WITH TEST BEFORE UNTIL 1 = 1
               move othervar (1:var-len - 8)
                 to var (17 - var-len:var-len - 8)
           END-PERFORM

           PERFORM WITH TEST AFTER UNTIL 1 = 3
               move othervar to var
           END-PERFORM

           PERFORM WITH TEST AFTER UNTIL 1 = 1
               move othervar to var
           END-PERFORM

           EVALUATE TRUE
           WHEN  var-len < 16
               move othervar (1:var-len - 8)
                 to var (17 - var-len:var-len - 8)
           WHEN  var-len > 16
               move othervar to var
           WHEN  A = B
               move var      to othervar
           WHEN OTHER
               CONTINUE
           END-EVALUATE

           EVALUATE FALSE
           WHEN  var-len < 16
               move othervar (1:var-len - 9)
                 to var (16 - var-len:var-len - 9)
           WHEN  var-len > 16
               move othervar to var
           WHEN  A = B
               move var      to othervar
           WHEN OTHER
               CONTINUE
           END-EVALUATE.

           IF 15 = var-len
               move othervar to var.

           IF var-len = 15
               move var      to othervar.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5186: \$COMPILE_ONLY -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option prog.cob" "syn_misc.at:5186"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:17: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:22: warning: expression '2' EQUALS '3' is always FALSE [-Wconstant-numlit-expression]
prog.cob:25: warning: expression '1' EQUALS '1' is always TRUE [-Wconstant-numlit-expression]
prog.cob:29: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:30: warning: expression '1' EQUALS '1' is always TRUE [-Wconstant-numlit-expression]
prog.cob:35: warning: expression '1' EQUALS '1' is always TRUE [-Wconstant-numlit-expression]
prog.cob:36: warning: expression '2' EQUALS '1' is always FALSE [-Wconstant-numlit-expression]
prog.cob:38: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:41: warning: expression '1' EQUALS '3' is always FALSE [-Wconstant-numlit-expression]
prog.cob:41: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
prog.cob:45: warning: expression '1' EQUALS '1' is always TRUE [-Wconstant-numlit-expression]
prog.cob:45: warning: PERFORM NEVER since UNTIL is always TRUE [-Wadditional]
prog.cob:47: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:50: warning: expression '1' EQUALS '3' is always FALSE [-Wconstant-numlit-expression]
prog.cob:50: warning: PERFORM FOREVER since UNTIL is always FALSE [-Wadditional]
prog.cob:54: warning: expression '1' EQUALS '1' is always TRUE [-Wconstant-numlit-expression]
prog.cob:54: warning: PERFORM ONCE since UNTIL is always TRUE [-Wadditional]
prog.cob:59: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:61: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:62: warning: expression '115' GREATER THAN '16' is always TRUE [-Wconstant-numlit-expression]
prog.cob:71: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:73: error: offset of 'var' out of bounds: -99
prog.cob:74: warning: expression '115' GREATER THAN '16' is always TRUE [-Wconstant-numlit-expression]
prog.cob:82: warning: expression '15' EQUALS '115' is always FALSE [-Wconstant-numlit-expression]
prog.cob:85: warning: expression '115' EQUALS '15' is always FALSE [-Wconstant-numlit-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5186"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_344
#AT_START_345
at_fn_group_banner 345 'syn_misc.at:5218' \
  "Constant Expressions (2)" "                       " 2
at_xfail=no
(
  $as_echo "345. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       78  const1    value 115.
       01  const2    CONSTANT 200.
       78  const3    value const2.
       78  const4    value const2 + const1.
       77  othervar  PIC X(const1).
       01  var       PIC X(const2).

       PROCEDURE DIVISION.

           IF const1 = const2
           OR const2 = const1
           OR const3 = const4
           OR const4 = const3
              DISPLAY 'no way' END-DISPLAY
           END-IF

           EVALUATE const1
           WHEN  15
           WHEN 115
               display '1'
           WHEN  < 16
               move othervar (1:8)
                 to var (17:8)
           WHEN  > 16
               display othervar
      *> actually WHEN OTHER is also FALSE in this case (115 = 16),
      *> but this is too complex to check
           WHEN OTHER
               display othervar
           END-EVALUATE

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5260: \$COMPILE_ONLY prog.cob "
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob " "syn_misc.at:5260"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: warning: expression '115' EQUALS '200' is always FALSE
prog.cob:16: warning: expression '200' EQUALS '115' is always FALSE
prog.cob:17: warning: expression '200' EQUALS '315' is always FALSE
prog.cob:18: warning: expression '315' EQUALS '200' is always FALSE
prog.cob:26: warning: expression '115' LESS THAN '16' is always FALSE
prog.cob:29: warning: expression '115' GREATER THAN '16' is always TRUE
prog.cob:23: warning: expression '115' EQUALS '15' is always FALSE
prog.cob:24: warning: expression '115' EQUALS '115' is always TRUE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5260"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_345
#AT_START_346
at_fn_group_banner 346 'syn_misc.at:5274' \
  "Constant Expressions (3)" "                       " 2
at_xfail=no
(
  $as_echo "346. $at_setup_line: testing $at_desc ..."
  $at_traceon



# verify that we do ignore undefined errors where possible
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  var       PIC X(200).
       78  var-len   value 115.

       PROCEDURE DIVISION.

           IF var-len < 16
               move spaces
                 to var (17 - var-len:var-len - 8)
           END-IF

           IF var-len < 16
              move notdefined to var
           END-IF

           IF var-len < 16
              perform notdefined
           END-IF

           IF var-len < 16
              if notdefined continue.

           STOP RUN.
_ATEOF


# note: the last error message comes from program validation
#       and therefore cannot be raised earlier
{ set +x
$as_echo "$at_srcdir/syn_misc.at:5309: \$COMPILE_ONLY -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option prog.cob" "syn_misc.at:5309"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:13: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:16: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:17: warning: 'notdefined' is not defined [-Wignored-error]
prog.cob:20: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:24: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5309"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that we do only skip an undefined error when it actually was reported
cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  var       PIC X(200).
       78  var-len   value 115.

       PROCEDURE DIVISION.

           IF var-len < 16
              move notdefined to var *> won't be seen with -Wno-ignore-error
           END-IF

       >> IF SKIP-FIRST-ERROR NOT DEFINED
      *> always reported here (if active) as that's the first error
           move notdefined to var
       >> END-IF

           IF var-len < 16
              move notdefined to var      *> never here, because of the warning/error above
           END-IF

           move var        to notdefined   *> only here if not the skip was active

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5347: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression prog2.cob" "syn_misc.at:5347"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:12: warning: 'notdefined' is not defined [-Wignored-error]
prog2.cob:17: error: 'notdefined' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5347"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5351: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -Wno-ignored-error prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -Wno-ignored-error prog2.cob" "syn_misc.at:5351"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -Wno-ignored-error prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:17: error: 'notdefined' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5351"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5354: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -DSKIP-FIRST-ERROR prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -DSKIP-FIRST-ERROR prog2.cob" "syn_misc.at:5354"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -DSKIP-FIRST-ERROR prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:12: warning: 'notdefined' is not defined [-Wignored-error]
prog2.cob:24: error: 'notdefined' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5354"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5358: \$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -Werror=ignored-error prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -Werror=ignored-error prog2.cob" "syn_misc.at:5358"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -Wno-constant-expression -Werror=ignored-error prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:12: error: 'notdefined' is not defined [-Werror=ignored-error]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5358"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_346
#AT_START_347
at_fn_group_banner 347 'syn_misc.at:5365' \
  "Constant Expressions (4)" "                       " 2
at_xfail=no
(
  $as_echo "347. $at_setup_line: testing $at_desc ..."
  $at_traceon



# verify that we do not ignore parsing errors as
# these are likely to raise issues in codegen

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  var       PIC X(200).
       78  var-len   value 115.

       PROCEDURE DIVISION.

           IF var-len < 16
               move spaces
                 to var (17 - var-len:var-len - 8)
               IF IF.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5389: \$COMPILE_ONLY -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option prog.cob" "syn_misc.at:5389"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:13: warning: offset of 'var' out of bounds: -98 [-Wignored-error]
prog.cob:14: error: syntax error, unexpected IF
prog.cob:14: error: IF without imperative statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5389"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_347
#AT_START_348
at_fn_group_banner 348 'syn_misc.at:5399' \
  "Constant Expressions (5)" "                       " 2
at_xfail=no
(
  $as_echo "348. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  VAR       PIC X(200).
       01  OTHERVAR  PIC X(115).
       78  VAR-LEN   VALUE 115.

       PROCEDURE DIVISION.
       MAIN-10.
           MOVE "Peek a boo" TO VAR.
           EVALUATE TRUE
               ALSO FALSE
               ALSO TRUE
            WHEN    TRUE
               ALSO VAR-LEN > 16 AND VAR-LEN < 200
               ALSO TRUE
                  MOVE OTHERVAR (1 : VAR-LEN - 9)
                    TO VAR (16 - VAR-LEN : VAR-LEN - 9)
                  DISPLAY "A: Should NOT be executed"
            WHEN  TRUE
               ALSO VAR-LEN < 16
               ALSO TRUE
                  MOVE OTHERVAR TO VAR
                  DISPLAY "A: OK VAR-LEN > 16 AND VAR-LEN < 200"
            WHEN  TRUE
               ALSO VAR = SPACES
               ALSO TRUE
                  MOVE OTHERVAR TO VAR
                  DISPLAY "A: OK VAR IS SPACES"
           END-EVALUATE.

           MOVE "Peek a boo" TO VAR.
           EVALUATE 3 EQUALS 7
           WHEN  VAR = SPACES
               DISPLAY "B: OK VAR IS NOT SPACES"
           WHEN  VAR NOT = SPACES
               DISPLAY "B: FALSE VAR IS SPACES"
           END-EVALUATE.

           MOVE SPACES       TO VAR.
           EVALUATE FALSE
           WHEN  VAR = SPACES
               DISPLAY "C: FALSE VAR IS SPACES"
           WHEN  VAR NOT = SPACES
               DISPLAY "C: OK VAR IS SPACES"
           END-EVALUATE.

           MOVE "Peek a boo" TO VAR.
           EVALUATE TRUE
           WHEN  VAR = SPACES
               DISPLAY "D: BAD VAR IS SPACES"
           WHEN  VAR NOT = SPACES
               DISPLAY "D: OK VAR IS NOT SPACES"
           END-EVALUATE.

           MOVE SPACES       TO VAR.
           EVALUATE VAR-LEN ALSO VAR
           WHEN  < 32 ALSO SPACES
               DISPLAY "E: OK VAR IS SPACES"
           WHEN  > 16 ALSO NOT SPACES
               DISPLAY "E: BAD VAR IS NOT SPACES"
           WHEN OTHER
               DISPLAY "E: OK OTHER option taken"
           END-EVALUATE.

           STOP RUN.
_ATEOF


# Note: ideally this should not result in a difference compared to the next one

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5474: \$COMPILE_ONLY -fdiagnostics-show-option -C -fno-remove-unreachable prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -C -fno-remove-unreachable prog.cob" "syn_misc.at:5474"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -C -fno-remove-unreachable prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-10':
prog.cob:17: warning: expression '115' GREATER THAN '16' is always TRUE [-Wconstant-numlit-expression]
prog.cob:17: warning: expression '115' LESS THAN '200' is always TRUE [-Wconstant-numlit-expression]
prog.cob:20: error: offset of 'VAR' out of bounds: -99
prog.cob:23: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:35: warning: expression '3' EQUALS '7' is always FALSE [-Wconstant-numlit-expression]
prog.cob:60: warning: expression '115' LESS THAN '32' is always FALSE [-Wconstant-numlit-expression]
prog.cob:62: warning: expression '115' GREATER THAN '16' is always TRUE [-Wconstant-numlit-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5474"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5485: \$COMPILE_ONLY -fdiagnostics-show-option -C prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option -C prog.cob" "syn_misc.at:5485"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option -C prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-10':
prog.cob:17: warning: expression '115' GREATER THAN '16' is always TRUE [-Wconstant-numlit-expression]
prog.cob:17: warning: expression '115' LESS THAN '200' is always TRUE [-Wconstant-numlit-expression]
prog.cob:20: warning: offset of 'VAR' out of bounds: -99 [-Wignored-error]
prog.cob:23: warning: expression '115' LESS THAN '16' is always FALSE [-Wconstant-numlit-expression]
prog.cob:35: warning: expression '3' EQUALS '7' is always FALSE [-Wconstant-numlit-expression]
prog.cob:60: warning: expression '115' LESS THAN '32' is always FALSE [-Wconstant-numlit-expression]
prog.cob:62: warning: expression '115' GREATER THAN '16' is always TRUE [-Wconstant-numlit-expression]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5485"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_348
#AT_START_349
at_fn_group_banner 349 'syn_misc.at:5499' \
  "Missing imperative statements" "                  " 2
at_xfail=no
(
  $as_echo "349. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  var       PIC X(200).
       01  othervar  PIC X(115).
       01  A         PIC 9 VALUE 1.
       01  B         PIC 9 VALUE 2.
       01  C         PIC 9 VALUE 3.
       78  var-len   value 115.

       PROCEDURE DIVISION.

           IF var-len < 16
           ELSE
               move othervar to var
           END-IF

           IF var-len > 16
           ELSE
               move othervar to var
           END-IF

           IF (2 = 3)
           ELSE
              IF 1 = 1
              ELSE
                 IF 1 = 1
                    move var to othervar
                 END-IF
              END-IF
           .

           EVALUATE TRUE
           WHEN  A = B
               move var      to othervar
           WHEN OTHER
           END-EVALUATE

           PERFORM WITH TEST BEFORE UNTIL 1 <> 3
           END-PERFORM

           EVALUATE FALSE
           WHEN  A = B
           WHEN  B = A
           END-EVALUATE.

           EVALUATE TRUE
           WHEN  A = B
               move var      to othervar
           WHEN OTHER
           .

           EVALUATE TRUE
           WHEN  A = B
           WHEN  B = A
           .

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5564: \$COMPILE_ONLY -w -fmissing-statement=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -w -fmissing-statement=error prog.cob" "syn_misc.at:5564"
( $at_check_trace; $COMPILE_ONLY -w -fmissing-statement=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: IF without imperative statement used
prog.cob:20: error: IF without imperative statement used
prog.cob:27: error: IF without imperative statement used
prog.cob:25: error: IF without imperative statement used
prog.cob:38: error: WHEN OTHER without imperative statement used
prog.cob:42: error: inline PERFORM without imperative statement used
prog.cob:47: error: WHEN without imperative statement used
prog.cob:52: error: WHEN OTHER without imperative statement used
prog.cob:58: error: WHEN without imperative statement used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5564"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5576: \$COMPILE_ONLY -fno-constant-folding -fmissing-statement=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fno-constant-folding -fmissing-statement=warning prog.cob" "syn_misc.at:5576"
( $at_check_trace; $COMPILE_ONLY -fno-constant-folding -fmissing-statement=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: warning: IF without imperative statement used
prog.cob:20: warning: IF without imperative statement used
prog.cob:27: warning: IF without imperative statement used
prog.cob:25: warning: IF without imperative statement used
prog.cob:38: warning: WHEN OTHER without imperative statement used
prog.cob:42: warning: inline PERFORM without imperative statement used
prog.cob:47: warning: WHEN without imperative statement used
prog.cob:52: warning: WHEN OTHER without imperative statement used
prog.cob:58: warning: WHEN without imperative statement used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5576"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_349
#AT_START_350
at_fn_group_banner 350 'syn_misc.at:5591' \
  "Fall-Through to WHEN OTHER" "                     " 2
at_xfail=yes
(
  $as_echo "350. $at_setup_line: testing $at_desc ..."
  $at_traceon



# we currently don't do the necessary parsing steps for
# this test to pass - and likely need a different option
# than frelax-syntax-checks..



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  A         PIC 9 VALUE 1.
       01  B         PIC 9 VALUE 2.

       PROCEDURE DIVISION.

           EVALUATE TRUE
           WHEN A = B
           WHEN OTHER
               DISPLAY 'other' END-DISPLAY
           END-EVALUATE

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5619: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5619"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: fall-through to WHEN OTHER is not allowed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5619"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5623: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_misc.at:5623"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: warning: fall-through to WHEN OTHER
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5623"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_350
#AT_START_351
at_fn_group_banner 351 'syn_misc.at:5629' \
  "CONSTANT LENGTH / BYTE-LENGTH" "                  " 2
at_xfail=no
(
  $as_echo "351. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.
       environment division.
       data division.
       working-storage section.
       01  item-01.
           05  item-05-a     pointer.
           05  item-05-b     pic x(01).
       01 myk-01 constant           as      length of item-01.
       01 myk-02 constant is global as      length item-05-a.
       01 myk-03 constant    global as      length of pointer. *> extension
       01 myk-04 constant    global as byte-length of item-01.
       01 myk-05 constant is global as byte-length item-05-a.
       01 myk-06 constant           as byte-length of pointer. *> extension
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5649: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5649"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5649"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_351
#AT_START_352
at_fn_group_banner 352 'syn_misc.at:5653' \
  "ANY LENGTH/NUMERIC with incorrect PIC" "          " 2
at_xfail=no
(
  $as_echo "352. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA           DIVISION.
       LINKAGE        SECTION.
      *> Valid
       01  valid-1    PIC X ANY LENGTH.
       01  valid-2    PIC N ANY LENGTH.
       01  valid-3    PIC 9 ANY NUMERIC.

      *> Invalid
       01  invalid-1  PIC A ANY LENGTH.
       01  invalid-2  PIC Z ANY LENGTH.
       01  invalid-3  PIC 9 ANY LENGTH.
       01  invalid-4  PIC X ANY NUMERIC.
       01  invalid-5  PIC XX ANY LENGTH.
       01  invalid-6  PIC NN ANY LENGTH.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5676: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5676"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:18: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
prog.cob:13: error: 'invalid-1' ANY LENGTH must be PIC X, PIC U, PIC N or PIC 1
prog.cob:14: error: 'invalid-2' ANY LENGTH must be PIC X, PIC U, PIC N or PIC 1
prog.cob:15: error: 'invalid-3' ANY LENGTH must be PIC X, PIC U, PIC N or PIC 1
prog.cob:16: error: 'invalid-4' ANY NUMERIC must be PIC 9
prog.cob:17: error: 'invalid-5' ANY LENGTH has invalid definition
prog.cob:18: error: 'invalid-6' ANY LENGTH has invalid definition
prog.cob:8: error: 'valid-1' ANY LENGTH item must be a formal parameter
prog.cob:9: error: 'valid-2' ANY LENGTH item must be a formal parameter
prog.cob:10: error: 'valid-3' ANY LENGTH item must be a formal parameter
prog.cob:13: error: 'invalid-1' ANY LENGTH item must be a formal parameter
prog.cob:14: error: 'invalid-2' ANY LENGTH item must be a formal parameter
prog.cob:15: error: 'invalid-3' ANY LENGTH item must be a formal parameter
prog.cob:16: error: 'invalid-4' ANY LENGTH item must be a formal parameter
prog.cob:17: error: 'invalid-5' ANY LENGTH item must be a formal parameter
prog.cob:18: error: 'invalid-6' ANY LENGTH item must be a formal parameter
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5676"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_352
#AT_START_353
at_fn_group_banner 353 'syn_misc.at:5699' \
  "VOLATILE clause" "                                " 2
at_xfail=no
(
  $as_echo "353. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 DATA-COLLECTION.
          03 DATA-ITEMS-A VOLATILE.
             05 DATA-A1 PIC S9(9) BINARY.
             05 DATA-A2 PIC S9(9) BINARY.
          03 VOLATILE.
             05 DATA-FILLER PIC S9(9) BINARY.
          03 DATA-ITEMS-B.
             05 DATA-B1 PIC S9(9).
             05 DATA-B2 PIC S9(9) VOLATILE.
          03 DATA-ITEMS-C.
             05 DATA-C1 PIC S9(9).
             05 DATA-C2 PIC S9(9).
       01 STEP    PIC 9(8)  BINARY VALUE 0 EXTERNAL VOLATILE.
      *01 WRONGY    PIC X.
      *   88 TESTVAL-A VALUE 'A' VOLATILE.
      *   88 TESTVAL-B VOLATILE VALUE 'B'.
       LINKAGE SECTION.
       01  XMYREC.
          05  XFLD1   PIC 9(2) VOLATILE.
      *SCREEN SECTION.
      *01  WRONG-SCREEN.
      *   05  WRONG-FIELD   PIC X VOLATILE.
      *
       PROCEDURE DIVISION.
           MOVE DATA-ITEMS-B TO DATA-ITEMS-C.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5735: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_misc.at:5735"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: warning: initial VALUE clause ignored for EXTERNAL item 'STEP'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5735"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5738: \$COMPILE_ONLY -std=ibm-strict -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm-strict -w prog.cob" "syn_misc.at:5738"
( $at_check_trace; $COMPILE_ONLY -std=ibm-strict -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5738"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_353
#AT_START_354
at_fn_group_banner 354 'syn_misc.at:5743' \
  "SET SOURCEFORMAT syntax checks" "                 " 2
at_xfail=no
(
  $as_echo "354. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

      *> Valid
       $set sourceformat(free)
       $  SET SOURCEFORMAT"FIXED"
      *> Invalid
       $SET SOURCEFORMAT"hi!"
       $SET SOURCEFORMAT()
       $SET sourceformat'mis-matched"
_ATEOF


# FIXME: something is broken with the '"#OPTION here,
#        that should be generated as #OPTION 'mis-matched"
#        and in a second step not be generated at all

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5760: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5760"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: invalid SOURCEFORMAT directive option 'hi!'
prog.cob:7: error: invalid SOURCEFORMAT directive option ''
prog.cob:8: error: syntax error, unexpected Variable, expecting Literal
prog.cob:8: error: invalid SOURCEFORMAT directive option
prog.cob:8: error: invalid literal: '\"#OPTION mis-matched ...'
prog.cob:8: note: missing terminating ' character
prog.cob:8: error: PROGRAM-ID header missing
prog.cob:8: error: PROCEDURE DIVISION header missing
prog.cob:8: error: syntax error, unexpected Literal
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5760"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_354
#AT_START_355
at_fn_group_banner 355 'syn_misc.at:5776' \
  "WHEN-COMPILED register in dialect" "              " 2
at_xfail=no
(
  $as_echo "355. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       PROCEDURE DIVISION.
           DISPLAY WHEN-COMPILED
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5788: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_misc.at:5788"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'WHEN-COMPILED' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5788"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5791: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "syn_misc.at:5791"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5791"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5792: \$COMPILE_ONLY -std=mvs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mvs prog.cob" "syn_misc.at:5792"
( $at_check_trace; $COMPILE_ONLY -std=mvs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5792"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5793: \$COMPILE_ONLY -std=rm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=rm prog.cob" "syn_misc.at:5793"
( $at_check_trace; $COMPILE_ONLY -std=rm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5793"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5794: \$COMPILE_ONLY -fregister=WHEN-COMPILED prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fregister=WHEN-COMPILED prog.cob" "syn_misc.at:5794"
( $at_check_trace; $COMPILE_ONLY -fregister=WHEN-COMPILED prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5794"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:5795: \$COMPILE_ONLY -freserved=WHEN-COMPILED -fregister=WHEN-COMPILED prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -freserved=WHEN-COMPILED -fregister=WHEN-COMPILED prog.cob" "syn_misc.at:5795"
( $at_check_trace; $COMPILE_ONLY -freserved=WHEN-COMPILED -fregister=WHEN-COMPILED prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5795"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_355
#AT_START_356
at_fn_group_banner 356 'syn_misc.at:5802' \
  "LIN / COL register" "                             " 2
at_xfail=no
(
  $as_echo "356. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       PROCEDURE DIVISION.
           MOVE 1 TO LIN, COL
           .
_ATEOF


# "strict" configuration:
{ set +x
$as_echo "$at_srcdir/syn_misc.at:5815: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_misc.at:5815"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'LIN' is not defined
prog.cob:6: error: syntax error, unexpected COL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5815"
$at_failed && at_fn_log_failure
$at_traceon; }

# "lax" configuration:
{ set +x
$as_echo "$at_srcdir/syn_misc.at:5820: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_misc.at:5820"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'LIN' is not defined
prog.cob:6: error: syntax error, unexpected COL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5820"
$at_failed && at_fn_log_failure
$at_traceon; }

# standard configuration:
{ set +x
$as_echo "$at_srcdir/syn_misc.at:5825: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5825"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: 'LIN' is not defined
prog.cob:6: error: syntax error, unexpected COL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:5825"
$at_failed && at_fn_log_failure
$at_traceon; }

# explicit enabled
{ set +x
$as_echo "$at_srcdir/syn_misc.at:5830: \$COMPILE_ONLY -fregister=LIN,COL prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fregister=LIN,COL prog.cob" "syn_misc.at:5830"
( $at_check_trace; $COMPILE_ONLY -fregister=LIN,COL prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5830"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_356
#AT_START_357
at_fn_group_banner 357 'syn_misc.at:5834' \
  "tokens consisting of multiple words" "            " 2
at_xfail=no
(
  $as_echo "357. $at_setup_line: testing $at_desc ..."
  $at_traceon

# note: we actually do not check for all possible cases, but two are better than none...


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  test-var   pic xx.
           88  endOfFile value '10'.
       01  todo       pic xx.

       PROCEDURE DIVISION.
           if not endOfFile
              display 'all fine'
           end-if
           if test-var greater or equal todo
              display 'still fine'
           end-if
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5857: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:5857"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5857"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_357
#AT_START_358
at_fn_group_banner 358 'syn_misc.at:5862' \
  "@OPTIONS parsing" "                               " 2
at_xfail=no
(
  $as_echo "358. $at_setup_line: testing $at_desc ..."
  $at_traceon



# GnuCOBOL currently only skips these, see FR 305

cat >valid.cob <<'_ATEOF'

000100 @OPTIONS NOMAIN,APOST
000200 @OPTIONS APOST
000300 IDENTIFICATION  DIVISION.
000400 PROGRAM-ID. VALID.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5874: \$COMPILE_ONLY valid.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY valid.cob" "syn_misc.at:5874"
( $at_check_trace; $COMPILE_ONLY valid.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "valid.cob:2: warning: ignoring unknown directive: '@OPTIONS NOMAIN,APOST'
valid.cob:3: warning: ignoring unknown directive: '@OPTIONS APOST'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5874"
$at_failed && at_fn_log_failure
$at_traceon; }


#AT_DATA([invalid.cob], [
#       @OPTIONS ALPHAL(WORD)
#       @OPTIONS INITVALUE(100)
#       @OPTIONS INITVALUE(F)
#       @OPTIONS INITVALUE(AG)
#       @OPTIONS BINARY(WORD,MLBON) INITVALUE(00) NOTRUNC
#       @OPTIONS INITVALUE(00)
#       @OPTIONS NOTRUNC
#       @OPTIONS APOST,MAIN
#       @OPTIONS THREAD(SINGLE)
#       IDENTIFICATION DIVISION.
#       PROGRAM-ID. INVALID.
#])

#AT_CHECK([$COMPILE_ONLY valid.cob], [0], [], [])
#AT_CHECK([$COMPILE_ONLY invalid.cob], [1], [],
#[invalid.cob:2: warning: unknown @OPTIONS directive 'ALPHAL'
#invalid.cob:3: error: invalid @OPTIONS INITVALUE value '100'
#invalid.cob:4: error: invalid @OPTIONS INITVALUE value 'F'
#invalid.cob:5: error: invalid @OPTIONS INITVALUE value 'AG'
#invalid.cob:6: warning: skipping line after first space
#invalid.cob:7: error: @OPTIONS MAIN conflicts with command line option '-m'
#])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_358
#AT_START_359
at_fn_group_banner 359 'syn_misc.at:5906' \
  "PROCESS / CBL parsing" "                          " 2
at_xfail=no
(
  $as_echo "359. $at_setup_line: testing $at_desc ..."
  $at_traceon



# GnuCOBOL currently only skips these, see FR 305

#AT_DATA([valid.cob], [
#Process codepage(1047)
#CBL CODEPAGE(1047)
#Process
#  Process codepage(1208)
#  CBL CODEPAGE(1208)
#000100 Process codepage(1047)
#000200 CBL CODEPAGE(1047)
#000300 CBL
#000400 IDENTIFICATION  DIVISION.
#000500 PROGRAM-ID. VALID.
#])
#
#AT_CHECK([$COMPILE_ONLY valid.cob], [0], [],
#[valid.cob:2: warning: ignoring unknown directive: 'Process codepage(1047)'
#valid.cob:3: warning: ignoring unknown directive: 'CBL CODEPAGE(1047)'
#valid.cob:5: warning: ignoring unknown directive: 'Process codepage(1208)'
#valid.cob:6: warning: ignoring unknown directive: 'CBL CODEPAGE(1208)'
#valid.cob:7: warning: ignoring unknown directive: 'Process codepage(1047)'
#valid.cob:8: warning: ignoring unknown directive: 'CBL CODEPAGE(1047)'
#])

# FIXME: the part above does not work

#AT_DATA([valid.cob], [
#Process codepage(1047)
#   Process
#    CBL
#000100 Process codepage(1208)
#000200 CBL CODEPAGE(1208)
#000300 CBL
#000400 IDENTIFICATION  DIVISION.
#000500 PROGRAM-ID. VALID.
#])

#AT_CHECK([$COMPILE_ONLY valid.cob], [0], [],
#[valid.cob:2: warning: ignoring unknown directive: 'Process codepage(1047)'
#valid.cob:5: warning: ignoring unknown directive: 'Process codepage(1208)'
#valid.cob:6: warning: ignoring unknown directive: 'CBL CODEPAGE(1208)'
#])

# simple one, to consider later how to make the necessary changes for
# process/cbl before col 7

cat >valid.cob <<'_ATEOF'

000100 Process codepage(1047)
000200 CBL CODEPAGE(1208)
000300 CBL
000400 IDENTIFICATION  DIVISION.
000500 PROGRAM-ID. VALID.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5963: \$COMPILE_ONLY valid.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY valid.cob" "syn_misc.at:5963"
( $at_check_trace; $COMPILE_ONLY valid.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "valid.cob:2: warning: ignoring unknown directive: 'Process codepage(1047)'
valid.cob:3: warning: ignoring unknown directive: 'CBL CODEPAGE(1208)'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5963"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_359
#AT_START_360
at_fn_group_banner 360 'syn_misc.at:5971' \
  "*CONTROL / *CBL parsing" "                        " 2
at_xfail=no
(
  $as_echo "360. $at_setup_line: testing $at_desc ..."
  $at_traceon



#AT_DATA([valid.cob], [
#      *CONTROL LIST
#        *CONTROL SOURCE
#      *CBL MAP LIST
#000100 *CBL NOMAP NOSOURCE NOLIST
#000200 IDENTIFICATION  DIVISION.
#000300 PROGRAM-ID. VALID.
#])

#AT_CHECK([$COMPILE_ONLY valid.cob], [0], [],
#[valid.cob:2: warning: LIST is not applicable, consider -g / -s
#valid.cob:4: warning: LIST is not applicable, consider -g / -s
#])

# for now only simple one -> ignored

cat >valid.cob <<'_ATEOF'

      *CONTROL LIST
        *CONTROL SOURCE
      *CBL MAP LIST
000100 *CBL NOMAP NOSOURCE NOLIST
000200 IDENTIFICATION  DIVISION.
000300 PROGRAM-ID. VALID.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:5999: \$COMPILE_ONLY valid.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY valid.cob" "syn_misc.at:5999"
( $at_check_trace; $COMPILE_ONLY valid.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:5999"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_360
#AT_START_361
at_fn_group_banner 361 'syn_misc.at:6004' \
  "system routines with wrong number of parameters" "" 2
at_xfail=no
(
  $as_echo "361. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 VAR1  PIC 9.
       01 VAR2  PIC 9.
       01 VAR3  PIC 9.
       01 VAR4  PIC 9.
       PROCEDURE DIVISION.
        CALL X"91" USING VAR1 VAR2 VAR3 VAR4.
        CALL X"91" USING VAR1.
        CALL "C$TOUPPER" USING VAR1 VAR2 VAR3.
        CALL "CBL_GC_FORK" USING VAR1.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6023: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6023"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: wrong number of CALL parameters for 'X\"91\"', 4 given, 3 expected
prog.cob:12: error: wrong number of CALL parameters for 'X\"91\"', 1 given, 3 expected
prog.cob:13: warning: wrong number of CALL parameters for 'C\$TOUPPER', 3 given, 2 expected
prog.cob:14: warning: wrong number of CALL parameters for 'CBL_GC_FORK', 1 given, 0 expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6023"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_361
#AT_START_362
at_fn_group_banner 362 'syn_misc.at:6033' \
  "invalid use of condition-name" "                  " 2
at_xfail=no
(
  $as_echo "362. $at_setup_line: testing $at_desc ..."
  $at_traceon


# see Bug #543 "level 88 item not checked in all places for STRING"
# and FR #339
# Note: we actually check much more here, for example special data types
#       like HANDLE, see "ACUCOBOL USAGE HANDLE";
#       condition-name is also checked in syn_file.at "WRITE / REWRITE FROM clause"

cat >prog.cob <<'_ATEOF'

       identification   division.
       program-id.      prog.
       data             division.
       working-storage  section.
       77 p        usage pointer.
       01 val      pic x(10).
          88 val-i1 value 'some'.
          88 val-i2 value 'val'.
       77 val2     pic x(50).
       77 target   pic x(50).
       01 vnum     pic 9.
          88 vnum-1 value  1.
          88 vnum-2 values 2 thru 5.
          88 vnum-9 value  9.
       01 filler.
          02 tentry pic x occurs 0 to 6 depending on vnum-1.
       procedure        division.
           string   val-i1 delimited by size  into target
           string   val2   delimited by val-i2 into target
           string   val2   delimited by size   into val-i1
                           with pointer val-i2
           unstring val-i1                     into target
           unstring val2   delimited by val-i1 into target
           unstring val2                       into val-i1
                           with pointer val-i2
           move val-i1
             to val-i2, tentry (vnum-9)
           compute vnum-1 = vnum
           compute vnum    = vnum-1 /
                             vnum-2
           go to val-i1
           set p to val-i1
           set p to address of val-i2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6077: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6077"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:17: error: condition-name not allowed here: 'vnum-1'
prog.cob:19: error: condition-name not allowed here: 'val-i1'
prog.cob:20: error: condition-name not allowed here: 'val-i2'
prog.cob:21: error: condition-name not allowed here: 'val-i1'
prog.cob:23: error: condition-name not allowed here: 'val-i1'
prog.cob:24: error: condition-name not allowed here: 'val-i1'
prog.cob:25: error: condition-name not allowed here: 'val-i1'
prog.cob:28: error: condition-name not allowed here: 'vnum-9'
prog.cob:27: error: condition-name not allowed here: 'val-i1'
prog.cob:29: error: condition-name not allowed here: 'vnum-1'
prog.cob:30: error: condition-name not allowed here: 'vnum-1'
prog.cob:31: error: condition-name not allowed here: 'vnum-2'
prog.cob:33: error: condition-name not allowed here: 'val-i1'
prog.cob:34: error: condition-name not allowed here: 'val-i2'
prog.cob:32: error: 'val-i1 (MAIN SECTION:)' is not a procedure name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6077"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_362
#AT_START_363
at_fn_group_banner 363 'syn_misc.at:6097' \
  "XML GENERATE syntax checks" "                     " 2
at_xfail=no
(
  $as_echo "363. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  str.
           03  str-1 PIC XX.
           03  str-2 PIC X.
       66  renames-item RENAMES str-1 THRU str-2.
       01  bool-area.
           03  bool-item PIC 1(30) USAGE BIT.
           03  zoned-decimal PIC 99V99 PACKED-DECIMAL.
       01  just-item PIC X(30) JUST.
       01  table-area.
           03  table-entry PIC X(30) OCCURS 2 TIMES.
       01  long-str PIC X(200).

       01  float-item FLOAT-SHORT.
       01  pic-p-item PIC 99P(3).

       01  rec.
           03  child-1 PIC X(30).
           03  child-1a REDEFINES child-1 PIC 9(30).
           03  child-2 PIC X(30).
           03  child-3.
               05  child-3-1 PIC X OCCURS 5 TIMES.

       01  all-filler-rec.
           03  FILLER PIC XXXX.
           03  FILLER PIC 9999.

       01  invalid-sub-elt-rec.
           03  non-unique-name PIC X.
           03  valid-sub-rec.
               05  non-unique-name PIC X.
           03  bit-item PIC 1 USAGE BIT.
           03  ptr-item USAGE POINTER.

       01  with-attrs-does-nothing.
           03  FILLER PIC X.
           03  table-elt PIC X OCCURS 2 TIMES.
           03  with-attrs-group.
               05  with-attrs-group-child PIC X.
           03  with-attrs-child PIC X.

       PROCEDURE DIVISION.
      *> Receiving area is not alphanumeric or national.
           XML GENERATE bool-item FROM str
      *> Receiving area is JUSTIFIED RIGHT.
           XML GENERATE just-item FROM str
      *> Receiving area is subscripted or ref-mod'd.
           XML GENERATE table-entry (1) FROM str
           XML GENERATE long-str (1:100) FROM str

      *> Input record cannot be function identifier.
           XML GENERATE long-str FROM FUNCTION CHAR(4)
      *> Input record cannot be ref-mod'd.
           XML GENERATE long-str FROM str (2:1)
      *>  "       "   is not RENAMES (children may be RENAMES).
           XML GENERATE long-str FROM renames-item
      *> Non-ignored items of the input record must:
      *>  * alphabetic, alphanumeric, national, numeric or index.
      *>  * there must be at least one item.
      *>  * each non-FILLER name must be unique within the input record.
           XML GENERATE long-str FROM invalid-sub-elt-rec *> XXXXXXXXX ptr element is invalid
           XML GENERATE long-str FROM all-filler-rec

      *> COUNT IN field must be an integer.
           XML GENERATE long-str FROM str COUNT float-item
      *> COUNT IN field must not have P in PIC.
           XML GENERATE long-str FROM str COUNT pic-p-item

      *> ENCODING codepage must be unsigned integer.
      *> If receiving area is national, codepage must be 1200.
      *> "        "       "   alphanumeric, codepage must be 1208 or EBCDIC
      *>   page supported with XML.

      *> WITH ATTRIBUTES, generated immediate children must be
      *>  * elementary
      *>  * be non-FILLER
      *>  * not be OCCURS
      *>  * not be subject of a TYPE phrase.
           XML GENERATE long-str FROM with-attrs-does-nothing
               WITH ATTRIBUTES
               TYPE OF with-attrs-child IS ELEMENT

      *> NAMESPACE must be a valid URI.
           XML GENERATE long-str FROM str NAMESPACE "<>"
      *> NAMESPACE and -PREFIX must be alphanumeric or national.
           XML GENERATE long-str FROM str
              NAMESPACE bool-item NAMESPACE-PREFIX bool-item
      *>   "        "     "    may not be figurative constants.
           XML GENERATE long-str FROM str
               NAMESPACE SPACES NAMESPACE-PREFIX QUOTES
      *> NAMESPACE-PREFIX must be a valid XML name.
           XML GENERATE long-str FROM str
               NAMESPACE "http://www.w3.org/xml" NAMESPACE-PREFIX X"00"

      *> NAME items must reference input record or its children.
           XML GENERATE long-str FROM rec
               NAME OF child-1 IS "c1", long-str IS "c2", rec IS "r"
      *> NAME items cannot be reference modified or subscripted.
           XML GENERATE long-str FROM rec
               NAME OF child-1 (1:2) IS "c1"
      *> NAME items may not be ignored by the statement.
           XML GENERATE long-str FROM rec
               NAME OF child-1a IS "c1a"
      *> NAME literals must be valid XML names.
           XML GENERATE long-str FROM rec
               NAME OF child-1 IS X"00"

      *> TYPE items must be elementary and children of input record.
           XML GENERATE long-str FROM rec
               TYPE OF child-3 IS ELEMENT, long-str IS CONTENT,
                   rec IS CONTENT
      *> TYPE items cannot be ref-mod'd or subscripted.
           XML GENERATE long-str FROM rec
               TYPE OF child-1 (1:3) IS ATTRIBUTE,
                   child-3-1 (1) IS CONTENT
      *> TYPE items may not be ignored by the statement
           XML GENERATE long-str FROM rec
               TYPE OF child-1a IS ELEMENT
      *> TYPE ATTRIBUTE items must satisfy the conditions for WITH
      *>  ATTRIBUTES. (Covered by the above.)

      *> SUPPRESS WHEN items must be:
      *>  * elementary
      *>  * not ignored
      *>  * child of input record.
           XML GENERATE long-str FROM rec
               SUPPRESS child-3 WHEN SPACES, child-1a WHEN SPACES,
                   rec WHEN SPACES
      *> All SUPPRESS items must not be functions
           XML GENERATE long-str FROM rec
               SUPPRESS FUNCTION CHAR(5) WHEN SPACE
      *> All SUPPRESS items must not be ref-mod'd or subscripted.
           XML GENERATE long-str FROM rec
               SUPPRESS child-1 (1:3) WHEN ZERO,
                   child-3-1 (1) WHEN SPACES
      *> If non-WHEN SUPPRESS items may be groups. (No error message here.)
           XML GENERATE long-str FROM rec SUPPRESS child-3
      *> If SUPPRESS WHEN ZEROES, item is not DISPLAY-1.
      *> If SUPPRESS WHEN SPACES, item must be USAGE DISPLAY, DISPLAY-1 or
      *>   NATIONAL
           XML GENERATE long-str FROM bool-area
               SUPPRESS bool-item WHEN SPACES
      *> If SUPPRESS WHEN LOW-/HIGH-VALUES, item must be USAGE DISPLAY or
      *>   NATIONAL. If item is a zoned/national decimal item, it must be
      *>   an integer.
           XML GENERATE long-str FROM bool-area
               SUPPRESS bool-item WHEN LOW-VALUES,
                   zoned-decimal WHEN HIGH-VALUE
      *> (For generic WHEN phrases, invalid items above are ignored.)
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6257: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6257"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: warning: USAGE BIT is not implemented
prog.cob:37: warning: USAGE BIT is not implemented
prog.cob:49: error: JSON/XML GENERATE receiving item must be alphanumeric or national
prog.cob:51: error: JSON/XML GENERATE receiving item may not have JUSTIFIED clause
prog.cob:53: error: JSON/XML GENERATE receiving item may not be subscripted
prog.cob:54: error: JSON/XML GENERATE receiving item may not be reference modified
prog.cob:57: error: syntax error, unexpected intrinsic function name, expecting Identifier
prog.cob:59: error: JSON/XML GENERATE input record may not be reference modified
prog.cob:61: error: JSON/XML GENERATE input record may not have RENAMES clause
prog.cob:66: error: JSON/XML GENERATE input record has subrecords with non-unique names
prog.cob:67: error: all the children of 'all-filler-rec' are ignored in JSON/XML GENERATE
prog.cob:70: error: COUNT IN item 'float-item' must be an integer
prog.cob:72: error: COUNT IN item 'pic-p-item' may not have PICTURE with P in it
prog.cob:89: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:89: warning: WITH ATTRIBUTES specified, but no attributes can be generated
prog.cob:89: error: NAMESPACE must be a valid URI
prog.cob:92: error: NAMESPACE must be alphanumeric or national
prog.cob:92: error: NAMESPACE-PREFIX must be alphanumeric or national
prog.cob:97: error: NAMESPACE may not be a figurative constant
prog.cob:97: error: NAMESPACE-PREFIX may not be a figurative constant
prog.cob:98: error: NAMESPACE-PREFIX must be a valid XML name
prog.cob:104: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:102: error: NAME OF item must be the input record or a child of it
prog.cob:107: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:105: error: NAME OF item may not be reference modified
prog.cob:110: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:108: error: NAME OF item may not be an ignored item in JSON/XML GENERATE
prog.cob:114: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:111: error: NAME OF literal must be a valid XML identifier
prog.cob:118: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:115: error: TYPE OF item must be elementary
prog.cob:115: error: TYPE OF item must be a child of the input record
prog.cob:116: error: TYPE OF item must be elementary
prog.cob:116: error: TYPE OF item must be a child of the input record
prog.cob:122: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:119: error: TYPE OF item may not be reference modified
prog.cob:120: error: TYPE OF item may not be subscripted
prog.cob:131: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:123: error: TYPE OF item may not be an ignored item in JSON/XML GENERATE
prog.cob:135: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:133: error: SUPPRESS item with WHEN clause must be elementary
prog.cob:133: error: SUPPRESS item must be a child of the input record
prog.cob:132: error: SUPPRESS item may not be an ignored item in JSON/XML GENERATE
prog.cob:132: error: SUPPRESS item with WHEN clause must be elementary
prog.cob:136: error: syntax error, unexpected intrinsic function name, expecting EVERY or WHEN or Identifier
prog.cob:142: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:140: error: SUPPRESS item may not be subscripted
prog.cob:139: error: SUPPRESS item may not be reference modified
prog.cob:146: warning: OCCURS items in JSON/XML GENERATE is not implemented
prog.cob:147: error: SUPPRESS WHEN SPACE item must be USAGE DISPLAY or NATIONAL
prog.cob:153: error: SUPPRESS WHEN HIGH-VALUE item must be USAGE DISPLAY or NATIONAL
prog.cob:153: error: SUPPRESS WHEN HIGH-VALUE item must be an integer
prog.cob:152: error: SUPPRESS WHEN LOW-VALUE item must be USAGE DISPLAY or NATIONAL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6257"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_363
#AT_START_364
at_fn_group_banner 364 'syn_misc.at:6315' \
  "BASED clause, ALLOCATE / FREE statements" "       " 2
at_xfail=no
(
  $as_echo "364. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  str.
           03  str-1  PIC XX BASED.
       01  str-2 BASED.
           03  str-2a PIC X SYNC.
           03  str-2b PIC 9.
       01  one        PIC XX BASED.
       77  seven      PIC 9 BASED.
       77  var        PIC 9.
       77  ptr        USAGE POINTER.
       SCREEN-STORAGE SECTION.
       01  scrn      BASED.
           03  scrn-field pic x.

       PROCEDURE DIVISION.
           ALLOCATE one
           ALLOCATE seven INITIALIZED
           ALLOCATE seven CHARACTERS
           ALLOCATE seven CHARACTERS RETURNING ptr
           ALLOCATE 1 + 2 * 3 CHARACTERS RETURNING ptr
           ALLOCATE 1 + one * 3 CHARACTERS RETURNING ptr
           ALLOCATE one   CHARACTERS RETURNING ptr
           ALLOCATE seven CHARACTERS INITIALIZED RETURNING ptr
           ALLOCATE var
           ALLOCATE 9 CHARACTERS INITIALIZED TO 9 RETURNING ptr.
           FREE var
           FREE ADDRESS OF var
           FREE one
           FREE ADDRESS OF seven
           MOVE ADDRESS OF seven TO ptr
           FREE ptr
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6357: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6357"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: BASED only allowed at 01/77 level
prog.cob:16: error: PROCEDURE DIVISION header missing
prog.cob:16: error: syntax error, unexpected Identifier
prog.cob:17: error: syntax error, unexpected Identifier, expecting SECTION or .
prog.cob:17: note: unknown statement '01'
prog.cob:18: error: syntax error, unexpected Identifier, expecting SECTION or .
prog.cob:18: note: unknown statement '03'
prog.cob:20: error: syntax error, unexpected PROCEDURE
prog.cob:23: error: ALLOCATE CHARACTERS requires RETURNING clause
prog.cob:26: error: 'one' is not numeric
prog.cob:27: error: amount must be specified as a numeric expression
prog.cob:29: error: target of ALLOCATE must have BASED clause
prog.cob:30: error: INITIALIZED TO item is not alphanumeric
prog.cob:31: error: target 1 of FREE is not a BASED data item
prog.cob:32: error: target 1 of FREE is not a BASED data item
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6357"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6375: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_misc.at:6375"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: BASED only allowed at 01/77 level
prog.cob:16: warning: PROCEDURE DIVISION header missing
prog.cob:16: note: PROCEDURE DIVISION header assumed
prog.cob:16: error: syntax error, unexpected Identifier
prog.cob:17: error: syntax error, unexpected Identifier, expecting SECTION or .
prog.cob:17: note: unknown statement '01'
prog.cob:18: error: syntax error, unexpected Identifier, expecting SECTION or .
prog.cob:18: note: unknown statement '03'
prog.cob:20: error: syntax error, unexpected PROCEDURE
prog.cob:23: error: ALLOCATE CHARACTERS requires RETURNING clause
prog.cob:26: error: 'one' is not numeric
prog.cob:27: error: amount must be specified as a numeric expression
prog.cob:29: error: cannot change address of 'var', which is not BASED or a LINKAGE item
prog.cob:30: error: INITIALIZED TO item is not alphanumeric
prog.cob:31: error: target 1 of FREE is not a BASED data item
prog.cob:32: error: target 1 of FREE is not a BASED data item
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6375"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_364
#AT_START_365
at_fn_group_banner 365 'syn_misc.at:6396' \
  "CONTINUE statement" "                             " 2
at_xfail=no
(
  $as_echo "365. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  one        PIC X.
       77  seven      PIC 9 BASED.
       77  var        PIC 9.
       77  ptr        USAGE POINTER.
       PROCEDURE DIVISION.
           CONTINUE
           PERFORM VARYING var FROM 1 BY 1 UNTIL var = 4
              CONTINUE
           END-PERFORM
           CONTINUE AFTER 42 SECONDS      *> COBOL 202x
           CONTINUE AFTER 4 + 2 SECONDS
           CONTINUE AFTER var + 2 SECONDS
           CONTINUE AFTER '1' SECONDS
           CONTINUE AFTER ptr SECONDS
           CONTINUE AFTER one SECONDS
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6423: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6423"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:19: error: amount must be specified as a numeric expression
prog.cob:20: error: amount must be specified as a numeric expression
prog.cob:21: error: amount must be specified as a numeric expression
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6423"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6429: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_misc.at:6429"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:16: error: AFTER phrase in CONTINUE statement does not conform to COBOL 2014
prog.cob:17: error: AFTER phrase in CONTINUE statement does not conform to COBOL 2014
prog.cob:18: error: AFTER phrase in CONTINUE statement does not conform to COBOL 2014
prog.cob:19: error: AFTER phrase in CONTINUE statement does not conform to COBOL 2014
prog.cob:20: error: AFTER phrase in CONTINUE statement does not conform to COBOL 2014
prog.cob:21: error: AFTER phrase in CONTINUE statement does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6429"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_365
#AT_START_366
at_fn_group_banner 366 'syn_misc.at:6440' \
  "conflict markers" "                               " 2
at_xfail=no
(
  $as_echo "366. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *> Verify that we report conflict markers correctly
<<<<<<< HEAD
       01  one-1      PIC X.
======= there may be something here
       01  one-2      PIC X.
>>>>>>> some note
      *> Verify that we don't have an issue with unmatched conflict markers
       77  var        PIC 9.
<<<<<<< HEAD
       01  var2       PIC X.
=======
<<<<<<< HEAD
      *> Verify that we only report conflict markers at the start of lines.
 <<<<<<< HEAD
       01  one        PIC X.
 =======
       01  two        PIC 9.
 >>>>>>> some note
       PROCEDURE DIVISION.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6471: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6471"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: version control conflict marker in file
prog.cob:10: error: version control conflict marker in file
prog.cob:12: error: version control conflict marker in file
prog.cob:15: error: version control conflict marker in file
prog.cob:17: error: version control conflict marker in file
prog.cob:18: error: version control conflict marker in file
prog.cob:20: error: invalid indicator '<' at column 7
prog.cob:22: error: invalid indicator '=' at column 7
prog.cob:24: warning: ignoring invalid directive: '>> some'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6471"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6483: \$COMPILE_ONLY -free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free prog.cob" "syn_misc.at:6483"
( $at_check_trace; $COMPILE_ONLY -free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: version control conflict marker in file
prog.cob:10: error: version control conflict marker in file
prog.cob:12: error: version control conflict marker in file
prog.cob:15: error: version control conflict marker in file
prog.cob:17: error: version control conflict marker in file
prog.cob:18: error: version control conflict marker in file
prog.cob:24: warning: ignoring invalid directive
prog.cob:20: error: PROCEDURE DIVISION header missing
prog.cob:20: error: syntax error, unexpected <
prog.cob:22: error: syntax error, unexpected =
prog.cob:25: error: syntax error, unexpected PROCEDURE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6483"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_366
#AT_START_367
at_fn_group_banner 367 'syn_misc.at:6499' \
  "SORT syntax" "                                    " 2
at_xfail=no
(
  $as_echo "367. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT SRTFIL ASSIGN TO "SRTFIL"
           ORGANIZATION LINE SEQUENTIAL.
           SELECT STFILE ASSIGN TO "STFILE"
           ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD SRTFIL.
       01 SRTREC               PIC X(256).
       SD STFILE.
       01 STFREC               PIC X(256).

       WORKING-STORAGE SECTION.
       01 G             VALUE "d4b2e1a3c5".
         02 TBL         OCCURS 5.
           03 X         PIC X.
           03 Y         PIC 9.
         02 TBL-ORD     OCCURS 5 ASCENDING YO.
           03 XO        PIC X.
           03 YO        PIC 9.

       PROCEDURE DIVISION.
           SORT TBL ASCENDING KEY X.
           SORT TBL DESCENDING.
           SORT TBL.
           SORT TBL-ORD ASCENDING.
           SORT TBL-ORD.
           SORT STFILE DESCENDING KEY SRTREC.
           SORT STFILE DESCENDING KEY SRTREC USING SRTFIL GIVING SRTFIL.
           SORT STFILE ASCENDING.
           SORT STFILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6543: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6543"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:32: error: table SORT requires KEY phrase
prog.cob:35: error: file SORT requires USING or INPUT PROCEDURE
prog.cob:35: error: file SORT requires GIVING or OUTPUT PROCEDURE
prog.cob:37: error: file SORT requires KEY phrase
prog.cob:38: error: file SORT requires KEY phrase
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6543"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_367
#AT_START_368
at_fn_group_banner 368 'syn_misc.at:6553' \
  "OSVS I/O extensions" "                            " 2
at_xfail=no
(
  $as_echo "368. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN "f.dat" SEQUENTIAL
               FILE-LIMITS ARE 1 THRU 10, 100 THRU f-max
               TRACK-AREA 100 CHARACTERS
               TRACK-LIMIT 5 TRACKS.
           SELECT g ASSIGN "g.dat" RELATIVE
               RELATIVE KEY g-key
               ACTUAL KEY g-actual-key.

       I-O-CONTROL.
           APPLY RECORD-OVERFLOW f, g
           APPLY CORE-INDEX core-idx ON f
           APPLY CYL-INDEX TO 5 ON f
           APPLY CYL-OVERFLOW 10 TRACKS f
           APPLY EXTENDED-SEARCH g
           APPLY MASTER-INDEX TO 5 on g
           APPLY WRITE-VERIFY f, g
           APPLY REORG-CRITERIA f-rec, f
           RERUN ON "g2.dat" EVERY END REEL g
           .
       DATA             DIVISION.
       FILE             SECTION.
       FD  f.
       01  f-rec        PIC X(100).

       FD  g.
       01  g-rec        PIC 9(10).

       WORKING-STORAGE  SECTION.
       01  core-idx     PIC 999.
       01  f-max        PIC 9(5) VALUE 1000.
       01  g-key        PIC 999.
       01  g-actual-key PIC XXX.

       PROCEDURE        DIVISION.
           OPEN INPUT f DISP, INPUT g REREAD
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6601: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6601"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: FILE-LIMIT is obsolete in GnuCOBOL
prog.cob:10: warning: TRACK-AREA is obsolete in GnuCOBOL
prog.cob:11: warning: TRACK-LIMIT is obsolete in GnuCOBOL
prog.cob:14: warning: ACTUAL KEY is obsolete in GnuCOBOL
prog.cob:18: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:19: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:20: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:21: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:22: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:23: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:24: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:25: warning: DOS/VS APPLY phrase is obsolete in GnuCOBOL
prog.cob:42: warning: OPEN LEAVE/REREAD/DISP is obsolete in GnuCOBOL
prog.cob:42: warning: OPEN LEAVE/REREAD/DISP is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6601"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_368
#AT_START_369
at_fn_group_banner 369 'syn_misc.at:6620' \
  "EQUALS in expressions" "                          " 2
at_xfail=no
(
  $as_echo "369. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 99 VALUE 0.
       PROCEDURE DIVISION.
           IF num LESS OR EQUALS 0
               CONTINUE
           END-IF
           IF num GREATER THAN OR EQUALS 1
               CONTINUE
           END-IF
           IF num EQUALS TO 0
               CONTINUE
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6642: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:6642"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6642"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_369
#AT_START_370
at_fn_group_banner 370 'syn_misc.at:6646' \
  "SEARCH ALL checks" "                              " 2
at_xfail=no
(
  $as_echo "370. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 TAB-1.
           05 TAB-1-ENTRY OCCURS 50
                          ASCENDING KEY IS TAB-1-KEY
                          INDEXED BY TAB-1-INDEX.
             10 TAB-1-KEY.
               15 T1K-SUB1     PIC X(03).
               15 T1K-SUB2     PIC 9(03).
             10 TAB-1-DATA     PIC X(50).
       01 TAB-2.
           05 TAB-2-ENTRY OCCURS 50
                          INDEXED BY TAB-2-INDEX.
             10 TAB-2-KEY.
               15 T2K-SUB1     PIC X(03).
               15 T2K-SUB2     PIC 9(03).
             10 TAB-2-DATA     PIC X(50).

       PROCEDURE DIVISION.
       TESTING SECTION.
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-1-KEY = ALL ZERO
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-1-KEY (TAB-1-INDEX) = ALL ZERO
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN "ABC123" = TAB-1-KEY (TAB-1-INDEX)
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-1-KEY (TAB-2-INDEX) = ALL ZERO
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              WHEN TAB-1-KEY (TAB-1-INDEX) = ALL ZERO
                 CONTINUE
              AT END
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-1-KEY (TAB-1-INDEX) = ALL ZERO
              WHEN TAB-1-KEY (TAB-1-INDEX) = "ZZZ999"
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TESTING
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN T1K-SUB1 (TAB-1-INDEX) = "ZZZ"
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-2-KEY (TAB-1-INDEX) = ALL ZERO
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-2-KEY (TAB-2-INDEX) = ALL ZERO
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-1-ENTRY
              AT END
                 CONTINUE
              WHEN "AA" = "BB"
                 CONTINUE
           END-SEARCH
           SEARCH ALL TAB-2-ENTRY
              AT END
                 CONTINUE
              WHEN TAB-2-KEY (TAB-2-INDEX) = ALL ZERO
                 CONTINUE
           END-SEARCH
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6748: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:6748"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'TESTING':
prog.cob:27: error: 'TAB-1-KEY' requires one subscript
prog.cob:51: error: syntax error, unexpected AT END
prog.cob:53: error: syntax error, unexpected END-SEARCH
prog.cob:58: error: syntax error, unexpected WHEN
prog.cob:64: error: 'TESTING' is not a field
prog.cob:70: error: SEARCH ALL requires comparision of KEY field
prog.cob:76: error: SEARCH ALL requires comparision of KEY field
prog.cob:82: error: SEARCH ALL requires comparision of KEY field
prog.cob:88: warning: expression 'AA' EQUALS 'BB' is always FALSE
prog.cob:88: error: invalid SEARCH ALL condition
prog.cob:91: error: SEARCH ALL requires KEY phrase
prog.cob:15: note: 'TAB-2-ENTRY' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6748"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_370
#AT_START_371
at_fn_group_banner 371 'syn_misc.at:6766' \
  "Invalid parentheses around condition" "           " 2
at_xfail=no
(
  $as_echo "371. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 99 VALUE 0.
       PROCEDURE DIVISION.
           IF num NOT (LESS OR EQUALS) 0
               CONTINUE
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6783: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:6783"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid expression: unfinished expression
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6783"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_371
#AT_START_372
at_fn_group_banner 372 'syn_misc.at:6789' \
  "DISPLAY directive (1)" "                          " 2
at_xfail=no
(
  $as_echo "372. $at_setup_line: testing $at_desc ..."
  $at_traceon



# this format is COBOL 202x without UPON
# --> implied UPON LISTING which goes to stdout
# as there is no listing active
# TODO: extend the >> DISPLAY tests and actually support
#       the complete format...

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       >>DISPLAY "OK"
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6806: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6806"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6806"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_372
#AT_START_373
at_fn_group_banner 373 'syn_misc.at:6812' \
  "DISPLAY directive (2)" "                          " 2
at_xfail=no
(
  $as_echo "373. $at_setup_line: testing $at_desc ..."
  $at_traceon



# this is an OpenCOBOL/GnuCOBOL 2.x extension, with implied literal
# similar to $DISPLAY

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       >>DISPLAY OK
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6826: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6826"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6826"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_373
#AT_START_374
at_fn_group_banner 374 'syn_misc.at:6832' \
  "DISPLAY directive (3)" "                          " 2
at_xfail=no
(
  $as_echo "374. $at_setup_line: testing $at_desc ..."
  $at_traceon



# this is the classical MicroFocus format

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
      $DISPLAY OK
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6845: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6845"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6845"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_374
#AT_START_375
at_fn_group_banner 375 'syn_misc.at:6851' \
  "SET CONSTANT directive" "                         " 2
at_xfail=no
(
  $as_echo "375. $at_setup_line: testing $at_desc ..."
  $at_traceon



# The SET CONSTANT directive defines a level78 variable
# for the current compilation unit

# original MF extension: $SET CONSTANT
cat >prog.cob <<'_ATEOF'

       $SET CONSTANT DOGGY "Barky"
       $SET CONSTANT PONY "Blacky"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       77  MYHORSE   PIC X(7) VALUE PONY.
       $SET CONSTANT PONY "White"
      *
      * ensure to test a numeric, too (not actually used):
       $SET CONSTANT C-UNUSED-NUM 0
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           DISPLAY "My Horse is " MYHORSE ";".
           DISPLAY "My little pony is " PONY ".".
           STOP RUN.
_ATEOF


# OpenCOBOL/GnuCOBOL extension (deprecated): >>SET CONSTANT
cat >prog2.cob <<'_ATEOF'

       >>SET CONSTANT DOGGY "Barky"
       >>SET CONSTANT PONY "Blacky"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       77  MYHORSE   PIC X(7) VALUE PONY.
       >>SET CONSTANT PONY "White"
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           DISPLAY "My Horse is " MYHORSE ";".
           DISPLAY "My little pony is " PONY ".".
           STOP RUN.
_ATEOF


# OpenCOBOL/GnuCOBOL extension: >>DEFINE CONSTANT
cat >prog3.cob <<'_ATEOF'

       >>DEFINE CONSTANT DOGGY "Barky"
       >>DEFINE CONSTANT PONY "Blacky"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       77  MYHORSE   PIC X(7) VALUE PONY.
       >>DEFINE CONSTANT PONY "White" OVERRIDE
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           DISPLAY "My Horse is " MYHORSE ";".
           DISPLAY "My little pony is " PONY ".".
           STOP RUN.
_ATEOF


# Note: MF does not redefine a value via SET CONSTANT
# the first definitions wins (we should add a warning)
{ set +x
$as_echo "$at_srcdir/syn_misc.at:6924: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "syn_misc.at:6924"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6924"
$at_failed && at_fn_log_failure
$at_traceon; }

# FIXME: Should raise an error or at least a warning
# AT_CHECK([$COMPILE_ONLY -std=cobol2002 prog.cob], [0], [], [])

# Note: MF does not redefine a value via SET CONSTANT
# the first definitions wins (we should add a warning)
{ set +x
$as_echo "$at_srcdir/syn_misc.at:6930: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_misc.at:6930"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6930"
$at_failed && at_fn_log_failure
$at_traceon; }

# FIXME: Should raise an error or at least a warning
# AT_CHECK([$COMPILE_ONLY -std=cobol2002 prog2.cob], [0], [], [])

{ set +x
$as_echo "$at_srcdir/syn_misc.at:6934: \$COMPILE_ONLY -fdefine-constant-directive=ok prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdefine-constant-directive=ok prog3.cob" "syn_misc.at:6934"
( $at_check_trace; $COMPILE_ONLY -fdefine-constant-directive=ok prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6934"
$at_failed && at_fn_log_failure
$at_traceon; }

# CHECKME: Replace the syntax error by explicit "is not defined".
{ set +x
$as_echo "$at_srcdir/syn_misc.at:6936: \$COMPILE_ONLY -std=cobol2002 prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 prog3.cob" "syn_misc.at:6936"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:2: error: >> DEFINE CONSTANT var used
prog3.cob:3: error: >> DEFINE CONSTANT var used
prog3.cob:10: error: >> DEFINE CONSTANT var used
prog3.cob:8: error: syntax error, unexpected Identifier
prog3.cob:9: error: syntax error, unexpected Identifier
prog3.cob: in paragraph 'MAIN':
prog3.cob:14: error: 'DOGGY' is not defined
prog3.cob:17: error: 'PONY' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:6936"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_375
#AT_START_376
at_fn_group_banner 376 'syn_misc.at:6950' \
  "conditional / define directives (1)" "            " 2
at_xfail=no
(
  $as_echo "376. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       >>IF ACTIVATE DEFINED
       >>DISPLAY "NOTOK"
       >>ELIF ACTIVATE2 DEFINED
       >>DISPLAY "OK"
       >>ELSE
       >>DISPLAY "NOTOK"
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6969: \$COMPILE_ONLY -DACTIVATE2 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -DACTIVATE2 prog.cob" "syn_misc.at:6969"
( $at_check_trace; $COMPILE_ONLY -DACTIVATE2 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6969"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_376
#AT_START_377
at_fn_group_banner 377 'syn_misc.at:6975' \
  "conditional / define directives (2)" "            " 2
at_xfail=no
(
  $as_echo "377. $at_setup_line: testing $at_desc ..."
  $at_traceon



# COBOL 2002 format; checks that defines are applied at correct place

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
       >> IF X DEFINED
         >>DISPLAY "X defined"
       >> ELSE
         >> DISPLAY "X not defined"
         >> DEFINE X 1
       >> END-IF
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:6994: \$COMPILE_ONLY -D X prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -D X prog.cob" "syn_misc.at:6994"
( $at_check_trace; $COMPILE_ONLY -D X prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X defined
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6994"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:6997: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:6997"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X not defined
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:6997"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_377
#AT_START_378
at_fn_group_banner 378 'syn_misc.at:7003' \
  "conditional / define directives (3)" "            " 2
at_xfail=no
(
  $as_echo "378. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
       >>IF A IS DEFINED
       >>IF B IS DEFINED
           CONTINUE
       >> DISPLAY "NOT OK (not both definitions)"
           .
       >>ELSE
           CONTINUE
       >> DISPLAY "NOT OK (no definitions)"
           .
       >>END-IF
       >>ELSE
           CONTINUE
       >> DISPLAY "OK"
           .
       >>END-IF
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7027: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:7027"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7027"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_378
#AT_START_379
at_fn_group_banner 379 'syn_misc.at:7033' \
  "conditional / define directives (4)" "            " 2
at_xfail=no
(
  $as_echo "379. $at_setup_line: testing $at_desc ..."
  $at_traceon



# check for case-insensivity

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
       >>IF A IS DEFINED
           CONTINUE
           .
       >>else
           CONTINUE
           .
       >>eNd-If
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7051: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:7051"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7051"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_379
#AT_START_380
at_fn_group_banner 380 'syn_misc.at:7055' \
  "error handling in conditional directives" "       " 2
at_xfail=no
(
  $as_echo "380. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: add missing tests for syntax errors in >>IF/ELSE/END

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
       >> IF BANANA
         >>DISPLAY "Who throws bananas?"
       >> ELSE
         >> DISPLAY "No BANANA here."
         >> DEFINE X 1
       >> END-IF
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7074: \$COMPILE_ONLY -D X prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -D X prog.cob" "syn_misc.at:7074"
( $at_check_trace; $COMPILE_ONLY -D X prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: invalid IF directive
prog.cob:9: error: duplicate DEFINE directive 'X'
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "No BANANA here.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7074"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_380
#AT_START_381
at_fn_group_banner 381 'syn_misc.at:7083' \
  "conditional directives with lvl 78 (1)" "         " 2
at_xfail=yes
(
  $as_echo "381. $at_setup_line: testing $at_desc ..."
  $at_traceon



# MicroFocus format; checks that level 78 are applied

# FIXME - not done yet:


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       78 Y            VALUE 'a'.
       PROCEDURE       DIVISION.
      $IF X DEFINED
      $DISPLAY X defined
      $ELIF Y DEFINED
      $DISPLAY X not defined, but Y via lvl 78
      $ELSE
      $DISPLAY X not defined
      $END
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7109: \$COMPILE_ONLY -D X prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -D X prog.cob" "syn_misc.at:7109"
( $at_check_trace; $COMPILE_ONLY -D X prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X defined
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7109"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7112: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:7112"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X not defined, but Y via lvl 78
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7112"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_381
#AT_START_382
at_fn_group_banner 382 'syn_misc.at:7118' \
  "conditional directives with lvl 78 (2)" "         " 2
at_xfail=yes
(
  $as_echo "382. $at_setup_line: testing $at_desc ..."
  $at_traceon



# MicroFocus format; checks that level 78 are applied with correct values

# FIXME - not done yet:


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       78 Y            VALUE 1.
       78 Y2           VALUE 1.
       78 X            VALUE 2.
       78 Z            VALUE 354.
       PROCEDURE       DIVISION.
      $IF Y = Y2X
      $DISPLAY correct Y = Y2
      $ELSE
      $DISPLAY bad: Y should be = Y2
      $END
      $IF Y > X
      $DISPLAY BAD - Y is not > X
      $ELIF Y < X
      $DISPLAY correct Y < X
      $ELSE
      $DISPLAY BROKEN
      $END

      $IF X > Y
      $DISPLAY correct X > Y
      $ELIF X < Y
      $DISPLAY BAD - X is not < Y
      $ELSE
      $DISPLAY BROKEN
      $END
           CONTINUE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7160: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:7160"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "correct Y = Y2
correct Y < X
correct X > Y
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7160"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_382
#AT_START_383
at_fn_group_banner 383 'syn_misc.at:7168' \
  "Missing reserved word with DEBUGGING MODE" "      " 2
at_xfail=no
(
  $as_echo "383. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. my-prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SOURCE-COMPUTER. GNU-Linux WITH DEBUGGING MODE.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT gen-file ASSIGN "f.txt".

       DATA DIVISION.
       FILE SECTION.
       FD  gen-file.
       01  gen-file-rec PIC X.

       PROCEDURE DIVISION.
           OPEN INPUT gen-file
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7193: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:7193"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7193"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_383
#AT_START_384
at_fn_group_banner 384 'syn_misc.at:7197' \
  "Invalid PERFORM statement" "                      " 2
at_xfail=no
(
  $as_echo "384. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: likely more to add here when inspecting code-coverage

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DEMOUNSTRING.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  Full-Name               PIC X(40).
       01  SUB1                    USAGE BINARY-SHORT.
       PROCEDURE DIVISION.
           MOVE 1                  TO SUB1
           PERFORM LENGTH(Full-Name) TIMES
           IF Full-Name(SUB2:1) = SPACE
              IF Full-Name(SUB2 + 1:1) = SPACE
                 DISPLAY 'IN'
                 EXIT PERFORM CYCLE
              END-IF
           END-IF
           ADD 1 TO SUB1.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7221: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:7221"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: syntax error, unexpected (
prog.cob:17: error: syntax error, unexpected ., expecting TIMES
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7221"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_384
#AT_START_385
at_fn_group_banner 385 'syn_misc.at:7228' \
  "PERFORM THRU syntax checks" "                     " 2
at_xfail=no
(
  $as_echo "385. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       PROCEDURE DIVISION.
       MAIN SECTION.
       MAIN-00.
           PERFORM SUB1
           PERFORM SUB1 THRU SUB1-EX
           PERFORM SUB1-00 THRU SUB1-EX
           PERFORM SUB1 THRU SUB1
           PERFORM SUB1 THRU SUB2
           GOBACK.
       MAIN-EX. EXIT.
      *
       SUB1 SECTION.
       SUB1-00.
           PERFORM SUB1-01 THRU SUB1-02.
       SUB1-01.
           CONTINUE.
       SUB1-02.
           CONTINUE.
       SUB1-EX. EXIT.
      *
       SUB2 SECTION.
       SUB2-00.
           PERFORM SUB1-02 THRU SUB1-01.
       SUB2-01.
           CONTINUE.
       SUB2-02.
           CONTINUE.
       SUB2-EX. EXIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7264: \$COMPILE_ONLY -Wno-suspicious-perform-thru prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-suspicious-perform-thru prog.cob" "syn_misc.at:7264"
( $at_check_trace; $COMPILE_ONLY -Wno-suspicious-perform-thru prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7264"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7265: \$COMPILE_ONLY -Wall -fsection-exit-check prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wall -fsection-exit-check prog.cob" "syn_misc.at:7265"
( $at_check_trace; $COMPILE_ONLY -Wall -fsection-exit-check prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'SUB2':
prog.cob: in paragraph 'SUB2-00':
prog.cob:11: warning: PERFORM ... THROUGH SECTION and -fsection-exit-check are mutually exclusive
prog.cob:26: warning: SUB1-01 is defined before SUB1-02
prog.cob:20: note: 'SUB1-02' defined here
prog.cob:18: note: 'SUB1-01' defined here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7265"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_385
#AT_START_386
at_fn_group_banner 386 'syn_misc.at:7276' \
  "VALIDATE parsing" "                               " 2
at_xfail=no
(
  $as_echo "386. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: so far the VALIDATE statement is only partial implemented in the
#       compiler, but it is planned to completely add it
# This syntax example also show-cases a bunch of other COBOL 2002 options
# which would otherwise be not checked elsewhere so far

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
   *> D.22.7.1    Example of validation of USAGE DISPLAY items
   *>
   *>*************************************************************
   *>Description of target record (note: should be possible to define later)
   *>*************************************************************
   *>This is set up by the optional DESTINATION clauses defined
   *>in the input record;
   *>if a format error is found, a default value is stored instead.
    01  TARGET-AREA.
        05  OUT-NAME       PIC X(20).
        05  OUT-WEEK       PIC 99 COMP   OCCURS 5.
   *>*************************************************************
   *>Validated items
   *>*************************************************************
    01  INPUT-RECORD.
   *>PIC 99 checks that IN-TYPE is 2 characters numeric;
        03  IN-TYPE         PIC 99
   *>if IN-TYPE fails the PICTURE check, it is assumed to be 1;
   *>without a DEFAULT clause, the assumed value would here be 0.
                                DEFAULT 1.
   *>PRESENT WHEN states the condition for this format to be used.
        03  IN-REC-FORMAT-1 PRESENT WHEN IN-TYPE = 0 OR 1 OR 2.
   *>PICTURE A(20) checks for 20 alphabetic (or space) characters.
            05  IN-NAME       PIC A(20)
   *>PRESENT WHEN defines when the validation clauses for this data item apply:
                                 PRESENT WHEN IN-TYPE = 0 OR 1
   *>CLASS checks each character for a class defined in SPECIAL-NAMES
   *>or a predefined class
                                 CLASS IS ALPHABETIC-UPPER
   *>DESTINATION moves this item (or spaces if not alpha) to OUT-NAME.
                                 DESTINATION OUT-NAME.
   *>PRESENT WHEN checks whether the item is "blank" under this condition
            05  FILLER REDEFINES IN-NAME  PIC X(20) *> should PIC be optional?
                                 PRESENT WHEN IN-TYPE = 2
                                 DESTINATION OUT-NAME.
                88               VALUE SPACES IS VALID.
   *>The values of IN-WEEK are checked to be in non-descending order.
            05  IN-WEEK       PIC 99  OCCURS 5
                VARYING IN-WEEK-NO FROM 1, IN-NEXT-WEEK-NO FROM 2
                INVALID WHEN IN-WEEK-NO < 5
                AND IN-WEEK (IN-WEEK-NO) > IN-WEEK (IN-NEXT-WEEK-NO)
   *>OUT-WEEK (1) to (5) will hold the values of IN-WEEK (1) to (5),
   *>or zero for any one that failed the format (PICTURE) test.
                DESTINATION OUT-WEEK (IN-WEEK-NO).
   *>The 88-level INVALID entries check for invalid ranges of values.
               88  VALUES 0, 53 THRU 99 ARE INVALID.
   *>REDEFINES and another PRESENT WHEN define an alternate format.
        03  IN-REC-FORMAT-2 REDEFINES IN-REC-FORMAT-1
                                        PRESENT WHEN IN-TYPE > 2.
   *>IN-PAY has insertion characters that must be present on input.
            05  IN-PAY                PIC ZZ,ZZZ.ZZ.
   *>The 88-level VALID entries check for valid ranges of values;
   *>the condition-name, if present, may be used in the usual way.
   *>The following assume that DECIMAL POINT IS COMMA is not specified.
                 88  IN-PAY-OK  VALUES "10,000.00" THRU "20,000.00" ARE VALID.
   *>88-level entries may also have a condition attached.
                 88                    VALUES "20,000.01" THRU "30,000.00" ARE VALID
                                       WHEN IN-TYPE = 8.
   *>exceptional cases can be specified using PRESENT WHEN
            05  IN-CODE                PIC AX(3)9(4)
                                       PRESENT WHEN IN-CODE NOT = "UNKNOWN".
            05  FILLER           PIC X(13).
   *>
   *>*************************************************************
   *> Description of error messages
   *>*************************************************************
   *>Error messages or flags are set up or cleared automatically
   *>when the VALIDATE statement is executed; the programmer chooses
   *>where they go and what messages or values they contain;
   *>they need not be contiguous as they are in this example.
   01  VALIDATE-MESSAGES.
       03  PIC X(40)  VALIDATE-STATUS "Unknown Record Type - 1 assumed"
                        WHEN ERROR FOR IN-TYPE
   *> more than one VALIDATE-STATUS clause may be defined in one entry;
   *> a NO ERROR  phrase produces a message when the item is valid.
                      VALIDATE-STATUS "Record type Accepted"
                        WHEN NO ERROR FOR IN-TYPE.
   *> The VALIDATE-STATUS clause can pinpoint the stage of the failed check.
       03  PIC X(40)  VALIDATE-STATUS "Name not alphabetic"
                        WHEN ERROR ON FORMAT FOR IN-NAME
                      VALIDATE-STATUS "Lower-case not allowed in name"
                        WHEN ERROR ON CONTENT FOR IN-NAME
                      VALIDATE-STATUS "Name not allowed in this case"
                        WHEN ERROR ON RELATION FOR IN-NAME.
   *> If no message is stored, spaces will be stored in these cases.
   *> Errors may also be indicated by flags;
   *> they may also refer to a table of input items.
       03  W-ERROR-FLAG   PIC 9   COMP  OCCURS 5
                      VALIDATE-STATUS 1 WHEN ERROR FOR IN-WEEK.
   *>An EC-VALIDATE (nonfatal) exception is also set if the
   *>VALIDATE statement detects an invalid condition.


   *> From D.22.7.2    Example of validation of non-display items:
      01  MIXED-GROUP TYPEDEF STRONG.
          05  FLD-1             PIC S9(4)  USAGE COMP.
          05  FLD-2             PIC S9(7)  USAGE PACKED-DECIMAL.
          05  FLD-3             PIC 1(8)   USAGE BIT ALIGNED.
          05  PTR-1             USAGE INDEX.
          05  PTR-2             USAGE OBJECT REFERENCE.
          05  TXT-1             PIC N(12)  USAGE NATIONAL.
    01 MY-MIXED-GROUP TYPE MIXED-GROUP.


   *>
   *>*************************************************************
   *>Execution of the VALIDATE statement
   *>*************************************************************
    PROCEDURE DIVISION.

   *>A single VALIDATE statement performs all the actions implied
   *>in the above data descriptions.
        VALIDATE INPUT-RECORD
   *>After this statement has been executed:
   *>(1) the input record is unchanged;
   *>(2) input items are moved automatically to the target area;
   *>(3) error messages are set up wherever specified in the program.
   *>

   *> From D.22.7.2    Example of validation of non-display items:
   *>A declarative section could be used instead of VALIDATE-STATUS clauses
   *>especially if errors are not expected.
   *>> TURN EC-VALIDATE CHECKING ON
        VALIDATE MY-MIXED-GROUP

     GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7417: \$COMPILE_ONLY -Wno-pending -Wno-unfinished -free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-pending -Wno-unfinished -free prog.cob" "syn_misc.at:7417"
( $at_check_trace; $COMPILE_ONLY -Wno-pending -Wno-unfinished -free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7417"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_386
#AT_START_387
at_fn_group_banner 387 'syn_misc.at:7423' \
  "field-tree via COBC_GEN_DUMP_COMMENTS" "          " 2
at_xfail=no
(
  $as_echo "387. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: this is a feature which is used in external tools, primarily
#       cobcd from COBOLworx debugging extensions, this test does only
#       verify that modules compiled with that can be compiled and
#       that the expected content is found in the dump code (everything
#       which is not related to the actual dump is included as comment
# Note2: This feature will vanish if/when cobc gets an option to output
#       its (parse) trees.

cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. debugme.
       data division.
       working-storage section.
       01  numeric-data.
           05 disp     usage display        pic s99v999  value -12.34.
           05 disp-u   usage display        pic  99v999  value  12.34.
           05 dispp    usage display        pic sppp9999 value -.000123.
           05 dispp-u  usage display        pic  ppp9999 value  .000123.
           05 disppp   usage display        pic s9999ppp value -1234000.
           05 disppp-u usage display        pic  9999ppp value  1234000.
           05 bin      usage binary         pic s99v999  value -12.34.
           05 bin-u    usage binary         pic  99v999  value  12.34.
           05 cmp3     usage packed-decimal pic s99v999  value -12.34.
           05 cmp3-u   usage packed-decimal pic  99v999  value  12.34.
           05 cmp5     usage comp-5         pic s99v999  value -12.34.
           05 cmp5-u   usage comp-5         pic  99v999  value  12.34.
           05 cmp6     usage comp-6         pic  99v999  value  12.34.
           05 cmpx     usage comp-x         pic s99v999  value -12.34.
           05 cmpx-u   usage comp-x         pic  99v999  value  12.34.
           05 cmpn     usage comp-n         pic s99v999  value -12.34.
           05 cmpn-u   usage comp-n         pic  99v999  value  12.34.
           05 chr      usage binary-char    signed    value -128.
           05 chr-u    usage binary-char    unsigned  value  254.
           05 shrt     usage binary-short   signed    value -32768.
           05 shrt-u   usage binary-short   unsigned  value  65535.
           05 long     usage binary-long    signed    value -2147483648.
           05 long-u   usage binary-long    unsigned  value  4294967295.
           05 dble     usage binary-double  signed    value -4294967295.
           05 dble-u   usage binary-double  unsigned  value  8294967295.
      *   05 cmp0       usage comp-0.  TODO
       01  floating-data.
           05 dbl       usage float-long      value -3.40282e+038.
           05 flt       usage float-short     value 3.40282e+038.
      *   05 b32        usage FLOAT-BINARY-32  signed.      TODO
      *   05 b64        usage FLOAT-BINARY-64  signed.      TODO
      *   05 b128       usage FLOAT-BINARY-128 signed.      TODO
      *   05 b32-u      usage FLOAT-BINARY-32  unsigned.    TODO
      *   05 b64-u      usage FLOAT-BINARY-64  unsigned.    TODO
      *   05 b128-u     usage FLOAT-BINARY-128 unsigned.    TODO
      *
      *  --> missing:   floating point edited pictures,
      *                 those are left to the reader as excercise :-)
       77 x36            pic x(36) is typedef.
      * In the following block, "sync" prevents SIGBUS errors on SOLARIS systems.
       01  special-data.
           05 r2d2       usage bit pic 111 value b'110'.
      *>   disabled for now because of varying size
      *>   05 point      usage pointer         sync.
      *>   05 ppoint     usage program-pointer sync.
      *>   05 idx        usage index           sync.
      *>   05 hnd        usage handle          sync.
       01  alphanumeric-data.
           05 alpnum     usage x36 value "some numb3rs 4 n00bs l1k3 m3".
           05 alpha      pic a(36) value "thats some text".
           05 edit-num1  pic --9.999.
           05 edit-num2  pic ++9.999.
           05 edit-num3  pic zz9.999.
           05 edit-num4  pic -zz9.999   blank when zero.
       01  national-data.
           05 nat        pic n(36) value "data shown here will change.".
           05 nat-num    pic 9(12)v9(3) usage national.
           05 net-num1   pic --9.999    usage national.
           05 net-num2   pic ++9.999    usage national.
           05 net-num3   pic zz9.999    usage national.
           05 net-num4   pic -zz9.999   usage national blank when zero.
      *
       01 occurs 2 to 5 times depending on chr indexed by x-idx.
         03 x-basis.
           05  x-a                 pic x(01) value space.
           05  x-b                 pic x(01) value space.
           05  x-c                 pic x(01) value space.
         03 filler redefines x-basis pic x(03).
           88  sw-x-basis-full     value "xxx".
       01  x-rms.
           05  x-rms-a             pic x(01) value space.
       01 filler redefines x-rms   pic x(01).
           88  sw-x-rms-full       value "X" or "A" thru "C" or QUOTE.

       local-storage section.
       01  var1       pic x.
       01  var2.
          03  var2a   pic x.
          03  var2b   pic 9.
           88 yay     values zero, 2 through 5, 9.
_ATEOF




{ set +x
$as_echo "$at_srcdir/syn_misc.at:7524: COBC_GEN_DUMP_COMMENTS=1 \\
  \$COMPILE -C -fdump=all -w prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "syn_misc.at:7524"
( $at_check_trace; COBC_GEN_DUMP_COMMENTS=1 \
  $COMPILE -C -fdump=all -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7524"
$at_failed && at_fn_log_failure  \
"prog.c"
$at_traceon; }

# TODO: only execute this piece when extended $GREP works
{ set +x
$as_echo "$at_srcdir/syn_misc.at:7527: (\$GREP -A 200 \"P_dump:\" prog.c | \$GREP -B 200 \"END OF DUMP\") || exit 77"
at_fn_check_prepare_notrace 'a shell pipeline' "syn_misc.at:7527"
( $at_check_trace; ($GREP -A 200 "P_dump:" prog.c | $GREP -B 200 "END OF DUMP") || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "  P_dump:
  /* Dump WORKING-STORAGE */
  cob_dump_output (\"WORKING-STORAGE\");
  cob_dump_field_ext (77, \"RETURN-CODE\", COB_SET_FLD (f0, 4, (cob_u8_t *)&b_2, &a_46), 0, 0);
  cob_dump_field_ext ( 1, \"numeric-data\", COB_SET_FLD (f0, 93, b_17, &a_47), 0, 0);
  cob_dump_field_ext ( 5, \"disp\", COB_SET_FLD (f0, 5, b_17, &a_2), 0, 0);
  cob_dump_field_ext ( 5, \"disp-u\", COB_SET_FLD (f0, 5, b_17 + 5, &a_4), 0, 0);
  cob_dump_field_ext ( 5, \"dispp\", COB_SET_FLD (f0, 4, b_17 + 10, &a_6), 0, 0);
  cob_dump_field_ext ( 5, \"dispp-u\", COB_SET_FLD (f0, 4, b_17 + 14, &a_8), 0, 0);
  cob_dump_field_ext ( 5, \"disppp\", COB_SET_FLD (f0, 4, b_17 + 18, &a_10), 0, 0);
  cob_dump_field_ext ( 5, \"disppp-u\", COB_SET_FLD (f0, 4, b_17 + 22, &a_12), 0, 0);
  cob_dump_field_ext ( 5, \"bin\", COB_SET_FLD (f0, 4, b_17 + 26, &a_13), 0, 0);
  cob_dump_field_ext ( 5, \"bin-u\", COB_SET_FLD (f0, 4, b_17 + 30, &a_14), 0, 0);
  cob_dump_field_ext ( 5, \"cmp3\", COB_SET_FLD (f0, 3, b_17 + 34, &a_15), 0, 0);
  cob_dump_field_ext ( 5, \"cmp3-u\", COB_SET_FLD (f0, 3, b_17 + 37, &a_16), 0, 0);
  cob_dump_field_ext ( 5, \"cmp5\", COB_SET_FLD (f0, 4, b_17 + 40, &a_17), 0, 0);
  cob_dump_field_ext ( 5, \"cmp5-u\", COB_SET_FLD (f0, 4, b_17 + 44, &a_18), 0, 0);
  cob_dump_field_ext ( 5, \"cmp6\", COB_SET_FLD (f0, 3, b_17 + 48, &a_19), 0, 0);
  cob_dump_field_ext ( 5, \"cmpx\", COB_SET_FLD (f0, 3, b_17 + 51, &a_20), 0, 0);
  cob_dump_field_ext ( 5, \"cmpx-u\", COB_SET_FLD (f0, 3, b_17 + 54, &a_21), 0, 0);
  cob_dump_field_ext ( 5, \"cmpn\", COB_SET_FLD (f0, 3, b_17 + 57, &a_20), 0, 0);
  cob_dump_field_ext ( 5, \"cmpn-u\", COB_SET_FLD (f0, 3, b_17 + 60, &a_21), 0, 0);
  cob_dump_field_ext ( 5, \"chr\", &f_35, 0, 0);
  cob_dump_field_ext ( 5, \"chr-u\", COB_SET_FLD (f0, 1, b_17 + 64, &a_25), 0, 0);
  cob_dump_field_ext ( 5, \"shrt\", COB_SET_FLD (f0, 2, b_17 + 65, &a_27), 0, 0);
  cob_dump_field_ext ( 5, \"shrt-u\", COB_SET_FLD (f0, 2, b_17 + 67, &a_29), 0, 0);
  cob_dump_field_ext ( 5, \"long\", COB_SET_FLD (f0, 4, b_17 + 69, &a_31), 0, 0);
  cob_dump_field_ext ( 5, \"long-u\", COB_SET_FLD (f0, 4, b_17 + 73, &a_33), 0, 0);
  cob_dump_field_ext ( 5, \"dble\", COB_SET_FLD (f0, 8, b_17 + 77, &a_34), 0, 0);
  cob_dump_field_ext ( 5, \"dble-u\", COB_SET_FLD (f0, 8, b_17 + 85, &a_35), 0, 0);
  cob_dump_field_ext ( 1, \"floating-data\", COB_SET_FLD (f0, 12, b_43, &a_47), 0, 0);
  cob_dump_field_ext ( 5, \"dbl\", COB_SET_FLD (f0, 8, b_43, &a_37), 0, 0);
  cob_dump_field_ext ( 5, \"flt\", COB_SET_FLD (f0, 4, b_43 + 8, &a_39), 0, 0);
  cob_dump_field_ext ( 1, \"special-data\", COB_SET_FLD (f0, 1, b_47, &a_47), 0, 0);
  cob_dump_field_ext ( 5, \"r2d2\", COB_SET_FLD (f0, 1, b_47, &a_41), 0, 0);
  cob_dump_field_ext ( 1, \"alphanumeric-data\", COB_SET_FLD (f0, 101, b_49, &a_47), 0, 0);
  cob_dump_field_ext ( 5, \"alpnum\", COB_SET_FLD (f0, 36, b_49, &a_48), 0, 0);
  cob_dump_field_ext ( 5, \"alpha\", COB_SET_FLD (f0, 36, b_49 + 36, &a_48), 0, 0);
  cob_dump_field_ext ( 5, \"edit-num1\", COB_SET_FLD (f0, 7, b_49 + 72, &a_42), 0, 0);
  cob_dump_field_ext ( 5, \"edit-num2\", COB_SET_FLD (f0, 7, b_49 + 79, &a_43), 0, 0);
  cob_dump_field_ext ( 5, \"edit-num3\", COB_SET_FLD (f0, 7, b_49 + 86, &a_44), 0, 0);
  cob_dump_field_ext ( 5, \"edit-num4\", COB_SET_FLD (f0, 8, b_49 + 93, &a_45), 0, 0);
  cob_dump_field_ext ( 1, \"national-data\", COB_SET_FLD (f0, 160, b_56, &a_47), 0, 0);
  cob_dump_field_ext ( 5, \"nat\", COB_SET_FLD (f0, 72, b_56, &a_49), 0, 0);
  cob_dump_field_ext ( 5, \"nat-num\", COB_SET_FLD (f0, 30, b_56 + 72, &a_50), 0, 0);
  cob_dump_field_ext ( 5, \"net-num1\", COB_SET_FLD (f0, 14, b_56 + 102, &a_42), 0, 0);
  cob_dump_field_ext ( 5, \"net-num2\", COB_SET_FLD (f0, 14, b_56 + 116, &a_43), 0, 0);
  cob_dump_field_ext ( 5, \"net-num3\", COB_SET_FLD (f0, 14, b_56 + 130, &a_44), 0, 0);
  cob_dump_field_ext ( 5, \"net-num4\", COB_SET_FLD (f0, 16, b_56 + 144, &a_45), 0, 0);
  cob_dump_field_ext ( 0, \"x-idx\", COB_SET_FLD (f0, 4, (cob_u8_t *)&b_64, &a_46), 0, 0);
  {
    int i_1;
    int max_1 = (*(cob_s8_ptr) (b_17 + 63));
    if (max_1 > 5) max_1 = 5;
    for (i_1=0; i_1 < max_1; i_1++)
    {
      cob_dump_field_ext ( 1, \"FILLER\", COB_SET_FLD (f0, 3, b_63, &a_47), 0, 1, i_1, 3UL); /* OCCURS 2 5 */
      cob_dump_field_ext ( 3, \"x-basis\", COB_SET_FLD (f0, 3, b_63, &a_47), 0, 1, i_1, 3UL);
      cob_dump_field_ext ( 5, \"x-a\", COB_SET_FLD (f0, 1, b_63, &a_48), 0, 1, i_1, 3UL);
      cob_dump_field_ext ( 5, \"x-b\", COB_SET_FLD (f0, 1, b_63 + 1, &a_48), 0, 1, i_1, 3UL);
      cob_dump_field_ext ( 5, \"x-c\", COB_SET_FLD (f0, 1, b_63 + 2, &a_48), 0, 1, i_1, 3UL);
      /* cob_dump_field_ext ( 3, \"FILLER\", COB_SET_FLD (f0, 3, b_63, &a_48), 0, 1, i_1, 3UL); REDEFINES */
      /* cob_dump_field_ext (88, \"sw-x-basis-full\", COB_SET_FLD (f0, 3, b_63, &a_48), 0, 1, i_1, 3UL); VALUE (cob_field *)&c_18 */
    }
  }
  cob_dump_field_ext ( 1, \"x-rms\", COB_SET_FLD (f0, 1, b_71, &a_47), 0, 0);
  cob_dump_field_ext ( 5, \"x-rms-a\", COB_SET_FLD (f0, 1, b_71, &a_48), 0, 0);
  /* cob_dump_field_ext ( 1, \"FILLER\", COB_SET_FLD (f0, 1, b_71, &a_48), 0, 0); REDEFINES */
  /* cob_dump_field_ext (88, \"sw-x-rms-full\", COB_SET_FLD (f0, 1, b_71, &a_48), 0, 0); VALUE (cob_field *)&c_19 OR (cob_field *)&c_20 OR (cob_field *)&c_21 THRU (cob_field *)&c_22 OR (cob_field *)&c_20 OR &cob_all_quote */

  /* Dump LOCAL-STORAGE SECTION */
  cob_dump_output (\"LOCAL-STORAGE\");
  cob_dump_field_ext ( 1, \"var1\", COB_SET_FLD (f0, 1, cob_local_ptr, &a_48), 0, 0);
  cob_dump_field_ext ( 1, \"var2\", COB_SET_FLD (f0, 2, cob_local_ptr + 16, &a_47), 0, 0);
  cob_dump_field_ext ( 3, \"var2a\", COB_SET_FLD (f0, 1, cob_local_ptr + 16, &a_48), 0, 0);
  cob_dump_field_ext ( 3, \"var2b\", COB_SET_FLD (f0, 1, cob_local_ptr + 16 + 1, &a_52), 0, 0);
  /* cob_dump_field_ext (88, \"yay\", COB_SET_FLD (f0, 1, cob_local_ptr + 16 + 1, &a_52), 0, 0); VALUE &cob_all_zero OR (cob_field *)&c_23 THRU (cob_field *)&c_24 OR (cob_field *)&c_25 */

  cob_dump_output (\"END OF DUMP - debugme\");
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7527"
$at_failed && at_fn_log_failure  \
"prog.c"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7609: COBC_GEN_DUMP_COMMENTS=1 \\
  \$COMPILE -C -w prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "syn_misc.at:7609"
( $at_check_trace; COBC_GEN_DUMP_COMMENTS=1 \
  $COMPILE -C -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7609"
$at_failed && at_fn_log_failure  \
"prog.c"
$at_traceon; }

# TODO: only execute this piece when extended $GREP works
{ set +x
$as_echo "$at_srcdir/syn_misc.at:7612: (\$GREP -A 200 \"P_dump:\" prog.c | \$GREP -B 200 \"END OF DUMP\") || exit 77"
at_fn_check_prepare_notrace 'a shell pipeline' "syn_misc.at:7612"
( $at_check_trace; ($GREP -A 200 "P_dump:" prog.c | $GREP -B 200 "END OF DUMP") || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "  P_dump:
  /* Dump WORKING-STORAGE (informational) */
  /* cob_dump_output (\"WORKING-STORAGE\"); */
  /* cob_dump_field_ext (77, \"RETURN-CODE\", COB_SET_FLD (f0, 4, (cob_u8_t *)&b_2, &a_46), 0, 0); */
  /* cob_dump_field_ext ( 1, \"numeric-data\", COB_SET_FLD (f0, 93, b_17, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 5, \"disp\", COB_SET_FLD (f0, 5, b_17, &a_2), 0, 0); */
  /* cob_dump_field_ext ( 5, \"disp-u\", COB_SET_FLD (f0, 5, b_17 + 5, &a_4), 0, 0); */
  /* cob_dump_field_ext ( 5, \"dispp\", COB_SET_FLD (f0, 4, b_17 + 10, &a_6), 0, 0); */
  /* cob_dump_field_ext ( 5, \"dispp-u\", COB_SET_FLD (f0, 4, b_17 + 14, &a_8), 0, 0); */
  /* cob_dump_field_ext ( 5, \"disppp\", COB_SET_FLD (f0, 4, b_17 + 18, &a_10), 0, 0); */
  /* cob_dump_field_ext ( 5, \"disppp-u\", COB_SET_FLD (f0, 4, b_17 + 22, &a_12), 0, 0); */
  /* cob_dump_field_ext ( 5, \"bin\", COB_SET_FLD (f0, 4, b_17 + 26, &a_13), 0, 0); */
  /* cob_dump_field_ext ( 5, \"bin-u\", COB_SET_FLD (f0, 4, b_17 + 30, &a_14), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmp3\", COB_SET_FLD (f0, 3, b_17 + 34, &a_15), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmp3-u\", COB_SET_FLD (f0, 3, b_17 + 37, &a_16), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmp5\", COB_SET_FLD (f0, 4, b_17 + 40, &a_17), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmp5-u\", COB_SET_FLD (f0, 4, b_17 + 44, &a_18), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmp6\", COB_SET_FLD (f0, 3, b_17 + 48, &a_19), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmpx\", COB_SET_FLD (f0, 3, b_17 + 51, &a_20), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmpx-u\", COB_SET_FLD (f0, 3, b_17 + 54, &a_21), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmpn\", COB_SET_FLD (f0, 3, b_17 + 57, &a_20), 0, 0); */
  /* cob_dump_field_ext ( 5, \"cmpn-u\", COB_SET_FLD (f0, 3, b_17 + 60, &a_21), 0, 0); */
  /* cob_dump_field_ext ( 5, \"chr\", &f_35, 0, 0); */
  /* cob_dump_field_ext ( 5, \"chr-u\", COB_SET_FLD (f0, 1, b_17 + 64, &a_25), 0, 0); */
  /* cob_dump_field_ext ( 5, \"shrt\", COB_SET_FLD (f0, 2, b_17 + 65, &a_27), 0, 0); */
  /* cob_dump_field_ext ( 5, \"shrt-u\", COB_SET_FLD (f0, 2, b_17 + 67, &a_29), 0, 0); */
  /* cob_dump_field_ext ( 5, \"long\", COB_SET_FLD (f0, 4, b_17 + 69, &a_31), 0, 0); */
  /* cob_dump_field_ext ( 5, \"long-u\", COB_SET_FLD (f0, 4, b_17 + 73, &a_33), 0, 0); */
  /* cob_dump_field_ext ( 5, \"dble\", COB_SET_FLD (f0, 8, b_17 + 77, &a_34), 0, 0); */
  /* cob_dump_field_ext ( 5, \"dble-u\", COB_SET_FLD (f0, 8, b_17 + 85, &a_35), 0, 0); */
  /* cob_dump_field_ext ( 1, \"floating-data\", COB_SET_FLD (f0, 12, b_43, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 5, \"dbl\", COB_SET_FLD (f0, 8, b_43, &a_37), 0, 0); */
  /* cob_dump_field_ext ( 5, \"flt\", COB_SET_FLD (f0, 4, b_43 + 8, &a_39), 0, 0); */
  /* cob_dump_field_ext ( 1, \"special-data\", COB_SET_FLD (f0, 1, b_47, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 5, \"r2d2\", COB_SET_FLD (f0, 1, b_47, &a_41), 0, 0); */
  /* cob_dump_field_ext ( 1, \"alphanumeric-data\", COB_SET_FLD (f0, 101, b_49, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 5, \"alpnum\", COB_SET_FLD (f0, 36, b_49, &a_48), 0, 0); */
  /* cob_dump_field_ext ( 5, \"alpha\", COB_SET_FLD (f0, 36, b_49 + 36, &a_48), 0, 0); */
  /* cob_dump_field_ext ( 5, \"edit-num1\", COB_SET_FLD (f0, 7, b_49 + 72, &a_42), 0, 0); */
  /* cob_dump_field_ext ( 5, \"edit-num2\", COB_SET_FLD (f0, 7, b_49 + 79, &a_43), 0, 0); */
  /* cob_dump_field_ext ( 5, \"edit-num3\", COB_SET_FLD (f0, 7, b_49 + 86, &a_44), 0, 0); */
  /* cob_dump_field_ext ( 5, \"edit-num4\", COB_SET_FLD (f0, 8, b_49 + 93, &a_45), 0, 0); */
  /* cob_dump_field_ext ( 1, \"national-data\", COB_SET_FLD (f0, 160, b_56, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 5, \"nat\", COB_SET_FLD (f0, 72, b_56, &a_49), 0, 0); */
  /* cob_dump_field_ext ( 5, \"nat-num\", COB_SET_FLD (f0, 30, b_56 + 72, &a_50), 0, 0); */
  /* cob_dump_field_ext ( 5, \"net-num1\", COB_SET_FLD (f0, 14, b_56 + 102, &a_42), 0, 0); */
  /* cob_dump_field_ext ( 5, \"net-num2\", COB_SET_FLD (f0, 14, b_56 + 116, &a_43), 0, 0); */
  /* cob_dump_field_ext ( 5, \"net-num3\", COB_SET_FLD (f0, 14, b_56 + 130, &a_44), 0, 0); */
  /* cob_dump_field_ext ( 5, \"net-num4\", COB_SET_FLD (f0, 16, b_56 + 144, &a_45), 0, 0); */
  /* cob_dump_field_ext ( 0, \"x-idx\", COB_SET_FLD (f0, 4, (cob_u8_t *)&b_64, &a_46), 0, 0); */
  {
    /* int max_1 = (*(cob_s8_ptr) (b_17 + 63)); */
    {
      /* cob_dump_field_ext ( 1, \"FILLER\", COB_SET_FLD (f0, 3, b_63, &a_47), 0, 1, i_1, 3UL); OCCURS 2 5 */
      /* cob_dump_field_ext ( 3, \"x-basis\", COB_SET_FLD (f0, 3, b_63, &a_47), 0, 1, i_1, 3UL); */
      /* cob_dump_field_ext ( 5, \"x-a\", COB_SET_FLD (f0, 1, b_63, &a_48), 0, 1, i_1, 3UL); */
      /* cob_dump_field_ext ( 5, \"x-b\", COB_SET_FLD (f0, 1, b_63 + 1, &a_48), 0, 1, i_1, 3UL); */
      /* cob_dump_field_ext ( 5, \"x-c\", COB_SET_FLD (f0, 1, b_63 + 2, &a_48), 0, 1, i_1, 3UL); */
      /* cob_dump_field_ext ( 3, \"FILLER\", COB_SET_FLD (f0, 3, b_63, &a_48), 0, 1, i_1, 3UL); REDEFINES */
      /* cob_dump_field_ext (88, \"sw-x-basis-full\", COB_SET_FLD (f0, 3, b_63, &a_48), 0, 1, i_1, 3UL); VALUE (cob_field *)&c_18 */
    }
  }
  /* cob_dump_field_ext ( 1, \"x-rms\", COB_SET_FLD (f0, 1, b_71, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 5, \"x-rms-a\", COB_SET_FLD (f0, 1, b_71, &a_48), 0, 0); */
  /* cob_dump_field_ext ( 1, \"FILLER\", COB_SET_FLD (f0, 1, b_71, &a_48), 0, 0); REDEFINES */
  /* cob_dump_field_ext (88, \"sw-x-rms-full\", COB_SET_FLD (f0, 1, b_71, &a_48), 0, 0); VALUE (cob_field *)&c_19 OR (cob_field *)&c_20 OR (cob_field *)&c_21 THRU (cob_field *)&c_22 OR (cob_field *)&c_20 OR &cob_all_quote */

  /* Dump LOCAL-STORAGE SECTION (informational) */
  /* cob_dump_output (\"LOCAL-STORAGE\"); */
  /* cob_dump_field_ext ( 1, \"var1\", COB_SET_FLD (f0, 1, cob_local_ptr, &a_48), 0, 0); */
  /* cob_dump_field_ext ( 1, \"var2\", COB_SET_FLD (f0, 2, cob_local_ptr + 16, &a_47), 0, 0); */
  /* cob_dump_field_ext ( 3, \"var2a\", COB_SET_FLD (f0, 1, cob_local_ptr + 16, &a_48), 0, 0); */
  /* cob_dump_field_ext ( 3, \"var2b\", COB_SET_FLD (f0, 1, cob_local_ptr + 16 + 1, &a_52), 0, 0); */
  /* cob_dump_field_ext (88, \"yay\", COB_SET_FLD (f0, 1, cob_local_ptr + 16 + 1, &a_52), 0, 0); VALUE &cob_all_zero OR (cob_field *)&c_23 THRU (cob_field *)&c_24 OR (cob_field *)&c_25 */

  /* cob_dump_output (\"END OF DUMP - debugme\"); */
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7612"
$at_failed && at_fn_log_failure  \
"prog.c"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7691: \$COMPILE -C -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -C -w prog.cob" "syn_misc.at:7691"
( $at_check_trace; $COMPILE -C -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7691"
$at_failed && at_fn_log_failure  \
"prog.c"
$at_traceon; }

# TODO: only execute this piece when extended $GREP works
{ set +x
$as_echo "$at_srcdir/syn_misc.at:7693: (\$GREP -A 200 \"P_dump:\" prog.c | \$GREP -B 200 \" CANCEL \") || exit 77"
at_fn_check_prepare_notrace 'a shell pipeline' "syn_misc.at:7693"
( $at_check_trace; ($GREP -A 200 "P_dump:" prog.c | $GREP -B 200 " CANCEL ") || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "  P_dump:
    return 0;


  /* CANCEL callback handling */
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7693"
$at_failed && at_fn_log_failure  \
"prog.c"
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_387
#AT_START_388
at_fn_group_banner 388 'syn_misc.at:7703' \
  "CONTROL DIVISION" "                               " 2
at_xfail=no
(
  $as_echo "388. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >empty.cob <<'_ATEOF'

       CONTROL          DIVISION.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      empty.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7712: \$COMPILE_ONLY -fcontrol-division=ok empty.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fcontrol-division=ok empty.cob" "syn_misc.at:7712"
( $at_check_trace; $COMPILE_ONLY -fcontrol-division=ok empty.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7712"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >replace.cob <<'_ATEOF'

       CONTROL          DIVISION.
       SUBSTITUTION     SECTION.
           REPLACE ==TEST-VAR== BY ==VAR==.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      replace.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TEST-VAR PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7729: \$COMPILE -fcontrol-division=ok replace.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok replace.cob" "syn_misc.at:7729"
( $at_check_trace; $COMPILE -fcontrol-division=ok replace.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7729"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7730: \$COBCRUN_DIRECT ./replace"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./replace" "syn_misc.at:7730"
( $at_check_trace; $COBCRUN_DIRECT ./replace
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7730"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7731: \$COMPILE replace.cob"
at_fn_check_prepare_dynamic "$COMPILE replace.cob" "syn_misc.at:7731"
( $at_check_trace; $COMPILE replace.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "replace.cob:2: error: CONTROL DIVISION does not conform to GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7731"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >replace.cob <<'_ATEOF'

       CONTROL          DIVISION.
       REPLACE ==TEST-VAR== BY ==VAR==.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      replace.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TEST-VAR PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7749: \$COMPILE -fcontrol-division=ok replace.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok replace.cob" "syn_misc.at:7749"
( $at_check_trace; $COMPILE -fcontrol-division=ok replace.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7749"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7750: \$COBCRUN_DIRECT ./replace"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./replace" "syn_misc.at:7750"
( $at_check_trace; $COBCRUN_DIRECT ./replace
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7750"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_388
#AT_START_389
at_fn_group_banner 389 'syn_misc.at:7755' \
  "CONTROL: empty default section" "                 " 2
at_xfail=no
(
  $as_echo "389. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       CONTROL		DIVISION.
       DEFAULT		SECTION.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 VAR PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7772: \$COMPILE -fcontrol-division=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok prog.cob" "syn_misc.at:7772"
( $at_check_trace; $COMPILE -fcontrol-division=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7772"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7773: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:7773"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7773"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7774: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:7774"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:2: error: CONTROL DIVISION does not conform to GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7774"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_389
#AT_START_390
at_fn_group_banner 390 'syn_misc.at:7781' \
  "CONTROL: default section" "                       " 2
at_xfail=no
(
  $as_echo "390. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       CONTROL		DIVISION.
       DEFAULT		SECTION.
           ACCEPT ALTERNATE CONSOLE
           DISPLAY IS TERMINAL
	   .
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 VAR PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7801: \$COMPILE -fcontrol-division=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok prog.cob" "syn_misc.at:7801"
( $at_check_trace; $COMPILE -fcontrol-division=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: ACCEPT statement in DEFAULT SECTION is not implemented
prog.cob:5: warning: DISPLAY statement in DEFAULT SECTION is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7801"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7805: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:7805"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7805"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7806: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_misc.at:7806"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:2: error: CONTROL DIVISION does not conform to GnuCOBOL
prog.cob:4: warning: ACCEPT statement in DEFAULT SECTION is not implemented
prog.cob:5: warning: DISPLAY statement in DEFAULT SECTION is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7806"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_390
#AT_START_391
at_fn_group_banner 391 'syn_misc.at:7815' \
  "CONTROL: substitution & default section" "        " 2
at_xfail=no
(
  $as_echo "391. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >empties.cob <<'_ATEOF'

       CONTROL		DIVISION.
       SUBSTITUTION	SECTION.
       DEFAULT		SECTION.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      empties.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7828: \$COMPILE -fcontrol-division=ok empties.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok empties.cob" "syn_misc.at:7828"
( $at_check_trace; $COMPILE -fcontrol-division=ok empties.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7828"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >empty0.cob <<'_ATEOF'

       CONTROL		DIVISION.
       SUBSTITUTION	SECTION.
       DEFAULT		SECTION.
           ACCEPT ALTERNATE CONSOLE
	   .
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      empty0.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7842: \$COMPILE -fcontrol-division=ok empty0.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok empty0.cob" "syn_misc.at:7842"
( $at_check_trace; $COMPILE -fcontrol-division=ok empty0.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "empty0.cob:5: warning: ACCEPT statement in DEFAULT SECTION is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7842"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >empty1.cob <<'_ATEOF'

       CONTROL		DIVISION.
       SUBSTITUTION	SECTION.
           REPLACE "KO" BY "OK".
       DEFAULT		SECTION.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      empty1.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 VAR PIC X(2) VALUE "KO".
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7861: \$COMPILE -fcontrol-division=ok empty1.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok empty1.cob" "syn_misc.at:7861"
( $at_check_trace; $COMPILE -fcontrol-division=ok empty1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7861"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7862: \$COBCRUN_DIRECT ./empty1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./empty1" "syn_misc.at:7862"
( $at_check_trace; $COBCRUN_DIRECT ./empty1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7862"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       CONTROL		DIVISION.
       SUBSTITUTION	SECTION.
           REPLACE IISS BY IS
	           TERM BY TERMINAL
	           "KO" BY "OK".
       DEFAULT		SECTION.
           ACCEPT ALTERNATE CONSOLE
           DISPLAY IISS TERM
	   .
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 VAR PIC X(2) VALUE "KO".
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7885: \$COMPILE -fcontrol-division=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcontrol-division=ok prog.cob" "syn_misc.at:7885"
( $at_check_trace; $COMPILE -fcontrol-division=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: ACCEPT statement in DEFAULT SECTION is not implemented
prog.cob:9: warning: DISPLAY statement in DEFAULT SECTION is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7885"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7889: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:7889"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7889"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_391
#AT_START_392
at_fn_group_banner 392 'syn_misc.at:7894' \
  "CONTROL DIVISION & AREACHECK" "                   " 2
at_xfail=no
(
  $as_echo "392. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       CONTROL          DIVISION.
       SUBSTITUTION     SECTION.
      *> This REPLACE in Area A is ignored for now:
          REPLACE IISS BY IS
                  TERM BY TERMINAL
                  "KO" BY "OK".
       DEFAULT          SECTION.
          ACCEPT ALTERNATE CONSOLE
          DISPLAY IISS TERM
       .
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 VAR PIC X(2) VALUE "KO".
       PROCEDURE        DIVISION.
          DISPLAY VAR
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7918: \$COMPILE -std=gcos-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=gcos-strict prog.cob" "syn_misc.at:7918"
( $at_check_trace; $COMPILE -std=gcos-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: start of statement in Area A
prog.cob:9: warning: ACCEPT statement in DEFAULT SECTION is not implemented
prog.cob:10: warning: start of statement in Area A
prog.cob:10: warning: DISPLAY statement in DEFAULT SECTION is not implemented
prog.cob:18: warning: start of statement in Area A
prog.cob:19: warning: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:7918"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_392
#AT_START_393
at_fn_group_banner 393 'syn_misc.at:7930' \
  "PICTURE L" "                                      " 2
at_xfail=no
(
  $as_echo "393. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog_extraneous_depending.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog_extraneous_depending.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 L              COMP-1.
       1 F-DAT          PICTURE X(10) DEPENDING ON L.
       PROCEDURE        DIVISION.
           MOVE SPACES TO F-DAT
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7944: \$COMPILE_ONLY prog_extraneous_depending.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog_extraneous_depending.cob" "syn_misc.at:7944"
( $at_check_trace; $COMPILE_ONLY prog_extraneous_depending.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_extraneous_depending.cob:7: error: DEPENDING clause needs either an OCCURS clause or a variable-length PICTURE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7944"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_missing_depending.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog_missing_depending.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 F-DAT          PICTURE LX(10).
       PROCEDURE        DIVISION.
           MOVE SPACES TO F-DAT
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7959: \$COMPILE_ONLY prog_missing_depending.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog_missing_depending.cob" "syn_misc.at:7959"
( $at_check_trace; $COMPILE_ONLY prog_missing_depending.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_missing_depending.cob:6: error: variable-length PICTURE requires DEPENDING clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7959"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_value.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog_value.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 L              COMP-1 VALUE 10.
       1 F-DAT          PICTURE LX(10) DEPENDING ON L
                        VALUE "0123456789".
       1 F-DAT2         PICTURE LX(10) DEPENDING ON L
                        BLANK WHEN ZERO.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_misc.at:7976: \$COMPILE_ONLY prog_value.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog_value.cob" "syn_misc.at:7976"
( $at_check_trace; $COMPILE_ONLY prog_value.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_value.cob:7: error: variable-length PICTURE and VALUE are mutually exclusive
prog_value.cob:9: error: 'F-DAT2' cannot have BLANK WHEN ZERO clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7976"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog_errs.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog_errs.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 W-LGS.
         2 LGS          PICTURE X(10).
       1 W-DATA.
         2 L-DAT        PICTURE LX(10)    DEPENDING ON LGS.
         2 L-ERR1       PICTURE L9        DEPENDING ON LGS.
         2 L-ERR2       PICTURE XXXXLA(2) DEPENDING ON LGS.
         2 L-ERR3       PICTURE LX(1)     DEPENDING ON LGS JUSTIFIED.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:7997: \$COMPILE_ONLY prog_errs.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog_errs.cob" "syn_misc.at:7997"
( $at_check_trace; $COMPILE_ONLY prog_errs.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog_errs.cob:10: error: only USAGE DISPLAY may specify a variable-length PICTURE
prog_errs.cob:11: error: L must be at start of PICTURE string
prog_errs.cob:11: error: L cannot follow A or X
prog_errs.cob:11: error: only USAGE DISPLAY may specify a variable-length PICTURE
prog_errs.cob:12: error: 'L-ERR3' cannot have JUSTIFIED RIGHT clause
prog_errs.cob:9: error: 'LGS' is not numeric
prog_errs.cob:12: error: 'LGS' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:7997"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 LGS            PICTURE 9(10).
       1 L-DAT          PICTURE LX(10) DEPENDING ON LGS.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8018: \$COMPILE_ONLY -fpicture-l=warning prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fpicture-l=warning prog.cob" "syn_misc.at:8018"
( $at_check_trace; $COMPILE_ONLY -fpicture-l=warning prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: PICTURE string with 'L' character used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8018"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_393
#AT_START_394
at_fn_group_banner 394 'syn_misc.at:8025' \
  "AREACHECK / NOAREACHECK directives" "             " 2
at_xfail=no
(
  $as_echo "394. $at_setup_line: testing $at_desc ..."
  $at_traceon



 # note: the following does an _extra_ check for the CONTINUE
 # statement, as this internally is post-created (= on the next token)
 # and therefore keeps its starting position "extra",
 # see parser.y (begin_statement_at_tree_pos)

cat >prog.cob <<'_ATEOF'

       $SET NO-AREA-CHECK
       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE       DIVISION.
       MAIN-1 SECTION.
       DISPLAY "SOMETHING".
       $SET AREA-CHECK
       MAIN-2 SECTION.
           CONTINUE.
       CONTINUE.
       DISPLAY "SOMETHING ELSE"
       STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8050: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:8050"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'MAIN-2':
prog.cob:13: error: start of statement in Area A
prog.cob:14: error: start of statement in Area A
prog.cob:15: error: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8050"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8056: \$COMPILE_ONLY -std=cobol85 -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 -frelax-syntax-checks prog.cob" "syn_misc.at:8056"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in section 'MAIN-2':
prog.cob:13: warning: start of statement in Area A
prog.cob:14: warning: start of statement in Area A
prog.cob:15: warning: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8056"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_394
#AT_START_395
at_fn_group_banner 395 'syn_misc.at:8065' \
  "AREACHECK / NOAREACHECK directives (2)" "         " 2
at_xfail=no
(
  $as_echo "395. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       $SET NOAREACHECK
       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       $SET AREACHECK
       WORKING-STORAGE SECTION.
       01 X.
           02 Y PIC X.
           01 Z PIC X
       01 T PIC 9.
       $SET NOAREACHECK
       PROCEDURE       DIVISION.
       MAIN-1 SECTION.
       DISPLAY "SOMETHING"
       $SET AREACHECK
       MAIN-2 SECTION.
       DISPLAY "SOMETHING ELSE"
       STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8089: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_misc.at:8089"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: '01' should start in Area A
prog.cob:11: error: optional period used
prog.cob: in section 'MAIN-1':
prog.cob:17: error: optional period used
prog.cob: in section 'MAIN-2':
prog.cob:18: error: start of statement in Area A
prog.cob:19: error: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8089"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8098: \$COMPILE_ONLY -std=cobol85 -fmissing-period=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 -fmissing-period=ok prog.cob" "syn_misc.at:8098"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 -fmissing-period=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: '01' should start in Area A
prog.cob: in section 'MAIN-2':
prog.cob:18: error: start of statement in Area A
prog.cob:19: error: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8098"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8104: \$COMPILE_ONLY -fformat=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 prog.cob" "syn_misc.at:8104"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: '01' should start in Area A
prog.cob:11: warning: optional period used
prog.cob: in section 'MAIN-1':
prog.cob:17: warning: optional period used
prog.cob: in section 'MAIN-2':
prog.cob:18: error: start of statement in Area A
prog.cob:19: error: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8104"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_395
#AT_START_396
at_fn_group_banner 396 'syn_misc.at:8117' \
  "optional dots" "                                  " 2
at_xfail=no
(
  $as_echo "396. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION
       PROGRAM-ID.     prog.
       DATA            DIVISION
       WORKING-STORAGE SECTION.
       01 X PIC X.
       01 Y PIC X.
       PROCEDURE       DIVISION.
       MAIN SECTION.
           PERFORM P
           STOP RUN.
       P.
           GOBACK
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8135: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:8135"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: warning: optional period used
prog.cob:5: warning: optional period used
prog.cob: in section 'MAIN':
prog.cob: in paragraph 'P':
prog.cob:14: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8135"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >cobol85.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION
       PROGRAM-ID.     cobol85.
       DATA            DIVISION
       WORKING-STORAGE SECTION
       01 X PIC X *> dot optional here because of cobol85 format
       01 Y PIC X.
       PROCEDURE       DIVISION.
       MAIN SECTION.
           PERFORM P
           STOP RUN *> dot optional here because of cobol85 format
       P.
           GOBACK
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8158: \$COMPILE_ONLY -fformat=cobol85 cobol85.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 cobol85.cob" "syn_misc.at:8158"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 cobol85.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobol85.cob:3: warning: optional period used
cobol85.cob:5: warning: optional period used
cobol85.cob:6: warning: optional period used
cobol85.cob:7: warning: optional period used
cobol85.cob: in section 'MAIN':
cobol85.cob:12: warning: optional period used
cobol85.cob: in paragraph 'P':
cobol85.cob:14: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8158"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_396
#AT_START_397
at_fn_group_banner 397 'syn_misc.at:8172' \
  "optional dots before PROCEDURE DIVISION" "        " 2
at_xfail=no
(
  $as_echo "397. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION
       PROGRAM-ID. prog.
       DATA DIVISION
       WORKING-STORAGE SECTION
       77 PMODE   PIC X
       PROCEDURE DIVISION.
          STOP RUN.
_ATEOF


# The syntax error below is hard to avoid, and can be missleading.
# The error is actually on the `77`, which is only parsed as a
# LEVEL_NUMBER if the preceding token is a `.`.
#
# TODO: To avoid this, we need to unput the WORD/Literal when dealing
# with optional periods outside of PROCEDURE DIVISION, and ensure it
# is reparsed as a LEVEL_NUMBER.
{ set +x
$as_echo "$at_srcdir/syn_misc.at:8192: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_misc.at:8192"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: warning: optional period used
prog.cob:5: warning: optional period used
prog.cob:6: error: syntax error, unexpected Literal
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8192"
$at_failed && at_fn_log_failure
$at_traceon; }


# Here the AREACHECK helps us recover from all missing periods
{ set +x
$as_echo "$at_srcdir/syn_misc.at:8199: \$COMPILE_ONLY -fformat=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=cobol85 prog.cob" "syn_misc.at:8199"
( $at_check_trace; $COMPILE_ONLY -fformat=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: warning: optional period used
prog.cob:5: warning: optional period used
prog.cob:6: warning: optional period used
prog.cob:7: warning: optional period used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8199"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_397
#AT_START_398
at_fn_group_banner 398 'syn_misc.at:8209' \
  "AREACHECK" "                                      " 2
at_xfail=no
(
  $as_echo "398. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >pgm1.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PGM1.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT FILE01 ASSIGN "file01.dat".
       DATA DIVISION.
       FILE SECTION.
       FD FILE01.
       01 RECORD-FILE01 PIC X(50).
       WORKING-STORAGE SECTION.
       01 W-DATA01.
      * 02 items may still lie in Area A for now:
       02 W-CH01       PIC X(10).
       PROCEDURE DIVISION.
       MAIN-PROCEDURE.
       DISPLAY "Hello"
           STOP RUN
           .
       END PROGRAM PGM1.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8235: \$COMPILE_ONLY -std=mvs pgm1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mvs pgm1.cob" "syn_misc.at:8235"
( $at_check_trace; $COMPILE_ONLY -std=mvs pgm1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "pgm1.cob:7: warning: start of statement in Area A
pgm1.cob: in paragraph 'MAIN-PROCEDURE':
pgm1.cob:18: warning: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8235"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8241: \$COMPILE_ONLY -std=mvs-strict pgm1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mvs-strict pgm1.cob" "syn_misc.at:8241"
( $at_check_trace; $COMPILE_ONLY -std=mvs-strict pgm1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "pgm1.cob:7: error: start of statement in Area A
pgm1.cob: in paragraph 'MAIN-PROCEDURE':
pgm1.cob:18: error: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8241"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_398
#AT_START_399
at_fn_group_banner 399 'syn_misc.at:8249' \
  "autodetect format" "                              " 2
at_xfail=no
(
  $as_echo "399. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >free.cob <<'_ATEOF'

  IDENTIFICATION   DIVISION.
  PROGRAM-ID.      prog.
  PROCEDURE        DIVISION.
     DISPLAY "OK" NO ADVANCING
     END-DISPLAY.
     STOP RUN.
_ATEOF


cat >fixed1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
      * this is a comment
       PROCEDURE        DIVISION.
          DISPLAY "OK" NO ADVANCING
          END-DISPLAY.
          STOP RUN.
_ATEOF


cat >fixed2.cob <<'_ATEOF'

      * this is a comment
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
          DISPLAY "OK" NO ADVANCING
          END-DISPLAY.
          STOP RUN.
_ATEOF


# Generate source files with DOM
{ set +x
$as_echo "$at_srcdir/syn_misc.at:8282: printf '\\357\\273\\277' > header.dom"
at_fn_check_prepare_trace "syn_misc.at:8282"
( $at_check_trace; printf '\357\273\277' > header.dom
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8282"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8283: cat header.dom free.cob >> domfree.cob"
at_fn_check_prepare_trace "syn_misc.at:8283"
( $at_check_trace; cat header.dom free.cob >> domfree.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8283"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8284: cat header.dom fixed1.cob >> domfixed.cob"
at_fn_check_prepare_trace "syn_misc.at:8284"
( $at_check_trace; cat header.dom fixed1.cob >> domfixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8284"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8286: \$COMPILE_ONLY -fformat=auto free.cob fixed1.cob fixed2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=auto free.cob fixed1.cob fixed2.cob" "syn_misc.at:8286"
( $at_check_trace; $COMPILE_ONLY -fformat=auto free.cob fixed1.cob fixed2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "free.cob:2: note: free format detected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8286"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8289: \$COMPILE_ONLY -fformat=auto domfree.cob domfixed.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=auto domfree.cob domfixed.cob" "syn_misc.at:8289"
( $at_check_trace; $COMPILE_ONLY -fformat=auto domfree.cob domfixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "domfree.cob:2: note: free format detected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8289"
$at_failed && at_fn_log_failure
$at_traceon; }


# In case we decide to have a disabled warning at some point
# AT_CHECK([$COMPILE_ONLY -fformat=auto -w free.cob fixed1.cob fixed2.cob], [0], [], [])
# AT_CHECK([$COMPILE_ONLY -fformat=auto -w domfree.cob domfixed.cob], [0], [], [])

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8297: \$COMPILE_ONLY -fformat=fixed free.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed free.cob" "syn_misc.at:8297"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed free.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "free.cob:2: error: invalid indicator 'T' at column 7
free.cob:3: error: invalid indicator 'R' at column 7
free.cob:4: error: invalid indicator 'E' at column 7
free.cob:5: error: invalid indicator 'I' at column 7
free.cob:6: error: invalid indicator 'N' at column 7
free.cob:7: error: invalid indicator 'T' at column 7
free.cob:8: error: PROGRAM-ID header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8297"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8307: \$COMPILE_ONLY -fformat=fixed domfree.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed domfree.cob" "syn_misc.at:8307"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed domfree.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "domfree.cob:2: error: invalid indicator 'T' at column 7
domfree.cob:3: error: invalid indicator 'R' at column 7
domfree.cob:4: error: invalid indicator 'E' at column 7
domfree.cob:5: error: invalid indicator 'I' at column 7
domfree.cob:6: error: invalid indicator 'N' at column 7
domfree.cob:7: error: invalid indicator 'T' at column 7
domfree.cob:8: error: PROGRAM-ID header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_misc.at:8307"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8317: \$COMPILE_ONLY -fformat=fixed fixed1.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed fixed1.cob" "syn_misc.at:8317"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed fixed1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8317"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8318: \$COMPILE_ONLY -fformat=fixed fixed2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed fixed2.cob" "syn_misc.at:8318"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed fixed2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8318"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8319: \$COMPILE_ONLY -fformat=fixed domfixed.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fformat=fixed domfixed.cob" "syn_misc.at:8319"
( $at_check_trace; $COMPILE_ONLY -fformat=fixed domfixed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8319"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_399
#AT_START_400
at_fn_group_banner 400 'syn_misc.at:8323' \
  "context sensitive alias" "                        " 2
at_xfail=no
(
  $as_echo "400. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  XX  PIC 9.
       01  X            CONSTANT AS XX OF XX.
       PROCEDURE        DIVISION.
           MOVE X TO XX.
           DISPLAY XX NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_misc.at:8340: \$COMPILE -freserved=\"XX*=BYTE-LENGTH\" prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -freserved=\"XX*=BYTE-LENGTH\" prog.cob" "syn_misc.at:8340"
( $at_check_trace; $COMPILE -freserved="XX*=BYTE-LENGTH" prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8340"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_misc.at:8341: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "syn_misc.at:8341"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_misc.at:8341"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_400
#AT_START_401
at_fn_group_banner 401 'syn_move.at:38' \
  "MOVE SPACE TO numeric or numeric-edited item" "   " 2
at_xfail=no
(
  $as_echo "401. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9.
       01 Y             PIC 09.
       PROCEDURE        DIVISION.
           MOVE SPACE TO X.
           MOVE SPACE TO Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:54: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:54"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: MOVE of figurative constant SPACE to numeric item used
prog.cob:10: error: MOVE of figurative constant SPACE to numeric item used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:54"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_401
#AT_START_402
at_fn_group_banner 402 'syn_move.at:64' \
  "MOVE ZERO TO alphabetic item" "                   " 2
at_xfail=no
(
  $as_echo "402. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 A             PIC A.
       PROCEDURE        DIVISION.
           MOVE ZERO TO A.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:78: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:78"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:78"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_402
#AT_START_403
at_fn_group_banner 403 'syn_move.at:90' \
  "MOVE alphabetic TO x" "                           " 2
at_xfail=no
(
  $as_echo "403. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC A.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:116: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:116"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: error: invalid MOVE statement
prog.cob:19: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_403
#AT_START_404
at_fn_group_banner 404 'syn_move.at:124' \
  "MOVE alphanumeric TO x" "                         " 2
at_xfail=no
(
  $as_echo "404. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:150: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:150"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_move.at:150"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_404
#AT_START_405
at_fn_group_banner 405 'syn_move.at:155' \
  "MOVE alphanumeric-edited TO x" "                  " 2
at_xfail=no
(
  $as_echo "405. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC BX.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:181: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:181"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:18: error: invalid MOVE statement
prog.cob:19: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:181"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_405
#AT_START_406
at_fn_group_banner 406 'syn_move.at:189' \
  "MOVE numeric (integer) TO x" "                    " 2
at_xfail=no
(
  $as_echo "406. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:215: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:215"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:215"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_406
#AT_START_407
at_fn_group_banner 407 'syn_move.at:222' \
  "MOVE numeric (non-integer) TO x" "                " 2
at_xfail=no
(
  $as_echo "407. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9V9.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:248: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:248"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: invalid MOVE statement
prog.cob:15: error: invalid MOVE statement
prog.cob:16: error: invalid MOVE statement
prog.cob:17: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:248"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_407
#AT_START_408
at_fn_group_banner 408 'syn_move.at:258' \
  "MOVE numeric-edited TO x" "                       " 2
at_xfail=no
(
  $as_echo "408. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 09.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-0N          PIC 0N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-0N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:286: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:286"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:286"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_408
#AT_START_409
at_fn_group_banner 409 'syn_move.at:293' \
  "MOVE national TO x" "                             " 2
at_xfail=no
(
  $as_echo "409. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC N.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-0N          PIC 0N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-0N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:321: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:321"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: invalid MOVE statement
prog.cob:16: error: invalid MOVE statement
prog.cob:17: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:321"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_409
#AT_START_410
at_fn_group_banner 410 'syn_move.at:330' \
  "MOVE national-edited TO x" "                      " 2
at_xfail=no
(
  $as_echo "410. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 0N.
       01 Y-A           PIC A.
       01 Y-X           PIC X.
       01 Y-BX          PIC BX.
       01 Y-N           PIC N.
       01 Y-0N          PIC 0N.
       01 Y-9           PIC 9.
       01 Y-09          PIC 09.
       PROCEDURE        DIVISION.
           MOVE X TO Y-A.
           MOVE X TO Y-X.
           MOVE X TO Y-BX.
           MOVE X TO Y-N.
           MOVE X TO Y-0N.
           MOVE X TO Y-9.
           MOVE X TO Y-09.
           STOP RUN.
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_move.at:358: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_move.at:358"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: invalid MOVE statement
prog.cob:16: error: invalid MOVE statement
prog.cob:17: error: invalid MOVE statement
prog.cob:20: error: invalid MOVE statement
prog.cob:21: error: invalid MOVE statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:358"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_410
#AT_START_411
at_fn_group_banner 411 'syn_move.at:374' \
  "CORRESPONDING - Operands must be groups" "        " 2
at_xfail=no
(
  $as_echo "411. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 X           PIC X.
       01 G-2.
         02 Y           PIC X.
       PROCEDURE        DIVISION.
           MOVE CORR X TO G-1.
           MOVE CORR G-1 TO X.
           MOVE CORR G-1(1:1) TO G-2.
           MOVE CORR G-1 TO G-2(1:1).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:394: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:394"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: 'X' is not a group name
prog.cob:12: error: 'X' is not a group name
prog.cob:13: error: 'G-1 (1:1)' is not a group name
prog.cob:14: error: 'G-2 (1:1)' is not a group name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:394"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_411
#AT_START_412
at_fn_group_banner 412 'syn_move.at:404' \
  "CORRESPONDING - Target has no matching items" "   " 2
at_xfail=no
(
  $as_echo "412. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G-1.
         02 X           PIC X.
       01 G-2.
         02 Y           PIC X.
       PROCEDURE        DIVISION.
           MOVE CORR G-1 TO G-2.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:421: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:421"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: no CORRESPONDING items found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_move.at:421"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_412
#AT_START_413
at_fn_group_banner 413 'syn_move.at:430' \
  "MOVE to erroneous field" "                        " 2
at_xfail=no
(
  $as_echo "413. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 INVALID-ITEM.
       01 I             PIC 9(3).
       PROCEDURE        DIVISION.
           MOVE 1 TO INVALID-ITEM.
           MOVE SPACE TO I(1:2).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:446: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:446"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: PICTURE clause required for 'INVALID-ITEM'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:446"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_413
#AT_START_414
at_fn_group_banner 414 'syn_move.at:453' \
  "Overlapping MOVE" "                               " 2
at_xfail=no
(
  $as_echo "414. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01  STRUCTURE1.
            05 FIELD1-1  PIC X(5).
            05 FIELD1-2  PIC X(10).
        01  STRUCTURE2   REDEFINES STRUCTURE1.
            05 FIELD2-1  PIC X(10).
            05 FIELD2-2  PIC X(5).
        01  FILLER       REDEFINES STRUCTURE1.
            05 FILLER    PIC X(01).
            05 FIELD     PIC X(02) OCCURS 7.
        01  FILLER.
            05 FIELDO    PIC X(02) OCCURS 7.
        77  NUMVAR       PIC 9(02) VALUE 1.
        78  CONST4       VALUE 4.
        PROCEDURE DIVISION.
           MOVE FIELD1-2 TO STRUCTURE1
           MOVE FIELD1-2 TO FIELD1-1
           MOVE FIELD1-1 TO FIELD1-2, FIELD2-2
           MOVE FIELD1-2 TO FIELD2-1
           MOVE FIELD2-1 TO FIELD2-2
           MOVE FIELD2-1   (2:5) TO FIELD1-2
           MOVE STRUCTURE1 (2:4) TO STRUCTURE1 (5:4)
           MOVE STRUCTURE1 (2:4) TO STRUCTURE1 (6:4)
           MOVE STRUCTURE1 (1:NUMVAR)  TO STRUCTURE1 (3:13)
           MOVE STRUCTURE1 (NUMVAR:1)  TO STRUCTURE1 (3:13)
           MOVE STRUCTURE1 (3:13)      TO STRUCTURE1 (1:NUMVAR)
           MOVE STRUCTURE1 (3:13)      TO STRUCTURE1 (NUMVAR:1)
           MOVE STRUCTURE1 (CONST4:2)  TO STRUCTURE1 (3:2)
           MOVE STRUCTURE1 (6:4)       TO STRUCTURE1 (2:4)
           MOVE STRUCTURE1 (6:4)       TO STRUCTURE1 (2: )
           MOVE FIELD (6)         TO STRUCTURE1 (13:2)
           MOVE FIELD (5)         TO STRUCTURE1 (13:2)
           MOVE FIELD (NUMVAR)    TO STRUCTURE1 (13:2)
           MOVE FIELD (CONST4)    TO STRUCTURE1 (13:2)
           MOVE FIELDO (1)        TO FIELDO (1)
           MOVE FIELDO (CONST4)   TO FIELDO (CONST4)
           MOVE FIELDO (1)        TO FIELDO (2)
           MOVE FIELDO (4)        TO FIELDO (CONST4)
           MOVE FIELDO (CONST4)   TO FIELDO (4)
           MOVE FIELDO (4)        TO FIELDO (NUMVAR)
           MOVE FIELDO (NUMVAR)   TO FIELDO (4)
           MOVE FIELDO (NUMVAR)   TO FIELDO (NUMVAR)
           MOVE FIELDO (NUMVAR) (1:1) TO FIELDO (NUMVAR) (2:1)
           MOVE FIELDO (NUMVAR) (2:1) TO FIELDO (NUMVAR)
           MOVE FIELDO (4) (2:1)  TO FIELDO (CONST4)
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:508: \$COMPILE -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w prog.cob" "syn_move.at:508"
( $at_check_trace; $COMPILE -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_move.at:508"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_move.at:510: \$COMPILE -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdiagnostics-show-option prog.cob" "syn_move.at:510"
( $at_check_trace; $COMPILE -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:23: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:25: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:26: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:32: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:34: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:39: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:40: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:42: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:43: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:46: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:48: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:49: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_move.at:510"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_move.at:526: \$COMPILE -fdiagnostics-show-option -Wpossible-overlap prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdiagnostics-show-option -Wpossible-overlap prog.cob" "syn_move.at:526"
( $at_check_trace; $COMPILE -fdiagnostics-show-option -Wpossible-overlap prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:23: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:25: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:26: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:28: warning: overlapping MOVE may occur and produce unpredictable results [-Wpossible-overlap]
prog.cob:29: warning: overlapping MOVE may occur and produce unpredictable results [-Wpossible-overlap]
prog.cob:30: warning: overlapping MOVE may occur and produce unpredictable results [-Wpossible-overlap]
prog.cob:31: warning: overlapping MOVE may occur and produce unpredictable results [-Wpossible-overlap]
prog.cob:32: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:34: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:39: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:40: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:42: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:43: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:46: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:48: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
prog.cob:49: warning: overlapping MOVE may produce unpredictable results [-Woverlap]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_move.at:526"
$at_failed && at_fn_log_failure
$at_traceon; }

# note: for GnuCOBOL the result actually _is_ predictable,
#       we verify that in run_fundamental
# AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_414
#AT_START_415
at_fn_group_banner 415 'syn_move.at:552' \
  "invalid source for MOVE" "                        " 2
at_xfail=no
(
  $as_echo "415. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       REPOSITORY.
           PROGRAM repo-prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 MAIN-VAR      PIC X(3).
       PROCEDURE        DIVISION.
       MAIN.
           MOVE MAIN TO MAIN-VAR.
           MOVE repo-prog TO MAIN.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:572: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:572"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: no definition/prototype seen for PROGRAM 'repo-prog'
prog.cob: in paragraph 'MAIN':
prog.cob:13: error: 'MAIN' is not a field
prog.cob:14: error: 'repo-prog' is not a field
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:572"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_415
#AT_START_416
at_fn_group_banner 416 'syn_move.at:582' \
  "invalid target for MOVE" "                        " 2
at_xfail=no
(
  $as_echo "416. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       REPOSITORY.
           PROGRAM repo-prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 DEFINED-CONST VALUE 'A'.
       77 MAIN-VAR      PIC X(3).
       PROCEDURE        DIVISION.
       MAIN.
           MOVE 'A' TO MAIN-VAR.
           MOVE 'B' TO MAIN.
           MOVE 'C' TO repo-prog.
           MOVE 'D' TO QUOTE.
           MOVE 'E' TO DEFINED-CONST.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:606: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:606"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: no definition/prototype seen for PROGRAM 'repo-prog'
prog.cob: in paragraph 'MAIN':
prog.cob:15: error: invalid MOVE target: MAIN
prog.cob:16: error: invalid MOVE target: repo-prog
prog.cob:17: error: invalid MOVE target: QUOTE
prog.cob:18: error: invalid MOVE target: literal \"A\"
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:606"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_416
#AT_START_417
at_fn_group_banner 417 'syn_move.at:618' \
  "SET error" "                                      " 2
at_xfail=no
(
  $as_echo "417. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       program-id. prog.
       data division.
       working-storage section.
       01 default-float usage float-long.
       01 no-pointer    pic s9(9) comp.

       linkage section.
       01 float-var usage float-long.

       procedure division .
      *> previously generated error message about invalid MOVE statement,
      *> see bug #255 and an internal compiler error, see bug #295:
           set address of float-var to default-float
           set no-pointer to address of default-float
      *> previously raised internal compiler error, see bug #643:
           set 1 to no-pointer
      *> all fine...
           set address of float-var to address of default-float
           goback.
       end program prog .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:644: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:644"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: invalid SET statement
prog.cob:15: error: invalid SET statement
prog.cob:17: error: invalid SET statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:644"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_417
#AT_START_418
at_fn_group_banner 418 'syn_move.at:653' \
  "MOVE FIGURATIVE to NUMERIC" "                     " 2
at_xfail=no
(
  $as_echo "418. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYFLD        PIC 9(4) VALUE 96.
       01  BIGFLT       COMP-1 VALUE 543.12345E10.
       PROCEDURE        DIVISION.
       MAIN-1.
           MOVE BIGFLT TO MYFLD.
           MOVE SPACES TO MYFLD.
           MOVE LOW-VALUES TO MYFLD.
           MOVE HIGH-VALUES TO MYFLD.
           MOVE QUOTE TO MYFLD.
           MOVE ALL '*' TO MYFLD.
           MOVE ALL '0' TO MYFLD.
           MOVE ALL 'A1' TO MYFLD.
           MOVE ALL '21' TO MYFLD.
           SET MYFLD TO HIGH-VALUES.
           SET MYFLD TO SPACES.
           MOVE HIGH-VALUES TO MYFLD (1:).

           MOVE HIGH-VALUES TO BIGFLT.
           MOVE QUOTE TO BIGFLT.
           MOVE ALL '*' TO BIGFLT.
           MOVE ALL '21' TO BIGFLT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_move.at:685: \$COMPILE_ONLY -std=cobol2002 -freserved=COMP-1:FLOAT prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 -freserved=COMP-1:FLOAT prog.cob" "syn_move.at:685"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 -freserved=COMP-1:FLOAT prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-1':
prog.cob:11: error: MOVE of figurative constant SPACE to numeric item used
prog.cob:12: warning: MOVE of figurative constant to numeric item is archaic in COBOL 2002
prog.cob:13: warning: MOVE of figurative constant to numeric item is archaic in COBOL 2002
prog.cob:14: warning: MOVE of figurative constant QUOTE to numeric item is archaic in COBOL 2002
prog.cob:15: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:17: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:19: error: invalid SET statement
prog.cob:20: error: invalid SET statement
prog.cob:23: warning: MOVE of figurative constant to numeric item is archaic in COBOL 2002
prog.cob:24: warning: MOVE of figurative constant QUOTE to numeric item is archaic in COBOL 2002
prog.cob:25: warning: numeric value is expected
prog.cob:7: note: 'BIGFLT' defined here as USAGE FLOAT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:685"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_move.at:703: \$COMPILE_ONLY -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=ibm prog.cob" "syn_move.at:703"
( $at_check_trace; $COMPILE_ONLY -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-1':
prog.cob:11: error: MOVE of figurative constant SPACE to numeric item used
prog.cob:12: warning: MOVE of figurative constant to numeric item is archaic in IBM COBOL (lax)
prog.cob:13: warning: MOVE of figurative constant to numeric item is archaic in IBM COBOL (lax)
prog.cob:14: warning: MOVE of figurative constant QUOTE to numeric item is archaic in IBM COBOL (lax)
prog.cob:15: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:17: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:19: error: invalid SET statement
prog.cob:20: error: invalid SET statement
prog.cob:23: warning: MOVE of figurative constant to numeric item is archaic in IBM COBOL (lax)
prog.cob:24: warning: MOVE of figurative constant QUOTE to numeric item is archaic in IBM COBOL (lax)
prog.cob:25: warning: numeric value is expected
prog.cob:7: note: 'BIGFLT' defined here as USAGE FLOAT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:703"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_move.at:721: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "syn_move.at:721"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-1':
prog.cob:11: warning: source is non-numeric - substituting zero
prog.cob:12: warning: source is non-numeric - substituting zero
prog.cob:13: warning: source is non-numeric - substituting zero
prog.cob:14: warning: source is non-numeric - substituting zero
prog.cob:15: warning: source is non-numeric - substituting zero
prog.cob:17: warning: source is non-numeric - substituting zero
prog.cob:19: error: invalid SET statement
prog.cob:20: error: invalid SET statement
prog.cob:23: warning: source is non-numeric - substituting zero
prog.cob:24: warning: source is non-numeric - substituting zero
prog.cob:25: warning: source is non-numeric - substituting zero
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:721"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_move.at:736: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_move.at:736"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-1':
prog.cob:11: error: MOVE of figurative constant SPACE to numeric item used
prog.cob:12: warning: MOVE of figurative constant to numeric item is archaic in GnuCOBOL
prog.cob:13: warning: MOVE of figurative constant to numeric item is archaic in GnuCOBOL
prog.cob:14: warning: MOVE of figurative constant QUOTE to numeric item is obsolete in GnuCOBOL
prog.cob:14: warning: MOVE of figurative constant to numeric item is archaic in GnuCOBOL
prog.cob:15: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:17: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:19: error: invalid SET statement
prog.cob:20: error: invalid SET statement
prog.cob:23: warning: MOVE of figurative constant to numeric item is archaic in GnuCOBOL
prog.cob:24: warning: MOVE of figurative constant QUOTE to numeric item is obsolete in GnuCOBOL
prog.cob:24: warning: MOVE of figurative constant to numeric item is archaic in GnuCOBOL
prog.cob:25: warning: numeric value is expected
prog.cob:7: note: 'BIGFLT' defined here as USAGE FLOAT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_move.at:736"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_418
#AT_START_419
at_fn_group_banner 419 'syn_multiply.at:28' \
  "Category check of Format 1" "                     " 2
at_xfail=no
(
  $as_echo "419. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-X           PIC X.
       01 X-9           PIC 9.
       01 X-09          PIC 09.
       PROCEDURE        DIVISION.
           MULTIPLY 123  BY 456
           MULTIPLY "a"  BY "b"
           MULTIPLY 123  BY "b"
           MULTIPLY X-X  BY X-9
           MULTIPLY X-9  BY X-09
           MULTIPLY X-09 BY X-X
           MULTIPLY 123  BY X-X
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_multiply.at:50: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_multiply.at:50"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: '456' is not a numeric name
prog.cob:11: error: 'literal \"a\"' is not numeric
prog.cob:12: error: 'literal \"b\"' is not a numeric name
prog.cob:13: error: 'X-X' is not numeric
prog.cob:14: error: 'X-09' is not a numeric name
prog.cob:15: error: 'X-09' is not numeric
prog.cob:16: error: 'X-X' is not a numeric name
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_multiply.at:50"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_419
#AT_START_420
at_fn_group_banner 420 'syn_multiply.at:64' \
  "Category check of Format 2" "                     " 2
at_xfail=no
(
  $as_echo "420. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-X           PIC X.
       01 X-9           PIC 9.
       01 X-09          PIC 09.
       PROCEDURE        DIVISION.
           MULTIPLY 123  BY 456  GIVING 789
           MULTIPLY "a"  BY "b"  GIVING "c"
           MULTIPLY 123  BY 456  GIVING "c"
           MULTIPLY X-X  BY X-9  GIVING X-09
           MULTIPLY X-9  BY X-09 GIVING X-X
           MULTIPLY 123  BY 456  GIVING X-X
           MULTIPLY X-09 BY X-X  GIVING X-9
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_multiply.at:86: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_multiply.at:86"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: '789' is not a numeric or numeric-edited name
prog.cob:11: error: 'literal \"a\"' is not numeric
prog.cob:11: error: 'literal \"b\"' is not numeric
prog.cob:12: error: 'literal \"c\"' is not a numeric or numeric-edited name
prog.cob:13: error: 'X-X' is not numeric
prog.cob:14: error: 'X-09' is not numeric
prog.cob:15: error: 'X-X' is not a numeric or numeric-edited name
prog.cob:16: error: 'X-09' is not numeric
prog.cob:16: error: 'X-X' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_multiply.at:86"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_420
#AT_START_421
at_fn_group_banner 421 'syn_multiply.at:102' \
  "Category check of literals" "                     " 2
at_xfail=no
(
  $as_echo "421. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9.
       PROCEDURE        DIVISION.
           MULTIPLY 123  BY X
           END-MULTIPLY.
           MULTIPLY "a"  BY X
           END-MULTIPLY.
           MULTIPLY 123  BY 456 GIVING X
           END-MULTIPLY.
           MULTIPLY "a"  BY "b" GIVING X
           END-MULTIPLY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_multiply.at:123: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_multiply.at:123"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'literal \"a\"' is not numeric
prog.cob:14: error: 'literal \"a\"' is not numeric
prog.cob:14: error: 'literal \"b\"' is not numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_multiply.at:123"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_421
#AT_START_422
at_fn_group_banner 422 'syn_screen.at:24' \
  "Flexible ACCEPT/DISPLAY syntax" "                 " 2
at_xfail=no
(
  $as_echo "422. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           SYSERR IS ERR-STREAM
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  a-field      PIC XXX.

       SCREEN           SECTION.
       01  scr.
           03 VALUE "blah" LINE 5 COL 5.

       PROCEDURE        DIVISION.
           *> Valid statements
           DISPLAY "123" "456" "789" NO ADVANCING
           DISPLAY "foo" COL 1 HIGHLIGHT AT LINE 1 WITH UNDERLINE,
               "bar", "foo"
           DISPLAY "a" UPON CRT, "b" LINE 3 COL 3, "c" UPON CRT-UNDER
           DISPLAY scr, scr

           ACCEPT a-field LINE 5 SIZE 3 AT COL 1 WITH AUTO
               REVERSE-VIDEO, BLINK

           *> invalid statements
           DISPLAY scr WITH NO ADVANCING
           DISPLAY scr, scr LINE 2 COL 2 UPON ERR-STREAM
           DISPLAY "foo" LINE 2 COL 2, scr
           DISPLAY "foo" LINE 2 COL 2, "bar" UPON ERR-STREAM
           DISPLAY "foo" LINE 1 UPON ERR-STREAM
           DISPLAY scr, "foo"
           .
       END PROGRAM prog.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog-2.

       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           CONSOLE IS CRT
           .
       PROCEDURE DIVISION.
           DISPLAY "foo" NO ADVANCING
           .
       END PROGRAM prog-2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:79: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:79"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:31: error: cannot specify NO ADVANCING in screen DISPLAY
prog.cob:31: error: screens may only be displayed on CRT
prog.cob:32: error: cannot mix screens and fields in the same DISPLAY statement
prog.cob:33: error: ambiguous DISPLAY; put items to display on device in separate DISPLAY
prog.cob:34: error: screen clauses may only be used for DISPLAY on CRT
prog.cob:35: error: cannot mix screens and fields in the same DISPLAY statement
prog.cob:49: error: cannot specify NO ADVANCING in screen DISPLAY
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:79"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_422
#AT_START_423
at_fn_group_banner 423 'syn_screen.at:92' \
  "Duplicate ACCEPT/DISPLAY clauses" "               " 2
at_xfail=no
(
  $as_echo "423. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  a-field      PIC XXX.
       PROCEDURE        DIVISION.
           DISPLAY "foo" LINE 1 COL 1 HIGHLIGHT LINE 1 HIGHLIGHT
               AT 0101 MODE IS BLOCK MODE IS BLOCK
           ACCEPT a-field LINE 1 COL 1 HIGHLIGHT LINE 1 HIGHLIGHT
               AT 0101
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:109: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:109"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: duplicate LINE clause
prog.cob:8: error: duplicate HIGHLIGHT clause
prog.cob:9: error: cannot specify both AT screen-location and LINE or COLUMN
prog.cob:9: error: duplicate MODE IS BLOCK clause
prog.cob:10: error: duplicate LINE clause
prog.cob:10: error: duplicate HIGHLIGHT clause
prog.cob:11: error: cannot specify both AT screen-location and LINE or COLUMN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:109"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_423
#AT_START_424
at_fn_group_banner 424 'syn_screen.at:121' \
  "AT clause" "                                      " 2
at_xfail=no
(
  $as_echo "424. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  curs-1      PIC 9(4) VALUE 00000000001111.
       01  curs-2.
           03  linee   PIC 999.
           03  coll    PIC 999.
       01  posc        CONSTANT 0101.

       01  curs-3      PIC 99.
       01  curs-4      PIC 9(8) VALUE 0101.
       01  curs-5      PIC X(4).

       01  SCREEN-POS.
           03  SPOS            PIC  9(04) VALUE ZERO.
           03  WS2-CURS REDEFINES SPOS.
               05  SLIN        PIC  9(02).
               05  SCOL        PIC  9(02).

       PROCEDURE       DIVISION.
           *> Valid AT clauses
           DISPLAY "a" AT curs-1
           DISPLAY "a" AT curs-2
           DISPLAY "a" AT posc
           DISPLAY "a" AT posc
           DISPLAY "a" AT SPOS
           DISPLAY "a" AT WS2-CURS
           DISPLAY "a" AT SCREEN-POS

           *> Invalid AT clauses
           DISPLAY "a" AT curs-3
           DISPLAY "a" AT curs-4
           DISPLAY "a" AT curs-5
           DISPLAY "a" AT 101
           DISPLAY "a" AT ZERO
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:165: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:165"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:34: error: value in AT clause must have 4 or 6 digits
prog.cob:35: error: value in AT clause must have 4 or 6 digits
prog.cob:36: error: value in AT clause is not numeric
prog.cob:37: error: value in AT clause must have 4 or 6 digits
prog.cob:39: error: cannot specify figurative constant ZERO in AT clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_424
#AT_START_425
at_fn_group_banner 425 'syn_screen.at:175' \
  "ACCEPT/DISPLAY extensions detection" "            " 2
at_xfail=no
(
  $as_echo "425. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  zero-const CONSTANT 0.
       01  x PIC 99.

       SCREEN SECTION.
       01  scr.
           03  y PIC 99 FROM x LINE 3 COLUMN 5.

       PROCEDURE DIVISION.
           DISPLAY "hello" AT 0000
           DISPLAY "world" LINE ZERO COLUMN zero-const
           ACCEPT x WITH TIME-OUT 5

           DISPLAY scr WITH UNDERLINE
           ACCEPT scr WITH HIGHLIGHT

           DISPLAY scr, scr

           *> Valid statements
           DISPLAY scr UPON CRT-UNDER
           ACCEPT scr AT LINE 4 COLUMN 4
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:207: \$COMPILE_ONLY -faccept-display-extensions=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -faccept-display-extensions=error prog.cob" "syn_screen.at:207"
( $at_check_trace; $COMPILE_ONLY -faccept-display-extensions=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: AT clause used
prog.cob:15: error: non-standard DISPLAY used
prog.cob:16: error: LINE 0 used
prog.cob:16: error: COLUMN 0 used
prog.cob:16: error: non-standard DISPLAY used
prog.cob:17: error: non-standard ACCEPT used
prog.cob:19: error: non-standard DISPLAY used
prog.cob:20: error: non-standard ACCEPT used
prog.cob:22: error: non-standard DISPLAY used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:207"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_425
#AT_START_426
at_fn_group_banner 426 'syn_screen.at:221' \
  "FROM clause" "                                    " 2
at_xfail=no
(
  $as_echo "426. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       SCREEN  SECTION.
       01 SG.
          05 SI1   LINE 1 COL 1 PIC X FROM X.
          05 SI2   LINE 2 COL 1 PIC X FROM SPACE.
          05 SI2-2 LINE 2 COL 5 PIC X(03) FROM ALL SPACES.
          05 SI3   LINE 3 COL 1 PIC 9 FROM ZERO.
          05 SI3-2 LINE 3 COL 5 PIC X(03) FROM ALL ZEROES.
          05 SI4   LINE 4 COL 1 FROM X.  *> PIC is implied by FROM
       PROCEDURE        DIVISION.
           DISPLAY SG END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:243: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:243"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: warning: 'SI4' has FROM, TO or USING without PIC; PIC will be implied
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:243"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_426
#AT_START_427
at_fn_group_banner 427 'syn_screen.at:250' \
  "Incorrect USAGE clause" "                         " 2
at_xfail=no
(
  $as_echo "427. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       SCREEN  SECTION.
        01 SG.
           05 SI1    LINE 1 COL 1 PIC X FROM X.
           05 SI2    LINE 2 COL 1 PIC X FROM SPACE.
           05 SI2-2  LINE 2 COL 5 PIC X(03) FROM ALL SPACES.
           05 BAD1   LINE 4 COL 1 PIC 9 BINARY FROM ZERO.
           05 BAD2   LINE 4 COL 1 PIC 9 USAGE BINARY FROM ZERO.
           05 FILLER LINE 4 COL 8 PIC 9 COMP-5 FROM ZERO.
           05 BAD3   LINE 4 COL 5 COMP-2 FROM ALL ZEROES.
       PROCEDURE        DIVISION.
           DISPLAY SG END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:273: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_screen.at:273"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: syntax error, unexpected BINARY
prog.cob:13: error: syntax error, unexpected BINARY, expecting DISPLAY or DISPLAY-1 or NATIONAL or UTF-8
prog.cob:14: error: syntax error, unexpected COMP-5
prog.cob:15: error: syntax error, unexpected COMP-2
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:273"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_427
#AT_START_428
at_fn_group_banner 428 'syn_screen.at:283' \
  "SCREEN SECTION clause numbers" "                  " 2
at_xfail=no
(
  $as_echo "428. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       SCREEN           SECTION.
       *> Valid numbers
       01  v1           VALUE "-" LINE 1.
       01  v2           VALUE "-" LINE + 1.
       01  v3           VALUE "-" LINE - 1.
       01  v4           VALUE "-" LINE 0.

       *> invalid numbers
       01  i1           VALUE "-" LINE +1.
       01  i2           VALUE "-" LINE -1.
       01  i3           VALUE "-" LINE 1.0.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:305: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:305"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: unsigned integer value expected
prog.cob:14: error: unsigned integer value expected
prog.cob:15: error: unsigned integer value expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:305"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_428
#AT_START_429
at_fn_group_banner 429 'syn_screen.at:315' \
  "Screen clauses" "                                 " 2
at_xfail=no
(
  $as_echo "429. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  foo          PIC X.
       SCREEN           SECTION.
       01  scr.
           03  a        PIC X TO foo FULL, REQUIRED,
                        LEFTLINE, RIGHTLINE, OVERLINE, UNDERLINE,
                        GRID.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:334: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:334"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: GRID is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:334"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_429
#AT_START_430
at_fn_group_banner 430 'syn_screen.at:341' \
  "ACCEPT ON EXCEPTION/ESCAPE" "                     " 2
at_xfail=no
(
  $as_echo "430. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  foo          PIC X.
       PROCEDURE        DIVISION.
           ACCEPT foo
               ON EXCEPTION
                   CONTINUE
               NOT EXCEPTION
                   CONTINUE
           END-ACCEPT

           ACCEPT foo
               ESCAPE
                   CONTINUE
               NOT ON ESCAPE
                   CONTINUE
           END-ACCEPT
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:367: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:367"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:367"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_430
#AT_START_431
at_fn_group_banner 431 'syn_screen.at:371' \
  "Referencing 88-level" "                           " 2
at_xfail=no
(
  $as_echo "431. $at_setup_line: testing $at_desc ..."
  $at_traceon

# see bug #178


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  flag PIC X.
           88  blah VALUE "N".

       SCREEN           SECTION.
       01  scr.
           03  PIC X COLUMN blah TO blah FROM blah.

       PROCEDURE        DIVISION.
           ACCEPT scr
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:393: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:393"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: condition-name not allowed here: 'blah'
prog.cob:12: error: condition-name not allowed here: 'blah'
prog.cob:12: error: condition-name not allowed here: 'blah'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:393"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_431
#AT_START_432
at_fn_group_banner 432 'syn_screen.at:402' \
  "Conflicting screen clauses" "                     " 2
at_xfail=no
(
  $as_echo "432. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  x            PIC 999.

       SCREEN           SECTION.
       01  scr.
           03  VALUE "foo" HIGHLIGHT, LOWLIGHT;
                           ERASE EOL, ERASE EOS;
                           BLANK LINE, BLANK SCREEN.

       PROCEDURE        DIVISION.
           DISPLAY "blah" WITH HIGHLIGHT, LOWLIGHT;
                               ERASE EOL, ERASE EOS;
                               BLANK LINE, BLANK SCREEN;
                               SCROLL UP, SCROLL DOWN;

           ACCEPT x WITH AUTO, TAB; SCROLL UP, SCROLL DOWN;
               UPDATE, NO UPDATE

           SET scr ATTRIBUTE HIGHLIGHT ON, LOWLIGHT OFF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:432: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:432"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: cannot specify both LOWLIGHT and HIGHLIGHT
prog.cob:12: error: cannot specify both ERASE EOS and ERASE EOL
prog.cob:13: error: cannot specify both BLANK SCREEN and BLANK LINE
prog.cob:16: error: cannot specify both LOWLIGHT and HIGHLIGHT
prog.cob:17: error: cannot specify both ERASE EOS and ERASE EOL
prog.cob:18: error: cannot specify both BLANK SCREEN and BLANK LINE
prog.cob:21: error: cannot specify both SCROLL DOWN and SCROLL UP
prog.cob:21: error: cannot specify both TAB and AUTO
prog.cob:22: error: cannot specify both SCROLL DOWN and SCROLL UP
prog.cob:22: error: cannot specify both NO UPDATE and UPDATE
prog.cob:24: error: cannot specify both HIGHLIGHT and LOWLIGHT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:432"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:446: \$COMPILE_ONLY -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -frelax-syntax-checks prog.cob" "syn_screen.at:446"
( $at_check_trace; $COMPILE_ONLY -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: cannot specify both LOWLIGHT and HIGHLIGHT
prog.cob:11: note: LOWLIGHT is ignored
prog.cob:12: warning: cannot specify both ERASE EOS and ERASE EOL
prog.cob:12: note: ERASE EOS is ignored
prog.cob:13: warning: cannot specify both BLANK SCREEN and BLANK LINE
prog.cob:13: note: BLANK SCREEN is ignored
prog.cob:16: warning: cannot specify both LOWLIGHT and HIGHLIGHT
prog.cob:16: note: LOWLIGHT is ignored
prog.cob:17: warning: cannot specify both ERASE EOS and ERASE EOL
prog.cob:17: note: ERASE EOS is ignored
prog.cob:18: warning: cannot specify both BLANK SCREEN and BLANK LINE
prog.cob:18: note: BLANK SCREEN is ignored
prog.cob:21: warning: cannot specify both SCROLL DOWN and SCROLL UP
prog.cob:21: note: SCROLL DOWN is ignored
prog.cob:21: warning: cannot specify both TAB and AUTO
prog.cob:21: note: TAB is ignored
prog.cob:22: warning: cannot specify both SCROLL DOWN and SCROLL UP
prog.cob:22: note: SCROLL DOWN is ignored
prog.cob:22: warning: cannot specify both NO UPDATE and UPDATE
prog.cob:22: note: NO UPDATE is ignored
prog.cob:24: error: cannot specify both HIGHLIGHT and LOWLIGHT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:446"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_432
#AT_START_433
at_fn_group_banner 433 'syn_screen.at:473' \
  "Redundant screen clauses" "                       " 2
at_xfail=no
(
  $as_echo "433. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  x            PIC 999.

       SCREEN           SECTION.
       01  scr.
           03  HIGHLIGHT FULL.
               05  HIGHLIGHT FULL.
                   07  FULL FULL VALUE "foo".

       PROCEDURE        DIVISION.
           DISPLAY "hello" WITH BACKGROUND-COLOR 2, BACKGROUND-COLOR 2
           ACCEPT x WITH HIGHLIGHT, HIGHLIGHT, UPDATE, DEFAULT
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:496: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:496"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: duplicate FULL clause
prog.cob:16: error: duplicate BACKGROUND-COLOR clause
prog.cob:17: error: duplicate HIGHLIGHT clause
prog.cob:17: error: duplicate UPDATE clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:496"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_433
#AT_START_434
at_fn_group_banner 434 'syn_screen.at:506' \
  "Screen item OCCURS w-/wo relative LINE/COL" "     " 2
at_xfail=no
(
  $as_echo "434. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       SCREEN           SECTION.
       01 x-scr.
          03 x PIC X VALUE "a" OCCURS 10.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       SCREEN           SECTION.
       01 x-scr.
          03 x PIC X VALUE "a" OCCURS 10 COL  10.
       01 y-scr.
          03 y PIC X VALUE "a" OCCURS 10 LINE 10.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA             DIVISION.
       SCREEN           SECTION.
       01 x-scr.
          03 x PIC X VALUE "a" OCCURS 10 COL  + 10.
       01 y-scr.
          03 y PIC X VALUE "a" OCCURS 10 LINE - 10.
       01 a-scr.
          03 a PIC X VALUE "a" OCCURS 10 COL  PLUS 10.
       01 b-scr.
          03 b PIC X VALUE "a" OCCURS 10 LINE MINUS 10.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:544: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:544"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: OCCURS screen items is not implemented
prog.cob:7: error: relative LINE/COLUMN clause required with OCCURS
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:544"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:549: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_screen.at:549"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:7: warning: OCCURS screen items is not implemented
prog2.cob:7: error: relative LINE/COLUMN clause required with OCCURS
prog2.cob:9: warning: OCCURS screen items is not implemented
prog2.cob:9: error: relative LINE/COLUMN clause required with OCCURS
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:549"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:556: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_screen.at:556"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:7: warning: OCCURS screen items is not implemented
prog3.cob:9: warning: OCCURS screen items is not implemented
prog3.cob:11: warning: OCCURS screen items is not implemented
prog3.cob:13: warning: OCCURS screen items is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:556"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_434
#AT_START_435
at_fn_group_banner 435 'syn_screen.at:566' \
  "VALUE clause missing" "                           " 2
at_xfail=no
(
  $as_echo "435. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       SCREEN  SECTION.
       01 SG.
          05 LINE 21 COL 1 VALUE "TESTING".
          05 " IMPLICIT VALUE " HIGHLIGHT.
       PROCEDURE        DIVISION.
           DISPLAY SG END-DISPLAY.
           STOP RUN.
_ATEOF


# Note: currently depends on -std, may also depend on -frelax-syntax-checks
{ set +x
$as_echo "$at_srcdir/syn_screen.at:584: \$COMPILE_ONLY -std=cobol2002 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2002 prog.cob" "syn_screen.at:584"
( $at_check_trace; $COMPILE_ONLY -std=cobol2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: missing VALUE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:584"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_screen.at:587: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:587"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:587"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_435
#AT_START_436
at_fn_group_banner 436 'syn_screen.at:592' \
  "FULL on numeric item" "                           " 2
at_xfail=no
(
  $as_echo "436. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 999.

       SCREEN SECTION.
       01  scr.
           03  full-pointless PIC 999 TO num FULL.
           03  full-useful PIC ZZZ TO num FULL.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:609: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:609"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: FULL has no effect on numeric items; you may want REQUIRED or PIC Z
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:609"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_436
#AT_START_437
at_fn_group_banner 437 'syn_screen.at:616' \
  "Compiler-specific SCREEN SECTION clause rules" "  " 2
at_xfail=no
(
  $as_echo "437. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC X.
       01  num PIC 9.

       SCREEN SECTION.
       01  scr.
           03  no-clauses.
           03  no-required-clauses BACKGROUND-COLOR 1.
           03  only-line LINE 1.
           03  numeric-pic-and-value PIC 999 VALUE 100.
           03  only-pic PIC 9.
           03  from-to-using-without-pic FROM x.
           03  auto-without-from-to-using PIC 9 AUTO.
           03  full-without-to-using PIC X FROM x FULL.
           03  full-and-justified PIC X USING x, FULL, JUST.
           03  secure-with-from PIC X FROM x SECURE.
           03  secure-justified-no-clauses VALUE "Hello" SECURE, JUST.
           03  blank-when-zero-without-pic FROM num, BLANK ZERO.
           03  justified-without-pic FROM x, JUST.
           03  sign-no-clauses PIC S9, SIGN LEADING SEPARATE.
           03  figurative-constant-value VALUE SPACES.
           03  only-erase ERASE EOL.
           03  only-blank BLANK SCREEN.
           03  only-bell BELL.
           03  numeric-value-no-pic VALUE 1.

       01 always-ok-scr.
           03  my-group LINE 1, COL 1, FULL.
               05  PIC X FROM "x" TO x.
               05  PIC Z USING num.
               05  VALUE "Hello, world!".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:657: \$COMPILE_ONLY -fscreen-section-rules=std prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fscreen-section-rules=std prog.cob" "syn_screen.at:657"
( $at_check_trace; $COMPILE_ONLY -fscreen-section-rules=std prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: 'no-clauses' needs a PIC, FROM, TO, USING, VALUE, BELL, BLANK or ERASE clause
prog.cob:13: error: 'no-required-clauses' needs a PIC, FROM, TO, USING, VALUE, BELL, BLANK or ERASE clause
prog.cob:14: error: 'only-line' needs a PIC, FROM, TO, USING, VALUE, BELL, BLANK or ERASE clause
prog.cob:16: error: 'only-pic' cannot have PIC without FROM, TO, USING or numeric VALUE
prog.cob:17: error: cannot have FROM, TO or USING without PIC
prog.cob:18: error: 'auto-without-from-to-using' cannot have PIC without FROM, TO, USING or numeric VALUE
prog.cob:20: error: cannot specify both FULL and JUSTIFIED
prog.cob:23: error: cannot have FROM, TO or USING without PIC
prog.cob:24: error: cannot have FROM, TO or USING without PIC
prog.cob:25: error: 'sign-no-clauses' cannot have PIC without FROM, TO, USING or numeric VALUE
prog.cob:26: error: VALUE may not contain a figurative constant
prog.cob:30: error: cannot have numeric VALUE without PIC
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:657"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:672: \$COMPILE_ONLY -fscreen-section-rules=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fscreen-section-rules=acu prog.cob" "syn_screen.at:672"
( $at_check_trace; $COMPILE_ONLY -fscreen-section-rules=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: cannot specify both PIC and VALUE
prog.cob:15: error: cannot have PIC without FROM, TO or USING
prog.cob:15: error: VALUE item may not be numeric
prog.cob:16: error: cannot have PIC without FROM, TO or USING
prog.cob:17: warning: 'from-to-using-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:18: error: cannot have PIC without FROM, TO or USING
prog.cob:22: error: cannot have JUSTIFIED without PIC
prog.cob:23: warning: 'blank-when-zero-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:23: error: cannot have BLANK WHEN ZERO without PIC
prog.cob:24: warning: 'justified-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:24: error: cannot have JUSTIFIED without PIC
prog.cob:25: error: cannot have PIC without FROM, TO or USING
prog.cob:30: error: VALUE item may not be numeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:672"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:688: \$COMPILE_ONLY -fscreen-section-rules=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fscreen-section-rules=mf prog.cob" "syn_screen.at:688"
( $at_check_trace; $COMPILE_ONLY -fscreen-section-rules=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: 'no-clauses' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:13: error: 'no-required-clauses' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:15: error: cannot specify both PIC and VALUE
prog.cob:15: error: cannot have PIC without FROM, TO or USING
prog.cob:15: error: VALUE item may not be numeric
prog.cob:16: error: cannot have PIC without FROM, TO or USING
prog.cob:17: error: 'from-to-using-without-pic' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:17: warning: 'from-to-using-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:18: error: cannot have PIC without FROM, TO or USING
prog.cob:18: error: cannot use AUTO, FULL, PROMPT, REQUIRED or SECURE on elementary item without TO or USING
prog.cob:19: error: cannot use AUTO, FULL, PROMPT, REQUIRED or SECURE on elementary item without TO or USING
prog.cob:21: error: cannot use AUTO, FULL, PROMPT, REQUIRED or SECURE on elementary item without TO or USING
prog.cob:22: error: cannot use AUTO, FULL, PROMPT, REQUIRED or SECURE on elementary item without TO or USING
prog.cob:22: error: cannot use BLANK WHEN ZERO, JUSTIFIED, OCCURS or SIGN on item without FROM, TO or USING
prog.cob:23: error: 'blank-when-zero-without-pic' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:23: warning: 'blank-when-zero-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:24: error: 'justified-without-pic' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:24: warning: 'justified-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:25: error: cannot have PIC without FROM, TO or USING
prog.cob:25: error: cannot use BLANK WHEN ZERO, JUSTIFIED, OCCURS or SIGN on item without FROM, TO or USING
prog.cob:26: error: VALUE may not contain a figurative constant
prog.cob:27: error: 'only-erase' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:30: error: VALUE item may not be numeric
prog.cob:36: error: cannot use AUTO, FULL, PROMPT, REQUIRED or SECURE on elementary item without TO or USING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:688"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:715: \$COMPILE_ONLY -fscreen-section-rules=rm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fscreen-section-rules=rm prog.cob" "syn_screen.at:715"
( $at_check_trace; $COMPILE_ONLY -fscreen-section-rules=rm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:15: error: cannot specify both PIC and VALUE
prog.cob:15: error: cannot have PIC without FROM, TO or USING
prog.cob:15: error: VALUE item may not be numeric
prog.cob:16: error: cannot have PIC without FROM, TO or USING
prog.cob:17: error: cannot have FROM, TO or USING without PIC
prog.cob:18: error: cannot have PIC without FROM, TO or USING
prog.cob:22: error: cannot use AUTO, FULL, REQUIRED or SECURE on elementary item without FROM, TO or USING
prog.cob:22: error: cannot use BLANK WHEN ZERO, JUSTIFIED or SIGN without FROM, TO or USING
prog.cob:23: error: cannot have FROM, TO or USING without PIC
prog.cob:23: error: cannot use BLANK WHEN ZERO, JUSTIFIED or SIGN without FROM, TO or USING
prog.cob:24: error: cannot have FROM, TO or USING without PIC
prog.cob:24: error: cannot use BLANK WHEN ZERO, JUSTIFIED or SIGN without FROM, TO or USING
prog.cob:25: error: cannot have PIC without FROM, TO or USING
prog.cob:30: error: VALUE item may not be numeric
prog.cob:36: error: cannot use AUTO, FULL, REQUIRED or SECURE on elementary item without FROM, TO or USING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:715"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:733: \$COMPILE_ONLY -fscreen-section-rules=xopen prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fscreen-section-rules=xopen prog.cob" "syn_screen.at:733"
( $at_check_trace; $COMPILE_ONLY -fscreen-section-rules=xopen prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: 'no-clauses' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:13: error: 'no-required-clauses' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:15: error: cannot specify both PIC and VALUE
prog.cob:15: error: cannot have PIC without FROM, TO or USING
prog.cob:15: error: VALUE item may not be numeric
prog.cob:16: error: cannot have PIC without FROM, TO or USING
prog.cob:17: error: 'from-to-using-without-pic' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:17: error: cannot have FROM, TO or USING without PIC
prog.cob:18: error: cannot have PIC without FROM, TO or USING
prog.cob:18: error: cannot have AUTO without FROM, TO or USING
prog.cob:19: error: cannot use FULL or REQUIRED on item without TO or USING
prog.cob:20: error: cannot specify both FULL and JUSTIFIED
prog.cob:21: error: SECURE can be used with TO only
prog.cob:22: error: SECURE must be used with TO
prog.cob:23: error: 'blank-when-zero-without-pic' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:23: error: cannot have FROM, TO or USING without PIC
prog.cob:24: error: 'justified-without-pic' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:24: error: cannot have FROM, TO or USING without PIC
prog.cob:25: error: cannot have PIC without FROM, TO or USING
prog.cob:27: error: 'only-erase' needs a PIC, COL, LINE, VALUE, BELL or BLANK clause
prog.cob:30: error: VALUE item may not be numeric
prog.cob:36: error: cannot use FULL or REQUIRED on item without TO or USING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:733"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_screen.at:758: \$COMPILE_ONLY -fscreen-section-rules=gc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fscreen-section-rules=gc prog.cob" "syn_screen.at:758"
( $at_check_trace; $COMPILE_ONLY -fscreen-section-rules=gc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: warning: 'no-clauses' does nothing
prog.cob:13: warning: 'no-required-clauses' does nothing
prog.cob:15: warning: 'numeric-pic-and-value' has numeric VALUE without PIC; PIC will be implied
prog.cob:16: warning: 'only-pic' does nothing
prog.cob:17: warning: 'from-to-using-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:18: warning: 'auto-without-from-to-using' does nothing
prog.cob:23: warning: 'blank-when-zero-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:24: warning: 'justified-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:25: warning: 'sign-no-clauses' does nothing
prog.cob:30: warning: 'numeric-value-no-pic' has numeric VALUE without PIC; PIC will be implied
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:758"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_437
#AT_START_438
at_fn_group_banner 438 'syn_screen.at:774' \
  "MS-COBOL position-spec" "                         " 2
at_xfail=no
(
  $as_echo "438. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: WITH clause including a WITH COLUMN (both separate (working)
#        and combined - error - must be added

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 FIELD-A  PIC X(06) VALUE "ms-cob".
       01 A        PIC X.
       PROCEDURE        DIVISION.
           DISPLAY ERASE
           MOVE 10 TO LIN. MOVE 15 TO COL.
           DISPLAY (LIN , COL - 3) FIELD-A.
           DISPLAY (LIN + 1 , COL) FIELD-A.
           ACCEPT  (   , 10) A.
           DISPLAY (08 , 12) FIELD-A.
           ACCEPT  (   , 08) A WITH NO-ECHO.
           DISPLAY FIELD-A AT LINE 06  COLUMN 12.
           ACCEPT  A       AT COLUMN 8.
           SUBTRACT 2 FROM LIN.
           SUBTRACT 3 FROM COL.
           DISPLAY FIELD-A AT LINE LIN COLUMN COL.
           ACCEPT  (   , 10) A.
           DISPLAY ( 1 , 1 ) ERASE.
           DISPLAY ( 2 , 1 ) "Field value : ", FIELD-A.
           DISPLAY ( 3 , 1 ) A " --> A value"
           DISPLAY ( 5 , 1 ) "Press ENTER to exit".
           ACCEPT (11 , 1 ) A.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:809: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:809"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: 'LIN' is not defined
prog.cob:10: error: syntax error, unexpected COL
prog.cob:11: error: syntax error, unexpected COL, expecting Literal or ) or Identifier
prog.cob:12: error: syntax error, unexpected COL, expecting Literal or ) or Identifier
prog.cob:19: error: syntax error, unexpected COL
prog.cob:20: error: syntax error, unexpected COL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:809"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_screen.at:817: \$COMPILE_ONLY -fregister=LIN,COL prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fregister=LIN,COL prog.cob" "syn_screen.at:817"
( $at_check_trace; $COMPILE_ONLY -fregister=LIN,COL prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:817"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_438
#AT_START_439
at_fn_group_banner 439 'syn_screen.at:822' \
  "Screen with invalid FROM clause" "                " 2
at_xfail=no
(
  $as_echo "439. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: some warnings are useless / confusing with follow-up errors
#        this has to be adjusted in cobc/field.c

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  some-const CONSTANT AS '123'.
       77  x          PIC XX.
       SCREEN SECTION.
       01  bild.
           05 from-constant-with-size   FROM some-const.
           05 from-constant-without-pic FROM ZERO.
           05 LINE 24 COL 1 FROM message.
           05 from-func-without-pic     FROM FUNCTION TRIM(x).
           05 from-func-with-pic        FROM FUNCTION TRIM(x) PIC XX.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:845: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:845"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: syntax error, unexpected MESSAGE
prog.cob:11: warning: 'from-constant-with-size' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:12: warning: 'from-constant-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:12: error: PICTURE clause required for 'from-constant-without-pic'
prog.cob:14: warning: 'from-func-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:14: error: PICTURE clause required for 'from-func-without-pic'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_screen.at:853: \$COMPILE_ONLY -fnot-reserved=MESSAGE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fnot-reserved=MESSAGE prog.cob" "syn_screen.at:853"
( $at_check_trace; $COMPILE_ONLY -fnot-reserved=MESSAGE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: 'message' is not defined, but is a reserved word in another dialect
prog.cob:11: warning: 'from-constant-with-size' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:12: warning: 'from-constant-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:12: error: PICTURE clause required for 'from-constant-without-pic'
prog.cob:13: warning: 'FILLER' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:13: error: PICTURE clause required for 'FILLER'
prog.cob:14: warning: 'from-func-without-pic' has FROM, TO or USING without PIC; PIC will be implied
prog.cob:14: error: PICTURE clause required for 'from-func-without-pic'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_screen.at:853"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_439
#AT_START_440
at_fn_group_banner 440 'syn_screen.at:867' \
  "DISPLAY WITH CONVERSION" "                        " 2
at_xfail=no
(
  $as_echo "440. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY WITH CONVERSION "Whatever".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_screen.at:880: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_screen.at:880"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: DISPLAY WITH CONVERSION is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_screen.at:880"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_440
#AT_START_441
at_fn_group_banner 441 'syn_set.at:24' \
  "SET ADDRESS OF item" "                            " 2
at_xfail=no
(
  $as_echo "441. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.

       LINKAGE          SECTION.
       01 Y             BASED.
          03  Z         PIC X.

       PROCEDURE        DIVISION.
           SET ADDRESS OF X TO NULL.
           SET ADDRESS OF Z TO NULL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_set.at:45: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_set.at:45"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: error: cannot change address of 'X', which is not BASED or a LINKAGE item
prog.cob:15: error: cannot change address of 'Z', which is not level 1 or 77
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_set.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_441
#AT_START_442
at_fn_group_banner 442 'syn_set.at:53' \
  "SET item TO 88-level" "                           " 2
at_xfail=no
(
  $as_echo "442. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9.
          88 x-wrong-init   value space.
       01 Y             PIC X.
          88 y-wrong-init   value low-value.

       PROCEDURE        DIVISION.
           SET x-wrong-init  TO TRUE.
           SET y-wrong-init  TO TRUE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_set.at:73: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_set.at:73"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: literal type does not match numeric data type
prog.cob:13: error: invalid SET statement
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_set.at:73"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_442
#AT_START_443
at_fn_group_banner 443 'syn_functions.at:22' \
  "ANY LENGTH / NUMERIC as function RETURNING item" "" 2
at_xfail=no
(
  $as_echo "443. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID.   func.

       DATA           DIVISION.
       LINKAGE        SECTION.
       01  any-len    PIC X ANY LENGTH.

       PROCEDURE      DIVISION RETURNING any-len.
           CONTINUE
           .
       END FUNCTION   func.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:39: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:39"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: function RETURNING item may not be ANY LENGTH
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID.   func.

       DATA           DIVISION.
       LINKAGE        SECTION.
       01  any-len    PIC 9 ANY NUMERIC.

       PROCEDURE      DIVISION RETURNING any-len.
           CONTINUE
           .
       END FUNCTION   func.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:57: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_functions.at:57"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:9: error: function RETURNING item may not be ANY LENGTH
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:57"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_443
#AT_START_444
at_fn_group_banner 444 'syn_functions.at:64' \
  "REPOSITORY INTRINSIC phrase" "                    " 2
at_xfail=no
(
  $as_echo "444. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION pi e intrinsic
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY PI.
           DISPLAY E.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:83: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:83"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_functions.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_444
#AT_START_445
at_fn_group_banner 445 'syn_functions.at:87' \
  "REPOSITORY FUNCTION phrase" "                     " 2
at_xfail=no
(
  $as_echo "445. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. x AS "y".

       DATA DIVISION.
       LINKAGE SECTION.
       01  ret PIC 9(4).

       PROCEDURE DIVISION RETURNING ret.
           MOVE 100 TO ret
           .
       END FUNCTION x.

       IDENTIFICATION DIVISION.
       FUNCTION-ID. z.

       DATA DIVISION.
       LINKAGE SECTION.
       01  ret PIC 9(5).

       PROCEDURE DIVISION RETURNING ret.
           MOVE 1 TO ret
           .
       END FUNCTION z.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION y AS "y"
           FUNCTION z
           .
       PROCEDURE DIVISION.
           DISPLAY FUNCTION y
           DISPLAY FUNCTION z
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:131: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:131"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_functions.at:131"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_445
#AT_START_446
at_fn_group_banner 446 'syn_functions.at:135' \
  "Redundant REPOSITORY entries" "                   " 2
at_xfail=no
(
  $as_echo "446. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       PROGRAM-ID. prog.
       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       FUNCTION-ID. alpha.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET gamma IS ASCII
           .
       REPOSITORY.
           FUNCTION alpha
           PROGRAM prog
           PROGRAM prog
           PROGRAM prog AS "alpha"
           FUNCTION prog
           FUNCTION gamma
           .
       END FUNCTION alpha.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:161: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:161"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: warning: prototype has same name as current function and will be ignored
prog.cob:16: warning: duplicate REPOSITORY entry for 'prog'
prog.cob:17: error: duplicate REPOSITORY entries for 'prog' do not match
prog.cob:18: error: duplicate REPOSITORY entries for 'prog' do not match
prog.cob:19: warning: no definition/prototype seen for FUNCTION 'gamma'
prog.cob:19: error: redefinition of 'gamma'
prog.cob:11: note: 'gamma' previously defined here
prog.cob:21: error: FUNCTION 'alpha' has no PROCEDURE DIVISION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:161"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_446
#AT_START_447
at_fn_group_banner 447 'syn_functions.at:174' \
  "Missing prototype/definition" "                   " 2
at_xfail=no
(
  $as_echo "447. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. blah.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION x
           PROGRAM y
           .
       DATA DIVISION.
       LINKAGE SECTION.
       01  ret PIC X.

       PROCEDURE DIVISION RETURNING ret.
           MOVE FUNCTION x TO ret
           MOVE FUNCTION x TO ret
           .
       END FUNCTION blah.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:198: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:198"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: no definition/prototype seen for FUNCTION 'x'
prog.cob:9: warning: no definition/prototype seen for PROGRAM 'y'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_functions.at:198"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_447
#AT_START_448
at_fn_group_banner 448 'syn_functions.at:205' \
  "Empty function" "                                 " 2
at_xfail=no
(
  $as_echo "448. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: Test case for "Function without END FUNCTION" in syn_definition

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. func.

       END FUNCTION func.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 999 VALUE 124.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:225: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:225"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: FUNCTION 'func' has no PROCEDURE DIVISION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:225"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_448
#AT_START_449
at_fn_group_banner 449 'syn_functions.at:232' \
  "Function definition inside program" "             " 2
at_xfail=no
(
  $as_echo "449. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       PROCEDURE DIVISION.
           CONTINUE
           .

       IDENTIFICATION DIVISION.
       FUNCTION-ID. f.
       END FUNCTION f.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:248: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:248"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: functions may not be defined within a program/function
prog.cob:11: error: FUNCTION 'f' has no PROCEDURE DIVISION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:248"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_449
#AT_START_450
at_fn_group_banner 450 'syn_functions.at:255' \
  "Intrinsic functions: dialect" "                   " 2
at_xfail=no
(
  $as_echo "450. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION ABS (1).
           DISPLAY FUNCTION STORED-CHAR-LENGTH (" some text here").
           DISPLAY FUNCTION SUBSTITUTE ('some text' 'some' 'nice').
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:271: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:271"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_functions.at:271"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_functions.at:272: \$COMPILE_ONLY -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu-strict prog.cob" "syn_functions.at:272"
( $at_check_trace; $COMPILE_ONLY -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: FUNCTION 'STORED-CHAR-LENGTH' unknown
prog.cob:10: error: FUNCTION 'SUBSTITUTE' unknown
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:272"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_450
#AT_START_451
at_fn_group_banner 451 'syn_functions.at:280' \
  "Intrinsic functions: replaced" "                  " 2
at_xfail=no
(
  $as_echo "451. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. SUBSTITUTE.

       DATA DIVISION.
       LINKAGE SECTION.
       01  func-in  PIC X(15).
       01  func-sub PIC X.
       01  func-out PIC X(15).

       PROCEDURE DIVISION USING func-in, func-sub RETURNING func-out.
           MOVE func-in TO func-out
           INSPECT func-out REPLACING ALL '%' BY func-sub
           .
       END FUNCTION SUBSTITUTE.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION SUBSTITUTE
           .
       PROCEDURE DIVISION.
           DISPLAY FUNCTION SUBSTITUTE(" % C%O%B%O%L % ", "_")
           DISPLAY FUNCTION SUBSTITUTE(" % C%O%B%O%L % ", "-")
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:314: \$COMPILE_ONLY -fnot-intrinsic=substitute prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fnot-intrinsic=substitute prog.cob" "syn_functions.at:314"
( $at_check_trace; $COMPILE_ONLY -fnot-intrinsic=substitute prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_functions.at:314"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_functions.at:315: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:315"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:24: error: syntax error, unexpected ., expecting intrinsic function name or INTRINSIC
prog.cob:26: error: FUNCTION 'SUBSTITUTE' has wrong number of arguments
prog.cob:27: error: FUNCTION 'SUBSTITUTE' has wrong number of arguments
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:315"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_451
#AT_START_452
at_fn_group_banner 452 'syn_functions.at:324' \
  "Intrinsic functions: number of arguments" "       " 2
at_xfail=no
(
  $as_echo "452. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION PI.
           DISPLAY FUNCTION PI ( ).
           DISPLAY FUNCTION PI (1).
           DISPLAY FUNCTION ABS.
           DISPLAY FUNCTION ABS (1).
           DISPLAY FUNCTION ABS (1, 2).
           DISPLAY FUNCTION DAY-TO-YYYYDDD.
           DISPLAY FUNCTION DAY-TO-YYYYDDD (6000).
           DISPLAY FUNCTION DAY-TO-YYYYDDD (6000,50).
           DISPLAY FUNCTION DAY-TO-YYYYDDD (6000,50,1600).
           DISPLAY FUNCTION DAY-TO-YYYYDDD (6000,50,1600,500).
           DISPLAY FUNCTION MAX ().
           DISPLAY FUNCTION MAX (6000).
           DISPLAY FUNCTION SUBSTITUTE ('A' 'B' 'C' 'D').
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:351: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:351"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: FUNCTION 'PI' has wrong number of arguments
prog.cob:11: error: FUNCTION 'ABS' has wrong number of arguments
prog.cob:13: error: FUNCTION 'ABS' has wrong number of arguments
prog.cob:14: error: FUNCTION 'DAY-TO-YYYYDDD' has wrong number of arguments
prog.cob:18: error: FUNCTION 'DAY-TO-YYYYDDD' has wrong number of arguments
prog.cob:19: error: FUNCTION 'MAX' has wrong number of arguments
prog.cob:21: error: FUNCTION 'SUBSTITUTE' has wrong number of arguments
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:351"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_452
#AT_START_453
at_fn_group_banner 453 'syn_functions.at:364' \
  "Intrinsic functions: reference modification" "    " 2
at_xfail=no
(
  $as_echo "453. $at_setup_line: testing $at_desc ..."
  $at_traceon



# the following should be checked, currently doesn't work
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION CHAR (66)(1:2).
           DISPLAY FUNCTION NUMVAL-C (123)(1:2).
           DISPLAY FUNCTION REVERSE ("TESTME")(-1:1).
           DISPLAY FUNCTION REVERSE ("TESTME")(1:0).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:382: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:382"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: FUNCTION 'CHAR' cannot have reference modification
prog.cob:9: error: FUNCTION 'NUMVAL-C' cannot have reference modification
prog.cob:10: error: FUNCTION 'REVERSE' has invalid reference modification
prog.cob:11: error: FUNCTION 'REVERSE' has invalid reference modification
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:382"
$at_failed && at_fn_log_failure
$at_traceon; }


# missing: resolving constant values at compile-time, allowing us to
# catch bad ref-mods
#AT_DATA([prog2.cob], [
#       IDENTIFICATION   DIVISION.
#       PROGRAM-ID.      prog2.
#       ENVIRONMENT DIVISION.
#       DATA             DIVISION.
#       WORKING-STORAGE  SECTION.
#       PROCEDURE        DIVISION.
#           DISPLAY FUNCTION REVERSE ("TESTME")(20:1).
#           STOP RUN.
#])
#
#AT_CHECK([$COMPILE_ONLY prog3.cob], [1], [],
#[prog.cob:8: error: FUNCTION 'REVERSE' has invalid reference modification
#prog.cob:8: error: reference modification out of bounds
#])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_453
#AT_START_454
at_fn_group_banner 454 'syn_functions.at:410' \
  "Intrinsic functions: argument type" "             " 2
at_xfail=no
(
  $as_echo "454. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: Add more tests

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION ABS ('1').
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:426: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:426"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: FUNCTION 'ABS' has invalid argument
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:426"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_454
#AT_START_455
at_fn_group_banner 455 'syn_functions.at:433' \
  "invalid formatted date/time args" "               " 2
at_xfail=no
(
  $as_echo "455. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  format-str         PIC X(8) VALUE "YYYYMMDD".
       01  Date-Format        CONSTANT "YYYYMMDD".
       01  Time-Format        CONSTANT "hhmmss".
       01  Datetime-Format    CONSTANT "YYYYMMDDThhmmss".
       PROCEDURE        DIVISION.
      *>   Test wrong formats
           DISPLAY FUNCTION FORMATTED-DATE ( "YYYYWWWD", 1 )
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-TIME ( "HHMMSS", 1)
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-DATETIME
                ( "YYYYWWWDTHHMMSS", 1, 1)
           END-DISPLAY

      *>   Test format in variable
           DISPLAY FUNCTION FORMATTED-DATE ( format-str, 1)
           END-DISPLAY

      *>   Test incompatible formats
           DISPLAY FUNCTION FORMATTED-CURRENT-DATE (Date-Format)
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-CURRENT-DATE (Time-Format)
           END-DISPLAY

           DISPLAY FUNCTION FORMATTED-DATE ( Time-Format, 1)
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-DATE ( Datetime-Format, 1)
           END-DISPLAY

           DISPLAY FUNCTION FORMATTED-TIME ( Date-Format, 1)
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-TIME ( Datetime-Format, 1)
           END-DISPLAY

           DISPLAY FUNCTION FORMATTED-DATETIME ( Date-Format, 1, 1)
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-DATETIME ( Time-Format, 1, 1)
           END-DISPLAY

           DISPLAY FUNCTION INTEGER-OF-FORMATTED-DATE ( Time-Format, 1)
           END-DISPLAY

           DISPLAY FUNCTION SECONDS-FROM-FORMATTED-TIME
               ( Date-Format, 1)
           END-DISPLAY

      *>   Time format with more than 9 decimal places.
           DISPLAY FUNCTION FORMATTED-TIME ( "hhmmss.ssssssssss", 1)
           END-DISPLAY

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:494: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:494"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: FUNCTION 'FORMATTED-DATE' has invalid date/time format
prog.cob:14: error: FUNCTION 'FORMATTED-TIME' has invalid date/time format
prog.cob:16: error: FUNCTION 'FORMATTED-DATETIME' has invalid date/time format
prog.cob:21: warning: FUNCTION 'FORMATTED-DATE' has format in variable
prog.cob:25: error: FUNCTION 'FORMATTED-CURRENT-DATE' has invalid date/time format
prog.cob:27: error: FUNCTION 'FORMATTED-CURRENT-DATE' has invalid date/time format
prog.cob:30: error: FUNCTION 'FORMATTED-DATE' has invalid date/time format
prog.cob:32: error: FUNCTION 'FORMATTED-DATE' has invalid date/time format
prog.cob:35: error: FUNCTION 'FORMATTED-TIME' has invalid date/time format
prog.cob:37: error: FUNCTION 'FORMATTED-TIME' has invalid date/time format
prog.cob:40: error: FUNCTION 'FORMATTED-DATETIME' has invalid date/time format
prog.cob:42: error: FUNCTION 'FORMATTED-DATETIME' has invalid date/time format
prog.cob:45: error: FUNCTION 'INTEGER-OF-FORMATTED-DATE' has invalid date/time format
prog.cob:48: error: FUNCTION 'SECONDS-FROM-FORMATTED-TIME' has invalid date/time format
prog.cob:53: error: FUNCTION 'FORMATTED-TIME' has invalid date/time format
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:494"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_455
#AT_START_456
at_fn_group_banner 456 'syn_functions.at:514' \
  "invalid formats w/ DECIMAL-POINT IS COMMA" "      " 2
at_xfail=no
(
  $as_echo "456. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION FORMATTED-TIME ("hhmmss,ss", 1).
           DISPLAY FUNCTION FORMATTED-DATETIME
                       ("YYYYMMDDThhmmss,ss", 1, 1).

           DISPLAY FUNCTION FORMATTED-TIME ("hhmmss.ss", 1).
           DISPLAY FUNCTION FORMATTED-DATETIME
                       ("YYYYMMDDThhmmss.ss", 1, 1).

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:536: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_functions.at:536"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:13: error: FUNCTION 'FORMATTED-TIME' has invalid date/time format
prog.cob:14: error: FUNCTION 'FORMATTED-DATETIME' has invalid date/time format
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:536"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_456
#AT_START_457
at_fn_group_banner 457 'syn_functions.at:544' \
  "Specified offset and SYSTEM-OFFSET" "             " 2
at_xfail=no
(
  $as_echo "457. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION FORMATTED-DATETIME
                       ("YYYYDDDThhmmssZ", 1, 1, 1, SYSTEM-OFFSET)
           END-DISPLAY
           DISPLAY FUNCTION FORMATTED-TIME
                       ("hhmmssZ", 1, 1, SYSTEM-OFFSET)
           END-DISPLAY
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:560: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "syn_functions.at:560"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: cannot specify offset and SYSTEM-OFFSET at the same time
prog.cob:9: error: cannot specify offset and SYSTEM-OFFSET at the same time
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:560"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_457
#AT_START_458
at_fn_group_banner 458 'syn_functions.at:568' \
  "FUNCTION LENGTH / BYTE-LENGTH" "                  " 2
at_xfail=no
(
  $as_echo "458. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION LENGTH      ("abcd" & "xyz")
           DISPLAY FUNCTION BYTE-LENGTH ("abcd" & "xyz")
           DISPLAY FUNCTION LENGTH      ("abcd" "xyz")
           DISPLAY FUNCTION BYTE-LENGTH (01234)
           DISPLAY FUNCTION LENGTH      (567)
           DISPLAY FUNCTION LENGTH      ("abcd" & "xyz" PHYSICAL)
           DISPLAY FUNCTION BYTE-LENGTH ("abcd" & "xyz" PHYSICAL)
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_functions.at:585: \$COMPILE -Wno-pending prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-pending prog.cob" "syn_functions.at:585"
( $at_check_trace; $COMPILE -Wno-pending prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: syntax error, unexpected Literal, expecting PHYSICAL or )
prog.cob:8: error: a non-numeric literal is expected here
prog.cob:9: error: a non-numeric literal is expected here
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_functions.at:585"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_458
#AT_START_459
at_fn_group_banner 459 'syn_literals.at:25' \
  "continuation Indicator - too many lines" "        " 2
at_xfail=no
(
  $as_echo "459. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    ' ' END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:569: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:569"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:538: error: buffer overrun - too many continuation lines
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:569"
$at_failed && at_fn_log_failure
$at_traceon; }


# extra test with listing as this is an edge case there

{ set +x
$as_echo "$at_srcdir/syn_literals.at:575: \$COMPILE_ONLY -t prog.lst prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -t prog.lst prog.cob" "syn_literals.at:575"
( $at_check_trace; $COMPILE_ONLY -t prog.lst prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:538: error: buffer overrun - too many continuation lines
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:575"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_459
#AT_START_460
at_fn_group_banner 460 'syn_literals.at:583' \
  "literal too long" "                               " 2
at_xfail=no
(
  $as_echo "460. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    ' '.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY '    '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           '                                                                                                                                                                                                                                             '-
           ' ' END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:787: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:787"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid literal: '                                   ...'
prog.cob:9: note: literal length exceeds 8191 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:787"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:792: \$COMPILE_ONLY -fliteral-length=160 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fliteral-length=160 prog.cob" "syn_literals.at:792"
( $at_check_trace; $COMPILE_ONLY -fliteral-length=160 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid literal: '                                   ...'
prog.cob:9: note: literal length exceeds 160 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:792"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:797: \$COMPILE_ONLY -free prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free prog2.cob" "syn_literals.at:797"
( $at_check_trace; $COMPILE_ONLY -free prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:9: error: invalid literal: '                                   ...'
prog2.cob:9: note: literal length 8299 exceeds 8191 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:797"
$at_failed && at_fn_log_failure
$at_traceon; }


# extra test with listing as this is an edge case there

{ set +x
$as_echo "$at_srcdir/syn_literals.at:804: \$COMPILE_ONLY -t prog.lst prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -t prog.lst prog.cob" "syn_literals.at:804"
( $at_check_trace; $COMPILE_ONLY -t prog.lst prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid literal: '                                   ...'
prog.cob:9: note: literal length exceeds 8191 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:804"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }



{ set +x
$as_echo "$at_srcdir/syn_literals.at:810: \$COMPILE_ONLY -free -t prog2.lst prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -free -t prog2.lst prog2.cob" "syn_literals.at:810"
( $at_check_trace; $COMPILE_ONLY -free -t prog2.lst prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:9: error: invalid literal: '                                   ...'
prog2.cob:9: note: literal length 8299 exceeds 8191 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:810"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_460
#AT_START_461
at_fn_group_banner 461 'syn_literals.at:819' \
  "numeric literals" "                               " 2
at_xfail=no
(
  $as_echo "461. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 COUNTER       PIC 9 VALUE 0.
       PROCEDURE        DIVISION.

      *> No literals at all
       00000000000000000000000000000000000000000000000000000000000
       SECTION.
       000000000000000000000000000000000000000000000000000000000000.
           ADD 1 TO COUNTER END-ADD
           EVALUATE COUNTER
           WHEN 1
           PERFORM
           00000000000000000000000000000000000000000000000000000000000
           WHEN 2
           PERFORM
           000000000000000000000000000000000000000000000000000000000000
           WHEN 3
           MOVE 0 TO COUNTER
           END-EVALUATE.

       100000000000000000000000000000000000000000000000000000000001
       SECTION.
       20000000000000000000000000000000000000000000000000000000002.
           ADD 1 TO COUNTER END-ADD
           EVALUATE COUNTER
           WHEN 1
           PERFORM
           100000000000000000000000000000000000000000000000000000000001
           WHEN 2
           PERFORM
           20000000000000000000000000000000000000000000000000000000002
           WHEN 3
           MOVE 0 TO COUNTER
           END-EVALUATE.

           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
       PROCEDURE        DIVISION.

           *> Valid literals, depending on numeric literal size
           DISPLAY 1.0076, +100000.03, +1.0, -0078,
               +.1234567890123456789012345678901234
               .123456789012345678901234567890123450
           END-DISPLAY

           *> Invalid literals
           DISPLAY 1.03.0     END-DISPLAY
           DISPLAY --123      END-DISPLAY
           DISPLAY -123-      END-DISPLAY
           DISPLAY -123-456   END-DISPLAY
           DISPLAY -123-4.56  END-DISPLAY
           DISPLAY -12.3-456  END-DISPLAY
           DISPLAY -12.3-4.56 END-DISPLAY
           DISPLAY 1000003+   END-DISPLAY
           DISPLAY 1.000003+  END-DISPLAY
           DISPLAY .3+        END-DISPLAY
           DISPLAY 3.+        END-DISPLAY

           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES. DECIMAL-POINT IS COMMA.
       PROCEDURE        DIVISION.

           *> Valid literals, depending on numeric literal size
           DISPLAY 1,0076, +100000,03, +1,0, -0078,
               +,1234567890123456789012345678901234
               ,123456789012345678901234567890123450
           END-DISPLAY

           *> Invalid literals
           DISPLAY 1,03,0     END-DISPLAY
           DISPLAY --123      END-DISPLAY
           DISPLAY -123-      END-DISPLAY
           DISPLAY -123-456   END-DISPLAY
           DISPLAY -123-4,56  END-DISPLAY
           DISPLAY -12,3-456  END-DISPLAY
           DISPLAY -12,3-4,56 END-DISPLAY
           DISPLAY 1000003+   END-DISPLAY
           DISPLAY 1,000003+  END-DISPLAY
           DISPLAY ,3+        END-DISPLAY
           DISPLAY 3,+        END-DISPLAY

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:924: \$COMPILE_ONLY -fliteral-length=1 -fnumeric-literal-length=1 -fword-length=60 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fliteral-length=1 -fnumeric-literal-length=1 -fword-length=60 prog.cob" "syn_literals.at:924"
( $at_check_trace; $COMPILE_ONLY -fliteral-length=1 -fnumeric-literal-length=1 -fword-length=60 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_literals.at:924"
$at_failed && at_fn_log_failure
$at_traceon; }


# result with extended scanner for wrong numeric literals:
#AT_CHECK([$COMPILE_ONLY prog2.cob], [1], [],
#[prog2.cob:16: error: invalid numeric literal: '1.03.0'
#prog2.cob:16: error: literal with more than one decimal point
#prog2.cob:17: error: invalid numeric literal: '--123'
#prog2.cob:17: error: literal with more than one sign character
#prog2.cob:18: error: invalid numeric literal: '-123-'
#prog2.cob:18: error: literal with more than one sign character
#prog2.cob:19: error: invalid numeric literal: '-123-456'
#prog2.cob:19: error: literal with more than one sign character
#prog2.cob:20: error: invalid numeric literal: '-123-4.56'
#prog2.cob:20: error: literal with more than one sign character
#prog2.cob:21: error: invalid numeric literal: '-12.3-456'
#prog2.cob:21: error: literal with more than one sign character
#prog2.cob:22: error: invalid numeric literal: '-12.3-4.56'
#prog2.cob:22: error: literal with more than one sign character
#prog2.cob:22: error: literal with more than one decimal point
#prog2.cob:23: error: invalid numeric literal: '1000003+'
#prog2.cob:23: error: sign must appear as leftmost character
#prog2.cob:24: error: invalid numeric literal: '1.000003+'
#prog2.cob:24: error: sign must appear as leftmost character
#prog2.cob:25: error: invalid numeric literal: '.3+'
#prog2.cob:25: error: sign must appear as leftmost character
#prog2.cob:26: error: invalid numeric literal: '3.+'
#prog2.cob:26: error: sign must appear as leftmost character
#])
#AT_CHECK([$COMPILE_ONLY prog3.cob], [1], [],
#[prog3.cob:16: error: invalid numeric literal: '1,03,0'
#prog3.cob:16: error: literal with more than one decimal point
#prog3.cob:17: error: invalid numeric literal: '--123'
#prog3.cob:17: error: literal with more than one sign character
#prog3.cob:18: error: invalid numeric literal: '-123-'
#prog3.cob:18: error: literal with more than one sign character
#prog3.cob:19: error: invalid numeric literal: '-123-456'
#prog3.cob:19: error: literal with more than one sign character
#prog3.cob:20: error: invalid numeric literal: '-123-4,56'
#prog3.cob:20: error: literal with more than one sign character
#prog3.cob:21: error: invalid numeric literal: '-12,3-456'
#prog3.cob:21: error: literal with more than one sign character
#prog3.cob:22: error: invalid numeric literal: '-12,3-4,56'
#prog3.cob:22: error: literal with more than one sign character
#prog3.cob:22: error: literal with more than one decimal point
#prog3.cob:23: error: invalid numeric literal: '1000003+'
#prog3.cob:23: error: sign must appear as leftmost character
#prog3.cob:24: error: invalid numeric literal: '1,000003+'
#prog3.cob:24: error: sign must appear as leftmost character
#prog3.cob:25: error: invalid numeric literal: ',3+'
#prog3.cob:25: error: sign must appear as leftmost character
#prog3.cob:26: error: invalid numeric literal: '3,+'
#prog3.cob:26: error: sign must appear as leftmost character
#])

{ set +x
$as_echo "$at_srcdir/syn_literals.at:978: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_literals.at:978"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:17: error: syntax error, unexpected -, expecting (
prog2.cob:18: error: syntax error, unexpected -
prog2.cob:23: error: syntax error, unexpected +
prog2.cob:24: error: syntax error, unexpected +
prog2.cob:25: error: syntax error, unexpected +
prog2.cob:26: error: syntax error, unexpected +
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:978"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_literals.at:986: \$COMPILE_ONLY prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog3.cob" "syn_literals.at:986"
( $at_check_trace; $COMPILE_ONLY prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog3.cob:17: error: syntax error, unexpected -, expecting (
prog3.cob:18: error: syntax error, unexpected -
prog3.cob:23: error: syntax error, unexpected +
prog3.cob:24: error: syntax error, unexpected +
prog3.cob:25: error: syntax error, unexpected +
prog3.cob:26: error: syntax error, unexpected +
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:986"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_461
#AT_START_462
at_fn_group_banner 462 'syn_literals.at:998' \
  "floating-point literals" "                        " 2
at_xfail=no
(
  $as_echo "462. $at_setup_line: testing $at_desc ..."
  $at_traceon

# Refer to Section 8.3.1.2.2.2 of COBOL 2014.


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           *> Valid literals
           DISPLAY 1.0E6144, +1.0E+3, +1.0E-6143, 123.E1,
               +.123456789012345678901234567890123456E+0000
           END-DISPLAY

           *> invalid literals
           DISPLAY 1.0D3 END-DISPLAY
           DISPLAY 1E3 END-DISPLAY
           DISPLAY '1.0E3'BLAH END-DISPLAY
           DISPLAY 1.0E3.0 END-DISPLAY
           DISPLAY -0.0E-0 END-DISPLAY
           DISPLAY 1.0E00003 END-DISPLAY
           DISPLAY .123456789012345678901234567890123456789E0
           END-DISPLAY
           DISPLAY 0.0E3 END-DISPLAY

           *> Implementor-defined invalid literals
           DISPLAY 1.0E6145 END-DISPLAY
           DISPLAY 1.0E-6144 END-DISPLAY

           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
            DECIMAL-POINT IS COMMA.
       PROCEDURE        DIVISION.
           *> Valid literals
           DISPLAY 1,0E6144; +1,0E+3; +1,0E-6143; 123,E1;
               +,123456789012345678901234567890123456E+0000
           END-DISPLAY

           *> invalid literals
           DISPLAY 1,0D3 END-DISPLAY
           DISPLAY 1E3 END-DISPLAY
           DISPLAY 1,0E3BLAH END-DISPLAY
           DISPLAY 1,0E3,0 END-DISPLAY
           DISPLAY -0,0E-0 END-DISPLAY
           DISPLAY 1,0E00003 END-DISPLAY
           DISPLAY ,123456789012345678901234567890123456789E0
           END-DISPLAY
           DISPLAY 0,0E3 END-DISPLAY

           *> Implementor-defined invalid literals
           DISPLAY 1,0E6145 END-DISPLAY
           DISPLAY 1,0E-6144 END-DISPLAY

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1060: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:1060"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: 'D3' is not defined
prog.cob:12: error: '1E3' is not defined
prog.cob:13: error: 'BLAH' is not defined
prog.cob:14: error: invalid floating-point literal: '1.0E3.0'
prog.cob:14: note: exponent has decimal point
prog.cob:15: error: invalid floating-point literal: '-0.0E-0'
prog.cob:15: note: significand of 0 must be positive
prog.cob:15: note: exponent of 0 must be positive
prog.cob:16: error: invalid floating-point literal: '1.0E00003'
prog.cob:16: note: exponent has more than 4 digits
prog.cob:17: error: invalid floating-point literal: '.123456789012345678901234567890123 ...'
prog.cob:17: note: significand has more than 36 digits
prog.cob:19: error: invalid floating-point literal: '0.0E3'
prog.cob:19: note: exponent of 0 must be 0
prog.cob:22: error: invalid floating-point literal: '1.0E6145'
prog.cob:22: note: exponent not between -6143 and 6144
prog.cob:23: error: invalid floating-point literal: '1.0E-6144'
prog.cob:23: note: exponent not between -6143 and 6144
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1060"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1081: \$COMPILE_ONLY prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog2.cob" "syn_literals.at:1081"
( $at_check_trace; $COMPILE_ONLY prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:15: error: 'D3' is not defined
prog2.cob:16: error: '1E3' is not defined
prog2.cob:17: error: 'BLAH' is not defined
prog2.cob:18: error: invalid floating-point literal: '1,0E3,0'
prog2.cob:18: note: exponent has decimal point
prog2.cob:19: error: invalid floating-point literal: '-0,0E-0'
prog2.cob:19: note: significand of 0 must be positive
prog2.cob:19: note: exponent of 0 must be positive
prog2.cob:20: error: invalid floating-point literal: '1,0E00003'
prog2.cob:20: note: exponent has more than 4 digits
prog2.cob:21: error: invalid floating-point literal: ',123456789012345678901234567890123 ...'
prog2.cob:21: note: significand has more than 36 digits
prog2.cob:23: error: invalid floating-point literal: '0,0E3'
prog2.cob:23: note: exponent of 0 must be 0
prog2.cob:26: error: invalid floating-point literal: '1,0E6145'
prog2.cob:26: note: exponent not between -6143 and 6144
prog2.cob:27: error: invalid floating-point literal: '1,0E-6144'
prog2.cob:27: note: exponent not between -6143 and 6144
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1081"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_462
#AT_START_463
at_fn_group_banner 463 'syn_literals.at:1105' \
  "X literals" "                                     " 2
at_xfail=no
(
  $as_echo "463. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
           *> Valid form
           DISPLAY X"0123456789ABCDEF"

           *> invalid form
           DISPLAY X"GH"
                   X"1"
           END-DISPLAY.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1121: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:1121"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid X literal: 'GH'
prog.cob:9: note: literal contains invalid character 'G'
prog.cob:9: note: literal contains invalid character 'H'
prog.cob:10: error: invalid X literal: '1'
prog.cob:10: note: literal does not have an even number of digits
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1121"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1129: \$COMPILE_ONLY -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf-strict prog.cob" "syn_literals.at:1129"
( $at_check_trace; $COMPILE_ONLY -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid X literal: 'GH'
prog.cob:9: note: literal contains invalid character 'G'
prog.cob:9: note: literal contains invalid character 'H'
prog.cob:10: warning: invalid X literal: '1'
prog.cob:10: note: literal does not have an even number of digits
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1129"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_463
#AT_START_464
at_fn_group_banner 464 'syn_literals.at:1140' \
  "national literals" "                              " 2
at_xfail=no
(
  $as_echo "464. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
           DISPLAY N"UTF-16 string".
           DISPLAY N'0123456789ABCDEF'.
           DISPLAY N"0123456789ABCDEF"-
                   N"0123456789ABCDEF".
           DISPLAY NC"0123456789ABCDEF"-
                   NC'0123456789ABCDEF'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1155: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:1155"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:6: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:7: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:8: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:9: warning: national-character literal used
prog.cob:9: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:10: warning: national-character literal used
prog.cob:10: warning: handling of national literal is unfinished; implementation is likely to be changed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_literals.at:1155"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1166: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_literals.at:1166"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: national literal does not conform to COBOL 85
prog.cob:6: error: national literal does not conform to COBOL 85
prog.cob:7: error: national literal does not conform to COBOL 85
prog.cob:8: error: national literal does not conform to COBOL 85
prog.cob:9: error: national-character literal does not conform to COBOL 85
prog.cob:10: error: national-character literal does not conform to COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1166"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_464
#AT_START_465
at_fn_group_banner 465 'syn_literals.at:1178' \
  "NX literals" "                                    " 2
at_xfail=no
(
  $as_echo "465. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
           *> Valid form
           DISPLAY NX"265E"
           DISPLAY NX"0123456789ABCDEF"

           *> invalid form
           DISPLAY NX"GH"
                   NX"1".
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1194: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:1194"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:7: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:10: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:10: error: invalid NX literal: 'GH'
prog.cob:10: note: literal contains invalid character 'G'
prog.cob:10: note: literal contains invalid character 'H'
prog.cob:11: warning: handling of national literal is unfinished; implementation is likely to be changed
prog.cob:11: error: invalid NX literal: '1'
prog.cob:11: note: literal does not have an even number of digits
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1194"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1206: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_literals.at:1206"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: hexadecimal-national literal does not conform to COBOL 85
prog.cob:7: error: hexadecimal-national literal does not conform to COBOL 85
prog.cob:10: error: hexadecimal-national literal does not conform to COBOL 85
prog.cob:11: error: hexadecimal-national literal does not conform to COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1206"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_465
#AT_START_466
at_fn_group_banner 466 'syn_literals.at:1216' \
  "binary literals" "                                " 2
at_xfail=no
(
  $as_echo "466. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY B"101010"
           DISPLAY B"111111111111111111111111111111111111111111111111111
      -             "1111111111111" *> " Syntax highlighting hack

           DISPLAY B"23"
           DISPLAY B"111111111111111111111111111111111111111111111111111
      -             "111111111111111111111111111111111111111111111111111
      -             "11111111111111111111111111111111111111111111111111"
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1234: \$COMPILE_ONLY -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=mf prog.cob" "syn_literals.at:1234"
( $at_check_trace; $COMPILE_ONLY -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid B literal: '23'
prog.cob:9: note: literal contains invalid character '2'
prog.cob:9: note: literal contains invalid character '3'
prog.cob:10: error: invalid B literal: '1111111111111111111111111111111111 ...'
prog.cob:10: note: literal length 152 exceeds 64 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1234"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1242: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_literals.at:1242"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: numeric boolean literal does not conform to COBOL 85
prog.cob:6: error: numeric boolean literal does not conform to COBOL 85
prog.cob:9: error: numeric boolean literal does not conform to COBOL 85
prog.cob:10: error: numeric boolean literal does not conform to COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1242"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_466
#AT_START_467
at_fn_group_banner 467 'syn_literals.at:1252' \
  "binary-hexadecimal literals" "                    " 2
at_xfail=no
(
  $as_echo "467. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY BX"AB05CD0F"
           DISPLAY        BX"0123456789ABCDEF0123456789ABCDEF0123456789A
      -              "BCDEF" *> " Syntax highlighting hack

           DISPLAY BX"A"
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1267: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:1267"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: invalid BX literal: '0123456789ABCDEF0123456789ABCDEF01 ...'
prog.cob:6: note: literal length 192 exceeds 64 characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1267"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1272: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "syn_literals.at:1272"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: hexadecimal-boolean literal does not conform to COBOL 85
prog.cob:6: error: hexadecimal-boolean literal does not conform to COBOL 85
prog.cob:9: error: hexadecimal-boolean literal does not conform to COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1272"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_467
#AT_START_468
at_fn_group_banner 468 'syn_literals.at:1281' \
  "HP COBOL octal literals" "                        " 2
at_xfail=no
(
  $as_echo "468. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           *> Valid forms
           DISPLAY %17 %37777777777 %456

           *> invalid forms
           DISPLAY %11111111111111111111111
           DISPLAY %89

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1298: \$COMPILE_ONLY -Wno-unfinished -fhp-octal-literals=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished -fhp-octal-literals=ok prog.cob" "syn_literals.at:1298"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished -fhp-octal-literals=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: invalid % literal: '11111111111111111111111'
prog.cob:9: note: literal length 23 exceeds 22 characters
prog.cob:10: error: invalid % literal: '89'
prog.cob:10: note: literal contains invalid character '8'
prog.cob:10: note: literal contains invalid character '9'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1298"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1306: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_literals.at:1306"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: HP COBOL octal literal does not conform to COBOL 2014
prog.cob:6: error: HP COBOL octal literal does not conform to COBOL 2014
prog.cob:6: error: HP COBOL octal literal does not conform to COBOL 2014
prog.cob:9: error: HP COBOL octal literal does not conform to COBOL 2014
prog.cob:10: error: HP COBOL octal literal does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1306"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_468
#AT_START_469
at_fn_group_banner 469 'syn_literals.at:1317' \
  "ACUCOBOL literals" "                              " 2
at_xfail=no
(
  $as_echo "469. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           *> Valid forms
           DISPLAY B#10 O#12345670123 X#12345678 H#90aBcDeF
           END-DISPLAY

           *> invalid forms
       >>SOURCE FREE
           DISPLAY B#11111111111111111111111111111111111111111111111111111111111111111
               O#11111111111111111111111 X#11111111111111111 H#22222222222222222
       >>SOURCE FIXED
           DISPLAY B#23 O#89 X#GG H#HH

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1338: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_literals.at:1338"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: error: invalid B# literal: '1111111111111111111111111111111111 ...'
prog.cob:11: note: literal length 65 exceeds 64 characters
prog.cob:12: error: invalid O# literal: '11111111111111111111111'
prog.cob:12: note: literal length 23 exceeds 22 characters
prog.cob:12: error: invalid hexadecimal literal: '11111111111111111'
prog.cob:12: note: literal length 17 exceeds 16 characters
prog.cob:12: error: invalid hexadecimal literal: '22222222222222222'
prog.cob:12: note: literal length 17 exceeds 16 characters
prog.cob:14: error: invalid B# literal: '23'
prog.cob:14: note: literal contains invalid character '2'
prog.cob:14: note: literal contains invalid character '3'
prog.cob:14: error: invalid O# literal: '89'
prog.cob:14: note: literal contains invalid character '8'
prog.cob:14: note: literal contains invalid character '9'
prog.cob:14: error: invalid X# literal: 'GG'
prog.cob:14: note: literal contains invalid character 'G'
prog.cob:14: note: literal contains invalid character 'G'
prog.cob:14: error: invalid H# literal: 'HH'
prog.cob:14: note: literal contains invalid character 'H'
prog.cob:14: note: literal contains invalid character 'H'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1338"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1361: \$COMPILE_ONLY -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol2014 prog.cob" "syn_literals.at:1361"
( $at_check_trace; $COMPILE_ONLY -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:6: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:6: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:6: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:11: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:12: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:12: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:12: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:14: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:14: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:14: error: ACUCOBOL numeric literal does not conform to COBOL 2014
prog.cob:14: error: ACUCOBOL numeric literal does not conform to COBOL 2014
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1361"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_469
#AT_START_470
at_fn_group_banner 470 'syn_literals.at:1379' \
  "ACUCOBOL 32bit literal size" "                    " 2
at_xfail=no
(
  $as_echo "470. $at_setup_line: testing $at_desc ..."
  $at_traceon


# ACUCOBOL literal max - the result is system dependent on size of unsigned long int
# FIXME: do not skip when expecting we pass
$as_echo "syn_literals.at:1383" >"$at_check_line_file"
at_fn_check_skip 77 "$at_srcdir/syn_literals.at:1383"



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.

       >>SOURCE FREE
           DISPLAY B#1111111111111111111111111111111111111111111111111111111111111111
               O#1111111111111111111111 X#1111111111111111

           STOP RUN.
_ATEOF


#AT_CHECK([$COMPILE_ONLY -std=acu prog.cob], [0], [], [])
# TODO check the result according to COB_32_BIT_LONG --> 1 should result in the following
{ set +x
$as_echo "$at_srcdir/syn_literals.at:1401: \$COMPILE_ONLY -std=acu prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=acu prog.cob" "syn_literals.at:1401"
( $at_check_trace; $COMPILE_ONLY -std=acu prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: error: invalid B# literal: '11111111111111111111111111111111111...'
prog.cob:7: note: literal exceeds limit 4294967295
prog.cob:8: error: invalid O# literal: '1111111111111111111111'
prog.cob:8: note: literal exceeds limit 4294967295
prog.cob:8: error: invalid X# literal: '1111111111111111'
prog.cob:8: note: literal exceeds limit 4294967295
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1401"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_470
#AT_START_471
at_fn_group_banner 471 'syn_literals.at:1412' \
  "zero-length literals" "                           " 2
at_xfail=no
(
  $as_echo "471. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           PIC X.
       01  nat         PIC N.
       01  n           PIC 9.

       PROCEDURE       DIVISION.
           MOVE X''  TO x
           MOVE H''  TO n
           MOVE Z''  TO x
           MOVE L''  TO x
           MOVE N""  TO nat
           MOVE NX'' TO nat
           MOVE B""  TO n
           MOVE BX"" TO n
           .
_ATEOF


# unfinished national
{ set +x
$as_echo "$at_srcdir/syn_literals.at:1438: \$COMPILE_ONLY -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wno-unfinished prog.cob" "syn_literals.at:1438"
( $at_check_trace; $COMPILE_ONLY -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: warning: hexadecimal literal has zero length; X'00' will be assumed
prog.cob:13: error: invalid H literal: ''
prog.cob:13: note: H literals must contain at least one character
prog.cob:14: error: invalid Z literal: ''
prog.cob:14: note: Z literals must contain at least one character
prog.cob:15: error: invalid L literal: ''
prog.cob:15: note: L literals must contain at least one character
prog.cob:16: warning: national literal has zero length; a SPACE will be assumed
prog.cob:17: warning: hexadecimal literal has zero length; X'00' will be assumed
prog.cob:18: warning: boolean literal has zero length; B'0' will be assumed
prog.cob:19: warning: hexadecimal literal has zero length; X'00' will be assumed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1438"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_literals.at:1451: \$COMPILE_ONLY -fzero-length-literals=error -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fzero-length-literals=error -Wno-unfinished prog.cob" "syn_literals.at:1451"
( $at_check_trace; $COMPILE_ONLY -fzero-length-literals=error -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: error: zero-length literal used
prog.cob:12: warning: hexadecimal literal has zero length; X'00' will be assumed
prog.cob:13: error: invalid H literal: ''
prog.cob:13: note: H literals must contain at least one character
prog.cob:14: error: invalid Z literal: ''
prog.cob:14: note: Z literals must contain at least one character
prog.cob:15: error: invalid L literal: ''
prog.cob:15: note: L literals must contain at least one character
prog.cob:16: error: zero-length literal used
prog.cob:16: warning: national literal has zero length; a SPACE will be assumed
prog.cob:17: error: zero-length literal used
prog.cob:17: warning: hexadecimal literal has zero length; X'00' will be assumed
prog.cob:18: error: zero-length literal used
prog.cob:18: warning: boolean literal has zero length; B'0' will be assumed
prog.cob:19: error: zero-length literal used
prog.cob:19: warning: hexadecimal literal has zero length; X'00' will be assumed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1451"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_471
#AT_START_472
at_fn_group_banner 472 'syn_literals.at:1472' \
  "long literal in error message" "                  " 2
at_xfail=no
(
  $as_echo "472. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      tutorial.
       PROCEDURE DIVISION.
           move low-values to
           ' 1  c d e f g h i j k l m n 0 q.'-
           ' 2  C D E F G H I J K L M N 0 Q.'-
           ' 3  c d e f g h i j k l m n 0 q.'-
           ' 4  C D E F G H I J K L M N 0 Q.'-
           ' 5  c d e f g h i j k l m n 0 q.'-
           ' 6  C D E F G H I J K L M N 0 Q.'-
           ' 7  c d e f g h i j k l m n 0 q.'-
           ' 8  C D E F G H I J K L M N 0 Q.'-
           ' 9  c d e f g h i j k l m n 0 q.'-
           '10  C D E F G H I J K L M N 0 Q.'-
           '11  c d e f g h i j k l m n 0 q.'-
           '12  C D E F G H I J K L M N 0 Q.'-
           '13  c d e f g h i j k l m n 0 q.'-
           '14  C D E F G H I J K L M N 0 Q.'-
           '15  c d e f g h i j k l m n 0 q.'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/syn_literals.at:1497: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "syn_literals.at:1497"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: invalid MOVE target: literal \" 1  c d e f g h i j k l m n 0 q. 2 ...\"
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1497"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_472
#AT_START_473
at_fn_group_banner 473 'syn_literals.at:1504' \
  "literal missing terminating character" "          " 2
at_xfail=no
(
  $as_echo "473. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      tutorial.
       PROCEDURE DIVISION.
           DISPLAY ' 1  c d e f g h i j k l m n 0 q.
      -            ' 2  C D E F G H I J K L M N 0 Q.
_ATEOF


# FIXME: we should move this from scanner to pplex to preserve the spaces
# [prog.cob:5: error: invalid literal: ' 1  c d e f g h i j k l m n 0 q. ...'
{ set +x
$as_echo "$at_srcdir/syn_literals.at:1517: \$COMPILE_ONLY -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -w prog.cob" "syn_literals.at:1517"
( $at_check_trace; $COMPILE_ONLY -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: invalid literal: ' 1 c d e f g h i j k l m n 0 q. 2  ...'
prog.cob:5: note: missing terminating ' character
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1517"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_473
#AT_START_474
at_fn_group_banner 474 'syn_literals.at:1525' \
  "GCOS literals with EBCDIC symbols (syntax)" "     " 2
at_xfail=no
(
  $as_echo "474. $at_setup_line: testing $at_desc ..."
  $at_traceon


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY ""135,151,151"bar"195,194,0""
           DISPLAY ""135,257""
           DISPLAY ""135,x,194,1""
           DISPLAY ""135,,155,""
           DISPLAY ""135  155 " "

           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_literals.at:1539: \$COMPILE -febcdic-symbolic-characters prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -febcdic-symbolic-characters prog.cob" "syn_literals.at:1539"
( $at_check_trace; $COMPILE -febcdic-symbolic-characters prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: character code 0 out of encoding range (1..256)
prog.cob:6: error: character code 257 out of encoding range (1..256)
prog.cob:7: error: invalid character 'x' in sequence of symbolic EBCDIC characters
prog.cob:8: error: extraneous character ',' in sequence of symbolic EBCDIC characters
prog.cob:8: error: extraneous separator ',' at end of symbolic EBCDIC characters
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1539"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY ""135,151,151"bar"195,194,234" = foobarBAZ"
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/syn_literals.at:1553: \$COMPILE -febcdic-symbolic-characters prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -febcdic-symbolic-characters prog2.cob" "syn_literals.at:1553"
( $at_check_trace; $COMPILE -febcdic-symbolic-characters prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_literals.at:1553"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_literals.at:1554: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "syn_literals.at:1554"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2.cob:5: warning: alphanumeric literal has zero length; a SPACE will be assumed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/syn_literals.at:1554"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/syn_literals.at:1557: \$COMPILE -febcdic-symbolic-characters -febcdic-table=dummyNotThere prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -febcdic-symbolic-characters -febcdic-table=dummyNotThere prog2.cob" "syn_literals.at:1557"
( $at_check_trace; $COMPILE -febcdic-symbolic-characters -febcdic-table=dummyNotThere prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: can't open translation table 'dummyNotThere'
prog2.cob:5: error: invalid parameter: -febcdic-table
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/syn_literals.at:1557"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_474
#AT_START_475
at_fn_group_banner 475 'listings.at:21' \
  "Minimal lines per listing pages" "                " 3
at_xfail=no
(
  $as_echo "475. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: 2.2 did not use a minimal length,
# a typo like -tlines=2 loops forever



cat >prog.cob <<'_ATEOF'

      * some comments go here
                 *> and here
                        *> and finally... here
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 NEWSTUFF PIC X(80).
       PROCEDURE        DIVISION.
           DISPLAY NEWSTUFF " BENEFITS SOME PARTS FROM "
           "MANY" "STUFF" ", " "VERY MUCH" "GOOD" NEWSTUFF
           "AND STUFF !"
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


cat >expected.lst <<'_ATEOF'
GnuCOBOL V.R.P          prog.cob             DDD MMM dd HH:MM:SS YYYY  Page 0001

LINE    PG/LN  A...B............................................................

000001
000002        * some comments go here
000003                   *> and here
000004                          *> and finally... here
000005         IDENTIFICATION   DIVISION.
000006         PROGRAM-ID.      prog.
000007         DATA             DIVISION.
000008         WORKING-STORAGE  SECTION.
000009         01 NEWSTUFF PIC X(80).
000010         PROCEDURE        DIVISION.
000011             DISPLAY NEWSTUFF " BENEFITS SOME PARTS FROM "
000012             "MANY" "STUFF" ", " "VERY MUCH" "GOOD" NEWSTUFF
000013             "AND STUFF !"
000014                     NO ADVANCING
000015             END-DISPLAY.
000016             STOP RUN.

GnuCOBOL V.R.P          prog.cob             DDD MMM dd HH:MM:SS YYYY  Page 0002

0 warnings in compilation group
0 errors in compilation group
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:75: \$COMPILE_ONLY -t prog.lst -tlines=2 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -t prog.lst -tlines=2 prog.cob" "listings.at:75"
( $at_check_trace; $COMPILE_ONLY -t prog.lst -tlines=2 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cobc: warning: 2 lines per listing page specified, using 20
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:75"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:79: \$UNIFY_LISTING prog.lst prog.lis"
at_fn_check_prepare_dynamic "$UNIFY_LISTING prog.lst prog.lis" "listings.at:79"
( $at_check_trace; $UNIFY_LISTING prog.lst prog.lis
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:79"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:80: diff expected.lst prog.lis"
at_fn_check_prepare_trace "listings.at:80"
( $at_check_trace; diff expected.lst prog.lis
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:80"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_475
#AT_START_476
at_fn_group_banner 476 'listings.at:85' \
  "COPY within comment" "                            " 3
at_xfail=no
(
  $as_echo "476. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *COPY "copy.inc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:98: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:98"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006        *COPY \"copy.inc\".
000007         PROCEDURE        DIVISION.
000008             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:98"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

  IDENTIFICATION   DIVISION.
  PROGRAM-ID.      prog2.
  DATA             DIVISION.
  WORKING-STORAGE  SECTION.
  *> COPY "copy.inc".
  PROCEDURE        DIVISION.
  STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:127: \$COMPILE_LISTING0 -t- -free prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -free prog2.cob" "listings.at:127"
( $at_check_trace; $COMPILE_LISTING0 -t- -free prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog2.cob

LINE    .....................SOURCE.............................................

000001
000002    IDENTIFICATION   DIVISION.
000003    PROGRAM-ID.      prog2.
000004    DATA             DIVISION.
000005    WORKING-STORAGE  SECTION.
000006    *> COPY \"copy.inc\".
000007    PROCEDURE        DIVISION.
000008    STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:127"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_476
#AT_START_477
at_fn_group_banner 477 'listings.at:149' \
  "Replacement w/o strings" "                        " 3
at_xfail=no
(
  $as_echo "477. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       REPLACE   =="SOME"== BY =="MANY"==
                 =='SOME'== BY =="VERY MUCH"==
                 ==STUFF==  BY ==NEWSTUFF==.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 NEWSTUFF PIC X(80).
       PROCEDURE        DIVISION.
           DISPLAY STUFF " BENEFITS SOME PARTS FROM "
                   "SOME" "STUFF" ", " 'SOME' "GOOD" STUFF "AND STUFF !"
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:169: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:169"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         REPLACE   ==\"SOME\"== BY ==\"MANY\"==
000003                   =='SOME'== BY ==\"VERY MUCH\"==
000004                   ==STUFF==  BY ==NEWSTUFF==.
000005         IDENTIFICATION   DIVISION.
000006         PROGRAM-ID.      prog.
000007         DATA             DIVISION.
000008         WORKING-STORAGE  SECTION.
000009         01 NEWSTUFF PIC X(80).
000010         PROCEDURE        DIVISION.
000011             DISPLAY NEWSTUFF \" BENEFITS SOME PARTS FROM \"
000012             \"MANY\" \"STUFF\" \", \" \"VERY MUCH\" \"GOOD\" NEWSTUFF
000012+       -    \"AND STUFF !\"
000013                     NO ADVANCING
000014             END-DISPLAY.
000015             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00080 ALPHANUMERIC   01   NEWSTUFF                       X(80)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:169"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_477
#AT_START_478
at_fn_group_banner 478 'listings.at:205' \
  "Partial replacement with literals" "              " 3
at_xfail=no
(
  $as_echo "478. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 W-DATA.
         3 X            PIC X(1) VALUE "X".
         3 XX           PIC X(2) VALUE "XX".
         3 Z            PIC X(1) VALUE "Z".
         3 ZZ           PIC X(2) VALUE "ZZ".
         3 Y            PIC X(1) VALUE "Y".
       PROCEDURE        DIVISION.
           REPLACE LEADING "X" BY SPACES
                   TRAILING "Z" BY SPACES
                   LEADING "Y" BY "X".
       MAIN.
           DISPLAY "XX: *" XX "*"
           DISPLAY "X: *" X "*"
           DISPLAY "ZZ: *" ZZ "*"
           DISPLAY "Z: *" Z "*"
           DISPLAY "Y: *" Y "*"
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:232: \$COMPILE_LISTING0 -fpartial-replace-when-literal-src=skip -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -fpartial-replace-when-literal-src=skip -t- prog.cob" "listings.at:232"
( $at_check_trace; $COMPILE_LISTING0 -fpartial-replace-when-literal-src=skip -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         1 W-DATA.
000007           3 X            PIC X(1) VALUE \"X\".
000008           3 XX           PIC X(2) VALUE \"XX\".
000009           3 Z            PIC X(1) VALUE \"Z\".
000010           3 ZZ           PIC X(2) VALUE \"ZZ\".
000011           3 Y            PIC X(1) VALUE \"Y\".
000012         PROCEDURE        DIVISION.
000013             REPLACE LEADING \"X\" BY SPACES
000014                     TRAILING \"Z\" BY SPACES
000015                     LEADING \"Y\" BY \"X\".
000016         MAIN.
000017             DISPLAY \"XX: *\" X \"*\"
000018             DISPLAY \"X: *\" X \"*\"
000019             DISPLAY \"ZZ: *\" ZZ \"*\"
000020             DISPLAY \"Z: *\" Z \"*\"
000021             DISPLAY \"Y: *\" X \"*\"
000022             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:232"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_478
#AT_START_479
at_fn_group_banner 479 'listings.at:269' \
  "COPY replacement with partial match" "            " 3
at_xfail=no
(
  $as_echo "479. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       02 TEST-VAR PIC X(2) VALUE "OK".
       02 TEST-CC PIC X(4) VALUE "OK 2".
_ATEOF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GET-VALUE.
       COPY "copy.inc" REPLACING ==TEST-VAR==     BY ==TEST-AVR==
                                 == 02 TEST-EE == BY == 02 TEST-FF ==.
       PROCEDURE DIVISION.
           DISPLAY TEST-AVR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:289: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:289"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         01 GET-VALUE.
000007         COPY \"copy.inc\" REPLACING ==TEST-VAR==     BY ==TEST-AVR==
000008                                   == 02 TEST-EE == BY == 02 TEST-FF ==.
000001C
000002C        02 TEST-AVR PIC X(2) VALUE \"OK\".
000003C        02 TEST-CC PIC X(4) VALUE \"OK 2\".
000009         PROCEDURE DIVISION.
000010             DISPLAY TEST-AVR.
000011             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:289"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_479
#AT_START_480
at_fn_group_banner 480 'listings.at:318' \
  "COPY replacement with multiple partial matches" " " 3
at_xfail=no
(
  $as_echo "480. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       02 TEST-VAR PIC X(2) VALUE "OK".
       02 TEST-VAR-BIS PIC X(6) VALUE "OK BIS".
       02 TEST-CC PIC X(4) VALUE "OK 2".
       02 TEST-OK PIC X(4) VALUE "OK 3".
       02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GET-VALUE.
       COPY "copy.inc" REPLACING
          LEADING ==TEST-VAR==     BY ==TEST-AVR==
                  == 02 TEST-OK == BY == 02 TEST-KO ==
                  ==TEST-CC==      BY ==TEST-DD==
                  == 02 TEST-EE == BY == 02 TEST-FF ==
                  == PIC ==        BY == pic ==.
       PROCEDURE DIVISION.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:349: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:349"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         01 GET-VALUE.
000007         COPY \"copy.inc\" REPLACING
000008            LEADING ==TEST-VAR==     BY ==TEST-AVR==
000009                    == 02 TEST-OK == BY == 02 TEST-KO ==
000010                    ==TEST-CC==      BY ==TEST-DD==
000011                    == 02 TEST-EE == BY == 02 TEST-FF ==
000012                    == PIC ==        BY == pic ==.
000001C
000002C        02 TEST-AVR pic X(2) VALUE \"OK\".
000003C        02 TEST-AVR-BIS pic X(6) VALUE \"OK BIS\".
000004C        02 TEST-DD pic X(4) VALUE \"OK 2\".
000005C        02 TEST-KO pic X(4) VALUE \"OK 3\".
000006C        02 TEST-FF pic X(4) VALUE \"OK 4\".
000013         PROCEDURE DIVISION.
000014             DISPLAY TEST-AVR.
000015             DISPLAY TEST-AVR-BIS.
000016             DISPLAY TEST-KO.
000017             DISPLAY TEST-DD.
000018             DISPLAY TEST-FF.
000019             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:349"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >copy2.inc <<'_ATEOF'

       02 TEST-VAR PIC X(2) VALUE "OK".
       02 TEST-VAR-BIS PIC X(6) VALUE "OK BIS".
       02 TEST-CC PIC X(4) VALUE "OK 2".
       02 TEST-OK PIC X(4) VALUE "OK 3".
       02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF

cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 GET-VALUE.
       COPY "copy2.inc"
           REPLACING LEADING ==TEST-VAR== BY ==TEST-AVR==
            ==     02    TEST-OK       == BY == 02 TEST-KO ==
        ==            TEST-CC          == BY == TEST-DD ==
         == 02 TEST-EE                 == BY == 02 TEST-FF ==
          ==                       PIC == BY == pic ==.
       PROCEDURE DIVISION.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:413: \$COMPILE_LISTING0 -t- prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog2.cob" "listings.at:413"
( $at_check_trace; $COMPILE_LISTING0 -t- prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog2.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog2.
000004         DATA DIVISION.
000005         WORKING-STORAGE SECTION.
000006         01 GET-VALUE.
000007         COPY \"copy2.inc\"
000008             REPLACING LEADING ==TEST-VAR== BY ==TEST-AVR==
000009              ==     02    TEST-OK       == BY == 02 TEST-KO ==
000010          ==            TEST-CC          == BY == TEST-DD ==
000011           == 02 TEST-EE                 == BY == 02 TEST-FF ==
000012            ==                       PIC == BY == pic ==.
000001C
000002C        02 TEST-AVR pic X(2) VALUE \"OK\".
000003C        02 TEST-AVR-BIS pic X(6) VALUE \"OK BIS\".
000004C        02 TEST-DD pic X(4) VALUE \"OK 2\".
000005C        02 TEST-KO pic X(4) VALUE \"OK 3\".
000006C        02 TEST-FF pic X(4) VALUE \"OK 4\".
000013         PROCEDURE DIVISION.
000014             DISPLAY TEST-AVR.
000015             DISPLAY TEST-AVR-BIS.
000016             DISPLAY TEST-KO.
000017             DISPLAY TEST-DD.
000018             DISPLAY TEST-FF.
000019             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:413"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >copy3.inc <<'_ATEOF'

       02         TEST-VAR      PIC       X(2)     VALUE         "OK".
              02  TEST-VAR-BIS               PIC X(6) VALUE "OK BIS".
       02 TEST-CC PIC X(4)            VALUE "OK 2".
       02 TEST-OK PIC            X(4) VALUE "OK 3".
       02 TEST-EE PIC X(4) VALUE "OK 4".
_ATEOF

cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 GET-VALUE.
       COPY "copy3.inc"
           REPLACING LEADING ==TEST-VAR== BY ==TEST-AVR==
                         == 02 TEST-OK == BY == 02 TEST-KO ==
                              ==TEST-CC== BY ==TEST-DD==
                         == 02 TEST-EE == BY == 02 TEST-FF ==
                                == PIC == BY == pic ==.
       PROCEDURE DIVISION.
           DISPLAY TEST-AVR.
           DISPLAY TEST-AVR-BIS.
           DISPLAY TEST-KO.
           DISPLAY TEST-DD.
           DISPLAY TEST-FF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:477: \$COMPILE_LISTING0 -t- prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog3.cob" "listings.at:477"
( $at_check_trace; $COMPILE_LISTING0 -t- prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog3.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog3.
000004         DATA DIVISION.
000005         WORKING-STORAGE SECTION.
000006         01 GET-VALUE.
000007         COPY \"copy3.inc\"
000008             REPLACING LEADING ==TEST-VAR== BY ==TEST-AVR==
000009                           == 02 TEST-OK == BY == 02 TEST-KO ==
000010                                ==TEST-CC== BY ==TEST-DD==
000011                           == 02 TEST-EE == BY == 02 TEST-FF ==
000012                                  == PIC == BY == pic ==.
000001C
000002C        02 TEST-AVR pic X(2) VALUE \"OK\".
000003C            02 TEST-AVR-BIS pic X(6) VALUE \"OK BIS\".
000004C        02 TEST-DD pic X(4) VALUE \"OK 2\".
000005C        02 TEST-KO pic X(4) VALUE \"OK 3\".
000006C        02 TEST-FF pic X(4) VALUE \"OK 4\".
000013         PROCEDURE DIVISION.
000014             DISPLAY TEST-AVR.
000015             DISPLAY TEST-AVR-BIS.
000016             DISPLAY TEST-KO.
000017             DISPLAY TEST-DD.
000018             DISPLAY TEST-FF.
000019             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:477"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_480
#AT_START_481
at_fn_group_banner 481 'listings.at:517' \
  "COPY replacement order" "                         " 3
at_xfail=no
(
  $as_echo "481. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01 TEST-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
          REPLACING ==TEST-VAR== BY ==FIRST-MATCH==
                    ==TEST-VAR== BY ==SECOND-MATCH==.
       PROCEDURE        DIVISION.
           DISPLAY FIRST-MATCH NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:538: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:538"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\"
000007            REPLACING ==TEST-VAR== BY ==FIRST-MATCH==
000008                      ==TEST-VAR== BY ==SECOND-MATCH==.
000001C
000002C        01 FIRST-MATCH PIC X(2) VALUE \"OK\".
000009         PROCEDURE        DIVISION.
000010             DISPLAY FIRST-MATCH NO ADVANCING
000011             END-DISPLAY.
000012             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   FIRST-MATCH                    X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:538"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:569: \$COBC \$FLAGS -E -o prog.i prog.cob"
at_fn_check_prepare_dynamic "$COBC $FLAGS -E -o prog.i prog.cob" "listings.at:569"
( $at_check_trace; $COBC $FLAGS -E -o prog.i prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:569"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:570: \$COMPILE_LISTING0 -t- -ftsymbols prog.i"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.i" "listings.at:570"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.i
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.i

LINE    PG/LN  A...B............................................................

000001  #line 1 \"prog.cob\"
000001
000002   IDENTIFICATION   DIVISION.
000003   PROGRAM-ID. prog.
000004   DATA DIVISION.
000005   WORKING-STORAGE SECTION.
000006
000007
000008
000001  #line 1 \"copy.inc\"
000001
000002   01 FIRST-MATCH PIC X(2) VALUE \"OK\".
000008  #line 8 \"prog.cob\"
000008
000009   PROCEDURE DIVISION.
000010   DISPLAY FIRST-MATCH NO ADVANCING
000011   END-DISPLAY.
000012   STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   FIRST-MATCH                    X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:570"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_481
#AT_START_482
at_fn_group_banner 482 'listings.at:608' \
  "COPY separators" "                                " 3
at_xfail=no
(
  $as_echo "482. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01 TEST-VAR PIC X(2) VALUE "OK".                                  COPY001
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.                                        PROG001
       PROGRAM-ID.      prog.                                            PROG002
       DATA             DIVISION.                                        PROG003
       WORKING-STORAGE  SECTION.                                         PROG004
       COPY "copy.inc"                                                   PROG005
          REPLACING ==TEST-VAR==, BY ==FIRST-MATCH==,                    PROG006
                 ,  ==TEST-VAR==; BY ==SECOND-MATCH==;                   PROG007
                 ;  ==TEST-VAR== , BY ==THIRD-MATCH==                    PROG008
                    ==TEST-VAR== ; BY ==FOURTH-MATCH==.                  PROG009
       PROCEDURE        DIVISION.                                        PROG010
           DISPLAY FIRST-MATCH NO ADVANCING                              PROG011
           END-DISPLAY.                                                  PROG012
           STOP RUN.                                                     PROG013
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:631: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:631"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\"
000007            REPLACING ==TEST-VAR==, BY ==FIRST-MATCH==,
000008                   ,  ==TEST-VAR==; BY ==SECOND-MATCH==;
000009                   ;  ==TEST-VAR== , BY ==THIRD-MATCH==
000010                      ==TEST-VAR== ; BY ==FOURTH-MATCH==.
000001C
000002C        01 FIRST-MATCH PIC X(2) VALUE \"OK\".
000011         PROCEDURE        DIVISION.
000012             DISPLAY FIRST-MATCH NO ADVANCING
000013             END-DISPLAY.
000014             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   FIRST-MATCH                    X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:631"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_482
#AT_START_483
at_fn_group_banner 483 'listings.at:667' \
  "COPY partial replacement" "                       " 3
at_xfail=no
(
  $as_echo "483. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01 :TEST:-VAR PIC X(2) VALUE "OK".
       01 (TEST)-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
          REPLACING ==:TEST:== BY ==COLON==
                    ==(TEST)== BY ==PAREN==.
       PROCEDURE        DIVISION.
           DISPLAY COLON-VAR NO ADVANCING
           END-DISPLAY.
           DISPLAY PAREN-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:691: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:691"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\"
000007            REPLACING ==:TEST:== BY ==COLON==
000008                      ==(TEST)== BY ==PAREN==.
000001C
000002C        01 COLON PIC X(2) VALUE \"OK\".
000003C        01 PAREN PIC X(2) VALUE \"OK\".
000009         PROCEDURE        DIVISION.
000010             DISPLAY COLON-VAR NO ADVANCING
000011             END-DISPLAY.
000012             DISPLAY PAREN-VAR NO ADVANCING
000013             END-DISPLAY.
000014             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   COLON-VAR                      X(2)

00002 ALPHANUMERIC   01   PAREN-VAR                      X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:691"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >copy1.inc <<'_ATEOF'

       01 'yyy-'struktur.
          05  'yyy-'hello    pic x(30) value 'yyy copy1.inc'.
          05  'yy1-'hello    pic x(30) value 'yy1 copy1.inc'.
          05  'yy2-'hello    pic x(30) value 'yy2 copy1.inc'.
          05  filler         pic x(20).
_ATEOF


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. copytest.

       data division.
       working-storage section.
       01 hello                pic x(20) value 'Copytest'.

       01 xx                   pic x(02).

          copy 'copy1.inc' replacing 'YYY-' by a10-
                                     'yy1-' by a11-
                                     'yy2-' by a12-.

          copy 'copy1.inc' replacing 'YYY-' by a20-
                                     'yy1-' by a21-
                                     'yy2-' by a22-.

          copy 'copy1.inc' replacing 'YYY-' by a30-
                                     'yy1-' by a31-
                                     'yy2-' by a32-.

       procedure division.

       display hello

       display 'a10-struktur'
       display a10-struktur

       display 'a20-struktur'
       display a20-struktur

       display 'a30-struktur'
       display a30-struktur

       goback.
       end program copytest.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:774: \$COMPILE_LISTING0 -t- -ftsymbols prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog1.cob" "listings.at:774"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog1.cob

LINE    PG/LN  A...B............................................................

000001
000002         identification division.
000003         program-id. copytest.
000004
000005         data division.
000006         working-storage section.
000007         01 hello                pic x(20) value 'Copytest'.
000008
000009         01 xx                   pic x(02).
000010
000011            copy 'copy1.inc' replacing 'YYY-' by a10-
000012                                       'yy1-' by a11-
000013                                       'yy2-' by a12-.
000001C
000002C        01 a10-struktur.
000003C        05 a10-hello pic x(30) value 'yyy copy1.inc'.
000004C        05 a11-hello pic x(30) value 'yy1 copy1.inc'.
000005C        05 a12-hello pic x(30) value 'yy2 copy1.inc'.
000006C           05  filler         pic x(20).
000014
000015            copy 'copy1.inc' replacing 'YYY-' by a20-
000016                                       'yy1-' by a21-
000017                                       'yy2-' by a22-.
000001C
000002C        01 a20-struktur.
000003C        05 a20-hello pic x(30) value 'yyy copy1.inc'.
000004C        05 a21-hello pic x(30) value 'yy1 copy1.inc'.
000005C        05 a22-hello pic x(30) value 'yy2 copy1.inc'.
000006C           05  filler         pic x(20).
000018
000019            copy 'copy1.inc' replacing 'YYY-' by a30-
000020                                       'yy1-' by a31-
000021                                       'yy2-' by a32-.
000001C
000002C        01 a30-struktur.
000003C        05 a30-hello pic x(30) value 'yyy copy1.inc'.
000004C        05 a31-hello pic x(30) value 'yy1 copy1.inc'.
000005C        05 a32-hello pic x(30) value 'yy2 copy1.inc'.
000006C           05  filler         pic x(20).
000022
000023         procedure division.
000024
000025         display hello
000026
000027         display 'a10-struktur'
000028         display a10-struktur
000029
000030         display 'a20-struktur'
000031         display a20-struktur
000032
000033         display 'a30-struktur'
000034         display a30-struktur
000035
000036         goback.
000037         end program copytest.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00020 ALPHANUMERIC   01   hello                          X(20)

00002 ALPHANUMERIC   01   xx                             X(02)

00110 GROUP          01   a10-struktur
00030 ALPHANUMERIC   05   a10-hello                      X(30)
00030 ALPHANUMERIC   05   a11-hello                      X(30)
00030 ALPHANUMERIC   05   a12-hello                      X(30)
00020 ALPHANUMERIC   05   FILLER                         X(20)

00110 GROUP          01   a20-struktur
00030 ALPHANUMERIC   05   a20-hello                      X(30)
00030 ALPHANUMERIC   05   a21-hello                      X(30)
00030 ALPHANUMERIC   05   a22-hello                      X(30)
00020 ALPHANUMERIC   05   FILLER                         X(20)

00110 GROUP          01   a30-struktur
00030 ALPHANUMERIC   05   a30-hello                      X(30)
00030 ALPHANUMERIC   05   a31-hello                      X(30)
00030 ALPHANUMERIC   05   a32-hello                      X(30)
00020 ALPHANUMERIC   05   FILLER                         X(20)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:774"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_483
#AT_START_484
at_fn_group_banner 484 'listings.at:869' \
  "COPY LEADING replacement" "                       " 3
at_xfail=no
(
  $as_echo "484. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01  TEST-VAR PIC X(2) VALUE "OK".
       01  NORM-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
            REPLACING LEADING ==TEST== BY ==FIRST==
                      LEADING ==NORM== BY ==SECOND==.
       PROCEDURE        DIVISION.
           DISPLAY FIRST-VAR NO ADVANCING
           END-DISPLAY.
           DISPLAY SECOND-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:893: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:893"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\"
000007              REPLACING LEADING ==TEST== BY ==FIRST==
000008                        LEADING ==NORM== BY ==SECOND==.
000001C
000002C        01 FIRST-VAR PIC X(2) VALUE \"OK\".
000003C        01 SECOND-VAR PIC X(2) VALUE \"OK\".
000009         PROCEDURE        DIVISION.
000010             DISPLAY FIRST-VAR NO ADVANCING
000011             END-DISPLAY.
000012             DISPLAY SECOND-VAR NO ADVANCING
000013             END-DISPLAY.
000014             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   FIRST-VAR                      X(2)

00002 ALPHANUMERIC   01   SECOND-VAR                     X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:893"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_484
#AT_START_485
at_fn_group_banner 485 'listings.at:932' \
  "COPY TRAILING replacement" "                      " 3
at_xfail=no
(
  $as_echo "485. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       01  TEST-FIRST  PIC X(2) VALUE "OK".
       01  TEST-SECOND PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc"
            REPLACING TRAILING ==FIRST== BY ==VAR1==
                      TRAILING ==SECOND== BY ==VAR2==.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR1 NO ADVANCING
           END-DISPLAY.
           DISPLAY TEST-VAR2 NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF



{ set +x
$as_echo "$at_srcdir/listings.at:957: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:957"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\"
000007              REPLACING TRAILING ==FIRST== BY ==VAR1==
000008                        TRAILING ==SECOND== BY ==VAR2==.
000001C
000002C        01 TEST-VAR1 PIC X(2) VALUE \"OK\".
000003C        01 TEST-VAR2 PIC X(2) VALUE \"OK\".
000009         PROCEDURE        DIVISION.
000010             DISPLAY TEST-VAR1 NO ADVANCING
000011             END-DISPLAY.
000012             DISPLAY TEST-VAR2 NO ADVANCING
000013             END-DISPLAY.
000014             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   TEST-VAR1                      X(2)

00002 ALPHANUMERIC   01   TEST-VAR2                      X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:957"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_485
#AT_START_486
at_fn_group_banner 486 'listings.at:996' \
  "COPY recursive replacement" "                     " 3
at_xfail=no
(
  $as_echo "486. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy-2.inc <<'_ATEOF'

       01 TEST-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >copy-1.inc <<'_ATEOF'

       COPY "copy-2.inc".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy-1.inc"
           REPLACING ==TEST-VAR== BY ==COPY-VAR==.
       PROCEDURE        DIVISION.
           DISPLAY COPY-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:1020: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:1020"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy-1.inc\"
000007             REPLACING ==TEST-VAR== BY ==COPY-VAR==.
000001C
000002C        COPY \"copy-2.inc\".
000001C
000002C        01 COPY-VAR PIC X(2) VALUE \"OK\".
000008         PROCEDURE        DIVISION.
000009             DISPLAY COPY-VAR NO ADVANCING
000010             END-DISPLAY.
000011             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   COPY-VAR                       X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1020"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_486
#AT_START_487
at_fn_group_banner 487 'listings.at:1055' \
  "COPY multiple files" "                            " 3
at_xfail=no
(
  $as_echo "487. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy-fd-1.inc <<'_ATEOF'

       FD  TEXTFILE-1        RECORD VARYING 1 TO 999 CHARACTERS
                                 DEPENDING ON TEXTFILE-1-SIZE.
       01  TEXTRECD-1.
           03 FILLER         PIC X(999).
      *
_ATEOF


cat >copy-fd-2.inc <<'_ATEOF'

       FD  TEXTFILE-2        RECORD VARYING 1 TO 999 CHARACTERS
                                 DEPENDING ON TEXTFILE-2-SIZE.
       01  TEXTRECD-2.
           03 FILLER         PIC X(999).
      *
_ATEOF


cat >copy-ws-1.inc <<'_ATEOF'

       01  TEXTFILE-1-NAME          PIC X(080)     VALUE "TEXTFILE.1".
       01  TEXTFILE-1-OCFG          PIC X(001)     VALUE "C".
           88 TEXTFILE-1-NOTOPEN    VALUE "C".
           88 TEXTFILE-1-IS-OPEN    VALUE "I", "O", "U".
       01  TEXTFILE-1-SIZE          PIC 9(004) EXTERNAL.
      *
_ATEOF


cat >copy-ws-2.inc <<'_ATEOF'

       01  TEXTFILE-2-NAME          PIC X(080)     VALUE "TEXTFILE.2".
       01  TEXTFILE-2-OCFG          PIC X(001)     VALUE "C".
           88 TEXTFILE-2-NOTOPEN    VALUE "C".
           88 TEXTFILE-2-IS-OPEN    VALUE "I", "O", "U".
       01  TEXTFILE-2-SIZE          PIC 9(004).
      *
_ATEOF


cat >copy-sl-1.inc <<'_ATEOF'

           SELECT TEXTFILE-1   ASSIGN TO DISK    TEXTFILE-1-NAME
                               ORGANIZATION      LINE SEQUENTIAL
                               ACCESS MODE       SEQUENTIAL.
      *
_ATEOF


cat >copy-sl-2.inc <<'_ATEOF'

           SELECT TEXTFILE-2   ASSIGN TO DISK    TEXTFILE-2-NAME
                               ORGANIZATION      LINE SEQUENTIAL
                               ACCESS MODE       SEQUENTIAL.
      *
_ATEOF


cat >tstcpybk.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. tstcpybk.
      *
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
      *
       SOURCE-COMPUTER. LINUX.
       OBJECT-COMPUTER. LINUX.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           COPY "copy-sl-1.inc".
           COPY "copy-sl-2.inc".

       DATA DIVISION.
       FILE SECTION.
           COPY "copy-fd-1.inc".
           COPY "copy-fd-2.inc".

       WORKING-STORAGE SECTION.
       01  HEADER BASED.
           03 FILLER         PIC X(016)     VALUE 'FCSI CodeWerks:'.
           03 FILLER         PIC X(064)     VALUE
              'Name:tstcpybk.cbl  Version:1.7.1  Date:2017-03-15'.
           03 FILLER         PIC X(002)     VALUE LOW-VALUES.
      *
       77  GLOB              PIC 99         GLOBAL.
      *
           COPY "copy-ws-1.inc".
           COPY "copy-ws-2.inc".

       PROCEDURE DIVISION.
       MAIN-PROCEDURE SECTION.
       MAIN-PROCEDURE-0000.
           CONTINUE.
       MAIN-PROCEDURE-EXIT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:1146: \$COMPILE_LISTING0 -t- -ftsymbols tstcpybk.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols tstcpybk.cob" "listings.at:1146"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols tstcpybk.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               tstcpybk.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. tstcpybk.
000004        *
000005         ENVIRONMENT DIVISION.
000006         CONFIGURATION SECTION.
000007        *
000008         SOURCE-COMPUTER. LINUX.
000009         OBJECT-COMPUTER. LINUX.
000010
000011         INPUT-OUTPUT SECTION.
000012         FILE-CONTROL.
000013             COPY \"copy-sl-1.inc\".
000001C
000002C            SELECT TEXTFILE-1   ASSIGN TO DISK    TEXTFILE-1-NAME
000003C                                ORGANIZATION      LINE SEQUENTIAL
000004C                                ACCESS MODE       SEQUENTIAL.
000005C       *
000014             COPY \"copy-sl-2.inc\".
000001C
000002C            SELECT TEXTFILE-2   ASSIGN TO DISK    TEXTFILE-2-NAME
000003C                                ORGANIZATION      LINE SEQUENTIAL
000004C                                ACCESS MODE       SEQUENTIAL.
000005C       *
000015
000016         DATA DIVISION.
000017         FILE SECTION.
000018             COPY \"copy-fd-1.inc\".
000001C
000002C        FD  TEXTFILE-1        RECORD VARYING 1 TO 999 CHARACTERS
000003C                                  DEPENDING ON TEXTFILE-1-SIZE.
000004C        01  TEXTRECD-1.
000005C            03 FILLER         PIC X(999).
000006C       *
000019             COPY \"copy-fd-2.inc\".
000001C
000002C        FD  TEXTFILE-2        RECORD VARYING 1 TO 999 CHARACTERS
000003C                                  DEPENDING ON TEXTFILE-2-SIZE.
000004C        01  TEXTRECD-2.
000005C            03 FILLER         PIC X(999).
000006C       *
000020
000021         WORKING-STORAGE SECTION.
000022         01  HEADER BASED.
000023             03 FILLER         PIC X(016)     VALUE 'FCSI CodeWerks:'.
000024             03 FILLER         PIC X(064)     VALUE
000025                'Name:tstcpybk.cbl  Version:1.7.1  Date:2017-03-15'.
000026             03 FILLER         PIC X(002)     VALUE LOW-VALUES.
000027        *
000028         77  GLOB              PIC 99         GLOBAL.
000029        *
000030             COPY \"copy-ws-1.inc\".
000001C
000002C        01  TEXTFILE-1-NAME          PIC X(080)     VALUE \"TEXTFILE.1\".
000003C        01  TEXTFILE-1-OCFG          PIC X(001)     VALUE \"C\".
000004C            88 TEXTFILE-1-NOTOPEN    VALUE \"C\".
000005C            88 TEXTFILE-1-IS-OPEN    VALUE \"I\", \"O\", \"U\".
000006C        01  TEXTFILE-1-SIZE          PIC 9(004) EXTERNAL.
000007C       *
000031             COPY \"copy-ws-2.inc\".
000001C
000002C        01  TEXTFILE-2-NAME          PIC X(080)     VALUE \"TEXTFILE.2\".
000003C        01  TEXTFILE-2-OCFG          PIC X(001)     VALUE \"C\".
000004C            88 TEXTFILE-2-NOTOPEN    VALUE \"C\".
000005C            88 TEXTFILE-2-IS-OPEN    VALUE \"I\", \"O\", \"U\".
000006C        01  TEXTFILE-2-SIZE          PIC 9(004).
000007C       *
000032
000033         PROCEDURE DIVISION.
000034         MAIN-PROCEDURE SECTION.
000035         MAIN-PROCEDURE-0000.
000036             CONTINUE.
000037         MAIN-PROCEDURE-EXIT.
000038             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

00999 FILE                TEXTFILE-1
00999 GROUP          01   TEXTRECD-1
00999 ALPHANUMERIC   03   FILLER                         X(999)

00999 FILE                TEXTFILE-2
00999 GROUP          01   TEXTRECD-2
00999 ALPHANUMERIC   03   FILLER                         X(999)

      WORKING-STORAGE SECTION

00082 GROUP          01   HEADER BASED
00016 ALPHANUMERIC   03   FILLER                         X(016)
00064 ALPHANUMERIC   03   FILLER                         X(064)
00002 ALPHANUMERIC   03   FILLER                         X(002)

00002 NUMERIC        77   GLOB                           99 GLOBAL

00080 ALPHANUMERIC   01   TEXTFILE-1-NAME                X(080)

00001 ALPHANUMERIC   01   TEXTFILE-1-OCFG                X(001)
      CONDITIONAL    88   TEXTFILE-1-NOTOPEN
      CONDITIONAL    88   TEXTFILE-1-IS-OPEN

00004 NUMERIC        01   TEXTFILE-1-SIZE                9(004) EXTERNAL

00080 ALPHANUMERIC   01   TEXTFILE-2-NAME                X(080)

00001 ALPHANUMERIC   01   TEXTFILE-2-OCFG                X(001)
      CONDITIONAL    88   TEXTFILE-2-NOTOPEN
      CONDITIONAL    88   TEXTFILE-2-IS-OPEN

00004 NUMERIC        01   TEXTFILE-2-SIZE                9(004)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1146"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_487
#AT_START_488
at_fn_group_banner 488 'listings.at:1269' \
  "Error/Warning messages" "                         " 3
at_xfail=no
(
  $as_echo "488. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       ENVIRONMENT    DIVISION.
       INPUT-OUTPUT   SECTION.
       FILE-CONTROL.
           SELECT testfile
               ASSIGN TO filename
               ORGANIZATION RELATIVE
               ACCESS IS sequentia
               STATUS IS stat.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       COPY "copy.inc".
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FIRST-MATCH NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:1295: \$COMPILE_LISTING -Wimplicit-define -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -Wimplicit-define -t- prog.cob" "listings.at:1295"
( $at_check_trace; $COMPILE_LISTING -Wimplicit-define -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         COPY \"copy.inc\".
000001C
000002C        ENVIRONMENT    DIVISION.
000003C        INPUT-OUTPUT   SECTION.
000004C        FILE-CONTROL.
000005C            SELECT testfile
error: missing file description for FILE testfile
000006C                ASSIGN TO filename
000007C                ORGANIZATION RELATIVE
000008C                ACCESS IS sequentia
error: syntax error, unexpected Identifier, expecting DYNAMIC or RANDOM or
     + SEQUENTIAL
000009C                STATUS IS stat.
000005         DATA             DIVISION.
000006         WORKING-STORAGE  SECTION.
000007         PROCEDURE        DIVISION.
warning: variable 'filename' will be implicitly defined
000008             DISPLAY FIRST-MATCH NO ADVANCING
error: 'FIRST-MATCH' is not defined
000009             END-DISPLAY.
000010             STOP RUN.


GnuCOBOL V.R.P          prog.cob                                        Page 0002

Error/Warning summary:

copy.inc:5: error: missing file description for FILE testfile
copy.inc:8: error: syntax error, unexpected Identifier, expecting DYNAMIC or RANDOM or SEQUENTIAL
prog.cob:7: warning: variable 'filename' will be implicitly defined
prog.cob:8: error: 'FIRST-MATCH' is not defined

1 warning in compilation group
3 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:1295"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:1339: \$COMPILE_LISTING -Wimplicit-define -T- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -Wimplicit-define -T- prog.cob" "listings.at:1339"
( $at_check_trace; $COMPILE_LISTING -Wimplicit-define -T- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                                                                 Page 0001

LINE    PG/LN  A...B............................................................SEQUENCE

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         COPY \"copy.inc\".
000001C
000002C        ENVIRONMENT    DIVISION.
000003C        INPUT-OUTPUT   SECTION.
000004C        FILE-CONTROL.
000005C            SELECT testfile
error: missing file description for FILE testfile
000006C                ASSIGN TO filename
000007C                ORGANIZATION RELATIVE
000008C                ACCESS IS sequentia
error: syntax error, unexpected Identifier, expecting DYNAMIC or RANDOM or SEQUENTIAL
000009C                STATUS IS stat.
000005         DATA             DIVISION.
000006         WORKING-STORAGE  SECTION.
000007         PROCEDURE        DIVISION.
warning: variable 'filename' will be implicitly defined
000008             DISPLAY FIRST-MATCH NO ADVANCING
error: 'FIRST-MATCH' is not defined
000009             END-DISPLAY.
000010             STOP RUN.


GnuCOBOL V.R.P          prog.cob                                                                                 Page 0002

Error/Warning summary:

copy.inc:5: error: missing file description for FILE testfile
copy.inc:8: error: syntax error, unexpected Identifier, expecting DYNAMIC or RANDOM or SEQUENTIAL
prog.cob:7: warning: variable 'filename' will be implicitly defined
prog.cob:8: error: 'FIRST-MATCH' is not defined

1 warning in compilation group
3 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:1339"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TEST-VAR PIC 9(2) VALUE 'F1'.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:1394: \$COMPILE_LISTING -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- -ftsymbols prog.cob" "listings.at:1394"
( $at_check_trace; $COMPILE_LISTING -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         01 TEST-VAR PIC 9(2) VALUE 'F1'.
warning: numeric value is expected
000007         PROCEDURE        DIVISION.
000008             DISPLAY TEST-VAR NO ADVANCING
000009             END-DISPLAY.
000010             STOP RUN.
GnuCOBOL V.R.P          prog.cob                                        Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 NUMERIC        01   TEST-VAR                       9(2)


GnuCOBOL V.R.P          prog.cob                                        Page 0003

Error/Warning summary:

prog.cob:6: warning: numeric value is expected

1 warning in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1394"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:1429: \$COMPILE_LISTING -t- crud.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- crud.cob" "listings.at:1429"
( $at_check_trace; $COMPILE_LISTING -t- crud.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          crud.cob                                        Page 0001

 cobc: crud.cob: No such file or directory


0 warnings in compilation group
1 error in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:1429"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cpy <<'_ATEOF'

       78  I   VALUE 20.
       78  J   VALUE 5000.
       78  M   VALUE 5.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TEST-VAR PIC 9(2) VALUE 12.
       COPY 'prog.cpy'.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           MOVE 'AA' TO TEST-VAR
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


cat >prog17.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog.i

LINE    PG/LN  A...B............................................................

000001  #line 1 "prog.cob"
000001
000002   IDENTIFICATION   DIVISION.
000003   PROGRAM-ID. prog.
000004   DATA DIVISION.
000005   WORKING-STORAGE SECTION.
000006   01 TEST-VAR PIC 9(2) VALUE 12.
000007
000001  #line 1 "prog.cpy"
000001
000002   78 I VALUE 20.
000003   78 J VALUE 5000.
000004   78 M VALUE 5.
000007  #line 7 "prog.cob"
000007
000008   PROCEDURE DIVISION.
000009   DISPLAY TEST-VAR NO ADVANCING
000010   END-DISPLAY
000011   MOVE 'AA' TO TEST-VAR
warning: numeric value is expected
000012   DISPLAY TEST-VAR NO ADVANCING
000013   END-DISPLAY
000014   STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 NUMERIC        01   TEST-VAR                       9(2)



Error/Warning summary:

prog.cob:11: warning: numeric value is expected

1 warning in compilation group
0 errors in compilation group
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TEST-VAR PIC 9(2) VALUE 'A'.
       COPY 'CRUD.CPY'.
       PROCEDURE        DIVISION.
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           MOVE 12 TO TEST-VAR
           DISPLAY TEST-VAR NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:1522: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:1522"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         01 TEST-VAR PIC 9(2) VALUE 'A'.
warning: numeric value is expected
000007         COPY 'CRUD.CPY'.
error: CRUD.CPY: No such file or directory
000008         PROCEDURE        DIVISION.
000009             DISPLAY TEST-VAR NO ADVANCING
000010             END-DISPLAY
000011             MOVE 12 TO TEST-VAR
000012             DISPLAY TEST-VAR NO ADVANCING
000013             END-DISPLAY
000014             STOP RUN.



Error/Warning summary:

prog.cob:7: error: CRUD.CPY: No such file or directory
prog.cob:6: warning: numeric value is expected

1 warning in compilation group
1 error in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:1522"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:1555: \$COMPILE_LISTING0 -t- -fmax-errors=0 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -fmax-errors=0 prog.cob" "listings.at:1555"
( $at_check_trace; $COMPILE_LISTING0 -t- -fmax-errors=0 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         01 TEST-VAR PIC 9(2) VALUE 'A'.
000007         COPY 'CRUD.CPY'.
error: CRUD.CPY: No such file or directory
000008         PROCEDURE        DIVISION.
000009             DISPLAY TEST-VAR NO ADVANCING
000010             END-DISPLAY
000011             MOVE 12 TO TEST-VAR
000012             DISPLAY TEST-VAR NO ADVANCING
000013             END-DISPLAY
000014             STOP RUN.



Error/Warning summary:

prog.cob:7: error: CRUD.CPY: No such file or directory

0 warnings in compilation group
1 error in compilation group
Too many errors in compilation group: 0 maximum errors
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 97 $at_status "$at_srcdir/listings.at:1555"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_488
#AT_START_489
at_fn_group_banner 489 'listings.at:1590' \
  "Two source files" "                               " 3
at_xfail=no
(
  $as_echo "489. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *COPY "copy.inc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog1.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *COPY "copy.inc".
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:1613: \$COMPILE_LISTING -t- prog.cob prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- prog.cob prog1.cob" "listings.at:1613"
( $at_check_trace; $COMPILE_LISTING -t- prog.cob prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006        *COPY \"copy.inc\".
000007         PROCEDURE        DIVISION.
000008             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
GnuCOBOL V.R.P          prog1.cob                                       Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog1.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006        *COPY \"copy.inc\".
000007         PROCEDURE        DIVISION.
000008             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1613"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_489
#AT_START_490
at_fn_group_banner 490 'listings.at:1651' \
  "Multiple programs in one file" "                  " 3
at_xfail=no
(
  $as_echo "490. $at_setup_line: testing $at_desc ..."
  $at_traceon






cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-1.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  blah PIC x.

       END PROGRAM prog-1.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-2.
       END PROGRAM prog-2.
_ATEOF


cat >prog20.lst <<'_ATEOF'
GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog-1.
000004
000005         DATA DIVISION.
000006         WORKING-STORAGE SECTION.
000007         01  blah PIC x.
000008
000009         END PROGRAM prog-1.
000010
000011         IDENTIFICATION DIVISION.
000012         PROGRAM-ID. prog-2.
000013         END PROGRAM prog-2.
GnuCOBOL V.R.P          prog.cob                                        Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      PROGRAM             prog-1

      WORKING-STORAGE SECTION

00001 ALPHANUMERIC   01   blah                           X

      PROGRAM             prog-2

      No fields defined.


0 warnings in compilation group
0 errors in compilation group
_ATEOF


# Check once with $COMPILE and once with $COMPILE_ONLY.
# This tests whether codegen affects the listing.
{ set +x
$as_echo "$at_srcdir/listings.at:1711: \$COMPILE \$LISTING_FLAGS -t prog.lst -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE $LISTING_FLAGS -t prog.lst -ftsymbols prog.cob" "listings.at:1711"
( $at_check_trace; $COMPILE $LISTING_FLAGS -t prog.lst -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1711"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1712: diff prog20.lst prog.lst"
at_fn_check_prepare_trace "listings.at:1712"
( $at_check_trace; diff prog20.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1712"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1713: \$COMPILE_LISTING -t prog2.lst -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t prog2.lst -ftsymbols prog.cob" "listings.at:1713"
( $at_check_trace; $COMPILE_LISTING -t prog2.lst -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1713"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1714: diff prog20.lst prog2.lst"
at_fn_check_prepare_trace "listings.at:1714"
( $at_check_trace; diff prog20.lst prog2.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1714"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:1716: rm -f prog.lst prog2.lst"
at_fn_check_prepare_trace "listings.at:1716"
( $at_check_trace; rm -f prog.lst prog2.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1716"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }


cat >progb.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-1.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  blah PIC x.

       PROCEDURE DIVISION.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-2.
       PROCEDURE DIVISION.
       END PROGRAM prog-2.

       END PROGRAM prog-1.
_ATEOF


cat >prog20b.lst <<'_ATEOF'
GnuCOBOL V.R.P          progb.cob                                       Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog-1.
000004
000005         DATA DIVISION.
000006         WORKING-STORAGE SECTION.
000007         01  blah PIC x.
000008
000009         PROCEDURE DIVISION.
000010
000011         IDENTIFICATION DIVISION.
000012         PROGRAM-ID. prog-2.
000013         PROCEDURE DIVISION.
000014         END PROGRAM prog-2.
000015
000016         END PROGRAM prog-1.
GnuCOBOL V.R.P          progb.cob                                       Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      PROGRAM             prog-1

      WORKING-STORAGE SECTION

00001 ALPHANUMERIC   01   blah                           X

      PROGRAM             prog-2

      No fields defined.


0 warnings in compilation group
0 errors in compilation group
_ATEOF


# Check once with $COMPILE and once with $COMPILE_ONLY.
# This tests whether codegen affects the listing.
{ set +x
$as_echo "$at_srcdir/listings.at:1778: \$COMPILE \$LISTING_FLAGS -t prog.lst -ftsymbols progb.cob"
at_fn_check_prepare_dynamic "$COMPILE $LISTING_FLAGS -t prog.lst -ftsymbols progb.cob" "listings.at:1778"
( $at_check_trace; $COMPILE $LISTING_FLAGS -t prog.lst -ftsymbols progb.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1778"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1779: diff prog20b.lst prog.lst"
at_fn_check_prepare_trace "listings.at:1779"
( $at_check_trace; diff prog20b.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1779"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1780: \$COMPILE_LISTING -t prog2.lst -ftsymbols progb.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t prog2.lst -ftsymbols progb.cob" "listings.at:1780"
( $at_check_trace; $COMPILE_LISTING -t prog2.lst -ftsymbols progb.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1780"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1781: diff prog20b.lst prog2.lst"
at_fn_check_prepare_trace "listings.at:1781"
( $at_check_trace; diff prog20b.lst prog2.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1781"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:1783: rm -f prog.lst prog2.lst"
at_fn_check_prepare_trace "listings.at:1783"
( $at_check_trace; rm -f prog.lst prog2.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1783"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }


cat >progc.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-1.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  blah PIC x.

       PROCEDURE DIVISION.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-2.
       PROCEDURE.
       END PROGRAM prog-2.

       END PROGRAM prog-1.
_ATEOF


cat >prog20c.lst <<'_ATEOF'
GnuCOBOL V.R.P          progc.cob                                       Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog-1.
000004
000005         DATA DIVISION.
000006         WORKING-STORAGE SECTION.
000007         01  blah PIC x.
000008
000009         PROCEDURE DIVISION.
000010
000011         IDENTIFICATION DIVISION.
000012         PROGRAM-ID. prog-2.
000013         PROCEDURE.
error: syntax error, unexpected ., expecting DIVISION
000014         END PROGRAM prog-2.
000015
000016         END PROGRAM prog-1.
GnuCOBOL V.R.P          progc.cob                                       Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      PROGRAM             prog-1

      WORKING-STORAGE SECTION

00001 ALPHANUMERIC   01   blah                           X

      PROGRAM             prog-2

      No fields defined.


GnuCOBOL V.R.P          progc.cob                                       Page 0003

Error/Warning summary:

progc.cob:13: error: syntax error, unexpected ., expecting DIVISION

0 warnings in compilation group
1 error in compilation group
_ATEOF


# Check once with $COMPILE and once with $COMPILE_ONLY.
# This tests whether codegen affects the listing.
{ set +x
$as_echo "$at_srcdir/listings.at:1852: \$COMPILE \$LISTING_FLAGS -t prog.lst -ftsymbols progc.cob"
at_fn_check_prepare_dynamic "$COMPILE $LISTING_FLAGS -t prog.lst -ftsymbols progc.cob" "listings.at:1852"
( $at_check_trace; $COMPILE $LISTING_FLAGS -t prog.lst -ftsymbols progc.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:1852"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1853: diff prog20c.lst prog.lst"
at_fn_check_prepare_trace "listings.at:1853"
( $at_check_trace; diff prog20c.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1853"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1854: \$COMPILE_LISTING -t prog2.lst -ftsymbols progc.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t prog2.lst -ftsymbols progc.cob" "listings.at:1854"
( $at_check_trace; $COMPILE_LISTING -t prog2.lst -ftsymbols progc.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:1854"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:1855: diff prog20c.lst prog2.lst"
at_fn_check_prepare_trace "listings.at:1855"
( $at_check_trace; diff prog20c.lst prog2.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:1855"
$at_failed && at_fn_log_failure  \
"prog.lst" \
"prog2.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_490
#AT_START_491
at_fn_group_banner 491 'listings.at:1860' \
  "Multiple programs in one compilation group" "     " 3
at_xfail=no
(
  $as_echo "491. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO CHECK
# combinations and positions of entries in compilation group,
# the previous test should likely produce a different result, too...



cat >prog-1.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-1.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  blah   PIC x.

       PROCEDURE DIVISION.
           ACCEPT blah END-ACCEPT
           CALL "prog-2" USING blah END-CALL
           GO TO EX

           DISPLAY blah.

       EX. STOP RUN.
_ATEOF


cat >prog-2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  data-b  PIC 9.
       LINKAGE SECTION.
       01  stuff   PIC x.
       PROCEDURE DIVISION USING stuff.
       MAIN.
           MOVE FUNCTION NUMVAL (stuff) TO data-b
           DISPLAY data-b
           GO TO EX

           ACCEPT stuff.

       EX. STOP RUN.

_ATEOF


cat >expected.lst <<'_ATEOF'
GnuCOBOL V.R.P          prog-1.cob                                      Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog-1.
000004
000005         DATA DIVISION.
000006         WORKING-STORAGE SECTION.
000007         01  blah   PIC x.
000008
000009         PROCEDURE DIVISION.
000010             ACCEPT blah END-ACCEPT
000011             CALL "prog-2" USING blah END-CALL
000012             GO TO EX
000013
000014             DISPLAY blah.
warning: unreachable statement 'DISPLAY'
000015
000016         EX. STOP RUN.
GnuCOBOL V.R.P          prog-1.cob                                      Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00001 ALPHANUMERIC   01   blah                           X

GnuCOBOL V.R.P          prog-1.cob                                      Page 0003

NAME                           DEFINED                REFERENCES

blah                           7       *10      11      14             x3

GnuCOBOL V.R.P          prog-1.cob                                      Page 0004

LABEL                          DEFINED                REFERENCES

E prog__1                      10
P EX                           16       12                             x1
GnuCOBOL V.R.P          prog-1.cob                                      Page 0005

FUNCTION                       TYPE                   REFERENCES

L prog-2                       EXTERN   11                             x1

GnuCOBOL V.R.P          prog-1.cob                                      Page 0006

Error/Warning summary:

prog-1.cob:14: warning: unreachable statement 'DISPLAY'

1 warning in compilation group
0 errors in compilation group
GnuCOBOL V.R.P          prog-2.cob                                      Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog-2.
000004
000005         DATA DIVISION.
000006         WORKING-STORAGE SECTION.
000007         01  data-b  PIC 9.
000008         LINKAGE SECTION.
000009         01  stuff   PIC x.
000010         PROCEDURE DIVISION USING stuff.
000011         MAIN.
000012             MOVE FUNCTION NUMVAL (stuff) TO data-b
000013             DISPLAY data-b
000014             GO TO EX
000015
000016             ACCEPT stuff.
warning: unreachable statement 'ACCEPT'
000017
000018         EX. STOP RUN.
000019
GnuCOBOL V.R.P          prog-2.cob                                      Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00001 NUMERIC        01   data-b                         9

      LINKAGE SECTION

00001 ALPHANUMERIC   01   stuff                          X

GnuCOBOL V.R.P          prog-2.cob                                      Page 0003

NAME                           DEFINED                REFERENCES

data-b                         7       *12      13                     x2

stuff                          9       *10      12     *16             x3

GnuCOBOL V.R.P          prog-2.cob                                      Page 0004

LABEL                          DEFINED                REFERENCES

E prog__2                      11
P MAIN                         11     not referenced
P EX                           18       14                             x1

GnuCOBOL V.R.P          prog-2.cob                                      Page 0005

Error/Warning summary:

prog-2.cob:16: warning: unreachable statement 'ACCEPT'

2 warnings in compilation group
0 errors in compilation group
_ATEOF


# Check once with $COMPILE and once with $COMPILE_ONLY.
# This tests whether codegen affects the listing.

{ set +x
$as_echo "$at_srcdir/listings.at:2029: \$COMPILE \$LISTING_FLAGS -Wunreachable -t prog.lst -Xref -ftsymbols prog-1.cob prog-2.cob"
at_fn_check_prepare_dynamic "$COMPILE $LISTING_FLAGS -Wunreachable -t prog.lst -Xref -ftsymbols prog-1.cob prog-2.cob" "listings.at:2029"
( $at_check_trace; $COMPILE $LISTING_FLAGS -Wunreachable -t prog.lst -Xref -ftsymbols prog-1.cob prog-2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2029"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:2030: diff expected.lst prog.lst"
at_fn_check_prepare_trace "listings.at:2030"
( $at_check_trace; diff expected.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2030"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:2032: \$COMPILE_LISTING -Wunreachable -t prog.lst -Xref -ftsymbols prog-1.cob prog-2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -Wunreachable -t prog.lst -Xref -ftsymbols prog-1.cob prog-2.cob" "listings.at:2032"
( $at_check_trace; $COMPILE_LISTING -Wunreachable -t prog.lst -Xref -ftsymbols prog-1.cob prog-2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2032"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/listings.at:2033: diff expected.lst prog.lst"
at_fn_check_prepare_trace "listings.at:2033"
( $at_check_trace; diff expected.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2033"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_491
#AT_START_492
at_fn_group_banner 492 'listings.at:2038' \
  "command line" "                                   " 3
at_xfail=no
(
  $as_echo "492. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     WITHPAR.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR-IN        PIC 9.
       01 PAR-OUT       PIC 9.
       PROCEDURE DIVISION USING PAR-IN RETURNING PAR-OUT.
           ADD 1 TO PAR-IN GIVING PAR-OUT END-ADD.
           GOBACK.
       END FUNCTION WITHPAR.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2055: \$COBC \$LISTING_FLAGS -q -fsyntax-only -t- -fno-theader -ftcmd prog.cob"
at_fn_check_prepare_dynamic "$COBC $LISTING_FLAGS -q -fsyntax-only -t- -fno-theader -ftcmd prog.cob" "listings.at:2055"
( $at_check_trace; $COBC $LISTING_FLAGS -q -fsyntax-only -t- -fno-theader -ftcmd prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "
000001
000002         IDENTIFICATION   DIVISION.
000003         FUNCTION-ID.     WITHPAR.
000004         DATA             DIVISION.
000005         LINKAGE          SECTION.
000006         01 PAR-IN        PIC 9.
000007         01 PAR-OUT       PIC 9.
000008         PROCEDURE DIVISION USING PAR-IN RETURNING PAR-OUT.
000009             ADD 1 TO PAR-IN GIVING PAR-OUT END-ADD.
000010             GOBACK.
000011         END FUNCTION WITHPAR.

command line:
  cobc -fttitle=GnuCOBOL_V.R.P -fno-ttimestamp -q -fsyntax-only -t-
+ -fno-theader -ftcmd prog.cob
0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2055"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:2076: \$COBC \$LISTING_FLAGS -q -std=default -Wall -fno-tmessages -fsyntax-only -t- -fno-tsymbols -ftcmd prog.cob"
at_fn_check_prepare_dynamic "$COBC $LISTING_FLAGS -q -std=default -Wall -fno-tmessages -fsyntax-only -t- -fno-tsymbols -ftcmd prog.cob" "listings.at:2076"
( $at_check_trace; $COBC $LISTING_FLAGS -q -std=default -Wall -fno-tmessages -fsyntax-only -t- -fno-tsymbols -ftcmd prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         FUNCTION-ID.     WITHPAR.
000004         DATA             DIVISION.
000005         LINKAGE          SECTION.
000006         01 PAR-IN        PIC 9.
000007         01 PAR-OUT       PIC 9.
000008         PROCEDURE DIVISION USING PAR-IN RETURNING PAR-OUT.
000009             ADD 1 TO PAR-IN GIVING PAR-OUT END-ADD.
000010             GOBACK.
000011         END FUNCTION WITHPAR.
GnuCOBOL V.R.P          prog.cob                                        Page 0002

command line:
  cobc -fttitle=GnuCOBOL_V.R.P -fno-ttimestamp -q -std=default -Wall
+ -fno-tmessages -fsyntax-only -t- -fno-tsymbols -ftcmd prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2076"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_492
#AT_START_493
at_fn_group_banner 493 'listings.at:2102' \
  "Wide listing" "                                   " 3
at_xfail=no
(
  $as_echo "493. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.                                       PROG001
       PROGRAM-ID.      prog.                                           PROG002
       DATA             DIVISION.                                       PROG003
       WORKING-STORAGE  SECTION.                                        PROG004
      /                                                                 PROG005
       PROCEDURE        DIVISION.                                       PROG006
           STOP RUN.                                                    PROG007
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2115: \$COMPILE_LISTING -T- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -T- prog.cob" "listings.at:2115"
( $at_check_trace; $COMPILE_LISTING -T- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                                                                 Page 0001

LINE    PG/LN  A...B............................................................SEQUENCE

000001
000002         IDENTIFICATION   DIVISION.                                       PROG001
000003         PROGRAM-ID.      prog.                                           PROG002
000004         DATA             DIVISION.                                       PROG003
000005         WORKING-STORAGE  SECTION.                                        PROG004
GnuCOBOL V.R.P          prog.cob                                                                                 Page 0002

LINE    PG/LN  A...B............................................................SEQUENCE

000006        /                                                                 PROG005
000007         PROCEDURE        DIVISION.                                       PROG006
000008             STOP RUN.                                                    PROG007


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2115"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

  IDENTIFICATION   DIVISION.
  PROGRAM-ID.      prog2.
  DATA             DIVISION.
  WORKING-STORAGE  SECTION.
  >> PAGE  page  feed  comment
  PROCEDURE        DIVISION.
 DISPLAY
 '3456&'.
  STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2150: \$COMPILE_LISTING -T- -free prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -T- -free prog2.cob" "listings.at:2150"
( $at_check_trace; $COMPILE_LISTING -T- -free prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog2.cob                                                                                Page 0001

LINE    .....................................................SOURCE.....................................................

000001
000002    IDENTIFICATION   DIVISION.
000003    PROGRAM-ID.      prog2.
000004    DATA             DIVISION.
000005    WORKING-STORAGE  SECTION.
GnuCOBOL V.R.P          prog2.cob                                                                                Page 0002

LINE    .....................................................SOURCE.....................................................

000006    >> PAGE  page  feed  comment
000007    PROCEDURE        DIVISION.
000008   DISPLAY
000009   '3456&'.
000010    STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2150"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_493
#AT_START_494
at_fn_group_banner 494 'listings.at:2178' \
  "Symbols: simple" "                                " 3
at_xfail=no
(
  $as_echo "494. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 WS-ONE    PIC 9(4) VALUE 37.
       01 WS-TWO    PIC A(4) VALUE 'HIGH'.
       01 WS-THREE  PIC X(4) VALUE 'BAR'.
       01 WS-FOUR            COMP-1 VALUE 37.
       01 WS-FIVE            COMP-2 VALUE 37.
       01 WS-SIX    PIC S999 COMP-3 VALUE -37.
       01 WS-SEVEN  PIC $$,$$$,$$9.99 VALUE ZERO.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2199: \$COMPILE_LISTING0 -t- -fno-tmessages -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -fno-tmessages -ftsymbols prog.cob" "listings.at:2199"
( $at_check_trace; $COMPILE_LISTING0 -t- -fno-tmessages -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         01 WS-ONE    PIC 9(4) VALUE 37.
000007         01 WS-TWO    PIC A(4) VALUE 'HIGH'.
000008         01 WS-THREE  PIC X(4) VALUE 'BAR'.
000009         01 WS-FOUR            COMP-1 VALUE 37.
000010         01 WS-FIVE            COMP-2 VALUE 37.
000011         01 WS-SIX    PIC S999 COMP-3 VALUE -37.
000012         01 WS-SEVEN  PIC \$\$,\$\$\$,\$\$9.99 VALUE ZERO.
000013         PROCEDURE        DIVISION.
000014             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00004 NUMERIC        01   WS-ONE                         9(4)

00004 ALPHABETIC     01   WS-TWO                         A(4)

00004 ALPHANUMERIC   01   WS-THREE                       X(4)

00004 NUMERIC        01   WS-FOUR                        S9(7)V9(8) COMP-1

00008 NUMERIC        01   WS-FIVE                        S9(17)V9(17) COMP-2

00002 NUMERIC        01   WS-SIX                         S999 COMP-3

00013 NUMERIC        01   WS-SEVEN                       \$\$,\$\$\$,\$\$9.99


" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2199"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 WS-ONE    PIC 9(4).
       01 WS-TWO    PIC A(4).
       01 WS-THREE  PIC X(4).
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2252: \$COMPILE_LISTING0 -t- -fno-tmessages -fno-tsource -ftsymbols prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -fno-tmessages -fno-tsource -ftsymbols prog2.cob" "listings.at:2252"
( $at_check_trace; $COMPILE_LISTING0 -t- -fno-tmessages -fno-tsource -ftsymbols prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog2.cob

SIZE  TYPE           LVL  NAME                           PICTURE

      LINKAGE SECTION

00004 NUMERIC        01   WS-ONE                         9(4)

00004 ALPHABETIC     01   WS-TWO                         A(4)

00004 ALPHANUMERIC   01   WS-THREE                       X(4)


" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2252"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 WS-ONE    PIC 9(4) VALUE 37.
       01 WS-TWO    PIC A(4) VALUE 'HIGH'.
       01 WS-THREE  PIC X(4) VALUE 'BAR'.
       01 WS-FOUR            COMP-1 VALUE 37.
       01 WS-FIVE            COMP-2 VALUE 37.
       01 WS-SIX    PIC S999 COMP-3 VALUE -37.
       01 WS-SEVEN  PIC $$,$$$,$$9.99 VALUE ZERO.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2284: \$COMPILE_LISTING0 -t prog.lst -fno-tsource -fno-tmessages -ftsymbols prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t prog.lst -fno-tsource -fno-tmessages -ftsymbols prog3.cob" "listings.at:2284"
( $at_check_trace; $COMPILE_LISTING0 -t prog.lst -fno-tsource -fno-tmessages -ftsymbols prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2284"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


cat >prog15-1.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog3.cob

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00004 NUMERIC        01   WS-ONE                         9(4)

00004 ALPHABETIC     01   WS-TWO                         A(4)

00004 ALPHANUMERIC   01   WS-THREE                       X(4)

00004 NUMERIC        01   WS-FOUR                        S9(7)V9(8) COMP-1

00008 NUMERIC        01   WS-FIVE                        S9(17)V9(17) COMP-2

00002 NUMERIC        01   WS-SIX                         S999 COMP-3

00013 NUMERIC        01   WS-SEVEN                       $$,$$$,$$9.99


_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2310: diff prog15-1.lst prog.lst"
at_fn_check_prepare_trace "listings.at:2310"
( $at_check_trace; diff prog15-1.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2310"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


# verify that the symbol listing is identical if full codegen was done
{ set +x
$as_echo "$at_srcdir/listings.at:2313: \$COMPILE \$LISTING_FLAGS -t prog2.lst -tlines=0 -fno-tsource -fno-tmessages -ftsymbols prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE $LISTING_FLAGS -t prog2.lst -tlines=0 -fno-tsource -fno-tmessages -ftsymbols prog3.cob" "listings.at:2313"
( $at_check_trace; $COMPILE $LISTING_FLAGS -t prog2.lst -tlines=0 -fno-tsource -fno-tmessages -ftsymbols prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2313"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:2315: diff prog15-1.lst prog2.lst"
at_fn_check_prepare_trace "listings.at:2315"
( $at_check_trace; diff prog15-1.lst prog2.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2315"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_494
#AT_START_495
at_fn_group_banner 495 'listings.at:2320' \
  "Symbols: pointer" "                               " 3
at_xfail=no
(
  $as_echo "495. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  WS-Where           pic x(512).

       01  ws-mysql.
           02  ws-mysql-cid                        usage pointer.
           02  ws-mysql-result                     usage pointer.
           02  ws-mysql-result-2                   usage pointer.
           02  ws-mysql-result-3                   usage pointer.
           02  ws-mysql-count-rows                 pic s9(9) comp.
           02  ws-mysql-error-number               pic x(4).
           02  ws-mysql-error-message              pic x(80).
           02  ws-mysql-host-name                  pic x(64).
           02  ws-mysql-implementation             pic x(64).
           02  ws-mysql-password                   pic x(64).
           02  ws-mysql-base-name                  pic x(64).
           02  ws-mysql-port-number                pic x(4).
           02  ws-mysql-socket                     pic x(64).
           02  ws-mysql-command                    pic x(4096).

       01  ws-No-Paragraph pic 9(4).
       local-storage section.
       01  subscripts usage comp-5.
           12 J                    pic s9(4).
           12 K                    pic s9(4).
           12 L                    pic s9(4).

       SCREEN           SECTION.
       01  Display-Message-1 foreground-color 2.
           03  value "WS-Where=" line 23 col  1.
           03  from WS-Where (1:J) pic x(69) col 10.
       01  Display-Message-2 foreground-color 2.
           03  value "ST004 SQL Err No.=" line 4 col  1.
           03  using ws-mysql-error-number pic x(4) col 19.
           03  value " Para=" col 23.
           03  using WS-No-Paragraph pic 9(3) col 29.
           03  value " SQL Cmd=" col 32.
           03  using ws-mysql-command pic x(199) col 41.
           03  value "SQL Err Msg=" line 7 col  1.
           03  using ws-mysql-error-message pic x(67) col 13.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2372: \$COMPILE_LISTING0 -t prog.lst -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t prog.lst -ftsymbols prog.cob" "listings.at:2372"
( $at_check_trace; $COMPILE_LISTING0 -t prog.lst -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2372"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:2374: test \"\$COB_HAS_64_BIT_POINTER\" = \"yes\""
at_fn_check_prepare_dynamic "test \"$COB_HAS_64_BIT_POINTER\" = \"yes\"" "listings.at:2374"
( $at_check_trace; test "$COB_HAS_64_BIT_POINTER" = "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2374"
if $at_failed; then :
  # Previous test "failed" --> 32 bit

cat >prog17-32.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         77  WS-Where           pic x(512).
000007
000008         01  ws-mysql.
000009             02  ws-mysql-cid                        usage pointer.
000010             02  ws-mysql-result                     usage pointer.
000011             02  ws-mysql-result-2                   usage pointer.
000012             02  ws-mysql-result-3                   usage pointer.
000013             02  ws-mysql-count-rows                 pic s9(9) comp.
000014             02  ws-mysql-error-number               pic x(4).
000015             02  ws-mysql-error-message              pic x(80).
000016             02  ws-mysql-host-name                  pic x(64).
000017             02  ws-mysql-implementation             pic x(64).
000018             02  ws-mysql-password                   pic x(64).
000019             02  ws-mysql-base-name                  pic x(64).
000020             02  ws-mysql-port-number                pic x(4).
000021             02  ws-mysql-socket                     pic x(64).
000022             02  ws-mysql-command                    pic x(4096).
000023
000024         01  ws-No-Paragraph pic 9(4).
000025         local-storage section.
000026         01  subscripts usage comp-5.
000027             12 J                    pic s9(4).
000028             12 K                    pic s9(4).
000029             12 L                    pic s9(4).
000030
000031         SCREEN           SECTION.
000032         01  Display-Message-1 foreground-color 2.
000033             03  value "WS-Where=" line 23 col  1.
000034             03  from WS-Where (1:J) pic x(69) col 10.
000035         01  Display-Message-2 foreground-color 2.
000036             03  value "ST004 SQL Err No.=" line 4 col  1.
000037             03  using ws-mysql-error-number pic x(4) col 19.
000038             03  value " Para=" col 23.
000039             03  using WS-No-Paragraph pic 9(3) col 29.
000040             03  value " SQL Cmd=" col 32.
000041             03  using ws-mysql-command pic x(199) col 41.
000042             03  value "SQL Err Msg=" line 7 col  1.
000043             03  using ws-mysql-error-message pic x(67) col 13.
000044         PROCEDURE        DIVISION.
000045             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00512 ALPHANUMERIC   77   WS-Where                       X(512)

04524 GROUP          01   ws-mysql
00004 POINTER        02   ws-mysql-cid
00004 POINTER        02   ws-mysql-result
00004 POINTER        02   ws-mysql-result-2
00004 POINTER        02   ws-mysql-result-3
00004 NUMERIC        02   ws-mysql-count-rows            S9(9) COMP
00004 ALPHANUMERIC   02   ws-mysql-error-number          X(4)
00080 ALPHANUMERIC   02   ws-mysql-error-message         X(80)
00064 ALPHANUMERIC   02   ws-mysql-host-name             X(64)
00064 ALPHANUMERIC   02   ws-mysql-implementation        X(64)
00064 ALPHANUMERIC   02   ws-mysql-password              X(64)
00064 ALPHANUMERIC   02   ws-mysql-base-name             X(64)
00004 ALPHANUMERIC   02   ws-mysql-port-number           X(4)
00064 ALPHANUMERIC   02   ws-mysql-socket                X(64)
04096 ALPHANUMERIC   02   ws-mysql-command               X(4096)

00004 NUMERIC        01   ws-No-Paragraph                9(4)

      LOCAL-STORAGE SECTION

00006 GROUP          01   subscripts
00002 NUMERIC        12   J                              S9(4) COMP-5
00002 NUMERIC        12   K                              S9(4) COMP-5
00002 NUMERIC        12   L                              S9(4) COMP-5

      SCREEN SECTION

00078 GROUP          01   Display-Message-1
00009 ALPHANUMERIC   03   FILLER                         X(9)
00069 ALPHANUMERIC   03   FILLER                         X(69)

00318 GROUP          01   Display-Message-2
00018 ALPHANUMERIC   03   FILLER                         X(18)
00004 ALPHANUMERIC   03   FILLER                         X(4)
00006 ALPHANUMERIC   03   FILLER                         X(6)
00003 NUMERIC        03   FILLER                         9(3)
00009 ALPHANUMERIC   03   FILLER                         X(9)
00199 ALPHANUMERIC   03   FILLER                         X(199)
00012 ALPHANUMERIC   03   FILLER                         X(12)
00067 ALPHANUMERIC   03   FILLER                         X(67)


0 warnings in compilation group
0 errors in compilation group
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2481: diff prog17-32.lst prog.lst"
at_fn_check_prepare_trace "listings.at:2481"
( $at_check_trace; diff prog17-32.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2481"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }



else
  # Previous test "passed" --> 64 bit

cat >prog17-64.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         77  WS-Where           pic x(512).
000007
000008         01  ws-mysql.
000009             02  ws-mysql-cid                        usage pointer.
000010             02  ws-mysql-result                     usage pointer.
000011             02  ws-mysql-result-2                   usage pointer.
000012             02  ws-mysql-result-3                   usage pointer.
000013             02  ws-mysql-count-rows                 pic s9(9) comp.
000014             02  ws-mysql-error-number               pic x(4).
000015             02  ws-mysql-error-message              pic x(80).
000016             02  ws-mysql-host-name                  pic x(64).
000017             02  ws-mysql-implementation             pic x(64).
000018             02  ws-mysql-password                   pic x(64).
000019             02  ws-mysql-base-name                  pic x(64).
000020             02  ws-mysql-port-number                pic x(4).
000021             02  ws-mysql-socket                     pic x(64).
000022             02  ws-mysql-command                    pic x(4096).
000023
000024         01  ws-No-Paragraph pic 9(4).
000025         local-storage section.
000026         01  subscripts usage comp-5.
000027             12 J                    pic s9(4).
000028             12 K                    pic s9(4).
000029             12 L                    pic s9(4).
000030
000031         SCREEN           SECTION.
000032         01  Display-Message-1 foreground-color 2.
000033             03  value "WS-Where=" line 23 col  1.
000034             03  from WS-Where (1:J) pic x(69) col 10.
000035         01  Display-Message-2 foreground-color 2.
000036             03  value "ST004 SQL Err No.=" line 4 col  1.
000037             03  using ws-mysql-error-number pic x(4) col 19.
000038             03  value " Para=" col 23.
000039             03  using WS-No-Paragraph pic 9(3) col 29.
000040             03  value " SQL Cmd=" col 32.
000041             03  using ws-mysql-command pic x(199) col 41.
000042             03  value "SQL Err Msg=" line 7 col  1.
000043             03  using ws-mysql-error-message pic x(67) col 13.
000044         PROCEDURE        DIVISION.
000045             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00512 ALPHANUMERIC   77   WS-Where                       X(512)

04540 GROUP          01   ws-mysql
00008 POINTER        02   ws-mysql-cid
00008 POINTER        02   ws-mysql-result
00008 POINTER        02   ws-mysql-result-2
00008 POINTER        02   ws-mysql-result-3
00004 NUMERIC        02   ws-mysql-count-rows            S9(9) COMP
00004 ALPHANUMERIC   02   ws-mysql-error-number          X(4)
00080 ALPHANUMERIC   02   ws-mysql-error-message         X(80)
00064 ALPHANUMERIC   02   ws-mysql-host-name             X(64)
00064 ALPHANUMERIC   02   ws-mysql-implementation        X(64)
00064 ALPHANUMERIC   02   ws-mysql-password              X(64)
00064 ALPHANUMERIC   02   ws-mysql-base-name             X(64)
00004 ALPHANUMERIC   02   ws-mysql-port-number           X(4)
00064 ALPHANUMERIC   02   ws-mysql-socket                X(64)
04096 ALPHANUMERIC   02   ws-mysql-command               X(4096)

00004 NUMERIC        01   ws-No-Paragraph                9(4)

      LOCAL-STORAGE SECTION

00006 GROUP          01   subscripts
00002 NUMERIC        12   J                              S9(4) COMP-5
00002 NUMERIC        12   K                              S9(4) COMP-5
00002 NUMERIC        12   L                              S9(4) COMP-5

      SCREEN SECTION

00078 GROUP          01   Display-Message-1
00009 ALPHANUMERIC   03   FILLER                         X(9)
00069 ALPHANUMERIC   03   FILLER                         X(69)

00318 GROUP          01   Display-Message-2
00018 ALPHANUMERIC   03   FILLER                         X(18)
00004 ALPHANUMERIC   03   FILLER                         X(4)
00006 ALPHANUMERIC   03   FILLER                         X(6)
00003 NUMERIC        03   FILLER                         9(3)
00009 ALPHANUMERIC   03   FILLER                         X(9)
00199 ALPHANUMERIC   03   FILLER                         X(199)
00012 ALPHANUMERIC   03   FILLER                         X(12)
00067 ALPHANUMERIC   03   FILLER                         X(67)


0 warnings in compilation group
0 errors in compilation group
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2590: diff prog17-64.lst prog.lst"
at_fn_check_prepare_trace "listings.at:2590"
( $at_check_trace; diff prog17-64.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2590"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }



fi
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_495
#AT_START_496
at_fn_group_banner 496 'listings.at:2598' \
  "Symbols: multiple programs/functions" "           " 3
at_xfail=no
(
  $as_echo "496. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     WITHPAR.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR-IN        PIC 9.
       01 PAR-OUT       PIC 9.
       PROCEDURE DIVISION USING PAR-IN RETURNING PAR-OUT.
           ADD 1 TO PAR-IN GIVING PAR-OUT END-ADD.
           GOBACK.
       END FUNCTION WITHPAR.

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     WITHOUTPAR.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR           PIC 9.
       PROCEDURE DIVISION RETURNING PAR.
           MOVE 1 TO PAR.
           GOBACK.
       END FUNCTION WITHOUTPAR.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       REPOSITORY.
           FUNCTION     WITHPAR
           FUNCTION     WITHOUTPAR.
       PROCEDURE        DIVISION.
           IF WITHPAR(1) NOT = 2
              DISPLAY WITHPAR(1)
              END-DISPLAY
           END-IF.
           IF WITHOUTPAR NOT = 1
              DISPLAY WITHOUTPAR
              END-DISPLAY
           END-IF.
           STOP RUN.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2643: \$COMPILE_LISTING -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- -ftsymbols prog.cob" "listings.at:2643"
( $at_check_trace; $COMPILE_LISTING -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         FUNCTION-ID.     WITHPAR.
000004         DATA             DIVISION.
000005         LINKAGE          SECTION.
000006         01 PAR-IN        PIC 9.
000007         01 PAR-OUT       PIC 9.
000008         PROCEDURE DIVISION USING PAR-IN RETURNING PAR-OUT.
000009             ADD 1 TO PAR-IN GIVING PAR-OUT END-ADD.
000010             GOBACK.
000011         END FUNCTION WITHPAR.
000012
000013         IDENTIFICATION   DIVISION.
000014         FUNCTION-ID.     WITHOUTPAR.
000015         DATA             DIVISION.
000016         LINKAGE          SECTION.
000017         01 PAR           PIC 9.
000018         PROCEDURE DIVISION RETURNING PAR.
000019             MOVE 1 TO PAR.
000020             GOBACK.
000021         END FUNCTION WITHOUTPAR.
000022
000023         IDENTIFICATION   DIVISION.
000024         PROGRAM-ID.      prog.
000025         ENVIRONMENT      DIVISION.
000026         CONFIGURATION    SECTION.
000027         REPOSITORY.
000028             FUNCTION     WITHPAR
000029             FUNCTION     WITHOUTPAR.
000030         PROCEDURE        DIVISION.
000031             IF WITHPAR(1) NOT = 2
000032                DISPLAY WITHPAR(1)
000033                END-DISPLAY
000034             END-IF.
000035             IF WITHOUTPAR NOT = 1
000036                DISPLAY WITHOUTPAR
000037                END-DISPLAY
000038             END-IF.
000039             STOP RUN.
000040         END PROGRAM prog.
GnuCOBOL V.R.P          prog.cob                                        Page 0002

SIZE  TYPE           LVL  NAME                           PICTURE

      FUNCTION            WITHPAR

      LINKAGE SECTION

00001 NUMERIC        01   PAR-IN                         9

00001 NUMERIC        01   PAR-OUT                        9

      FUNCTION            WITHOUTPAR

      LINKAGE SECTION

00001 NUMERIC        01   PAR                            9

      PROGRAM             prog

      No fields defined.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2643"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_496
#AT_START_497
at_fn_group_banner 497 'listings.at:2718' \
  "Symbols: OCCURS and REDEFINES" "                  " 3
at_xfail=no
(
  $as_echo "497. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78  I   VALUE 20.
       78  J   VALUE 5000.
       78  M   VALUE 5.
       01  SETUP-REC.
           05  FL1       PIC X(04).
           05  FL2       PIC ZZZZZ.
           05  FL3       PIC 9(04).
           05  FL4       PIC 9(08) COMP.
           05  FL5       PIC 9(04) COMP-4.
           05  FL6       PIC Z,ZZZ.99.
           05  FL7       PIC S9(05) SIGN LEADING SEPARATE.
           05  FL8       PIC X(04).
           05  FL9 REDEFINES FL8 PIC 9(04).
           05  FLA.
               10  FLB OCCURS I TIMES.
                   15  FLC PIC X(02).
               10  FLD   PIC X(20).
           05  FLD1      PIC X(100).
           05  FLD2 OCCURS M TO J TIMES DEPENDING ON FL5.
               10  FILLER PIC X(01).
           05  FLD3      PIC X(3).
           05  FLD4      PIC X(4).
       LINKAGE          SECTION.
       01  O1  PIC X OCCURS UNBOUNDED DEPENDING ON FL4.
       01  O2.
           05  O-START   PIC X(42).
           05  FILLER    OCCURS UNBOUNDED DEPENDING ON FL9.
             07  O-ENTRY.
               10  O-E1  PIC 9(24).
               10  O-E2  PIC XXX.
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2762: \$COMPILE_LISTING -fcomplex-odo -t- -fno-tsource -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -fcomplex-odo -t- -fno-tsource -ftsymbols prog.cob" "listings.at:2762"
( $at_check_trace; $COMPILE_LISTING -fcomplex-odo -t- -fno-tsource -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

05204 GROUP          01   SETUP-REC
00004 ALPHANUMERIC   05   FL1                            X(04)
00005 NUMERIC        05   FL2                            ZZZZZ
00004 NUMERIC        05   FL3                            9(04)
00004 NUMERIC        05   FL4                            9(08) COMP
00002 NUMERIC        05   FL5                            9(04) COMP
00008 NUMERIC        05   FL6                            Z,ZZZ.99
00006 NUMERIC        05   FL7                            S9(05)
00004 ALPHANUMERIC   05   FL8                            X(04)
00004 NUMERIC        05   FL9                            9(04), REDEFINES FL8
00060 GROUP          05   FLA
00040 GROUP          10   FLB                            OCCURS 20
00002 ALPHANUMERIC   15   FLC                            X(02)
00020 ALPHANUMERIC   10   FLD                            X(20)
00100 ALPHANUMERIC   05   FLD1                           X(100)
05000 GROUP          05   FLD2                           OCCURS 5 TO 5000
00001 ALPHANUMERIC   10   FILLER                         X(01)
00003 ALPHANUMERIC   05   FLD3                           X(3)
00004 ALPHANUMERIC   05   FLD4                           X(4)

      LINKAGE SECTION

????? ALPHANUMERIC   01   O1                             X, OCCURS 0 TO UNBOUNDED

????? GROUP          01   O2
00042 ALPHANUMERIC   05   O-START                        X(42)
????? GROUP          05   FILLER                         OCCURS 0 TO UNBOUNDED
00027 GROUP          07   O-ENTRY
00024 NUMERIC        10   O-E1                           9(24)
00003 ALPHANUMERIC   10   O-E2                           XXX


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2762"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_497
#AT_START_498
at_fn_group_banner 498 'listings.at:2808' \
  "Conditional compilation" "                        " 3
at_xfail=no
(
  $as_echo "498. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       >>IF ACTIVATE DEFINED
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>ELIF ACTIVATE2 DEFINED
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
       >>ELSE
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>END-IF
           STOP RUN.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
      $IF ACTIVATE DEFINED
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
      $ELIF ACTIVATE2 DEFINED
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
      $ELSE
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
      $END
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:2848: \$COMPILE_LISTING -DACTIVATE2 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -DACTIVATE2 -t- prog.cob" "listings.at:2848"
( $at_check_trace; $COMPILE_LISTING -DACTIVATE2 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         PROCEDURE        DIVISION.
000007         >>IF ACTIVATE DEFINED
000008X            DISPLAY \"NOTOK\" NO ADVANCING
000009X            END-DISPLAY
000010         >>ELIF ACTIVATE2 DEFINED
000011             DISPLAY \"OK\" NO ADVANCING
000012             END-DISPLAY
000013         >>ELSE
000014X            DISPLAY \"NOTOK\" NO ADVANCING
000015X            END-DISPLAY
000016         >>END-IF
000017             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2848"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:2876: \$COMPILE_LISTING -DACTIVATE2 -t- prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -DACTIVATE2 -t- prog2.cob" "listings.at:2876"
( $at_check_trace; $COMPILE_LISTING -DACTIVATE2 -t- prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog2.cob                                       Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog2.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         PROCEDURE        DIVISION.
000007        \$IF ACTIVATE DEFINED
000008X            DISPLAY \"NOTOK\" NO ADVANCING
000009X            END-DISPLAY
000010        \$ELIF ACTIVATE2 DEFINED
000011             DISPLAY \"OK\" NO ADVANCING
000012             END-DISPLAY
000013        \$ELSE
000014X            DISPLAY \"NOTOK\" NO ADVANCING
000015X            END-DISPLAY
000016        \$END
000017             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:2876"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_498
#AT_START_499
at_fn_group_banner 499 'listings.at:2907' \
  "File descriptions" "                              " 3
at_xfail=no
(
  $as_echo "499. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OLD-VERSION  ASSIGN TO "SYSUT1"
                               ORGANIZATION LINE SEQUENTIAL.
           SELECT NEW-VERSION  ASSIGN TO "SYSUT2"
                               ORGANIZATION LINE SEQUENTIAL.
           SELECT PRT-VERSION  ASSIGN TO "SYSUT2"
                               ORGANIZATION LINE SEQUENTIAL.
           SELECT MODIFICATION ASSIGN TO "SYSIN1"
                               ORGANIZATION LINE SEQUENTIAL.
           SELECT COMMENTARY   ASSIGN TO "SYSOU1"
                               ORGANIZATION LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.

       FD  OLD-VERSION
           LABEL RECORDS ARE STANDARD
           BLOCK CONTAINS 80 CHARACTERS
           DATA RECORD IS OLD-RECORD.

       01  OLD-RECORD.
           02 OLD-STATEMENT       PICTURE X(75).
           02 OLD-NUMBER          PICTURE X(5).

       FD  NEW-VERSION
           LABEL RECORDS ARE STANDARD
           BLOCK CONTAINS 80 CHARACTERS
           DATA RECORD IS NEW-RECORD.

       01  NEW-RECORD.
           02 NEW-STATEMENT       PICTURE X(75).
           02 NEW-NUMBER          PICTURE X(5).

       FD  MODIFICATION
           LABEL RECORDS ARE OMITTED
           BLOCK CONTAINS 80 CHARACTERS
           DATA RECORD IS UPDATE-ORDER.

       01  UPDATE-ORDER.
           02 INSERTION.
              03 COMMAND          PICTURE X(6).
                 88 ENDJOB        VALUE "ENDJOB".
                 88 ENDSET        VALUE "ENDSET".
                 88 REMOVE        VALUE "REMOVE".
                 88 ADDNEW        VALUE "INSERT".
                 88 CHANGE        VALUE "CHANGE".
                 88 DISPLY        VALUE "DISPLY".
              03 FILLER           PICTURE X.
              03 A-FIELD          PICTURE 9(5).
              03 A-ALPHA REDEFINES A-FIELD    PICTURE X(5).
                 88 A-BLANK       VALUE SPACES.
              03 FILLER           PICTURE X(4).
              03 B-FIELD          PICTURE 9(5).
              03 B-ALPHA REDEFINES B-FIELD    PICTURE X(5).
                 88 B-BLANK       VALUE SPACES.
              03 FILLER           PICTURE X(54).
           02 FILLER              PICTURE X(5).

       FD  COMMENTARY
           LABEL RECORDS ARE OMITTED
           BLOCK CONTAINS 82 CHARACTERS
           DATA RECORD IS COMMENT-LINE.

       01  COMMENT-LINE.
           02 FILLER              PICTURE X(82).

       WORKING-STORAGE  SECTION.

       01  HEADINGS-LINE.
           02 FILLER              PICTURE X(15) VALUE "EDITOR VERSION".
           02 FILLER              PICTURE X(20) VALUE "1.1 - 206/72".
           02 PHASE               PICTURE X(17) VALUE "UPDATING AS OF".
           02 MONTH-RUN           PICTURE XX.
           02 FILLER              PICTURE X VALUE "/".
           02 DAY-RUN             PICTURE XX.
           02 FILLER              PICTURE X VALUE "/".
           02 YEAR-RUN            PICTURE XX.
           02 FILLER              PICTURE X(8) VALUE SPACES.
           02 FILLER              PICTURE X(8) VALUE "  PAGE: ".
           02 PAGE-NUMBER         PICTURE 9(4) VALUE 0.

       01  COMMAND-LISTING.
           02 FILLER              PICTURE X(2) VALUE SPACES.
           02 COMMAND-IMAGE       PICTURE X(80).

       01  ACTIVITIES-LISTING.
           02 DISPOSITION         PICTURE X(2).
           02 ACTIVE-IMAGE        PICTURE X(80).

       01  UPSI-BYTE.
           02 UPSI-BIT OCCURS 8 TIMES  PICTURE X.

       01  MESSAGE-LOG.
           02 FILLER              PICTURE X(2) VALUE SPACES.
           02 MESSAGE-TEXT        PICTURE X(80).

       01  DISPLAY-MESSAGE.
           02 FILLER              PICTURE X(2) VALUE SPACES.
           02 DISPLAY-TEMP        PICTURE X(6).
           02 FILLER              PICTURE X(2) VALUE SPACES.
           02 DISPLAY-TEXT        PICTURE X(60).

       PROCEDURE DIVISION.
           OPEN INPUT OLD-VERSION, MODIFICATION,
                OUTPUT NEW-VERSION, COMMENTARY.
           CLOSE OLD-VERSION, NEW-VERSION, MODIFICATION, COMMENTARY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3023: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:3023"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog.
000004         ENVIRONMENT DIVISION.
000005         INPUT-OUTPUT SECTION.
000006         FILE-CONTROL.
000007             SELECT OLD-VERSION  ASSIGN TO \"SYSUT1\"
000008                                 ORGANIZATION LINE SEQUENTIAL.
000009             SELECT NEW-VERSION  ASSIGN TO \"SYSUT2\"
000010                                 ORGANIZATION LINE SEQUENTIAL.
000011             SELECT PRT-VERSION  ASSIGN TO \"SYSUT2\"
error: missing file description for FILE PRT-VERSION
000012                                 ORGANIZATION LINE SEQUENTIAL.
000013             SELECT MODIFICATION ASSIGN TO \"SYSIN1\"
000014                                 ORGANIZATION LINE SEQUENTIAL.
000015             SELECT COMMENTARY   ASSIGN TO \"SYSOU1\"
000016                                 ORGANIZATION LINE SEQUENTIAL.
000017         DATA DIVISION.
000018         FILE SECTION.
000019
000020         FD  OLD-VERSION
000021             LABEL RECORDS ARE STANDARD
warning: LABEL RECORDS is obsolete in GnuCOBOL
000022             BLOCK CONTAINS 80 CHARACTERS
000023             DATA RECORD IS OLD-RECORD.
warning: DATA RECORDS is obsolete in GnuCOBOL
000024
000025         01  OLD-RECORD.
000026             02 OLD-STATEMENT       PICTURE X(75).
000027             02 OLD-NUMBER          PICTURE X(5).
000028
000029         FD  NEW-VERSION
000030             LABEL RECORDS ARE STANDARD
warning: LABEL RECORDS is obsolete in GnuCOBOL
000031             BLOCK CONTAINS 80 CHARACTERS
000032             DATA RECORD IS NEW-RECORD.
warning: DATA RECORDS is obsolete in GnuCOBOL
000033
000034         01  NEW-RECORD.
000035             02 NEW-STATEMENT       PICTURE X(75).
000036             02 NEW-NUMBER          PICTURE X(5).
000037
000038         FD  MODIFICATION
000039             LABEL RECORDS ARE OMITTED
warning: LABEL RECORDS is obsolete in GnuCOBOL
000040             BLOCK CONTAINS 80 CHARACTERS
000041             DATA RECORD IS UPDATE-ORDER.
warning: DATA RECORDS is obsolete in GnuCOBOL
000042
000043         01  UPDATE-ORDER.
000044             02 INSERTION.
000045                03 COMMAND          PICTURE X(6).
000046                   88 ENDJOB        VALUE \"ENDJOB\".
000047                   88 ENDSET        VALUE \"ENDSET\".
000048                   88 REMOVE        VALUE \"REMOVE\".
000049                   88 ADDNEW        VALUE \"INSERT\".
000050                   88 CHANGE        VALUE \"CHANGE\".
000051                   88 DISPLY        VALUE \"DISPLY\".
000052                03 FILLER           PICTURE X.
000053                03 A-FIELD          PICTURE 9(5).
000054                03 A-ALPHA REDEFINES A-FIELD    PICTURE X(5).
000055                   88 A-BLANK       VALUE SPACES.
000056                03 FILLER           PICTURE X(4).
000057                03 B-FIELD          PICTURE 9(5).
000058                03 B-ALPHA REDEFINES B-FIELD    PICTURE X(5).
000059                   88 B-BLANK       VALUE SPACES.
000060                03 FILLER           PICTURE X(54).
000061             02 FILLER              PICTURE X(5).
000062
000063         FD  COMMENTARY
000064             LABEL RECORDS ARE OMITTED
warning: LABEL RECORDS is obsolete in GnuCOBOL
000065             BLOCK CONTAINS 82 CHARACTERS
000066             DATA RECORD IS COMMENT-LINE.
warning: DATA RECORDS is obsolete in GnuCOBOL
000067
000068         01  COMMENT-LINE.
000069             02 FILLER              PICTURE X(82).
000070
000071         WORKING-STORAGE  SECTION.
000072
000073         01  HEADINGS-LINE.
000074             02 FILLER              PICTURE X(15) VALUE \"EDITOR VERSION\".
000075             02 FILLER              PICTURE X(20) VALUE \"1.1 - 206/72\".
000076             02 PHASE               PICTURE X(17) VALUE \"UPDATING AS OF\".
000077             02 MONTH-RUN           PICTURE XX.
000078             02 FILLER              PICTURE X VALUE \"/\".
000079             02 DAY-RUN             PICTURE XX.
000080             02 FILLER              PICTURE X VALUE \"/\".
000081             02 YEAR-RUN            PICTURE XX.
000082             02 FILLER              PICTURE X(8) VALUE SPACES.
000083             02 FILLER              PICTURE X(8) VALUE \"  PAGE: \".
000084             02 PAGE-NUMBER         PICTURE 9(4) VALUE 0.
000085
000086         01  COMMAND-LISTING.
000087             02 FILLER              PICTURE X(2) VALUE SPACES.
000088             02 COMMAND-IMAGE       PICTURE X(80).
000089
000090         01  ACTIVITIES-LISTING.
000091             02 DISPOSITION         PICTURE X(2).
000092             02 ACTIVE-IMAGE        PICTURE X(80).
000093
000094         01  UPSI-BYTE.
000095             02 UPSI-BIT OCCURS 8 TIMES  PICTURE X.
000096
000097         01  MESSAGE-LOG.
000098             02 FILLER              PICTURE X(2) VALUE SPACES.
000099             02 MESSAGE-TEXT        PICTURE X(80).
000100
000101         01  DISPLAY-MESSAGE.
000102             02 FILLER              PICTURE X(2) VALUE SPACES.
000103             02 DISPLAY-TEMP        PICTURE X(6).
000104             02 FILLER              PICTURE X(2) VALUE SPACES.
000105             02 DISPLAY-TEXT        PICTURE X(60).
000106
000107         PROCEDURE DIVISION.
000108             OPEN INPUT OLD-VERSION, MODIFICATION,
000109                  OUTPUT NEW-VERSION, COMMENTARY.
000110             CLOSE OLD-VERSION, NEW-VERSION, MODIFICATION, COMMENTARY.
000111             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

00080 FILE                OLD-VERSION
00080 GROUP          01   OLD-RECORD
00075 ALPHANUMERIC   02   OLD-STATEMENT                  X(75)
00005 ALPHANUMERIC   02   OLD-NUMBER                     X(5)

00080 FILE                NEW-VERSION
00080 GROUP          01   NEW-RECORD
00075 ALPHANUMERIC   02   NEW-STATEMENT                  X(75)
00005 ALPHANUMERIC   02   NEW-NUMBER                     X(5)

00032 FILE                PRT-VERSION

00080 FILE                MODIFICATION
00080 GROUP          01   UPDATE-ORDER
00075 GROUP          02   INSERTION
00006 ALPHANUMERIC   03   COMMAND                        X(6)
      CONDITIONAL    88   ENDJOB
      CONDITIONAL    88   ENDSET
      CONDITIONAL    88   REMOVE
      CONDITIONAL    88   ADDNEW
      CONDITIONAL    88   CHANGE
      CONDITIONAL    88   DISPLY
00001 ALPHANUMERIC   03   FILLER                         X
00005 NUMERIC        03   A-FIELD                        9(5)
00005 ALPHANUMERIC   03   A-ALPHA                        X(5), REDEFINES A-FIELD
      CONDITIONAL    88   A-BLANK
00004 ALPHANUMERIC   03   FILLER                         X(4)
00005 NUMERIC        03   B-FIELD                        9(5)
00005 ALPHANUMERIC   03   B-ALPHA                        X(5), REDEFINES B-FIELD
      CONDITIONAL    88   B-BLANK
00054 ALPHANUMERIC   03   FILLER                         X(54)
00005 ALPHANUMERIC   02   FILLER                         X(5)

00082 FILE                COMMENTARY
00082 GROUP          01   COMMENT-LINE
00082 ALPHANUMERIC   02   FILLER                         X(82)

      WORKING-STORAGE SECTION

00080 GROUP          01   HEADINGS-LINE
00015 ALPHANUMERIC   02   FILLER                         X(15)
00020 ALPHANUMERIC   02   FILLER                         X(20)
00017 ALPHANUMERIC   02   PHASE                          X(17)
00002 ALPHANUMERIC   02   MONTH-RUN                      XX
00001 ALPHANUMERIC   02   FILLER                         X
00002 ALPHANUMERIC   02   DAY-RUN                        XX
00001 ALPHANUMERIC   02   FILLER                         X
00002 ALPHANUMERIC   02   YEAR-RUN                       XX
00008 ALPHANUMERIC   02   FILLER                         X(8)
00008 ALPHANUMERIC   02   FILLER                         X(8)
00004 NUMERIC        02   PAGE-NUMBER                    9(4)

00082 GROUP          01   COMMAND-LISTING
00002 ALPHANUMERIC   02   FILLER                         X(2)
00080 ALPHANUMERIC   02   COMMAND-IMAGE                  X(80)

00082 GROUP          01   ACTIVITIES-LISTING
00002 ALPHANUMERIC   02   DISPOSITION                    X(2)
00080 ALPHANUMERIC   02   ACTIVE-IMAGE                   X(80)

00008 GROUP          01   UPSI-BYTE
00001 ALPHANUMERIC   02   UPSI-BIT                       X, OCCURS 8

00082 GROUP          01   MESSAGE-LOG
00002 ALPHANUMERIC   02   FILLER                         X(2)
00080 ALPHANUMERIC   02   MESSAGE-TEXT                   X(80)

00070 GROUP          01   DISPLAY-MESSAGE
00002 ALPHANUMERIC   02   FILLER                         X(2)
00006 ALPHANUMERIC   02   DISPLAY-TEMP                   X(6)
00002 ALPHANUMERIC   02   FILLER                         X(2)
00060 ALPHANUMERIC   02   DISPLAY-TEXT                   X(60)



Error/Warning summary:

prog.cob:11: error: missing file description for FILE PRT-VERSION
prog.cob:21: warning: LABEL RECORDS is obsolete in GnuCOBOL
prog.cob:23: warning: DATA RECORDS is obsolete in GnuCOBOL
prog.cob:30: warning: LABEL RECORDS is obsolete in GnuCOBOL
prog.cob:32: warning: DATA RECORDS is obsolete in GnuCOBOL
prog.cob:39: warning: LABEL RECORDS is obsolete in GnuCOBOL
prog.cob:41: warning: DATA RECORDS is obsolete in GnuCOBOL
prog.cob:64: warning: LABEL RECORDS is obsolete in GnuCOBOL
prog.cob:66: warning: DATA RECORDS is obsolete in GnuCOBOL

8 warnings in compilation group
1 error in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:3023"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_499
#AT_START_500
at_fn_group_banner 500 'listings.at:3245' \
  "Invalid PICTURE strings" "                        " 3
at_xfail=no
(
  $as_echo "500. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  empty-pic PIC.
       01  too-long-pic PIC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
       01  too-long-pic2 PIC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
       01  multiple-symbols.
           03  PIC 9CRCR.
           03  PIC 9DBDB.
           03  PIC SS99S.
           03  PIC 99..9.
           03  PIC 99VV9.
           03  PIC +$99+.
           03  PIC $+99$-.
       01  non-symbols.
           03  PIC 9K.
           03  PIC 999C.
           03  PIC 999D.
       01  too-many-digits PIC 9(50).
       01  too-long-number-in-parens PIC 9(11111111111111).
       01  nested-parens PIC 9((100)).
       01  unbalanced-parens PIC 9(.
       01  multiple-pairs-of-parens PIC 9(5)(3).
       01  no-digit-in-parens PIC 9().
       01  mutually-exclusive-symbols.
           03  PIC P(3)9.9.
           03  PIC 9V.9.
           03  PIC Z*.
           03  PIC +(5)--.
           03  PIC $(4)Z(9).
           03  PIC $$B*(4).
           03  PIC NX.
           03  PIC AN.
           03  PIC AZ(3).
           03  PIC 99.99XXXXX.
           03  PIC SA.
           03  PIC $$$B+++B---.
           03  PIC +++9+.
           03  PIC +9(5)CR.
           03  PIC -9(5)DB.
       01 non-rightmost-leftmost-symbols.
           03  PIC BBB+BB99.
           03  PIC 99-B.
           03  PIC 9CRB.
           03  PIC DB9(5).
           03  PIC 99$$$.
           03  PIC 99$B.
           03  PIC 0$99.
           03  PIC PPPVP9.
       01  missing-symbols.
           03  PIC B(5).
           03  PIC +.
           03  PIC $.

       01  str-constant CONSTANT "hello".
       01  float-constant CONSTANT 1.0.
       01  signed-constant CONSTANT -1.
       01  invalid-constant.
           03  PIC X(str-constant).
           03  PIC X(float-constant).
           03  PIC X(signed-constant).
           03  PIC X(unseen-constant).

       01  integer-constant CONSTANT 5.
       01  valid-pics.
           03  PIC VP9B.
           03  PIC B9P(3).
           03  PIC B$$$.
           03  PIC 0000+B0+++0B,+.
           03  PIC +(5)P(3).
           03  PIC ++.++.
           03  PIC $(integer-constant).
           03  PIC $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
      -(integer-constant).   *> CHECKME: should this be really valid?


       01  PC-COLOR-BACKGROUND-TABLE.
           05  BIT-BACKGROUND-BLACK      PIC 1(8) BIT VALUE B"00000000".
           05  BIT-BACKGROUND-BLUE       PIC 1(8) BIT VALUE B"00010000".
           05  BIT-BACKGROUND-GREEN      PIC 1(8) BIT VALUE B"00100000".
           05  BIT-BACKGROUND-CYAN       PIC 1(8) BIT VALUE B"00110000".
           05  BIT-BACKGROUND-RED        PIC 1(8) BIT VALUE B"01000000".
           05  BIT-BACKGROUND-MAGENTA    PIC 1(8) BIT VALUE B"01010000".
           05  BIT-BACKGROUND-BROWN      PIC 1(8) BIT VALUE B"01100000".
           05  BIT-BACKGROUND-LIGHT-GRAY PIC 1(8) BIT VALUE B"01110000".
       01  FILLER REDEFINES PC-COLOR-BACKGROUND-TABLE.
           05  COLOR-BACKGROUND
               OCCURS 8 TIMES            PIC 1(8) BIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3348: \$COMPILE_LISTING0 -t prog.lst -ftsymbols -Wno-pending -Wno-unfinished -fword-continuation=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t prog.lst -ftsymbols -Wno-pending -Wno-unfinished -fword-continuation=ok prog.cob" "listings.at:3348"
( $at_check_trace; $COMPILE_LISTING0 -t prog.lst -ftsymbols -Wno-pending -Wno-unfinished -fword-continuation=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:3348"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


cat >expected.lst <<'_ATEOF'
GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog.
000004
000005         DATA DIVISION.
000006         WORKING-STORAGE SECTION.
000007         01  empty-pic PIC.
error: missing PICTURE string
000008         01  too-long-pic PIC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
000009        -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
000010         01  too-long-pic2 PIC XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
error: PICTURE string may not contain more than 255 characters; contains 301
     + characters
000011        -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
000012        -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
000013        -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
000014        -XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
000015         01  multiple-symbols.
000016             03  PIC 9CRCR.
error: CR or DB may only occur once in a PICTURE string
000017             03  PIC 9DBDB.
error: CR or DB may only occur once in a PICTURE string
000018             03  PIC SS99S.
error: S may only occur once in a PICTURE string
error: S must be at start of PICTURE string
000019             03  PIC 99..9.
error: . may only occur once in a PICTURE string
000020             03  PIC 99VV9.
error: V may only occur once in a PICTURE string
000021             03  PIC +$99+.
error: a trailing +/- sign cannot follow a leading +/- sign
000022             03  PIC $+99$-.
error: a leading +/- sign cannot follow a leading currency symbol
error: a trailing currency symbol cannot follow a leading currency symbol
error: a trailing +/- sign cannot follow a leading +/- sign
000023         01  non-symbols.
000024             03  PIC 9K.
error: invalid PICTURE character 'K'
000025             03  PIC 999C.
error: C must be followed by R
000026             03  PIC 999D.
error: D must be followed by B
000027         01  too-many-digits PIC 9(50).
error: numeric field cannot be larger than 38 digits
000028         01  too-long-number-in-parens PIC 9(11111111111111).
error: only up to 10 significant digits are permitted within parentheses
000029         01  nested-parens PIC 9((100)).
error: parentheses must be preceded by a picture symbol
000030         01  unbalanced-parens PIC 9(.
error: unbalanced parentheses
000031         01  multiple-pairs-of-parens PIC 9(5)(3).
error: parentheses must be preceded by a picture symbol
000032         01  no-digit-in-parens PIC 9().
error: parentheses must contain an unsigned integer
000033         01  mutually-exclusive-symbols.
000034             03  PIC P(3)9.9.
error: . cannot follow a P which is after the decimal point
000035             03  PIC 9V.9.
error: . cannot follow V
000036             03  PIC Z*.
error: cannot have both Z and * in PICTURE string
000037             03  PIC +(5)--.
error: a trailing +/- sign cannot follow a floating +/- string which is before
     + the decimal point
error: a trailing +/- sign may only occur once in a PICTURE string
000038             03  PIC $(4)Z(9).
error: a Z or * which is before the decimal point cannot follow a floating
     + currency symbol string which is before the decimal point
000039             03  PIC $$B*(4).
error: a Z or * which is before the decimal point cannot follow a floating
     + currency symbol string which is before the decimal point
000040             03  PIC NX.
error: A or X cannot follow N
000041             03  PIC AN.
error: N cannot follow A or X
000042             03  PIC AZ(3).
error: a Z or * which is before the decimal point cannot follow A or X
000043             03  PIC 99.99XXXXX.
error: A or X cannot follow .
000044             03  PIC SA.
error: A or X cannot follow S
000045             03  PIC $$$B+++B---.
error: a leading +/- sign cannot follow B, 0 or /
error: a leading +/- sign cannot follow a floating currency symbol string
     + which is before the decimal point
error: a leading +/- sign may only occur once in a PICTURE string
error: a trailing +/- sign cannot follow a leading +/- sign
error: a trailing +/- sign may only occur once in a PICTURE string
000046             03  PIC +++9+.
error: a trailing +/- sign cannot follow a floating +/- string which is before
     + the decimal point
000047             03  PIC +9(5)CR.
error: CR or DB cannot follow a leading +/- sign
000048             03  PIC -9(5)DB.
error: CR or DB cannot follow a leading +/- sign
000049         01 non-rightmost-leftmost-symbols.
000050             03  PIC BBB+BB99.
error: a leading +/- sign cannot follow B, 0 or /
000051             03  PIC 99-B.
error: a leading +/- sign cannot follow 9
000052             03  PIC 9CRB.
error: B, 0 or / cannot follow CR or DB
000053             03  PIC DB9(5).
error: 9 cannot follow CR or DB
000054             03  PIC 99$$$.
error: a floating currency symbol string which is before the decimal point
     + cannot follow 9
000055             03  PIC 99$B.
error: a leading currency symbol cannot follow 9
000056             03  PIC 0$99.
error: a leading currency symbol cannot follow B, 0 or /
000057             03  PIC PPPVP9.
error: P must be at start or end of PICTURE string
error: V cannot follow a P which is after the decimal point
000058         01  missing-symbols.
000059             03  PIC B(5).
error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9
     + and *; or at least two of the set +, - and the currency symbol
000060             03  PIC +.
error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9
     + and *; or at least two of the set +, - and the currency symbol
000061             03  PIC $.
error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9
     + and *; or at least two of the set +, - and the currency symbol
000062
000063         01  str-constant CONSTANT "hello".
000064         01  float-constant CONSTANT 1.0.
000065         01  signed-constant CONSTANT -1.
000066         01  invalid-constant.
000067             03  PIC X(str-constant).
error: 'STR-CONSTANT' is not an unsigned positive integer
000068             03  PIC X(float-constant).
error: 'FLOAT-CONSTANT' is not an unsigned positive integer
000069             03  PIC X(signed-constant).
error: 'SIGNED-CONSTANT' is not an unsigned positive integer
000070             03  PIC X(unseen-constant).
error: 'UNSEEN-CONSTANT' is not defined
000071
000072         01  integer-constant CONSTANT 5.
000073         01  valid-pics.
000074             03  PIC VP9B.
000075             03  PIC B9P(3).
000076             03  PIC B$$$.
000077             03  PIC 0000+B0+++0B,+.
000078             03  PIC +(5)P(3).
000079             03  PIC ++.++.
000080             03  PIC $(integer-constant).
000081             03  PIC $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
warning: uncommon parentheses
000082        -(integer-constant).   *> CHECKME: should this be really valid?
000083
000084
000085         01  PC-COLOR-BACKGROUND-TABLE.
000086             05  BIT-BACKGROUND-BLACK      PIC 1(8) BIT VALUE B"00000000".
000087             05  BIT-BACKGROUND-BLUE       PIC 1(8) BIT VALUE B"00010000".
000088             05  BIT-BACKGROUND-GREEN      PIC 1(8) BIT VALUE B"00100000".
000089             05  BIT-BACKGROUND-CYAN       PIC 1(8) BIT VALUE B"00110000".
000090             05  BIT-BACKGROUND-RED        PIC 1(8) BIT VALUE B"01000000".
000091             05  BIT-BACKGROUND-MAGENTA    PIC 1(8) BIT VALUE B"01010000".
000092             05  BIT-BACKGROUND-BROWN      PIC 1(8) BIT VALUE B"01100000".
000093             05  BIT-BACKGROUND-LIGHT-GRAY PIC 1(8) BIT VALUE B"01110000".
000094         01  FILLER REDEFINES PC-COLOR-BACKGROUND-TABLE.
000095             05  COLOR-BACKGROUND
000096                 OCCURS 8 TIMES            PIC 1(8) BIT.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00000 ALPHANUMERIC   01   empty-pic                      INVALID

00077 ALPHANUMERIC   01   too-long-pic                   XXXXXXXXXXXXXXXXXXXX...

00000 ALPHANUMERIC   01   too-long-pic2                  INVALID

00000 GROUP          01   multiple-symbols
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID

00000 GROUP          01   non-symbols
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID

00050 NUMERIC        01   too-many-digits                9(50)

00000 ALPHANUMERIC   01   too-long-number-in-parens      INVALID

00000 ALPHANUMERIC   01   nested-parens                  INVALID

00000 ALPHANUMERIC   01   unbalanced-parens              INVALID

00000 ALPHANUMERIC   01   multiple-pairs-of-parens       INVALID

00000 ALPHANUMERIC   01   no-digit-in-parens             INVALID

00000 GROUP          01   mutually-exclusive-symbols
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID

00000 GROUP          01   non-rightmost-leftmost-symbols
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID

00000 GROUP          01   missing-symbols
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID

00000 GROUP          01   invalid-constant
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID
00000 ALPHANUMERIC   03   FILLER                         INVALID

00086 GROUP          01   valid-pics
00002 NUMERIC        03   FILLER                         VP9B
00002 NUMERIC        03   FILLER                         B9P(3)
00004 NUMERIC        03   FILLER                         B$$$
00014 NUMERIC        03   FILLER                         0000+B0+++0B,+
00005 NUMERIC        03   FILLER                         +(5)P(3)
00005 NUMERIC        03   FILLER                         ++.++
00005 NUMERIC        03   FILLER                         $(INTEGER-CONSTANT)
00049 NUMERIC        03   FILLER                         $$$$$$$$$$$$$$$$$$$$...

00008 GROUP          01   PC-COLOR-BACKGROUND-TABLE
00001 NUMERIC        05   BIT-BACKGROUND-BLACK           1(8)
00001 NUMERIC        05   BIT-BACKGROUND-BLUE            1(8)
00001 NUMERIC        05   BIT-BACKGROUND-GREEN           1(8)
00001 NUMERIC        05   BIT-BACKGROUND-CYAN            1(8)
00001 NUMERIC        05   BIT-BACKGROUND-RED             1(8)
00001 NUMERIC        05   BIT-BACKGROUND-MAGENTA         1(8)
00001 NUMERIC        05   BIT-BACKGROUND-BROWN           1(8)
00001 NUMERIC        05   BIT-BACKGROUND-LIGHT-GRAY      1(8)

00008 GROUP          01   FILLER, REDEFINES PC-COLOR-BACKGROUND-TABLE
00001 BOOLEAN        05   COLOR-BACKGROUND               1(8), OCCURS 8



Error/Warning summary:

prog.cob:7: error: missing PICTURE string
prog.cob:10: error: PICTURE string may not contain more than 255 characters; contains 301 characters
prog.cob:16: error: CR or DB may only occur once in a PICTURE string
prog.cob:17: error: CR or DB may only occur once in a PICTURE string
prog.cob:18: error: S may only occur once in a PICTURE string
prog.cob:18: error: S must be at start of PICTURE string
prog.cob:19: error: . may only occur once in a PICTURE string
prog.cob:20: error: V may only occur once in a PICTURE string
prog.cob:21: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:22: error: a leading +/- sign cannot follow a leading currency symbol
prog.cob:22: error: a trailing currency symbol cannot follow a leading currency symbol
prog.cob:22: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:24: error: invalid PICTURE character 'K'
prog.cob:25: error: C must be followed by R
prog.cob:26: error: D must be followed by B
prog.cob:27: error: numeric field cannot be larger than 38 digits
prog.cob:28: error: only up to 10 significant digits are permitted within parentheses
prog.cob:29: error: parentheses must be preceded by a picture symbol
prog.cob:30: error: unbalanced parentheses
prog.cob:31: error: parentheses must be preceded by a picture symbol
prog.cob:32: error: parentheses must contain an unsigned integer
prog.cob:34: error: . cannot follow a P which is after the decimal point
prog.cob:35: error: . cannot follow V
prog.cob:36: error: cannot have both Z and * in PICTURE string
prog.cob:37: error: a trailing +/- sign cannot follow a floating +/- string which is before the decimal point
prog.cob:37: error: a trailing +/- sign may only occur once in a PICTURE string
prog.cob:38: error: a Z or * which is before the decimal point cannot follow a floating currency symbol string which is before the decimal point
prog.cob:39: error: a Z or * which is before the decimal point cannot follow a floating currency symbol string which is before the decimal point
prog.cob:40: error: A or X cannot follow N
prog.cob:41: error: N cannot follow A or X
prog.cob:42: error: a Z or * which is before the decimal point cannot follow A or X
prog.cob:43: error: A or X cannot follow .
prog.cob:44: error: A or X cannot follow S
prog.cob:45: error: a leading +/- sign cannot follow B, 0 or /
prog.cob:45: error: a leading +/- sign cannot follow a floating currency symbol string which is before the decimal point
prog.cob:45: error: a leading +/- sign may only occur once in a PICTURE string
prog.cob:45: error: a trailing +/- sign cannot follow a leading +/- sign
prog.cob:45: error: a trailing +/- sign may only occur once in a PICTURE string
prog.cob:46: error: a trailing +/- sign cannot follow a floating +/- string which is before the decimal point
prog.cob:47: error: CR or DB cannot follow a leading +/- sign
prog.cob:48: error: CR or DB cannot follow a leading +/- sign
prog.cob:50: error: a leading +/- sign cannot follow B, 0 or /
prog.cob:51: error: a leading +/- sign cannot follow 9
prog.cob:52: error: B, 0 or / cannot follow CR or DB
prog.cob:53: error: 9 cannot follow CR or DB
prog.cob:54: error: a floating currency symbol string which is before the decimal point cannot follow 9
prog.cob:55: error: a leading currency symbol cannot follow 9
prog.cob:56: error: a leading currency symbol cannot follow B, 0 or /
prog.cob:57: error: P must be at start or end of PICTURE string
prog.cob:57: error: V cannot follow a P which is after the decimal point
prog.cob:59: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:60: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:61: error: PICTURE string must contain at least one of the set A, N, U, X, Z, 1, 9 and *; or at least two of the set +, - and the currency symbol
prog.cob:67: error: 'STR-CONSTANT' is not an unsigned positive integer
prog.cob:68: error: 'FLOAT-CONSTANT' is not an unsigned positive integer
prog.cob:69: error: 'SIGNED-CONSTANT' is not an unsigned positive integer
prog.cob:70: error: 'UNSEEN-CONSTANT' is not defined
prog.cob:81: warning: uncommon parentheses

1 warning in compilation group
57 errors in compilation group
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3684: diff expected.lst prog.lst"
at_fn_check_prepare_trace "listings.at:3684"
( $at_check_trace; diff expected.lst prog.lst
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:3684"
$at_failed && at_fn_log_failure  \
"prog.lst"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_500
#AT_START_501
at_fn_group_banner 501 'listings.at:3689' \
  "Variable format" "                                " 3
at_xfail=no
(
  $as_echo "501. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'
000001 $SET SOURCEFORMAT "VARIABLE"
000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. prog.
000030* blah blah blah
000040 PROCEDURE DIVISION.
000050                                                                  DISPLAY "Hello!"
000060     .
000070 END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3703: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:3703"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001  000001 \$SET SOURCEFORMAT \"VARIABLE\"
000002  000010 IDENTIFICATION DIVISION.
000003  000020 PROGRAM-ID. prog.
000004  000030* blah blah blah
000005  000040 PROCEDURE DIVISION.
000006  000050
000006+ DISPLAY \"Hello!\"
000007  000060     .
000008  000070 END PROGRAM prog.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:3703"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_501
#AT_START_502
at_fn_group_banner 502 'listings.at:3726' \
  "MFCOMMENT" "                                      " 3
at_xfail=no
(
  $as_echo "502. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
      *    DISPLAY 'COMMENTASTERISK'
      /    DISPLAY 'COMMENTSLASH'
*          DISPLAY 'MFCOMMENTASTERISK'
/          DISPLAY 'MFCOMMENTSLASH'
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3740: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:3740"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         PROCEDURE        DIVISION.
000005        *    DISPLAY 'COMMENTASTERISK'

LINE    PG/LN  A...B............................................................

000006        /    DISPLAY 'COMMENTSLASH'
000007  *          DISPLAY 'MFCOMMENTASTERISK'
000008  /          DISPLAY 'MFCOMMENTSLASH'
000009             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:3740"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:3763: \$COMPILE_LISTING0 -t- -fmfcomment prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -fmfcomment prog.cob" "listings.at:3763"
( $at_check_trace; $COMPILE_LISTING0 -t- -fmfcomment prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         PROCEDURE        DIVISION.
000005        *    DISPLAY 'COMMENTASTERISK'

LINE    PG/LN  A...B............................................................

000006        /    DISPLAY 'COMMENTSLASH'
000008  /          DISPLAY 'MFCOMMENTSLASH'
000009             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:3763"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_502
#AT_START_503
at_fn_group_banner 503 'listings.at:3788' \
  "LISTING directive" "                              " 3
at_xfail=no
(
  $as_echo "503. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

       >>LISTING OFF
       01 TEST1-VAR PIC X(2) VALUE "OK".
       01 TEST2-VAR PIC X(2) VALUE "OK".
       01 TEST3-VAR PIC X(2) VALUE "OK".
       01 TEST4-VAR PIC X(2) VALUE "OK".
       >>LISTING ON
       01 TEST5-VAR PIC X(2) VALUE "OK".
       01 TEST6-VAR PIC X(2) VALUE "OK".
       01 TEST7-VAR PIC X(2) VALUE "OK".
       01 TEST8-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >copy2.inc <<'_ATEOF'
       >> LISTING OFF
       01 TEST9-VAR PIC X(2) VALUE "OK".
       >>LISTING
       01 TESTA-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc".
       COPY "copy2.inc".
       PROCEDURE        DIVISION.
       >>LISTING OFF
           DISPLAY TEST1-VAR NO ADVANCING
           END-DISPLAY.
       >> LISTING ON
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3825: \$COMPILE_LISTING0 -t- -ftsymbols prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols prog.cob" "listings.at:3825"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\".
000001C
000002C        >>LISTING OFF
000007C        >>LISTING ON
000008C        01 TEST5-VAR PIC X(2) VALUE \"OK\".
000009C        01 TEST6-VAR PIC X(2) VALUE \"OK\".
000010C        01 TEST7-VAR PIC X(2) VALUE \"OK\".
000011C        01 TEST8-VAR PIC X(2) VALUE \"OK\".
000007         COPY \"copy2.inc\".
000001C        >> LISTING OFF
000003C        >>LISTING
000004C        01 TESTA-VAR PIC X(2) VALUE \"OK\".
000008         PROCEDURE        DIVISION.
000009         >>LISTING OFF
000012         >> LISTING ON
000013             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   TEST1-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST2-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST3-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST4-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST5-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST6-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST7-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST8-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST9-VAR                      X(2)

00002 ALPHANUMERIC   01   TESTA-VAR                      X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:3825"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_503
#AT_START_504
at_fn_group_banner 504 'listings.at:3884' \
  "LISTING directive free-form reference-format" "   " 3
at_xfail=no
(
  $as_echo "504. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >copy.inc <<'_ATEOF'

>>LISTING OFF
01 TEST1-VAR PIC X(2) VALUE "OK".
01 TEST2-VAR PIC X(2) VALUE "OK".
01 TEST3-VAR PIC X(2) VALUE "OK".
01 TEST4-VAR PIC X(2) VALUE "OK".
>>LISTING ON
01 TEST5-VAR PIC X(2) VALUE "OK".
01 TEST6-VAR PIC X(2) VALUE "OK".
01 TEST7-VAR PIC X(2) VALUE "OK".
01 TEST8-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >copy2.inc <<'_ATEOF'
>> LISTING OFF
01 TEST9-VAR PIC X(2) VALUE "OK".
>>LISTING
01 TESTA-VAR PIC X(2) VALUE "OK".
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       COPY "copy.inc".
       COPY "copy2.inc".
       PROCEDURE        DIVISION.
>>LISTING OFF
           DISPLAY TEST1-VAR NO ADVANCING
           END-DISPLAY.
>> LISTING ON
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:3921: \$COMPILE_LISTING0 -t- -ftsymbols -free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols -free prog.cob" "listings.at:3921"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols -free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    .....................SOURCE.............................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
000006         COPY \"copy.inc\".
000001C
000002C >>LISTING OFF
000007C >>LISTING ON
000008C 01 TEST5-VAR PIC X(2) VALUE \"OK\".
000009C 01 TEST6-VAR PIC X(2) VALUE \"OK\".
000010C 01 TEST7-VAR PIC X(2) VALUE \"OK\".
000011C 01 TEST8-VAR PIC X(2) VALUE \"OK\".
000007         COPY \"copy2.inc\".
000001C >> LISTING OFF
000003C >>LISTING
000004C 01 TESTA-VAR PIC X(2) VALUE \"OK\".
000008         PROCEDURE        DIVISION.
000009  >>LISTING OFF
000012  >> LISTING ON
000013             STOP RUN.

SIZE  TYPE           LVL  NAME                           PICTURE

      WORKING-STORAGE SECTION

00002 ALPHANUMERIC   01   TEST1-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST2-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST3-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST4-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST5-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST6-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST7-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST8-VAR                      X(2)

00002 ALPHANUMERIC   01   TEST9-VAR                      X(2)

00002 ALPHANUMERIC   01   TESTA-VAR                      X(2)


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:3921"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_504
#AT_START_505
at_fn_group_banner 505 'listings.at:3980' \
  "Listing-directive statements" "                   " 3
at_xfail=no
(
  $as_echo "505. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'
           TITLE "GnuCOBOL lists IBM"
       IDENTIFICATION   DIVISION.
           SKIP1
       PROGRAM-ID.      prog.
           SKIP2
       DATA             DIVISION.
           SKIP3
       WORKING-STORAGE  SECTION.
       01  TITLE-01          PIC X(2).
       01  TITLE-02          PIC X(2).
           TITLE "here goes the code"
       PROCEDURE        DIVISION.
       EJECT
           MOVE SPACE TO TITLE-01
                         TITLE-02.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:4001: \$COMPILE_LISTING -t- -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- -std=ibm prog.cob" "listings.at:4001"
( $at_check_trace; $COMPILE_LISTING -t- -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL lists IBM      prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000002         IDENTIFICATION   DIVISION.


000004         PROGRAM-ID.      prog.



000006         DATA             DIVISION.




000008         WORKING-STORAGE  SECTION.
000009         01  TITLE-01          PIC X(2).
000010         01  TITLE-02          PIC X(2).
here goes the code      prog.cob                                        Page 0002

LINE    PG/LN  A...B............................................................

000012         PROCEDURE        DIVISION.
here goes the code      prog.cob                                        Page 0003

LINE    PG/LN  A...B............................................................

000014             MOVE SPACE TO TITLE-01
000015                           TITLE-02.
000016             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:4001"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_505
#AT_START_506
at_fn_group_banner 506 'listings.at:4042' \
  "Eject page" "                                     " 3
at_xfail=no
(
  $as_echo "506. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      /
       PROCEDURE        DIVISION.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:4057: \$COMPILE_LISTING -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- prog.cob" "listings.at:4057"
( $at_check_trace; $COMPILE_LISTING -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog.cob                                        Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         DATA             DIVISION.
000005         WORKING-STORAGE  SECTION.
GnuCOBOL V.R.P          prog.cob                                        Page 0002

LINE    PG/LN  A...B............................................................

000006        /
000007         PROCEDURE        DIVISION.
000008             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:4057"
$at_failed && at_fn_log_failure  \
"prog.lis"
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

  IDENTIFICATION   DIVISION.
  PROGRAM-ID.      prog2.
  DATA             DIVISION.
  WORKING-STORAGE  SECTION.
>>PAGE
  PROCEDURE        DIVISION.
  STOP RUN.
_ATEOF



{ set +x
$as_echo "$at_srcdir/listings.at:4091: \$COMPILE_LISTING -t- -free prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- -free prog2.cob" "listings.at:4091"
( $at_check_trace; $COMPILE_LISTING -t- -free prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog2.cob                                       Page 0001

LINE    .....................SOURCE.............................................

000001
000002    IDENTIFICATION   DIVISION.
000003    PROGRAM-ID.      prog2.
000004    DATA             DIVISION.
000005    WORKING-STORAGE  SECTION.
GnuCOBOL V.R.P          prog2.cob                                       Page 0002

LINE    .....................SOURCE.............................................

000006  >>PAGE
000007    PROCEDURE        DIVISION.
000008    STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:4091"
$at_failed && at_fn_log_failure  \
"prog.lis"
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.

       PROGRAM-ID.      prog3.


       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 WS-VAR PIC X(2).
      /
       77 WS-VA2 PIC X(2).


       LOCAL-STORAGE  SECTION.
       77 LS-VAR PIC 9(2).


       PROCEDURE        DIVISION.

           DISPLAY WS-VAR
           MOVE 99 TO LS-VAR

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:4139: \$COMPILE_LISTING -t- prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- prog3.cob" "listings.at:4139"
( $at_check_trace; $COMPILE_LISTING -t- prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog3.cob                                       Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003
000004         PROGRAM-ID.      prog3.
000005
000006
000007         DATA             DIVISION.
000008         WORKING-STORAGE  SECTION.
000009         77 WS-VAR PIC X(2).
GnuCOBOL V.R.P          prog3.cob                                       Page 0002

LINE    PG/LN  A...B............................................................

000010        /
000011         77 WS-VA2 PIC X(2).
000012
000013
000014         LOCAL-STORAGE  SECTION.
000015         77 LS-VAR PIC 9(2).
000016
000017
000018         PROCEDURE        DIVISION.
000019
000020             DISPLAY WS-VAR
000021             MOVE 99 TO LS-VAR
000022
000023             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:4139"
$at_failed && at_fn_log_failure  \
"prog.lis"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:4177: \$COMPILE_LISTING -t- -tlines=20 prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING -t- -tlines=20 prog3.cob" "listings.at:4177"
( $at_check_trace; $COMPILE_LISTING -t- -tlines=20 prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P          prog3.cob                                       Page 0001

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003
000004         PROGRAM-ID.      prog3.
000005
000006
000007         DATA             DIVISION.
000008         WORKING-STORAGE  SECTION.
000009         77 WS-VAR PIC X(2).
GnuCOBOL V.R.P          prog3.cob                                       Page 0002

LINE    PG/LN  A...B............................................................

000010        /
000011         77 WS-VA2 PIC X(2).
000012
000013
000014         LOCAL-STORAGE  SECTION.
000015         77 LS-VAR PIC 9(2).
000016
000017
000018         PROCEDURE        DIVISION.
000019
000020             DISPLAY WS-VAR
000021             MOVE 99 TO LS-VAR
000022
000023             STOP RUN.


0 warnings in compilation group
GnuCOBOL V.R.P          prog3.cob                                       Page 0003

0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:4177"
$at_failed && at_fn_log_failure  \
"prog.lis"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_506
#AT_START_507
at_fn_group_banner 507 'listings.at:4220' \
  "Cross reference" "                                " 3
at_xfail=no
(
  $as_echo "507. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >EDITOR.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.                                         EDIT0001
       PROGRAM-ID.                                                      EDIT0002
           EDITOR.                                                      EDIT0003
                                                                        EDIT0008
      *NOTE.                                                            EDIT0009
      *    THIS VERSION OF EDITOR 1 COMPRISES AN ENTIRE RE_WRITE        EDIT0010
      *    OF THE BASIC EDITOR WITH ONLY ONE CHANGE IN THE COMMAND      EDIT0011
      *    STRUCTURE, THAT BEING THE ADDITION OF A "CHANGE" COMMAND     EDIT0012
      *    TO SERVE IN PLACE OF THE INSERT-DELETE COMBINATION WHICH     EDIT0013
      *    WAS REQUIRED IN PREVIOUS VERSIONS. RECORD NUMBER FIELDS      EDIT0014
      *    HAVE ALSO BEEN REDUCED FROM 5 DIGITS TO 4.                   EDIT0015
      *    CHANGE 1.                                                    EDIT0016
      *       MODIFY TO RUN ON TI-990.                                  EDIT0017
      *    CHANGE 2.                                                    EDIT0018
      *       MODIFY TO RUN ON GNUCOBOL.                                EDIT0019
                                                                        EDIT0020
       ENVIRONMENT DIVISION.                                            EDIT0021
       CONFIGURATION SECTION.                                           EDIT0022
       SOURCE-COMPUTER.                                                 EDIT0023
           IBM-360.                                                     EDIT0024
       OBJECT-COMPUTER.                                                 EDIT0025
           IBM-360.                                                     EDIT0026
       INPUT-OUTPUT SECTION.                                            EDIT0027
       FILE-CONTROL.                                                    EDIT0028
           SELECT OLD-VERSION  ASSIGN TO "SYSUT1"                       EDIT0029
                               ORGANIZATION LINE SEQUENTIAL.            EDIT0030
           SELECT NEW-VERSION  ASSIGN TO "SYSUT2"                       EDIT0031
                               ORGANIZATION LINE SEQUENTIAL.            EDIT0032
           SELECT PRT-VERSION  ASSIGN TO "SYSUT2"                       EDIT0033
                               ORGANIZATION LINE SEQUENTIAL.            EDIT0034
           SELECT MODIFICATION ASSIGN TO "SYSIN1"                       EDIT0035
                               ORGANIZATION LINE SEQUENTIAL.            EDIT0036
           SELECT COMMENTARY   ASSIGN TO "SYSOU1"                       EDIT0037
                               ORGANIZATION LINE SEQUENTIAL.            EDIT0038
                                                                        EDIT0039
       DATA DIVISION.                                                   EDIT0040
                                                                        EDIT0041
       FILE SECTION.                                                    EDIT0042
                                                                        EDIT0043
       FD  OLD-VERSION                                                  EDIT0044
           LABEL RECORDS ARE STANDARD                                   EDIT0045
           BLOCK CONTAINS 80 CHARACTERS                                 EDIT0046
           DATA RECORD IS OLD-RECORD.                                   EDIT0047
                                                                        EDIT0048
       01  OLD-RECORD.                                                  EDIT0049
           02 OLD-STATEMENT       PICTURE X(75).                        EDIT0050
           02 OLD-NUMBER          PICTURE X(5).                         EDIT0051
                                                                        EDIT0052
       FD  NEW-VERSION                                                  EDIT0053
           LABEL RECORDS ARE STANDARD                                   EDIT0054
           BLOCK CONTAINS 80 CHARACTERS                                 EDIT0055
           DATA RECORD IS NEW-RECORD.                                   EDIT0056
                                                                        EDIT0057
       01  NEW-RECORD.                                                  EDIT0058
           02 NEW-STATEMENT       PICTURE X(75).                        EDIT0059
           02 NEW-NUMBER          PICTURE X(5).                         EDIT0060
                                                                        EDIT0061
       FD  MODIFICATION                                                 EDIT0062
           LABEL RECORDS ARE OMITTED                                    EDIT0063
           BLOCK CONTAINS 80 CHARACTERS                                 EDIT0064
           DATA RECORD IS UPDATE-ORDER.                                 EDIT0065
                                                                        EDIT0066
       01  UPDATE-ORDER.                                                EDIT0067
           02 INSERTION.                                                EDIT0068
              03 COMMAND          PICTURE X(6).                         EDIT0069
                 88 ENDJOB        VALUE "ENDJOB".                       EDIT0070
                 88 ENDSET        VALUE "ENDSET".                       EDIT0071
                 88 REMOVE        VALUE "REMOVE".                       EDIT0072
                 88 ADDNEW        VALUE "INSERT".                       EDIT0073
                 88 CHANGE        VALUE "CHANGE".                       EDIT0074
                 88 DISPLY        VALUE "DISPLY".                       EDIT0075
              03 FILLER           PICTURE X.                            EDIT0076
              03 A-FIELD          PICTURE 9(5).                         EDIT0077
              03 A-ALPHA REDEFINES A-FIELD    PICTURE X(5).             EDIT0078
                 88 A-BLANK       VALUE SPACES.                         EDIT0079
              03 FILLER           PICTURE X(4).                         EDIT0080
              03 B-FIELD          PICTURE 9(5).                         EDIT0081
              03 B-ALPHA REDEFINES B-FIELD    PICTURE X(5).             EDIT0082
                 88 B-BLANK       VALUE SPACES.                         EDIT0083
              03 FILLER           PICTURE X(54).                        EDIT0084
           02 FILLER              PICTURE X(5).                         EDIT0085
                                                                        EDIT0086
       FD  COMMENTARY                                                   EDIT0087
           LABEL RECORDS ARE OMITTED                                    EDIT0088
           BLOCK CONTAINS 82 CHARACTERS                                 EDIT0089
           DATA RECORD IS COMMENT-LINE.                                 EDIT0090
                                                                        EDIT0091
       01  COMMENT-LINE.                                                EDIT0092
           02 FILLER              PICTURE X(82).                        EDIT0093
                                                                        EDIT0094
       WORKING-STORAGE SECTION.                                         EDIT0095
                                                                        EDIT0096
       77  COMMAND-ADDITIONS      PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0097
       77  COMMAND-SUBTRACTIONS   PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0098
       77  TOTAL-INSERTED         PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0099
       77  TOTAL-DELETED          PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0100
       77  OUTPUT-COUNT           PICTURE 9(5) COMPUTATIONAL VALUE 0.   EDIT0101
       77  LINE-COUNT             PICTURE 9(2) COMPUTATIONAL VALUE 0.   EDIT0102
       77  FIELDA                 PICTURE 9(5) VALUE 0.                 EDIT0103
       77  FIELDB                 PICTURE 9(5) VALUE 0.                 EDIT0104
       77  BLANK-LINE             PICTURE X(82) VALUE SPACES.           EDIT0105
                                                                        EDIT0106
       01  DATE-FROM-SYS.                                               EDIT0107
           02 DFSYS OCCURS 3 TIMES PICTURE 99.                          EDIT0108
                                                                        EDIT0109
       01  HEADINGS-LINE.                                               EDIT0110
           02 FILLER              PICTURE X(15) VALUE "EDITOR VERSION". EDIT0111
           02 FILLER              PICTURE X(20) VALUE "1.1 - 206/72".   EDIT0112
           02 PHASE               PICTURE X(17) VALUE "UPDATING AS OF". EDIT0113
           02 MONTH-RUN           PICTURE XX.                           EDIT0114
           02 FILLER              PICTURE X VALUE "/".                  EDIT0115
           02 DAY-RUN             PICTURE XX.                           EDIT0116
           02 FILLER              PICTURE X VALUE "/".                  EDIT0117
           02 YEAR-RUN            PICTURE XX.                           EDIT0118
           02 FILLER              PICTURE X(8) VALUE SPACES.            EDIT0119
           02 FILLER              PICTURE X(8) VALUE "  PAGE: ".        EDIT0120
           02 PAGE-NUMBER         PICTURE 9(4) VALUE 0.                 EDIT0121
                                                                        EDIT0122
       01  COMMAND-LISTING.                                             EDIT0123
           02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0124
           02 COMMAND-IMAGE       PICTURE X(80).                        EDIT0125
                                                                        EDIT0126
       01  ACTIVITIES-LISTING.                                          EDIT0127
           02 DISPOSITION         PICTURE X(2).                         EDIT0128
           02 ACTIVE-IMAGE        PICTURE X(80).                        EDIT0129
                                                                        EDIT0130
       01  UPSI-BYTE.                                                   EDIT0131
           02 UPSI-BIT OCCURS 8 TIMES  PICTURE X.                       EDIT0132
                                                                        EDIT0133
       01  MESSAGE-LOG.                                                 EDIT0134
           02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0135
           02 MESSAGE-TEXT        PICTURE X(80).                        EDIT0136
                                                                        EDIT0137
       01  DISPLAY-MESSAGE.                                             EDIT0138
           02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0139
           02 DISPLAY-TEMP        PICTURE X(6).                         EDIT0140
           02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0141
           02 DISPLAY-TEXT        PICTURE X(60).                        EDIT0142
                                                                        EDIT0143
       77  END-JOB-PROCESS        PICTURE 9 VALUE 0.                    EDIT0144
       77  DELETE-PROCESS         PICTURE 9 VALUE 1.                    EDIT0145
       77  INSERT-PROCESS         PICTURE 9 VALUE 2.                    EDIT0146
       77  WRITE-PROCESS          PICTURE 9 VALUE 3.                    EDIT0147
                                                                        EDIT0148
       01  SELECTORS.                                                   EDIT0149
           02 RETURN-SELECT       PICTURE 9 VALUE 0.                    EDIT0150
           02 NEXT-JOB-SELECT     PICTURE 9 VALUE 0.                    EDIT0151
                                                                        EDIT0152
       PROCEDURE DIVISION.                                              EDIT0153
                                                                        EDIT0154
       START-SECTION.                                                   EDIT0155
           OPEN INPUT OLD-VERSION, MODIFICATION,                        EDIT0156
                OUTPUT NEW-VERSION, COMMENTARY.                         EDIT0157
           MOVE "F" TO UPSI-BIT (1), UPSI-BIT (2).                      EDIT0158
           ACCEPT DATE-FROM-SYS FROM DATE.                              EDIT0159
           MOVE DFSYS (1) TO YEAR-RUN.                                  EDIT0160
           MOVE DFSYS (2) TO MONTH-RUN.                                 EDIT0161
           MOVE DFSYS (3) TO DAY-RUN.                                   EDIT0162
           READ OLD-VERSION AT END                                      EDIT0163
              MOVE "NO OLD VERSION FOUND" TO MESSAGE-TEXT               EDIT0164
              WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0165
              GO TO END-JOB.                                            EDIT0166
           MOVE OLD-STATEMENT TO NEW-STATEMENT.                         EDIT0167
           PERFORM OUTPUT-A-RECORD.                                     EDIT0168
                                                                        EDIT0169
       TOP-OF-PAGE-ROUTINE.                                             EDIT0170
           ADD 1 TO PAGE-NUMBER.                                        EDIT0171
           MOVE ZERO TO LINE-COUNT.                                     EDIT0172
           WRITE COMMENT-LINE FROM HEADINGS-LINE AFTER PAGE.            EDIT0173
           WRITE COMMENT-LINE FROM BLANK-LINE.                          EDIT0174
                                                                        EDIT0175
       READ-A-COMMAND.                                                  EDIT0176
           READ MODIFICATION AT END                                     EDIT0177
              MOVE "MODIFICATION FILE ENDED " TO MESSAGE-TEXT           EDIT0178
              WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0179
              GO TO FINISH-JOB.                                         EDIT0180
           MOVE UPDATE-ORDER TO COMMAND-IMAGE.                          EDIT0181
           WRITE COMMENT-LINE FROM COMMAND-LISTING.                     EDIT0182
           ADD 2 TO LINE-COUNT.                                         EDIT0183
           IF A-BLANK MOVE ZEROES TO A-FIELD.                           EDIT0184
           IF B-BLANK MOVE ZEROES TO B-FIELD.                           EDIT0185
           MOVE A-FIELD TO FIELDA.                                      EDIT0186
           MOVE B-FIELD TO FIELDB.                                      EDIT0187
                                                                        EDIT0188
       TEST-COMMAND-TYPE.                                               EDIT0189
           IF CHANGE GO TO CHANGE-A-RECORD.                             EDIT0190
           IF REMOVE GO TO DELETE-A-RECORD.                             EDIT0191
           IF DISPLY MOVE "T" TO UPSI-BIT (2)                           EDIT0192
              GO TO FINISH-JOB.                                         EDIT0193
           IF ENDJOB GO TO FINISH-JOB.                                  EDIT0194
           IF ADDNEW GO TO INSERT-A-RECORD.                             EDIT0195
           MOVE "INVALID COMMAND IGNORED." TO MESSAGE-TEXT.             EDIT0196
           WRITE COMMENT-LINE FROM MESSAGE-LOG.                         EDIT0197
           GO TO READ-A-COMMAND.                                        EDIT0198
                                                                        EDIT0199
       CHANGE-A-RECORD.                                                 EDIT0200
           ALTER RETURN-TO-USER TO PROCEED TO INSERTION-PROCESS.        EDIT0201
           ALTER NEXT-JOB-STEP TO PROCEED TO DELETION-PROCESS.          EDIT0202
                                                                        EDIT0205
       FIND-FIELDA.                                                     EDIT0206
           IF OLD-NUMBER IS GREATER THAN FIELDA                         EDIT0207
              MOVE "RECORD ALREADY PASSED" TO MESSAGE-TEXT              EDIT0208
              WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0209
              GO TO READ-A-COMMAND.                                     EDIT0210
           READ OLD-VERSION AT END                                      EDIT0211
              MOVE "NOT FOUND IN OLD VERSION" TO DISPLAY-TEXT           EDIT0212
              MOVE FIELDA TO DISPLAY-TEMP                               EDIT0213
              WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0214
              GO TO END-JOB.                                            EDIT0215
           IF OLD-NUMBER IS LESS THAN FIELDA                            EDIT0216
              MOVE OLD-STATEMENT TO NEW-STATEMENT                       EDIT0217
              PERFORM OUTPUT-A-RECORD                                   EDIT0218
              GO TO FIND-FIELDA.                                        EDIT0219
                                                                        EDIT0220
       RETURN-TO-USER.                                                  EDIT0221
           GO TO END-JOB.                                               EDIT0223
                                                                        EDIT0228
       INSERT-A-RECORD.                                                 EDIT0229
           ALTER RETURN-TO-USER TO PROCEED TO INSERTION-PROCESS.        EDIT0230
           ALTER NEXT-JOB-STEP TO PROCEED TO FORCED-WRITE.              EDIT0231
           GO TO FIND-FIELDA.                                           EDIT0234
                                                                        EDIT0235
       INSERTION-PROCESS.                                               EDIT0236
           READ MODIFICATION AT END                                     EDIT0237
              MOVE "NO ENDSET FOUND" TO MESSAGE-TEXT                    EDIT0238
              WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0239
              GO TO END-JOB.                                            EDIT0240
           IF ENDSET                                                    EDIT0241
              MOVE COMMAND-ADDITIONS TO DISPLAY-TEMP                    EDIT0242
              MOVE "RECORDS INSERTED." TO DISPLAY-TEXT                  EDIT0243
              WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0244
              ADD COMMAND-ADDITIONS TO TOTAL-INSERTED                   EDIT0245
              MOVE ZEROES TO COMMAND-ADDITIONS                          EDIT0246
              GO TO NEXT-JOB-STEP.                                      EDIT0247
           MOVE INSERTION TO NEW-STATEMENT, ACTIVE-IMAGE.               EDIT0248
           MOVE "I " TO DISPOSITION.                                    EDIT0249
           PERFORM OUTPUT-A-RECORD.                                     EDIT0250
           WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.                  EDIT0251
           ADD 1 TO COMMAND-ADDITIONS.                                  EDIT0252
           ADD 1 TO LINE-COUNT.                                         EDIT0253
           IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.          EDIT0254
           GO TO INSERTION-PROCESS.                                     EDIT0255
                                                                        EDIT0256
       NEXT-JOB-STEP.                                                   EDIT0257
           GO TO END-JOB.                                               EDIT0259
                                                                        EDIT0264
       FORCED-WRITE.                                                    EDIT0265
           MOVE OLD-STATEMENT TO NEW-STATEMENT.                         EDIT0266
           PERFORM OUTPUT-A-RECORD.                                     EDIT0267
           GO TO READ-A-COMMAND.                                        EDIT0268
                                                                        EDIT0269
       DELETE-A-RECORD.                                                 EDIT0270
           ALTER RETURN-TO-USER TO PROCEED TO DELETION-PROCESS.         EDIT0271
           GO TO FIND-FIELDA.                                           EDIT0273
                                                                        EDIT0274
       DELETION-PROCESS.                                                EDIT0275
           MOVE OLD-RECORD TO ACTIVE-IMAGE.                             EDIT0276
           MOVE "D " TO DISPOSITION.                                    EDIT0277
           WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.                  EDIT0278
           ADD 1 TO LINE-COUNT.                                         EDIT0279
           IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.          EDIT0280
           ADD 1 TO COMMAND-SUBTRACTIONS.                               EDIT0281
           IF OLD-NUMBER IS NOT LESS THAN FIELDB                        EDIT0282
              MOVE COMMAND-SUBTRACTIONS TO DISPLAY-TEMP                 EDIT0283
              MOVE "RECORDS DELETED." TO DISPLAY-TEXT                   EDIT0284
              WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0285
              ADD COMMAND-SUBTRACTIONS TO TOTAL-DELETED                 EDIT0286
              MOVE OLD-STATEMENT TO NEW-STATEMENT                       EDIT0287
              MOVE ZEROES TO COMMAND-SUBTRACTIONS                       EDIT0288
              GO TO READ-A-COMMAND.                                     EDIT0289
           READ OLD-VERSION AT END                                      EDIT0290
              MOVE "NOT FOUND IN OLD VERSION DOING DELETE"              EDIT0291
                    TO DISPLAY-TEXT                                     EDIT0292
              WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0293
              GO TO END-JOB.                                            EDIT0294
           GO TO DELETION-PROCESS.                                      EDIT0295
                                                                        EDIT0296
       OUTPUT-A-RECORD.                                                 EDIT0297
           ADD 1 TO OUTPUT-COUNT.                                       EDIT0298
           MOVE OUTPUT-COUNT TO NEW-NUMBER.                             EDIT0299
           WRITE NEW-RECORD.                                            EDIT0300
                                                                        EDIT0301
       FINISH-JOB.                                                      EDIT0302
           READ OLD-VERSION AT END GO TO TEST-FOR-LISTING.              EDIT0303
           MOVE OLD-STATEMENT TO NEW-STATEMENT.                         EDIT0304
           GO TO OUTPUT-A-RECORD.                                       EDIT0305
                                                                        EDIT0306
       TEST-FOR-LISTING.                                                EDIT0307
           PERFORM TOP-OF-PAGE-ROUTINE.                                 EDIT0308
           MOVE OLD-NUMBER TO DISPLAY-TEMP.                             EDIT0309
           MOVE "RECORDS READ." TO DISPLAY-TEXT.                        EDIT0310
           WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0311
           MOVE TOTAL-INSERTED TO DISPLAY-TEMP.                         EDIT0312
           MOVE "RECORDS ADDED." TO DISPLAY-TEXT.                       EDIT0313
           WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0314
           MOVE TOTAL-DELETED TO DISPLAY-TEMP.                          EDIT0315
           MOVE "RECORDS DROPPED." TO DISPLAY-TEXT.                     EDIT0316
           WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0317
           MOVE OUTPUT-COUNT TO DISPLAY-TEMP.                           EDIT0318
           MOVE "RECORDS IN NEW FILE." TO DISPLAY-TEXT.                 EDIT0319
           WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0320
           IF UPSI-BIT (2) EQUAL "F" GO TO END-JOB.                     EDIT0321
           CLOSE NEW-VERSION.                                           EDIT0322
           OPEN INPUT NEW-VERSION.                                      EDIT0323
           MOVE "UPDATED LISTING" TO PHASE.                             EDIT0324
           MOVE ZEROES TO PAGE-NUMBER.                                  EDIT0325
           PERFORM TOP-OF-PAGE-ROUTINE.                                 EDIT0326
           MOVE SPACES TO DISPOSITION.                                  EDIT0327
                                                                        EDIT0328
       LISTING-LOOP.                                                    EDIT0329
           READ NEW-VERSION AT END GO TO END-JOB.                       EDIT0330
           MOVE NEW-RECORD TO ACTIVE-IMAGE.                             EDIT0331
           WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.                  EDIT0332
           ADD 1 TO LINE-COUNT.                                         EDIT0333
           IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.          EDIT0334
           GO TO LISTING-LOOP.                                          EDIT0335
                                                                        EDIT0336
       END-JOB.                                                         EDIT0337
           MOVE "PROGRAM TERMINATION" TO MESSAGE-TEXT.                  EDIT0338
           WRITE COMMENT-LINE FROM MESSAGE-LOG.                         EDIT0339
           CLOSE OLD-VERSION, NEW-VERSION, MODIFICATION, COMMENTARY.    EDIT0340
           STOP RUN.                                                    EDIT0341
                                                                        EDIT0342
       END PROGRAM EDITOR.                                              EDIT0343
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:4550: \$COMPILE_LISTING0 -Xref -t- -ftsymbols EDITOR.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -Xref -t- -ftsymbols EDITOR.cob" "listings.at:4550"
( $at_check_trace; $COMPILE_LISTING0 -Xref -t- -ftsymbols EDITOR.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               EDITOR.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID.
000004             EDITOR.
000005
000006        *NOTE.
000007        *    THIS VERSION OF EDITOR 1 COMPRISES AN ENTIRE RE_WRITE
000008        *    OF THE BASIC EDITOR WITH ONLY ONE CHANGE IN THE COMMAND
000009        *    STRUCTURE, THAT BEING THE ADDITION OF A \"CHANGE\" COMMAND
000010        *    TO SERVE IN PLACE OF THE INSERT-DELETE COMBINATION WHICH
000011        *    WAS REQUIRED IN PREVIOUS VERSIONS. RECORD NUMBER FIELDS
000012        *    HAVE ALSO BEEN REDUCED FROM 5 DIGITS TO 4.
000013        *    CHANGE 1.
000014        *       MODIFY TO RUN ON TI-990.
000015        *    CHANGE 2.
000016        *       MODIFY TO RUN ON GNUCOBOL.
000017
000018         ENVIRONMENT DIVISION.
000019         CONFIGURATION SECTION.
000020         SOURCE-COMPUTER.
000021             IBM-360.
000022         OBJECT-COMPUTER.
000023             IBM-360.
000024         INPUT-OUTPUT SECTION.
000025         FILE-CONTROL.
000026             SELECT OLD-VERSION  ASSIGN TO \"SYSUT1\"
000027                                 ORGANIZATION LINE SEQUENTIAL.
000028             SELECT NEW-VERSION  ASSIGN TO \"SYSUT2\"
000029                                 ORGANIZATION LINE SEQUENTIAL.
000030             SELECT PRT-VERSION  ASSIGN TO \"SYSUT2\"
error: missing file description for FILE PRT-VERSION
000031                                 ORGANIZATION LINE SEQUENTIAL.
000032             SELECT MODIFICATION ASSIGN TO \"SYSIN1\"
000033                                 ORGANIZATION LINE SEQUENTIAL.
000034             SELECT COMMENTARY   ASSIGN TO \"SYSOU1\"
000035                                 ORGANIZATION LINE SEQUENTIAL.
000036
000037         DATA DIVISION.
000038
000039         FILE SECTION.
000040
000041         FD  OLD-VERSION
000042             LABEL RECORDS ARE STANDARD
warning: LABEL RECORDS is obsolete in GnuCOBOL
000043             BLOCK CONTAINS 80 CHARACTERS
000044             DATA RECORD IS OLD-RECORD.
warning: DATA RECORDS is obsolete in GnuCOBOL
000045
000046         01  OLD-RECORD.
000047             02 OLD-STATEMENT       PICTURE X(75).
000048             02 OLD-NUMBER          PICTURE X(5).
000049
000050         FD  NEW-VERSION
000051             LABEL RECORDS ARE STANDARD
warning: LABEL RECORDS is obsolete in GnuCOBOL
000052             BLOCK CONTAINS 80 CHARACTERS
000053             DATA RECORD IS NEW-RECORD.
warning: DATA RECORDS is obsolete in GnuCOBOL
000054
000055         01  NEW-RECORD.
000056             02 NEW-STATEMENT       PICTURE X(75).
000057             02 NEW-NUMBER          PICTURE X(5).
000058
000059         FD  MODIFICATION
000060             LABEL RECORDS ARE OMITTED
warning: LABEL RECORDS is obsolete in GnuCOBOL
000061             BLOCK CONTAINS 80 CHARACTERS
000062             DATA RECORD IS UPDATE-ORDER.
warning: DATA RECORDS is obsolete in GnuCOBOL
000063
000064         01  UPDATE-ORDER.
000065             02 INSERTION.
000066                03 COMMAND          PICTURE X(6).
000067                   88 ENDJOB        VALUE \"ENDJOB\".
000068                   88 ENDSET        VALUE \"ENDSET\".
000069                   88 REMOVE        VALUE \"REMOVE\".
000070                   88 ADDNEW        VALUE \"INSERT\".
000071                   88 CHANGE        VALUE \"CHANGE\".
000072                   88 DISPLY        VALUE \"DISPLY\".
000073                03 FILLER           PICTURE X.
000074                03 A-FIELD          PICTURE 9(5).
000075                03 A-ALPHA REDEFINES A-FIELD    PICTURE X(5).
000076                   88 A-BLANK       VALUE SPACES.
000077                03 FILLER           PICTURE X(4).
000078                03 B-FIELD          PICTURE 9(5).
000079                03 B-ALPHA REDEFINES B-FIELD    PICTURE X(5).
000080                   88 B-BLANK       VALUE SPACES.
000081                03 FILLER           PICTURE X(54).
000082             02 FILLER              PICTURE X(5).
000083
000084         FD  COMMENTARY
000085             LABEL RECORDS ARE OMITTED
warning: LABEL RECORDS is obsolete in GnuCOBOL
000086             BLOCK CONTAINS 82 CHARACTERS
000087             DATA RECORD IS COMMENT-LINE.
warning: DATA RECORDS is obsolete in GnuCOBOL
000088
000089         01  COMMENT-LINE.
000090             02 FILLER              PICTURE X(82).
000091
000092         WORKING-STORAGE SECTION.
000093
000094         77  COMMAND-ADDITIONS      PICTURE 9(3) COMPUTATIONAL VALUE 0.
000095         77  COMMAND-SUBTRACTIONS   PICTURE 9(3) COMPUTATIONAL VALUE 0.
000096         77  TOTAL-INSERTED         PICTURE 9(3) COMPUTATIONAL VALUE 0.
000097         77  TOTAL-DELETED          PICTURE 9(3) COMPUTATIONAL VALUE 0.
000098         77  OUTPUT-COUNT           PICTURE 9(5) COMPUTATIONAL VALUE 0.
000099         77  LINE-COUNT             PICTURE 9(2) COMPUTATIONAL VALUE 0.
000100         77  FIELDA                 PICTURE 9(5) VALUE 0.
000101         77  FIELDB                 PICTURE 9(5) VALUE 0.
000102         77  BLANK-LINE             PICTURE X(82) VALUE SPACES.
000103
000104         01  DATE-FROM-SYS.
000105             02 DFSYS OCCURS 3 TIMES PICTURE 99.
000106
000107         01  HEADINGS-LINE.
000108             02 FILLER              PICTURE X(15) VALUE \"EDITOR VERSION\".
000109             02 FILLER              PICTURE X(20) VALUE \"1.1 - 206/72\".
000110             02 PHASE               PICTURE X(17) VALUE \"UPDATING AS OF\".
000111             02 MONTH-RUN           PICTURE XX.
000112             02 FILLER              PICTURE X VALUE \"/\".
000113             02 DAY-RUN             PICTURE XX.
000114             02 FILLER              PICTURE X VALUE \"/\".
000115             02 YEAR-RUN            PICTURE XX.
000116             02 FILLER              PICTURE X(8) VALUE SPACES.
000117             02 FILLER              PICTURE X(8) VALUE \"  PAGE: \".
000118             02 PAGE-NUMBER         PICTURE 9(4) VALUE 0.
000119
000120         01  COMMAND-LISTING.
000121             02 FILLER              PICTURE X(2) VALUE SPACES.
000122             02 COMMAND-IMAGE       PICTURE X(80).
000123
000124         01  ACTIVITIES-LISTING.
000125             02 DISPOSITION         PICTURE X(2).
000126             02 ACTIVE-IMAGE        PICTURE X(80).
000127
000128         01  UPSI-BYTE.
000129             02 UPSI-BIT OCCURS 8 TIMES  PICTURE X.
000130
000131         01  MESSAGE-LOG.
000132             02 FILLER              PICTURE X(2) VALUE SPACES.
000133             02 MESSAGE-TEXT        PICTURE X(80).
000134
000135         01  DISPLAY-MESSAGE.
000136             02 FILLER              PICTURE X(2) VALUE SPACES.
000137             02 DISPLAY-TEMP        PICTURE X(6).
000138             02 FILLER              PICTURE X(2) VALUE SPACES.
000139             02 DISPLAY-TEXT        PICTURE X(60).
000140
000141         77  END-JOB-PROCESS        PICTURE 9 VALUE 0.
000142         77  DELETE-PROCESS         PICTURE 9 VALUE 1.
000143         77  INSERT-PROCESS         PICTURE 9 VALUE 2.
000144         77  WRITE-PROCESS          PICTURE 9 VALUE 3.
000145
000146         01  SELECTORS.
000147             02 RETURN-SELECT       PICTURE 9 VALUE 0.
000148             02 NEXT-JOB-SELECT     PICTURE 9 VALUE 0.
000149
000150         PROCEDURE DIVISION.
000151
000152         START-SECTION.
000153             OPEN INPUT OLD-VERSION, MODIFICATION,
000154                  OUTPUT NEW-VERSION, COMMENTARY.
000155             MOVE \"F\" TO UPSI-BIT (1), UPSI-BIT (2).
000156             ACCEPT DATE-FROM-SYS FROM DATE.
000157             MOVE DFSYS (1) TO YEAR-RUN.
000158             MOVE DFSYS (2) TO MONTH-RUN.
000159             MOVE DFSYS (3) TO DAY-RUN.
000160             READ OLD-VERSION AT END
000161                MOVE \"NO OLD VERSION FOUND\" TO MESSAGE-TEXT
000162                WRITE COMMENT-LINE FROM MESSAGE-LOG
000163                GO TO END-JOB.
000164             MOVE OLD-STATEMENT TO NEW-STATEMENT.
000165             PERFORM OUTPUT-A-RECORD.
000166
000167         TOP-OF-PAGE-ROUTINE.
000168             ADD 1 TO PAGE-NUMBER.
000169             MOVE ZERO TO LINE-COUNT.
000170             WRITE COMMENT-LINE FROM HEADINGS-LINE AFTER PAGE.
000171             WRITE COMMENT-LINE FROM BLANK-LINE.
000172
000173         READ-A-COMMAND.
000174             READ MODIFICATION AT END
000175                MOVE \"MODIFICATION FILE ENDED \" TO MESSAGE-TEXT
000176                WRITE COMMENT-LINE FROM MESSAGE-LOG
000177                GO TO FINISH-JOB.
000178             MOVE UPDATE-ORDER TO COMMAND-IMAGE.
000179             WRITE COMMENT-LINE FROM COMMAND-LISTING.
000180             ADD 2 TO LINE-COUNT.
000181             IF A-BLANK MOVE ZEROES TO A-FIELD.
000182             IF B-BLANK MOVE ZEROES TO B-FIELD.
000183             MOVE A-FIELD TO FIELDA.
000184             MOVE B-FIELD TO FIELDB.
000185
000186         TEST-COMMAND-TYPE.
000187             IF CHANGE GO TO CHANGE-A-RECORD.
000188             IF REMOVE GO TO DELETE-A-RECORD.
000189             IF DISPLY MOVE \"T\" TO UPSI-BIT (2)
000190                GO TO FINISH-JOB.
000191             IF ENDJOB GO TO FINISH-JOB.
000192             IF ADDNEW GO TO INSERT-A-RECORD.
000193             MOVE \"INVALID COMMAND IGNORED.\" TO MESSAGE-TEXT.
000194             WRITE COMMENT-LINE FROM MESSAGE-LOG.
000195             GO TO READ-A-COMMAND.
000196
000197         CHANGE-A-RECORD.
000198             ALTER RETURN-TO-USER TO PROCEED TO INSERTION-PROCESS.
warning: ALTER is obsolete in GnuCOBOL
000199             ALTER NEXT-JOB-STEP TO PROCEED TO DELETION-PROCESS.
warning: ALTER is obsolete in GnuCOBOL
000200
000201         FIND-FIELDA.
000202             IF OLD-NUMBER IS GREATER THAN FIELDA
000203                MOVE \"RECORD ALREADY PASSED\" TO MESSAGE-TEXT
000204                WRITE COMMENT-LINE FROM MESSAGE-LOG
000205                GO TO READ-A-COMMAND.
000206             READ OLD-VERSION AT END
000207                MOVE \"NOT FOUND IN OLD VERSION\" TO DISPLAY-TEXT
000208                MOVE FIELDA TO DISPLAY-TEMP
000209                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE
000210                GO TO END-JOB.
000211             IF OLD-NUMBER IS LESS THAN FIELDA
000212                MOVE OLD-STATEMENT TO NEW-STATEMENT
000213                PERFORM OUTPUT-A-RECORD
000214                GO TO FIND-FIELDA.
000215
000216         RETURN-TO-USER.
000217             GO TO END-JOB.
000218
000219         INSERT-A-RECORD.
000220             ALTER RETURN-TO-USER TO PROCEED TO INSERTION-PROCESS.
warning: ALTER is obsolete in GnuCOBOL
000221             ALTER NEXT-JOB-STEP TO PROCEED TO FORCED-WRITE.
warning: ALTER is obsolete in GnuCOBOL
000222             GO TO FIND-FIELDA.
000223
000224         INSERTION-PROCESS.
000225             READ MODIFICATION AT END
000226                MOVE \"NO ENDSET FOUND\" TO MESSAGE-TEXT
000227                WRITE COMMENT-LINE FROM MESSAGE-LOG
000228                GO TO END-JOB.
000229             IF ENDSET
000230                MOVE COMMAND-ADDITIONS TO DISPLAY-TEMP
000231                MOVE \"RECORDS INSERTED.\" TO DISPLAY-TEXT
000232                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE
000233                ADD COMMAND-ADDITIONS TO TOTAL-INSERTED
000234                MOVE ZEROES TO COMMAND-ADDITIONS
000235                GO TO NEXT-JOB-STEP.
000236             MOVE INSERTION TO NEW-STATEMENT, ACTIVE-IMAGE.
000237             MOVE \"I \" TO DISPOSITION.
000238             PERFORM OUTPUT-A-RECORD.
000239             WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.
000240             ADD 1 TO COMMAND-ADDITIONS.
000241             ADD 1 TO LINE-COUNT.
000242             IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.
000243             GO TO INSERTION-PROCESS.
000244
000245         NEXT-JOB-STEP.
000246             GO TO END-JOB.
000247
000248         FORCED-WRITE.
000249             MOVE OLD-STATEMENT TO NEW-STATEMENT.
000250             PERFORM OUTPUT-A-RECORD.
000251             GO TO READ-A-COMMAND.
000252
000253         DELETE-A-RECORD.
000254             ALTER RETURN-TO-USER TO PROCEED TO DELETION-PROCESS.
warning: ALTER is obsolete in GnuCOBOL
000255             GO TO FIND-FIELDA.
000256
000257         DELETION-PROCESS.
000258             MOVE OLD-RECORD TO ACTIVE-IMAGE.
000259             MOVE \"D \" TO DISPOSITION.
000260             WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.
000261             ADD 1 TO LINE-COUNT.
000262             IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.
000263             ADD 1 TO COMMAND-SUBTRACTIONS.
000264             IF OLD-NUMBER IS NOT LESS THAN FIELDB
000265                MOVE COMMAND-SUBTRACTIONS TO DISPLAY-TEMP
000266                MOVE \"RECORDS DELETED.\" TO DISPLAY-TEXT
000267                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE
000268                ADD COMMAND-SUBTRACTIONS TO TOTAL-DELETED
000269                MOVE OLD-STATEMENT TO NEW-STATEMENT
000270                MOVE ZEROES TO COMMAND-SUBTRACTIONS
000271                GO TO READ-A-COMMAND.
000272             READ OLD-VERSION AT END
000273                MOVE \"NOT FOUND IN OLD VERSION DOING DELETE\"
000274                      TO DISPLAY-TEXT
000275                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE
000276                GO TO END-JOB.
000277             GO TO DELETION-PROCESS.
000278
000279         OUTPUT-A-RECORD.
000280             ADD 1 TO OUTPUT-COUNT.
000281             MOVE OUTPUT-COUNT TO NEW-NUMBER.
000282             WRITE NEW-RECORD.
000283
000284         FINISH-JOB.
000285             READ OLD-VERSION AT END GO TO TEST-FOR-LISTING.
000286             MOVE OLD-STATEMENT TO NEW-STATEMENT.
000287             GO TO OUTPUT-A-RECORD.
000288
000289         TEST-FOR-LISTING.
000290             PERFORM TOP-OF-PAGE-ROUTINE.
000291             MOVE OLD-NUMBER TO DISPLAY-TEMP.
000292             MOVE \"RECORDS READ.\" TO DISPLAY-TEXT.
000293             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.
000294             MOVE TOTAL-INSERTED TO DISPLAY-TEMP.
000295             MOVE \"RECORDS ADDED.\" TO DISPLAY-TEXT.
000296             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.
000297             MOVE TOTAL-DELETED TO DISPLAY-TEMP.
000298             MOVE \"RECORDS DROPPED.\" TO DISPLAY-TEXT.
000299             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.
000300             MOVE OUTPUT-COUNT TO DISPLAY-TEMP.
000301             MOVE \"RECORDS IN NEW FILE.\" TO DISPLAY-TEXT.
000302             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.
000303             IF UPSI-BIT (2) EQUAL \"F\" GO TO END-JOB.
000304             CLOSE NEW-VERSION.
000305             OPEN INPUT NEW-VERSION.
000306             MOVE \"UPDATED LISTING\" TO PHASE.
000307             MOVE ZEROES TO PAGE-NUMBER.
000308             PERFORM TOP-OF-PAGE-ROUTINE.
000309             MOVE SPACES TO DISPOSITION.
000310
000311         LISTING-LOOP.
000312             READ NEW-VERSION AT END GO TO END-JOB.
000313             MOVE NEW-RECORD TO ACTIVE-IMAGE.
000314             WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.
000315             ADD 1 TO LINE-COUNT.
000316             IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.
000317             GO TO LISTING-LOOP.
000318
000319         END-JOB.
000320             MOVE \"PROGRAM TERMINATION\" TO MESSAGE-TEXT.
000321             WRITE COMMENT-LINE FROM MESSAGE-LOG.
000322             CLOSE OLD-VERSION, NEW-VERSION, MODIFICATION, COMMENTARY.
000323             STOP RUN.
000324
000325         END PROGRAM EDITOR.

SIZE  TYPE           LVL  NAME                           PICTURE

00080 FILE                OLD-VERSION
00080 GROUP          01   OLD-RECORD
00075 ALPHANUMERIC   02   OLD-STATEMENT                  X(75)
00005 ALPHANUMERIC   02   OLD-NUMBER                     X(5)

00080 FILE                NEW-VERSION
00080 GROUP          01   NEW-RECORD
00075 ALPHANUMERIC   02   NEW-STATEMENT                  X(75)
00005 ALPHANUMERIC   02   NEW-NUMBER                     X(5)

00032 FILE                PRT-VERSION

00080 FILE                MODIFICATION
00080 GROUP          01   UPDATE-ORDER
00075 GROUP          02   INSERTION
00006 ALPHANUMERIC   03   COMMAND                        X(6)
      CONDITIONAL    88   ENDJOB
      CONDITIONAL    88   ENDSET
      CONDITIONAL    88   REMOVE
      CONDITIONAL    88   ADDNEW
      CONDITIONAL    88   CHANGE
      CONDITIONAL    88   DISPLY
00001 ALPHANUMERIC   03   FILLER                         X
00005 NUMERIC        03   A-FIELD                        9(5)
00005 ALPHANUMERIC   03   A-ALPHA                        X(5), REDEFINES A-FIELD
      CONDITIONAL    88   A-BLANK
00004 ALPHANUMERIC   03   FILLER                         X(4)
00005 NUMERIC        03   B-FIELD                        9(5)
00005 ALPHANUMERIC   03   B-ALPHA                        X(5), REDEFINES B-FIELD
      CONDITIONAL    88   B-BLANK
00054 ALPHANUMERIC   03   FILLER                         X(54)
00005 ALPHANUMERIC   02   FILLER                         X(5)

00082 FILE                COMMENTARY
00082 GROUP          01   COMMENT-LINE
00082 ALPHANUMERIC   02   FILLER                         X(82)

      WORKING-STORAGE SECTION

00002 NUMERIC        77   COMMAND-ADDITIONS              9(3) COMP
00002 NUMERIC        77   COMMAND-SUBTRACTIONS           9(3) COMP
00002 NUMERIC        77   TOTAL-INSERTED                 9(3) COMP
00002 NUMERIC        77   TOTAL-DELETED                  9(3) COMP
00004 NUMERIC        77   OUTPUT-COUNT                   9(5) COMP
00001 NUMERIC        77   LINE-COUNT                     9(2) COMP
00005 NUMERIC        77   FIELDA                         9(5)
00005 NUMERIC        77   FIELDB                         9(5)
00082 ALPHANUMERIC   77   BLANK-LINE                     X(82)

00006 GROUP          01   DATE-FROM-SYS
00002 NUMERIC        02   DFSYS                          99, OCCURS 3

00080 GROUP          01   HEADINGS-LINE
00015 ALPHANUMERIC   02   FILLER                         X(15)
00020 ALPHANUMERIC   02   FILLER                         X(20)
00017 ALPHANUMERIC   02   PHASE                          X(17)
00002 ALPHANUMERIC   02   MONTH-RUN                      XX
00001 ALPHANUMERIC   02   FILLER                         X
00002 ALPHANUMERIC   02   DAY-RUN                        XX
00001 ALPHANUMERIC   02   FILLER                         X
00002 ALPHANUMERIC   02   YEAR-RUN                       XX
00008 ALPHANUMERIC   02   FILLER                         X(8)
00008 ALPHANUMERIC   02   FILLER                         X(8)
00004 NUMERIC        02   PAGE-NUMBER                    9(4)

00082 GROUP          01   COMMAND-LISTING
00002 ALPHANUMERIC   02   FILLER                         X(2)
00080 ALPHANUMERIC   02   COMMAND-IMAGE                  X(80)

00082 GROUP          01   ACTIVITIES-LISTING
00002 ALPHANUMERIC   02   DISPOSITION                    X(2)
00080 ALPHANUMERIC   02   ACTIVE-IMAGE                   X(80)

00008 GROUP          01   UPSI-BYTE
00001 ALPHANUMERIC   02   UPSI-BIT                       X, OCCURS 8

00082 GROUP          01   MESSAGE-LOG
00002 ALPHANUMERIC   02   FILLER                         X(2)
00080 ALPHANUMERIC   02   MESSAGE-TEXT                   X(80)

00070 GROUP          01   DISPLAY-MESSAGE
00002 ALPHANUMERIC   02   FILLER                         X(2)
00006 ALPHANUMERIC   02   DISPLAY-TEMP                   X(6)
00002 ALPHANUMERIC   02   FILLER                         X(2)
00060 ALPHANUMERIC   02   DISPLAY-TEXT                   X(60)

00001 NUMERIC        77   END-JOB-PROCESS                9
00001 NUMERIC        77   DELETE-PROCESS                 9
00001 NUMERIC        77   INSERT-PROCESS                 9
00001 NUMERIC        77   WRITE-PROCESS                  9

00002 GROUP          01   SELECTORS
00001 NUMERIC        02   RETURN-SELECT                  9
00001 NUMERIC        02   NEXT-JOB-SELECT                9


NAME                           DEFINED                REFERENCES

OLD-VERSION                    26       41      153     160     206     272
                                        285     322                    x7
OLD-RECORD                     46       44      258                    x2
OLD-STATEMENT                  47       164     212     249     269     286
                                                                       x5
OLD-NUMBER                     48       202     211     264     291    x4

NEW-VERSION                    28       50     *154    *282     304     305
                                        312     322                    x7
NEW-RECORD                     55       53      282     313            x3
NEW-STATEMENT                  56      *164    *212    *236    *249    *269
                                       *286                            x6
NEW-NUMBER                     57      *281                            x1

PRT-VERSION                    30     not referenced

MODIFICATION                   32       59      153     174     225     322
                                                                       x5
UPDATE-ORDER                   64       62      178                    x2
INSERTION                      65       236                            x1
COMMAND                        66     referenced by parent/child
ENDJOB                         67       191                            x1
ENDSET                         68       229                            x1
REMOVE                         69       188                            x1
ADDNEW                         70       192                            x1
CHANGE                         71       187                            x1
DISPLY                         72       189                            x1
A-FIELD                        74      *181     183                    x2
A-ALPHA                        75     referenced by parent/child
A-BLANK                        76       181                            x1
B-FIELD                        78      *182     184                    x2
B-ALPHA                        79     referenced by parent/child
B-BLANK                        80       182                            x1

COMMENTARY                     34       84     *154    *162    *170    *171
                                       *176    *179    *194    *204    *209
                                       *227    *232    *239    *260    *267
                                       *275    *293    *296    *299    *302
                                       *314    *321     322            x23
COMMENT-LINE                   89       87     *162    *170    *171    *176
                                       *179    *194    *204    *209    *227
                                       *232    *239    *260    *267    *275
                                       *293    *296    *299    *302    *314
                                       *321                            x21

COMMAND-ADDITIONS              94       230     233    *234    *240    x4
COMMAND-SUBTRACTIONS           95      *263     265     268    *270    x4
TOTAL-INSERTED                 96      *233     294                    x2
TOTAL-DELETED                  97      *268     297                    x2
OUTPUT-COUNT                   98      *280     281     300            x3
LINE-COUNT                     99      *169    *180    *241     242    *261
                                        262    *315     316            x8
FIELDA                         100     *183     202     208     211    x4
FIELDB                         101     *184     264                    x2
BLANK-LINE                     102      171                            x1
DATE-FROM-SYS                  104     *156                            x1
DFSYS                          105      157     158     159            x3
HEADINGS-LINE                  107      170                            x1
PHASE                          110     *306                            x1
MONTH-RUN                      111     *158                            x1
DAY-RUN                        113     *159                            x1
YEAR-RUN                       115     *157                            x1
PAGE-NUMBER                    118     *168    *307                    x2
COMMAND-LISTING                120      179                            x1
COMMAND-IMAGE                  122     *178                            x1
ACTIVITIES-LISTING             124      239     260     314            x3
DISPOSITION                    125     *237    *259    *309            x3
ACTIVE-IMAGE                   126     *236    *258    *313            x3
UPSI-BYTE                      128    referenced by child
UPSI-BIT                       129     *155    *189     303            x3
MESSAGE-LOG                    131      162     176     194     204     227
                                        321                            x6
MESSAGE-TEXT                   133     *161    *175    *193    *203    *226
                                       *320                            x6
DISPLAY-MESSAGE                135      209     232     267     275     293
                                        296     299     302            x8
DISPLAY-TEMP                   137     *208    *230    *265    *291    *294
                                       *297    *300                    x7
DISPLAY-TEXT                   139     *207    *231    *266    *274    *292
                                       *295    *298    *301            x8
END-JOB-PROCESS                141    not referenced
DELETE-PROCESS                 142    not referenced
INSERT-PROCESS                 143    not referenced
WRITE-PROCESS                  144    not referenced
SELECTORS                      146    not referenced
RETURN-SELECT                  147    not referenced
NEXT-JOB-SELECT                148    not referenced


LABEL                          DEFINED                REFERENCES

E EDITOR                       152
P START-SECTION                152    not referenced
P TOP-OF-PAGE-ROUTINE          167      242     262     290     308     316
                                                                       x5
P READ-A-COMMAND               173      195     205     251     271    x4
P TEST-COMMAND-TYPE            186    not referenced
P CHANGE-A-RECORD              197      187                            x1
P FIND-FIELDA                  201      214     222     255            x3
P RETURN-TO-USER               216      198     220     254            x3
P INSERT-A-RECORD              219      192                            x1
P INSERTION-PROCESS            224      198     220     243            x3
P NEXT-JOB-STEP                245      199     221     235            x3
P FORCED-WRITE                 248      221                            x1
P DELETE-A-RECORD              253      188                            x1
P DELETION-PROCESS             257      199     254     277            x3
P OUTPUT-A-RECORD              279      165     213     238     250     287
                                                                       x5
P FINISH-JOB                   284      177     190     191            x3
P TEST-FOR-LISTING             289      285                            x1
P LISTING-LOOP                 311      317                            x1
P END-JOB                      319      163     210     217     228     246
                                        276     303     312            x8


Error/Warning summary:

EDITOR.cob:30: error: missing file description for FILE PRT-VERSION
EDITOR.cob:42: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:44: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:51: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:53: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:60: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:62: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:85: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:87: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:198: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:199: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:220: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:221: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:254: warning: ALTER is obsolete in GnuCOBOL

13 warnings in compilation group
1 error in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:4550"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/listings.at:5131: \$COMPILE_LISTING0 -Xref -T- -ftsymbols EDITOR.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -Xref -T- -ftsymbols EDITOR.cob" "listings.at:5131"
( $at_check_trace; $COMPILE_LISTING0 -Xref -T- -ftsymbols EDITOR.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "EDITOR.cob:42: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:44: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:51: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:53: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:60: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:62: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:85: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:87: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:30: error: missing file description for FILE PRT-VERSION
EDITOR.cob: in paragraph 'CHANGE-A-RECORD':
EDITOR.cob:198: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:199: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob: in paragraph 'INSERT-A-RECORD':
EDITOR.cob:220: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:221: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob: in paragraph 'DELETE-A-RECORD':
EDITOR.cob:254: warning: ALTER is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               EDITOR.cob

LINE    PG/LN  A...B............................................................SEQUENCE

000001
000002         IDENTIFICATION DIVISION.                                         EDIT0001
000003         PROGRAM-ID.                                                      EDIT0002
000004             EDITOR.                                                      EDIT0003
000005                                                                          EDIT0008
000006        *NOTE.                                                            EDIT0009
000007        *    THIS VERSION OF EDITOR 1 COMPRISES AN ENTIRE RE_WRITE        EDIT0010
000008        *    OF THE BASIC EDITOR WITH ONLY ONE CHANGE IN THE COMMAND      EDIT0011
000009        *    STRUCTURE, THAT BEING THE ADDITION OF A \"CHANGE\" COMMAND     EDIT0012
000010        *    TO SERVE IN PLACE OF THE INSERT-DELETE COMBINATION WHICH     EDIT0013
000011        *    WAS REQUIRED IN PREVIOUS VERSIONS. RECORD NUMBER FIELDS      EDIT0014
000012        *    HAVE ALSO BEEN REDUCED FROM 5 DIGITS TO 4.                   EDIT0015
000013        *    CHANGE 1.                                                    EDIT0016
000014        *       MODIFY TO RUN ON TI-990.                                  EDIT0017
000015        *    CHANGE 2.                                                    EDIT0018
000016        *       MODIFY TO RUN ON GNUCOBOL.                                EDIT0019
000017                                                                          EDIT0020
000018         ENVIRONMENT DIVISION.                                            EDIT0021
000019         CONFIGURATION SECTION.                                           EDIT0022
000020         SOURCE-COMPUTER.                                                 EDIT0023
000021             IBM-360.                                                     EDIT0024
000022         OBJECT-COMPUTER.                                                 EDIT0025
000023             IBM-360.                                                     EDIT0026
000024         INPUT-OUTPUT SECTION.                                            EDIT0027
000025         FILE-CONTROL.                                                    EDIT0028
000026             SELECT OLD-VERSION  ASSIGN TO \"SYSUT1\"                       EDIT0029
000027                                 ORGANIZATION LINE SEQUENTIAL.            EDIT0030
000028             SELECT NEW-VERSION  ASSIGN TO \"SYSUT2\"                       EDIT0031
000029                                 ORGANIZATION LINE SEQUENTIAL.            EDIT0032
000030             SELECT PRT-VERSION  ASSIGN TO \"SYSUT2\"                       EDIT0033
error: missing file description for FILE PRT-VERSION
000031                                 ORGANIZATION LINE SEQUENTIAL.            EDIT0034
000032             SELECT MODIFICATION ASSIGN TO \"SYSIN1\"                       EDIT0035
000033                                 ORGANIZATION LINE SEQUENTIAL.            EDIT0036
000034             SELECT COMMENTARY   ASSIGN TO \"SYSOU1\"                       EDIT0037
000035                                 ORGANIZATION LINE SEQUENTIAL.            EDIT0038
000036                                                                          EDIT0039
000037         DATA DIVISION.                                                   EDIT0040
000038                                                                          EDIT0041
000039         FILE SECTION.                                                    EDIT0042
000040                                                                          EDIT0043
000041         FD  OLD-VERSION                                                  EDIT0044
000042             LABEL RECORDS ARE STANDARD                                   EDIT0045
warning: LABEL RECORDS is obsolete in GnuCOBOL
000043             BLOCK CONTAINS 80 CHARACTERS                                 EDIT0046
000044             DATA RECORD IS OLD-RECORD.                                   EDIT0047
warning: DATA RECORDS is obsolete in GnuCOBOL
000045                                                                          EDIT0048
000046         01  OLD-RECORD.                                                  EDIT0049
000047             02 OLD-STATEMENT       PICTURE X(75).                        EDIT0050
000048             02 OLD-NUMBER          PICTURE X(5).                         EDIT0051
000049                                                                          EDIT0052
000050         FD  NEW-VERSION                                                  EDIT0053
000051             LABEL RECORDS ARE STANDARD                                   EDIT0054
warning: LABEL RECORDS is obsolete in GnuCOBOL
000052             BLOCK CONTAINS 80 CHARACTERS                                 EDIT0055
000053             DATA RECORD IS NEW-RECORD.                                   EDIT0056
warning: DATA RECORDS is obsolete in GnuCOBOL
000054                                                                          EDIT0057
000055         01  NEW-RECORD.                                                  EDIT0058
000056             02 NEW-STATEMENT       PICTURE X(75).                        EDIT0059
000057             02 NEW-NUMBER          PICTURE X(5).                         EDIT0060
000058                                                                          EDIT0061
000059         FD  MODIFICATION                                                 EDIT0062
000060             LABEL RECORDS ARE OMITTED                                    EDIT0063
warning: LABEL RECORDS is obsolete in GnuCOBOL
000061             BLOCK CONTAINS 80 CHARACTERS                                 EDIT0064
000062             DATA RECORD IS UPDATE-ORDER.                                 EDIT0065
warning: DATA RECORDS is obsolete in GnuCOBOL
000063                                                                          EDIT0066
000064         01  UPDATE-ORDER.                                                EDIT0067
000065             02 INSERTION.                                                EDIT0068
000066                03 COMMAND          PICTURE X(6).                         EDIT0069
000067                   88 ENDJOB        VALUE \"ENDJOB\".                       EDIT0070
000068                   88 ENDSET        VALUE \"ENDSET\".                       EDIT0071
000069                   88 REMOVE        VALUE \"REMOVE\".                       EDIT0072
000070                   88 ADDNEW        VALUE \"INSERT\".                       EDIT0073
000071                   88 CHANGE        VALUE \"CHANGE\".                       EDIT0074
000072                   88 DISPLY        VALUE \"DISPLY\".                       EDIT0075
000073                03 FILLER           PICTURE X.                            EDIT0076
000074                03 A-FIELD          PICTURE 9(5).                         EDIT0077
000075                03 A-ALPHA REDEFINES A-FIELD    PICTURE X(5).             EDIT0078
000076                   88 A-BLANK       VALUE SPACES.                         EDIT0079
000077                03 FILLER           PICTURE X(4).                         EDIT0080
000078                03 B-FIELD          PICTURE 9(5).                         EDIT0081
000079                03 B-ALPHA REDEFINES B-FIELD    PICTURE X(5).             EDIT0082
000080                   88 B-BLANK       VALUE SPACES.                         EDIT0083
000081                03 FILLER           PICTURE X(54).                        EDIT0084
000082             02 FILLER              PICTURE X(5).                         EDIT0085
000083                                                                          EDIT0086
000084         FD  COMMENTARY                                                   EDIT0087
000085             LABEL RECORDS ARE OMITTED                                    EDIT0088
warning: LABEL RECORDS is obsolete in GnuCOBOL
000086             BLOCK CONTAINS 82 CHARACTERS                                 EDIT0089
000087             DATA RECORD IS COMMENT-LINE.                                 EDIT0090
warning: DATA RECORDS is obsolete in GnuCOBOL
000088                                                                          EDIT0091
000089         01  COMMENT-LINE.                                                EDIT0092
000090             02 FILLER              PICTURE X(82).                        EDIT0093
000091                                                                          EDIT0094
000092         WORKING-STORAGE SECTION.                                         EDIT0095
000093                                                                          EDIT0096
000094         77  COMMAND-ADDITIONS      PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0097
000095         77  COMMAND-SUBTRACTIONS   PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0098
000096         77  TOTAL-INSERTED         PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0099
000097         77  TOTAL-DELETED          PICTURE 9(3) COMPUTATIONAL VALUE 0.   EDIT0100
000098         77  OUTPUT-COUNT           PICTURE 9(5) COMPUTATIONAL VALUE 0.   EDIT0101
000099         77  LINE-COUNT             PICTURE 9(2) COMPUTATIONAL VALUE 0.   EDIT0102
000100         77  FIELDA                 PICTURE 9(5) VALUE 0.                 EDIT0103
000101         77  FIELDB                 PICTURE 9(5) VALUE 0.                 EDIT0104
000102         77  BLANK-LINE             PICTURE X(82) VALUE SPACES.           EDIT0105
000103                                                                          EDIT0106
000104         01  DATE-FROM-SYS.                                               EDIT0107
000105             02 DFSYS OCCURS 3 TIMES PICTURE 99.                          EDIT0108
000106                                                                          EDIT0109
000107         01  HEADINGS-LINE.                                               EDIT0110
000108             02 FILLER              PICTURE X(15) VALUE \"EDITOR VERSION\". EDIT0111
000109             02 FILLER              PICTURE X(20) VALUE \"1.1 - 206/72\".   EDIT0112
000110             02 PHASE               PICTURE X(17) VALUE \"UPDATING AS OF\". EDIT0113
000111             02 MONTH-RUN           PICTURE XX.                           EDIT0114
000112             02 FILLER              PICTURE X VALUE \"/\".                  EDIT0115
000113             02 DAY-RUN             PICTURE XX.                           EDIT0116
000114             02 FILLER              PICTURE X VALUE \"/\".                  EDIT0117
000115             02 YEAR-RUN            PICTURE XX.                           EDIT0118
000116             02 FILLER              PICTURE X(8) VALUE SPACES.            EDIT0119
000117             02 FILLER              PICTURE X(8) VALUE \"  PAGE: \".        EDIT0120
000118             02 PAGE-NUMBER         PICTURE 9(4) VALUE 0.                 EDIT0121
000119                                                                          EDIT0122
000120         01  COMMAND-LISTING.                                             EDIT0123
000121             02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0124
000122             02 COMMAND-IMAGE       PICTURE X(80).                        EDIT0125
000123                                                                          EDIT0126
000124         01  ACTIVITIES-LISTING.                                          EDIT0127
000125             02 DISPOSITION         PICTURE X(2).                         EDIT0128
000126             02 ACTIVE-IMAGE        PICTURE X(80).                        EDIT0129
000127                                                                          EDIT0130
000128         01  UPSI-BYTE.                                                   EDIT0131
000129             02 UPSI-BIT OCCURS 8 TIMES  PICTURE X.                       EDIT0132
000130                                                                          EDIT0133
000131         01  MESSAGE-LOG.                                                 EDIT0134
000132             02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0135
000133             02 MESSAGE-TEXT        PICTURE X(80).                        EDIT0136
000134                                                                          EDIT0137
000135         01  DISPLAY-MESSAGE.                                             EDIT0138
000136             02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0139
000137             02 DISPLAY-TEMP        PICTURE X(6).                         EDIT0140
000138             02 FILLER              PICTURE X(2) VALUE SPACES.            EDIT0141
000139             02 DISPLAY-TEXT        PICTURE X(60).                        EDIT0142
000140                                                                          EDIT0143
000141         77  END-JOB-PROCESS        PICTURE 9 VALUE 0.                    EDIT0144
000142         77  DELETE-PROCESS         PICTURE 9 VALUE 1.                    EDIT0145
000143         77  INSERT-PROCESS         PICTURE 9 VALUE 2.                    EDIT0146
000144         77  WRITE-PROCESS          PICTURE 9 VALUE 3.                    EDIT0147
000145                                                                          EDIT0148
000146         01  SELECTORS.                                                   EDIT0149
000147             02 RETURN-SELECT       PICTURE 9 VALUE 0.                    EDIT0150
000148             02 NEXT-JOB-SELECT     PICTURE 9 VALUE 0.                    EDIT0151
000149                                                                          EDIT0152
000150         PROCEDURE DIVISION.                                              EDIT0153
000151                                                                          EDIT0154
000152         START-SECTION.                                                   EDIT0155
000153             OPEN INPUT OLD-VERSION, MODIFICATION,                        EDIT0156
000154                  OUTPUT NEW-VERSION, COMMENTARY.                         EDIT0157
000155             MOVE \"F\" TO UPSI-BIT (1), UPSI-BIT (2).                      EDIT0158
000156             ACCEPT DATE-FROM-SYS FROM DATE.                              EDIT0159
000157             MOVE DFSYS (1) TO YEAR-RUN.                                  EDIT0160
000158             MOVE DFSYS (2) TO MONTH-RUN.                                 EDIT0161
000159             MOVE DFSYS (3) TO DAY-RUN.                                   EDIT0162
000160             READ OLD-VERSION AT END                                      EDIT0163
000161                MOVE \"NO OLD VERSION FOUND\" TO MESSAGE-TEXT               EDIT0164
000162                WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0165
000163                GO TO END-JOB.                                            EDIT0166
000164             MOVE OLD-STATEMENT TO NEW-STATEMENT.                         EDIT0167
000165             PERFORM OUTPUT-A-RECORD.                                     EDIT0168
000166                                                                          EDIT0169
000167         TOP-OF-PAGE-ROUTINE.                                             EDIT0170
000168             ADD 1 TO PAGE-NUMBER.                                        EDIT0171
000169             MOVE ZERO TO LINE-COUNT.                                     EDIT0172
000170             WRITE COMMENT-LINE FROM HEADINGS-LINE AFTER PAGE.            EDIT0173
000171             WRITE COMMENT-LINE FROM BLANK-LINE.                          EDIT0174
000172                                                                          EDIT0175
000173         READ-A-COMMAND.                                                  EDIT0176
000174             READ MODIFICATION AT END                                     EDIT0177
000175                MOVE \"MODIFICATION FILE ENDED \" TO MESSAGE-TEXT           EDIT0178
000176                WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0179
000177                GO TO FINISH-JOB.                                         EDIT0180
000178             MOVE UPDATE-ORDER TO COMMAND-IMAGE.                          EDIT0181
000179             WRITE COMMENT-LINE FROM COMMAND-LISTING.                     EDIT0182
000180             ADD 2 TO LINE-COUNT.                                         EDIT0183
000181             IF A-BLANK MOVE ZEROES TO A-FIELD.                           EDIT0184
000182             IF B-BLANK MOVE ZEROES TO B-FIELD.                           EDIT0185
000183             MOVE A-FIELD TO FIELDA.                                      EDIT0186
000184             MOVE B-FIELD TO FIELDB.                                      EDIT0187
000185                                                                          EDIT0188
000186         TEST-COMMAND-TYPE.                                               EDIT0189
000187             IF CHANGE GO TO CHANGE-A-RECORD.                             EDIT0190
000188             IF REMOVE GO TO DELETE-A-RECORD.                             EDIT0191
000189             IF DISPLY MOVE \"T\" TO UPSI-BIT (2)                           EDIT0192
000190                GO TO FINISH-JOB.                                         EDIT0193
000191             IF ENDJOB GO TO FINISH-JOB.                                  EDIT0194
000192             IF ADDNEW GO TO INSERT-A-RECORD.                             EDIT0195
000193             MOVE \"INVALID COMMAND IGNORED.\" TO MESSAGE-TEXT.             EDIT0196
000194             WRITE COMMENT-LINE FROM MESSAGE-LOG.                         EDIT0197
000195             GO TO READ-A-COMMAND.                                        EDIT0198
000196                                                                          EDIT0199
000197         CHANGE-A-RECORD.                                                 EDIT0200
000198             ALTER RETURN-TO-USER TO PROCEED TO INSERTION-PROCESS.        EDIT0201
warning: ALTER is obsolete in GnuCOBOL
000199             ALTER NEXT-JOB-STEP TO PROCEED TO DELETION-PROCESS.          EDIT0202
warning: ALTER is obsolete in GnuCOBOL
000200                                                                          EDIT0205
000201         FIND-FIELDA.                                                     EDIT0206
000202             IF OLD-NUMBER IS GREATER THAN FIELDA                         EDIT0207
000203                MOVE \"RECORD ALREADY PASSED\" TO MESSAGE-TEXT              EDIT0208
000204                WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0209
000205                GO TO READ-A-COMMAND.                                     EDIT0210
000206             READ OLD-VERSION AT END                                      EDIT0211
000207                MOVE \"NOT FOUND IN OLD VERSION\" TO DISPLAY-TEXT           EDIT0212
000208                MOVE FIELDA TO DISPLAY-TEMP                               EDIT0213
000209                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0214
000210                GO TO END-JOB.                                            EDIT0215
000211             IF OLD-NUMBER IS LESS THAN FIELDA                            EDIT0216
000212                MOVE OLD-STATEMENT TO NEW-STATEMENT                       EDIT0217
000213                PERFORM OUTPUT-A-RECORD                                   EDIT0218
000214                GO TO FIND-FIELDA.                                        EDIT0219
000215                                                                          EDIT0220
000216         RETURN-TO-USER.                                                  EDIT0221
000217             GO TO END-JOB.                                               EDIT0223
000218                                                                          EDIT0228
000219         INSERT-A-RECORD.                                                 EDIT0229
000220             ALTER RETURN-TO-USER TO PROCEED TO INSERTION-PROCESS.        EDIT0230
warning: ALTER is obsolete in GnuCOBOL
000221             ALTER NEXT-JOB-STEP TO PROCEED TO FORCED-WRITE.              EDIT0231
warning: ALTER is obsolete in GnuCOBOL
000222             GO TO FIND-FIELDA.                                           EDIT0234
000223                                                                          EDIT0235
000224         INSERTION-PROCESS.                                               EDIT0236
000225             READ MODIFICATION AT END                                     EDIT0237
000226                MOVE \"NO ENDSET FOUND\" TO MESSAGE-TEXT                    EDIT0238
000227                WRITE COMMENT-LINE FROM MESSAGE-LOG                       EDIT0239
000228                GO TO END-JOB.                                            EDIT0240
000229             IF ENDSET                                                    EDIT0241
000230                MOVE COMMAND-ADDITIONS TO DISPLAY-TEMP                    EDIT0242
000231                MOVE \"RECORDS INSERTED.\" TO DISPLAY-TEXT                  EDIT0243
000232                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0244
000233                ADD COMMAND-ADDITIONS TO TOTAL-INSERTED                   EDIT0245
000234                MOVE ZEROES TO COMMAND-ADDITIONS                          EDIT0246
000235                GO TO NEXT-JOB-STEP.                                      EDIT0247
000236             MOVE INSERTION TO NEW-STATEMENT, ACTIVE-IMAGE.               EDIT0248
000237             MOVE \"I \" TO DISPOSITION.                                    EDIT0249
000238             PERFORM OUTPUT-A-RECORD.                                     EDIT0250
000239             WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.                  EDIT0251
000240             ADD 1 TO COMMAND-ADDITIONS.                                  EDIT0252
000241             ADD 1 TO LINE-COUNT.                                         EDIT0253
000242             IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.          EDIT0254
000243             GO TO INSERTION-PROCESS.                                     EDIT0255
000244                                                                          EDIT0256
000245         NEXT-JOB-STEP.                                                   EDIT0257
000246             GO TO END-JOB.                                               EDIT0259
000247                                                                          EDIT0264
000248         FORCED-WRITE.                                                    EDIT0265
000249             MOVE OLD-STATEMENT TO NEW-STATEMENT.                         EDIT0266
000250             PERFORM OUTPUT-A-RECORD.                                     EDIT0267
000251             GO TO READ-A-COMMAND.                                        EDIT0268
000252                                                                          EDIT0269
000253         DELETE-A-RECORD.                                                 EDIT0270
000254             ALTER RETURN-TO-USER TO PROCEED TO DELETION-PROCESS.         EDIT0271
warning: ALTER is obsolete in GnuCOBOL
000255             GO TO FIND-FIELDA.                                           EDIT0273
000256                                                                          EDIT0274
000257         DELETION-PROCESS.                                                EDIT0275
000258             MOVE OLD-RECORD TO ACTIVE-IMAGE.                             EDIT0276
000259             MOVE \"D \" TO DISPOSITION.                                    EDIT0277
000260             WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.                  EDIT0278
000261             ADD 1 TO LINE-COUNT.                                         EDIT0279
000262             IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.          EDIT0280
000263             ADD 1 TO COMMAND-SUBTRACTIONS.                               EDIT0281
000264             IF OLD-NUMBER IS NOT LESS THAN FIELDB                        EDIT0282
000265                MOVE COMMAND-SUBTRACTIONS TO DISPLAY-TEMP                 EDIT0283
000266                MOVE \"RECORDS DELETED.\" TO DISPLAY-TEXT                   EDIT0284
000267                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0285
000268                ADD COMMAND-SUBTRACTIONS TO TOTAL-DELETED                 EDIT0286
000269                MOVE OLD-STATEMENT TO NEW-STATEMENT                       EDIT0287
000270                MOVE ZEROES TO COMMAND-SUBTRACTIONS                       EDIT0288
000271                GO TO READ-A-COMMAND.                                     EDIT0289
000272             READ OLD-VERSION AT END                                      EDIT0290
000273                MOVE \"NOT FOUND IN OLD VERSION DOING DELETE\"              EDIT0291
000274                      TO DISPLAY-TEXT                                     EDIT0292
000275                WRITE COMMENT-LINE FROM DISPLAY-MESSAGE                   EDIT0293
000276                GO TO END-JOB.                                            EDIT0294
000277             GO TO DELETION-PROCESS.                                      EDIT0295
000278                                                                          EDIT0296
000279         OUTPUT-A-RECORD.                                                 EDIT0297
000280             ADD 1 TO OUTPUT-COUNT.                                       EDIT0298
000281             MOVE OUTPUT-COUNT TO NEW-NUMBER.                             EDIT0299
000282             WRITE NEW-RECORD.                                            EDIT0300
000283                                                                          EDIT0301
000284         FINISH-JOB.                                                      EDIT0302
000285             READ OLD-VERSION AT END GO TO TEST-FOR-LISTING.              EDIT0303
000286             MOVE OLD-STATEMENT TO NEW-STATEMENT.                         EDIT0304
000287             GO TO OUTPUT-A-RECORD.                                       EDIT0305
000288                                                                          EDIT0306
000289         TEST-FOR-LISTING.                                                EDIT0307
000290             PERFORM TOP-OF-PAGE-ROUTINE.                                 EDIT0308
000291             MOVE OLD-NUMBER TO DISPLAY-TEMP.                             EDIT0309
000292             MOVE \"RECORDS READ.\" TO DISPLAY-TEXT.                        EDIT0310
000293             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0311
000294             MOVE TOTAL-INSERTED TO DISPLAY-TEMP.                         EDIT0312
000295             MOVE \"RECORDS ADDED.\" TO DISPLAY-TEXT.                       EDIT0313
000296             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0314
000297             MOVE TOTAL-DELETED TO DISPLAY-TEMP.                          EDIT0315
000298             MOVE \"RECORDS DROPPED.\" TO DISPLAY-TEXT.                     EDIT0316
000299             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0317
000300             MOVE OUTPUT-COUNT TO DISPLAY-TEMP.                           EDIT0318
000301             MOVE \"RECORDS IN NEW FILE.\" TO DISPLAY-TEXT.                 EDIT0319
000302             WRITE COMMENT-LINE FROM DISPLAY-MESSAGE.                     EDIT0320
000303             IF UPSI-BIT (2) EQUAL \"F\" GO TO END-JOB.                     EDIT0321
000304             CLOSE NEW-VERSION.                                           EDIT0322
000305             OPEN INPUT NEW-VERSION.                                      EDIT0323
000306             MOVE \"UPDATED LISTING\" TO PHASE.                             EDIT0324
000307             MOVE ZEROES TO PAGE-NUMBER.                                  EDIT0325
000308             PERFORM TOP-OF-PAGE-ROUTINE.                                 EDIT0326
000309             MOVE SPACES TO DISPOSITION.                                  EDIT0327
000310                                                                          EDIT0328
000311         LISTING-LOOP.                                                    EDIT0329
000312             READ NEW-VERSION AT END GO TO END-JOB.                       EDIT0330
000313             MOVE NEW-RECORD TO ACTIVE-IMAGE.                             EDIT0331
000314             WRITE COMMENT-LINE FROM ACTIVITIES-LISTING.                  EDIT0332
000315             ADD 1 TO LINE-COUNT.                                         EDIT0333
000316             IF LINE-COUNT EQUAL 56 PERFORM TOP-OF-PAGE-ROUTINE.          EDIT0334
000317             GO TO LISTING-LOOP.                                          EDIT0335
000318                                                                          EDIT0336
000319         END-JOB.                                                         EDIT0337
000320             MOVE \"PROGRAM TERMINATION\" TO MESSAGE-TEXT.                  EDIT0338
000321             WRITE COMMENT-LINE FROM MESSAGE-LOG.                         EDIT0339
000322             CLOSE OLD-VERSION, NEW-VERSION, MODIFICATION, COMMENTARY.    EDIT0340
000323             STOP RUN.                                                    EDIT0341
000324                                                                          EDIT0342
000325         END PROGRAM EDITOR.                                              EDIT0343

SIZE  TYPE           LVL  NAME                           PICTURE

00080 FILE                OLD-VERSION
00080 GROUP          01   OLD-RECORD
00075 ALPHANUMERIC   02   OLD-STATEMENT                  X(75)
00005 ALPHANUMERIC   02   OLD-NUMBER                     X(5)

00080 FILE                NEW-VERSION
00080 GROUP          01   NEW-RECORD
00075 ALPHANUMERIC   02   NEW-STATEMENT                  X(75)
00005 ALPHANUMERIC   02   NEW-NUMBER                     X(5)

00032 FILE                PRT-VERSION

00080 FILE                MODIFICATION
00080 GROUP          01   UPDATE-ORDER
00075 GROUP          02   INSERTION
00006 ALPHANUMERIC   03   COMMAND                        X(6)
      CONDITIONAL    88   ENDJOB
      CONDITIONAL    88   ENDSET
      CONDITIONAL    88   REMOVE
      CONDITIONAL    88   ADDNEW
      CONDITIONAL    88   CHANGE
      CONDITIONAL    88   DISPLY
00001 ALPHANUMERIC   03   FILLER                         X
00005 NUMERIC        03   A-FIELD                        9(5)
00005 ALPHANUMERIC   03   A-ALPHA                        X(5), REDEFINES A-FIELD
      CONDITIONAL    88   A-BLANK
00004 ALPHANUMERIC   03   FILLER                         X(4)
00005 NUMERIC        03   B-FIELD                        9(5)
00005 ALPHANUMERIC   03   B-ALPHA                        X(5), REDEFINES B-FIELD
      CONDITIONAL    88   B-BLANK
00054 ALPHANUMERIC   03   FILLER                         X(54)
00005 ALPHANUMERIC   02   FILLER                         X(5)

00082 FILE                COMMENTARY
00082 GROUP          01   COMMENT-LINE
00082 ALPHANUMERIC   02   FILLER                         X(82)

      WORKING-STORAGE SECTION

00002 NUMERIC        77   COMMAND-ADDITIONS              9(3) COMP
00002 NUMERIC        77   COMMAND-SUBTRACTIONS           9(3) COMP
00002 NUMERIC        77   TOTAL-INSERTED                 9(3) COMP
00002 NUMERIC        77   TOTAL-DELETED                  9(3) COMP
00004 NUMERIC        77   OUTPUT-COUNT                   9(5) COMP
00001 NUMERIC        77   LINE-COUNT                     9(2) COMP
00005 NUMERIC        77   FIELDA                         9(5)
00005 NUMERIC        77   FIELDB                         9(5)
00082 ALPHANUMERIC   77   BLANK-LINE                     X(82)

00006 GROUP          01   DATE-FROM-SYS
00002 NUMERIC        02   DFSYS                          99, OCCURS 3

00080 GROUP          01   HEADINGS-LINE
00015 ALPHANUMERIC   02   FILLER                         X(15)
00020 ALPHANUMERIC   02   FILLER                         X(20)
00017 ALPHANUMERIC   02   PHASE                          X(17)
00002 ALPHANUMERIC   02   MONTH-RUN                      XX
00001 ALPHANUMERIC   02   FILLER                         X
00002 ALPHANUMERIC   02   DAY-RUN                        XX
00001 ALPHANUMERIC   02   FILLER                         X
00002 ALPHANUMERIC   02   YEAR-RUN                       XX
00008 ALPHANUMERIC   02   FILLER                         X(8)
00008 ALPHANUMERIC   02   FILLER                         X(8)
00004 NUMERIC        02   PAGE-NUMBER                    9(4)

00082 GROUP          01   COMMAND-LISTING
00002 ALPHANUMERIC   02   FILLER                         X(2)
00080 ALPHANUMERIC   02   COMMAND-IMAGE                  X(80)

00082 GROUP          01   ACTIVITIES-LISTING
00002 ALPHANUMERIC   02   DISPOSITION                    X(2)
00080 ALPHANUMERIC   02   ACTIVE-IMAGE                   X(80)

00008 GROUP          01   UPSI-BYTE
00001 ALPHANUMERIC   02   UPSI-BIT                       X, OCCURS 8

00082 GROUP          01   MESSAGE-LOG
00002 ALPHANUMERIC   02   FILLER                         X(2)
00080 ALPHANUMERIC   02   MESSAGE-TEXT                   X(80)

00070 GROUP          01   DISPLAY-MESSAGE
00002 ALPHANUMERIC   02   FILLER                         X(2)
00006 ALPHANUMERIC   02   DISPLAY-TEMP                   X(6)
00002 ALPHANUMERIC   02   FILLER                         X(2)
00060 ALPHANUMERIC   02   DISPLAY-TEXT                   X(60)

00001 NUMERIC        77   END-JOB-PROCESS                9
00001 NUMERIC        77   DELETE-PROCESS                 9
00001 NUMERIC        77   INSERT-PROCESS                 9
00001 NUMERIC        77   WRITE-PROCESS                  9

00002 GROUP          01   SELECTORS
00001 NUMERIC        02   RETURN-SELECT                  9
00001 NUMERIC        02   NEXT-JOB-SELECT                9


NAME                           DEFINED                                    REFERENCES

OLD-VERSION                    26       41      153     160     206     272     285     322                    x7
OLD-RECORD                     46       44      258                                                            x2
OLD-STATEMENT                  47       164     212     249     269     286                                    x5
OLD-NUMBER                     48       202     211     264     291                                            x4

NEW-VERSION                    28       50     *154    *282     304     305     312     322                    x7
NEW-RECORD                     55       53      282     313                                                    x3
NEW-STATEMENT                  56      *164    *212    *236    *249    *269    *286                            x6
NEW-NUMBER                     57      *281                                                                    x1

PRT-VERSION                    30     not referenced

MODIFICATION                   32       59      153     174     225     322                                    x5
UPDATE-ORDER                   64       62      178                                                            x2
INSERTION                      65       236                                                                    x1
COMMAND                        66     referenced by parent/child
ENDJOB                         67       191                                                                    x1
ENDSET                         68       229                                                                    x1
REMOVE                         69       188                                                                    x1
ADDNEW                         70       192                                                                    x1
CHANGE                         71       187                                                                    x1
DISPLY                         72       189                                                                    x1
A-FIELD                        74      *181     183                                                            x2
A-ALPHA                        75     referenced by parent/child
A-BLANK                        76       181                                                                    x1
B-FIELD                        78      *182     184                                                            x2
B-ALPHA                        79     referenced by parent/child
B-BLANK                        80       182                                                                    x1

COMMENTARY                     34       84     *154    *162    *170    *171    *176    *179    *194    *204    *209
                                       *227    *232    *239    *260    *267    *275    *293    *296    *299    *302
                                       *314    *321     322                                                    x23
COMMENT-LINE                   89       87     *162    *170    *171    *176    *179    *194    *204    *209    *227
                                       *232    *239    *260    *267    *275    *293    *296    *299    *302    *314
                                       *321                                                                    x21

COMMAND-ADDITIONS              94       230     233    *234    *240                                            x4
COMMAND-SUBTRACTIONS           95      *263     265     268    *270                                            x4
TOTAL-INSERTED                 96      *233     294                                                            x2
TOTAL-DELETED                  97      *268     297                                                            x2
OUTPUT-COUNT                   98      *280     281     300                                                    x3
LINE-COUNT                     99      *169    *180    *241     242    *261     262    *315     316            x8
FIELDA                         100     *183     202     208     211                                            x4
FIELDB                         101     *184     264                                                            x2
BLANK-LINE                     102      171                                                                    x1
DATE-FROM-SYS                  104     *156                                                                    x1
DFSYS                          105      157     158     159                                                    x3
HEADINGS-LINE                  107      170                                                                    x1
PHASE                          110     *306                                                                    x1
MONTH-RUN                      111     *158                                                                    x1
DAY-RUN                        113     *159                                                                    x1
YEAR-RUN                       115     *157                                                                    x1
PAGE-NUMBER                    118     *168    *307                                                            x2
COMMAND-LISTING                120      179                                                                    x1
COMMAND-IMAGE                  122     *178                                                                    x1
ACTIVITIES-LISTING             124      239     260     314                                                    x3
DISPOSITION                    125     *237    *259    *309                                                    x3
ACTIVE-IMAGE                   126     *236    *258    *313                                                    x3
UPSI-BYTE                      128    referenced by child
UPSI-BIT                       129     *155    *189     303                                                    x3
MESSAGE-LOG                    131      162     176     194     204     227     321                            x6
MESSAGE-TEXT                   133     *161    *175    *193    *203    *226    *320                            x6
DISPLAY-MESSAGE                135      209     232     267     275     293     296     299     302            x8
DISPLAY-TEMP                   137     *208    *230    *265    *291    *294    *297    *300                    x7
DISPLAY-TEXT                   139     *207    *231    *266    *274    *292    *295    *298    *301            x8
END-JOB-PROCESS                141    not referenced
DELETE-PROCESS                 142    not referenced
INSERT-PROCESS                 143    not referenced
WRITE-PROCESS                  144    not referenced
SELECTORS                      146    not referenced
RETURN-SELECT                  147    not referenced
NEXT-JOB-SELECT                148    not referenced


LABEL                          DEFINED                                    REFERENCES

E EDITOR                       152
P START-SECTION                152    not referenced
P TOP-OF-PAGE-ROUTINE          167      242     262     290     308     316                                    x5
P READ-A-COMMAND               173      195     205     251     271                                            x4
P TEST-COMMAND-TYPE            186    not referenced
P CHANGE-A-RECORD              197      187                                                                    x1
P FIND-FIELDA                  201      214     222     255                                                    x3
P RETURN-TO-USER               216      198     220     254                                                    x3
P INSERT-A-RECORD              219      192                                                                    x1
P INSERTION-PROCESS            224      198     220     243                                                    x3
P NEXT-JOB-STEP                245      199     221     235                                                    x3
P FORCED-WRITE                 248      221                                                                    x1
P DELETE-A-RECORD              253      188                                                                    x1
P DELETION-PROCESS             257      199     254     277                                                    x3
P OUTPUT-A-RECORD              279      165     213     238     250     287                                    x5
P FINISH-JOB                   284      177     190     191                                                    x3
P TEST-FOR-LISTING             289      285                                                                    x1
P LISTING-LOOP                 311      317                                                                    x1
P END-JOB                      319      163     210     217     228     246     276     303     312            x8


Error/Warning summary:

EDITOR.cob:30: error: missing file description for FILE PRT-VERSION
EDITOR.cob:42: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:44: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:51: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:53: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:60: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:62: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:85: warning: LABEL RECORDS is obsolete in GnuCOBOL
EDITOR.cob:87: warning: DATA RECORDS is obsolete in GnuCOBOL
EDITOR.cob:198: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:199: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:220: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:221: warning: ALTER is obsolete in GnuCOBOL
EDITOR.cob:254: warning: ALTER is obsolete in GnuCOBOL

13 warnings in compilation group
1 error in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/listings.at:5131"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_507
#AT_START_508
at_fn_group_banner 508 'listings.at:5716' \
  "Report Writer" "                                  " 3
at_xfail=no
(
  $as_echo "508. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

      * ************************************************************* *
      * REPORT WRITER EXAMPLE #1.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT TRANSACTION-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  TRANSACTION-DATA.

       01  TRANSACTION-RECORD.
           03  TR-CUSTOMER-NUMBER      PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-CUSTOMER-NAME        PIC X(16).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-NUMBER          PIC 9(05).
           03  FILLER                  REDEFINES TR-ITEM-NUMBER.
               05  TR-ITEM-DEPARTMENT  PIC 9(01).
               05  FILLER              PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-COST            PIC 9(03)V99.
           03  FILLER                  PIC X(47).

       FD  REPORT-FILE
           REPORT IS CUSTOMER-REPORT.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.

       REPORT SECTION.
       RD  CUSTOMER-REPORT
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 5
           LAST DETAIL 58.

       01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 27   PIC X(41) VALUE
                   'C U S T O M E R  C H A R G E  R E P O R T'.
           02  LINE PLUS 2.
               03  COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
               03  COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
               03  COLUMN 30   PIC X(05) VALUE 'DEPT.'.
               03  COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
               03  COLUMN 51   PIC X(09) VALUE 'ITEM COST'.

       01  CHARGE-DETAIL TYPE DETAIL.
           02  LINE PLUS 1.
               03  COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
               03  COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
               03  COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
               03  COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
               03  COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.

       PROCEDURE DIVISION.

       000-INITIATE.

           OPEN INPUT TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

           PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
                 REPORT-FILE.

           STOP RUN.

       100-PROCESS-TRANSACTION-DATA.
           GENERATE CHARGE-DETAIL.
           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

       199-EXIT.
           EXIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:5827: \$COMPILE_LISTING0 -t- -ftsymbols -Xref prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- -ftsymbols -Xref prog.cob" "listings.at:5827"
( $at_check_trace; $COMPILE_LISTING0 -t- -ftsymbols -Xref prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION DIVISION.
000003         PROGRAM-ID. prog.
000004
000005        * ************************************************************* *
000006        * REPORT WRITER EXAMPLE #1.                                     *
000007        * ************************************************************* *
000008
000009         ENVIRONMENT DIVISION.
000010         CONFIGURATION SECTION.
000011
000012         INPUT-OUTPUT SECTION.
000013         FILE-CONTROL.
000014
000015             SELECT TRANSACTION-DATA
000016                 ASSIGN TO EXTERNAL DATAIN
000017                           ORGANIZATION IS LINE SEQUENTIAL.
000018
000019             SELECT REPORT-FILE
000020                 ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.
000021
000022         DATA DIVISION.
000023         FILE SECTION.
000024
000025         FD  TRANSACTION-DATA.
000026
000027         01  TRANSACTION-RECORD.
000028             03  TR-CUSTOMER-NUMBER      PIC 9(04).
000029             03  FILLER                  PIC X(01).
000030             03  TR-CUSTOMER-NAME        PIC X(16).
000031             03  FILLER                  PIC X(01).
000032             03  TR-ITEM-NUMBER          PIC 9(05).
000033             03  FILLER                  REDEFINES TR-ITEM-NUMBER.
000034                 05  TR-ITEM-DEPARTMENT  PIC 9(01).
000035                 05  FILLER              PIC 9(04).
000036             03  FILLER                  PIC X(01).
000037             03  TR-ITEM-COST            PIC 9(03)V99.
000038             03  FILLER                  PIC X(47).
000039
000040         FD  REPORT-FILE
000041             REPORT IS CUSTOMER-REPORT.
000042
000043         WORKING-STORAGE SECTION.
000044         77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
000045             88  END-OF-FILE                         VALUE 'Y'.
000046
000047         REPORT SECTION.
000048         RD  CUSTOMER-REPORT
000049             PAGE LIMIT IS 66 LINES
000050             HEADING 1
000051             FIRST DETAIL 5
000052             LAST DETAIL 58.
000053
000054         01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
000055             02  LINE 1.
000056                 03  COLUMN 27   PIC X(41) VALUE
000057                     'C U S T O M E R  C H A R G E  R E P O R T'.
000058             02  LINE PLUS 2.
000059                 03  COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
000060                 03  COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
000061                 03  COLUMN 30   PIC X(05) VALUE 'DEPT.'.
000062                 03  COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
000063                 03  COLUMN 51   PIC X(09) VALUE 'ITEM COST'.
000064
000065         01  CHARGE-DETAIL TYPE DETAIL.
000066             02  LINE PLUS 1.
000067                 03  COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
000068                 03  COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
000069                 03  COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
000070                 03  COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
000071                 03  COLUMN 51   PIC \$\$\$\$.99 SOURCE TR-ITEM-COST.
000072
000073         PROCEDURE DIVISION.
000074
000075         000-INITIATE.
000076
000077             OPEN INPUT TRANSACTION-DATA,
000078                  OUTPUT REPORT-FILE.
000079
000080             INITIATE CUSTOMER-REPORT.
000081
000082             READ TRANSACTION-DATA
000083                 AT END
000084                     MOVE 'Y' TO END-OF-FILE-SWITCH.
000085        *    END-READ.
000086
000087             PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
000088                 UNTIL END-OF-FILE.
000089
000090         000-TERMINATE.
000091             TERMINATE CUSTOMER-REPORT.
000092
000093             CLOSE TRANSACTION-DATA,
000094                   REPORT-FILE.
000095
000096             STOP RUN.
000097
000098         100-PROCESS-TRANSACTION-DATA.
000099             GENERATE CHARGE-DETAIL.
000100             READ TRANSACTION-DATA
000101                 AT END
000102                     MOVE 'Y' TO END-OF-FILE-SWITCH.
000103        *    END-READ.
000104
000105         199-EXIT.
000106             EXIT.

SIZE  TYPE           LVL  NAME                           PICTURE

00080 FILE                TRANSACTION-DATA
00080 GROUP          01   TRANSACTION-RECORD
00004 NUMERIC        03   TR-CUSTOMER-NUMBER             9(04)
00001 ALPHANUMERIC   03   FILLER                         X(01)
00016 ALPHANUMERIC   03   TR-CUSTOMER-NAME               X(16)
00001 ALPHANUMERIC   03   FILLER                         X(01)
00005 NUMERIC        03   TR-ITEM-NUMBER                 9(05)
00005 GROUP          03   FILLER, REDEFINES TR-ITEM-NUMBER
00001 NUMERIC        05   TR-ITEM-DEPARTMENT             9(01)
00004 NUMERIC        05   FILLER                         9(04)
00001 ALPHANUMERIC   03   FILLER                         X(01)
00005 NUMERIC        03   TR-ITEM-COST                   9(03)V99
00047 ALPHANUMERIC   03   FILLER                         X(47)

00126 FILE                REPORT-FILE

      WORKING-STORAGE SECTION

00001 ALPHANUMERIC   77   END-OF-FILE-SWITCH             X(1)
      CONDITIONAL    88   END-OF-FILE

      REPORT SECTION

00126 GROUP          01   PAGE-HEAD-GROUP
00067 GROUP          02   FILLER
00041 ALPHANUMERIC   03   FILLER                         X(41)
00059 GROUP          02   FILLER
00009 ALPHANUMERIC   03   FILLER                         X(09)
00010 ALPHANUMERIC   03   FILLER                         X(10)
00005 ALPHANUMERIC   03   FILLER                         X(05)
00008 ALPHANUMERIC   03   FILLER                         X(08)
00009 ALPHANUMERIC   03   FILLER                         X(09)

00126 GROUP          01   CHARGE-DETAIL
00057 GROUP          02   FILLER
00004 NUMERIC        03   FILLER                         Z(04)
00016 ALPHANUMERIC   03   FILLER                         X(16)
00001 NUMERIC        03   FILLER                         9(01)
00005 NUMERIC        03   FILLER                         9(05)
00007 NUMERIC        03   FILLER                         \$\$\$\$.99


NAME                           DEFINED                REFERENCES

TRANSACTION-DATA               15       25      77      82      93      100
                                                                       x5
TRANSACTION-RECORD             27     referenced by child
TR-CUSTOMER-NUMBER             28       67                             x1
TR-CUSTOMER-NAME               30       68                             x1
TR-ITEM-NUMBER                 32       70                             x1
TR-ITEM-DEPARTMENT             34       69                             x1
TR-ITEM-COST                   37       71                             x1

REPORT-FILE                    19       40     *78      94             x3

END-OF-FILE-SWITCH             44      *84     *102                    x2
END-OF-FILE                    45       88                             x1

PAGE-HEAD-GROUP                54     not referenced
CHARGE-DETAIL                  65       99                             x1


LABEL                          DEFINED                REFERENCES

E prog                         75
P 000-INITIATE                 75     not referenced
P 000-TERMINATE                90     not referenced
P 100-PROCESS-TRANSACTION-DATA 98       87                             x1
P 199-EXIT                     105      87                             x1

0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:5827"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_508
#AT_START_509
at_fn_group_banner 509 'listings.at:6018' \
  "huge REPLACE" "                                   " 3
at_xfail=no
(
  $as_echo "509. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.

           REPLACE ==111111111111111111111111111111111111111==
              BY =='
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    ' '==.


           DISPLAY 111111111111111111111111111111111111111
           DISPLAY 111111111111111111111111111111111111111
           DISPLAY 111111111111111111111111111111111111111

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:6143: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:6143"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         ENVIRONMENT DIVISION.
000005         CONFIGURATION SECTION.
000006         DATA             DIVISION.
000007         WORKING-STORAGE  SECTION.
000008         PROCEDURE        DIVISION.
000009
000010             REPLACE ==111111111111111111111111111111111111111==
000011                BY =='
000012        -    '
000013        -    '
000014        -    '
000015        -    '
000016        -    '
000017        -    '
000018        -    '
000019        -    '
000020        -    '
000021        -    '
000022        -    '
000023        -    '
000024        -    '
000025        -    '
000026        -    '
000027        -    '
000028        -    '
000029        -    '
000030        -    '
000031        -    '
000032        -    '
000033        -    '
000034        -    '
000035        -    '
000036        -    '
000037        -    '
000038        -    '
000039        -    '
000040        -    '
000041        -    '
000042        -    '
000043        -    '
000044        -    '
000045        -    '
000046        -    '
000047        -    '
000048        -    '
000049        -    '
000050        -    '
000051        -    '
000052        -    '
000053        -    '
000054        -    '
000055        -    '
000056        -    '
000057        -    '
000058        -    '
000059        -    '
000060        -    '
000061        -    '
000062        -    '
000063        -    '
000064        -    '
000065        -    '
000066        -    '
000067        -    '
000068        -    '
000069        -    '
000070        -    '
000071        -    '
000072        -    '
000073        -    '
000074        -    '
000075        -    '
000076        -    '
000077        -    '
000078        -    '
000079        -    '
000080        -    '
000081        -    '
000082        -    '
000083        -    '
000084        -    '
000085        -    '
000086        -    '
000087        -    '
000088        -    '
000089        -    '
000090        -    '
000091        -    '
000092        -    '
000093        -    '
000094        -    '
000095        -    '
000096        -    '
000097        -    '
000098        -    '
000099        -    '
000100        -    '
000101        -    '
000102        -    '
000103        -    '
000104        -    '
000105        -    '
000106        -    '
000107        -    '
000108        -    '
000109        -    '
000110        -    '
000111        -    '
000112        -    '
000113        -    ' '==.
000114
000115
000116             DISPLAY '
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -
000116+       -                          '
000117             DISPLAY '
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -
000117+       -                          '
000118             DISPLAY '
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -
000118+       -                          '
000119
000120             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:6143"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >display.inc <<'_ATEOF'

           DISPLAY 111111111111111111111111111111111111111
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.

       COPY "display.inc"
           REPLACING ==111111111111111111111111111111111111111==
              BY =='
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    '
      -    ' '==.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:6696: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:6696"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         IDENTIFICATION   DIVISION.
000003         PROGRAM-ID.      prog.
000004         ENVIRONMENT DIVISION.
000005         CONFIGURATION SECTION.
000006         DATA             DIVISION.
000007         WORKING-STORAGE  SECTION.
000008         PROCEDURE        DIVISION.
000009
000010         COPY \"display.inc\"
000011             REPLACING ==111111111111111111111111111111111111111==
000012                BY =='
000013        -    '
000014        -    '
000015        -    '
000016        -    '
000017        -    '
000018        -    '
000019        -    '
000020        -    '
000021        -    '
000022        -    '
000023        -    '
000024        -    '
000025        -    '
000026        -    '
000027        -    '
000028        -    '
000029        -    '
000030        -    '
000031        -    '
000032        -    '
000033        -    '
000034        -    '
000035        -    '
000036        -    '
000037        -    '
000038        -    '
000039        -    '
000040        -    '
000041        -    '
000042        -    '
000043        -    '
000044        -    '
000045        -    '
000046        -    '
000047        -    '
000048        -    '
000049        -    '
000050        -    '
000051        -    '
000052        -    '
000053        -    '
000054        -    '
000055        -    '
000056        -    '
000057        -    '
000058        -    '
000059        -    '
000060        -    '
000061        -    '
000062        -    '
000063        -    '
000064        -    '
000065        -    '
000066        -    '
000067        -    '
000068        -    '
000069        -    '
000070        -    '
000071        -    '
000072        -    '
000073        -    '
000074        -    '
000075        -    '
000076        -    '
000077        -    '
000078        -    '
000079        -    '
000080        -    '
000081        -    '
000082        -    '
000083        -    '
000084        -    '
000085        -    '
000086        -    '
000087        -    '
000088        -    '
000089        -    '
000090        -    '
000091        -    '
000092        -    '
000093        -    '
000094        -    '
000095        -    '
000096        -    '
000097        -    '
000098        -    '
000099        -    '
000100        -    '
000101        -    '
000102        -    '
000103        -    '
000104        -    '
000105        -    '
000106        -    '
000107        -    '
000108        -    '
000109        -    '
000110        -    '
000111        -    '
000112        -    '
000113        -    '
000114        -    ' '==.
000001C
000002C            DISPLAY '
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -
000002+       -                          '
000115
000116             STOP RUN.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:6696"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_509
#AT_START_510
at_fn_group_banner 510 'listings.at:6928' \
  "Long concatenated literal" "                      " 3
at_xfail=no
(
  $as_echo "510. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       >>SOURCE FORMAT IS FREE
ID DIVISION.
PROGRAM-ID. ED000MAIN IS INITIAL.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WCOVER PIC X(1280) VALUE
      "          _________             ____________________________________            " &
      "          __  ____/__________  ___  ____/_  __ \__  __ )_  __ \__  /            " &
      "          _  / __ __  __ \  / / /  /    _  / / /_  __  |  / / /_  /             " &
      "          / /_/ / _  / / / /_/ // /___  / /_/ /_  /_/ // /_/ /_  /___           " &
      "          \____/  /_/ /_/\__,_/ \____/  \____/ /_____/ \____/ /_____/           " &
      "                           _________________________                            " &
      "                           ___  ____/__  __ \__  __ \                           " &
      "                           __  __/  __  /_/ /_  /_/ /                           " &
      "                           _  /___  _  _, _/_  ____/                            " &
      "                           /_____/  /_/ |_| /_/                                 " &
      "     /_/  |_|  .___/_  .___//_/  /_/  \___/ \__,_/ \__/ /_/  \____//_/ /_/      " &
      "    /_/     /_/                                                                 " &
      "1234567890123456789012".
PROCEDURE DIVISION.
    EXIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/listings.at:6955: \$COMPILE_LISTING0 -t- prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_LISTING0 -t- prog.cob" "listings.at:6955"
( $at_check_trace; $COMPILE_LISTING0 -t- prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GnuCOBOL V.R.P               prog.cob

LINE    PG/LN  A...B............................................................

000001
000002         >>SOURCE FORMAT IS FREE
000003  ID DIVISION.
000004  PROGRAM-ID. ED000MAIN IS INITIAL.
000005  DATA DIVISION.
000006  WORKING-STORAGE SECTION.
000007  01 WCOVER PIC X(1280) VALUE
000008        \"          _________             _________________________________
000008+ ___            \" &
000009        \"          __  ____/__________  ___  ____/_  __ \\__  __ )_  __ \\__
000009+   /            \" &
000010        \"          _  / __ __  __ \\  / / /  /    _  / / /_  __  |  / / /_
000010+  /             \" &
000011        \"          / /_/ / _  / / / /_/ // /___  / /_/ /_  /_/ // /_/ /_
000011+ /___           \" &
000012        \"          \\____/  /_/ /_/\\__,_/ \\____/  \\____/ /_____/ \\____/ /__
000012+ ___/           \" &
000013        \"                           _________________________
000013+                \" &
000014        \"                           ___  ____/__  __ \\__  __ \\
000014+                \" &
000015        \"                           __  __/  __  /_/ /_  /_/ /
000015+                \" &
000016        \"                           _  /___  _  _, _/_  ____/
000016+                \" &
000017        \"                           /_____/  /_/ |_| /_/
000017+                \" &
000018        \"     /_/  |_|  .___/_  .___//_/  /_/  \\___/ \\__,_/ \\__/ /_/  \\___
000018+ _//_/ /_/      \" &
000019        \"    /_/     /_/
000019+                \" &
000020        \"1234567890123456789012\".
000021  PROCEDURE DIVISION.
000022      EXIT.


0 warnings in compilation group
0 errors in compilation group
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/listings.at:6955"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_510
#AT_START_511
at_fn_group_banner 511 'run_fundamental.at:25' \
  "DISPLAY literals" "                               " 4
at_xfail=no
(
  $as_echo "511. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY "abc".
           DISPLAY  123.
           DISPLAY +123.
           DISPLAY -123.
           DISPLAY  12.3.
           DISPLAY +12.3.
           DISPLAY -12.3.
           DISPLAY 1.23E0.
           DISPLAY +1.23E0.
           DISPLAY -1.23E0.
           DISPLAY 12.3E-2.
           DISPLAY +12.3E-2.
           DISPLAY -12.3E-2.
           DISPLAY B'0101'.
           DISPLAY BX'EC'.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:50: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:50"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:50"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:51: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:51"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc
123
+123
-123
12.3
+12.3
-12.3
1.23
+1.23
-1.23
.123
+.123
-.123
5
236
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:51"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_511
#AT_START_512
at_fn_group_banner 512 'run_fundamental.at:72' \
  "DISPLAY literals, DECIMAL-POINT is COMMA" "       " 4
at_xfail=no
(
  $as_echo "512. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       PROCEDURE        DIVISION.
           DISPLAY  12,3.
           DISPLAY +12,3.
           DISPLAY -12,3.
           DISPLAY 1,23E0.
           DISPLAY +1,23E0.
           DISPLAY -1,23E0.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:92: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:92"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:93: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:93"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12,3
+12,3
-12,3
1,23
+1,23
-1,23
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_512
#AT_START_513
at_fn_group_banner 513 'run_fundamental.at:105' \
  "Hexadecimal literal" "                            " 4
at_xfail=no
(
  $as_echo "513. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 4; i++)
    printf ("%02x", data[i]);
  return 0;
}
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       >>IF CHARSET = 'EBCDIC'
           DISPLAY X"F1F2F3"
       >>ELSE
           DISPLAY X"313233"
       >>END-IF
           END-DISPLAY.
           CALL "dump" USING X"000102"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:137: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "run_fundamental.at:137"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:137"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:138: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:138"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:138"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:139: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:139"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "123
00010200" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_513
#AT_START_514
at_fn_group_banner 514 'run_fundamental.at:146' \
  "DISPLAY data items with VALUE clause" "           " 4
at_xfail=no
(
  $as_echo "514. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-ABC         PIC XXX   VALUE "abc".
       01 X-123         PIC 999   VALUE  123.
       01 X-P123        PIC S999  VALUE +123.
       01 X-N123        PIC S999  VALUE -123.
       01 X-12-3        PIC 99V9  VALUE  12.3.
       01 X-P12-3       PIC S99V9 VALUE +12.3.
       01 X-N12-3       PIC S99V9 VALUE -12.3.
       PROCEDURE        DIVISION.
           DISPLAY X-ABC
           END-DISPLAY.
           DISPLAY X-123
           END-DISPLAY.
           DISPLAY X-P123
           END-DISPLAY.
           DISPLAY X-N123
           END-DISPLAY.
           DISPLAY X-12-3
           END-DISPLAY.
           DISPLAY X-P12-3
           END-DISPLAY.
           DISPLAY X-N12-3
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:179: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:179"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:179"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:180: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:180"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc
123
+123
-123
12.3
+12.3
-12.3
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:180"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_514
#AT_START_515
at_fn_group_banner 515 'run_fundamental.at:193' \
  "DISPLAY data items with MOVE statement" "         " 4
at_xfail=no
(
  $as_echo "515. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-ABC         PIC XXX   VALUE "abc".
       01 X-123         PIC 999   VALUE  123.
       01 X-P123        PIC S999  VALUE +123.
       01 X-N123        PIC S999  VALUE -123.
       01 X-12-3        PIC 99V9  VALUE  12.3.
       01 X-P12-3       PIC S99V9 VALUE +12.3.
       01 X-N12-3       PIC S99V9 VALUE -12.3.
       PROCEDURE        DIVISION.
           MOVE "abc" TO X-ABC.
           DISPLAY X-ABC
           END-DISPLAY.
           MOVE  123  TO X-123.
           DISPLAY X-123
           END-DISPLAY.
           MOVE +123  TO X-P123.
           DISPLAY X-P123
           END-DISPLAY.
           MOVE -123  TO X-N123.
           DISPLAY X-N123
           END-DISPLAY.
           MOVE  12.3 TO X-12-3.
           DISPLAY X-12-3
           END-DISPLAY.
           MOVE +12.3 TO X-P12-3.
           DISPLAY X-P12-3
           END-DISPLAY.
           MOVE -12.3 TO X-N12-3.
           DISPLAY X-N12-3
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:233: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:233"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:233"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:234: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:234"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc
123
+123
-123
12.3
+12.3
-12.3
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:234"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_515
#AT_START_516
at_fn_group_banner 516 'run_fundamental.at:247' \
  "MOVE to edited item (1)" "                        " 4
at_xfail=no
(
  $as_echo "516. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SRC-1        PIC S99V99  VALUE   1.10.
       01  SRC-2        PIC S99V99  VALUE   0.02.
       01  SRC-3        PIC S99V99  VALUE  -0.03.
       01  SRC-4        PIC S99V99  VALUE  -0.04.
       01  SRC-5        PIC S99V99  VALUE  -0.05.
       01  EDT-1        PIC -(04)9.
       01  EDT-2        PIC -(04)9.
       01  EDT-3        PIC -(04)9.
       01  EDT-4        PIC +(04)9.
       01  EDT-5        PIC -(05).
       PROCEDURE        DIVISION.
           MOVE SRC-1   TO EDT-1.
           MOVE SRC-2   TO EDT-2.
           MOVE SRC-3   TO EDT-3.
           MOVE SRC-4   TO EDT-4.
           MOVE SRC-5   TO EDT-5.
           DISPLAY '>' EDT-1 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-2 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-3 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-4 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-5 '<'
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:284: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:284"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:284"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:285: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:285"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ">    1<
>    0<
>    0<
>   +0<
>     <
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:285"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_516
#AT_START_517
at_fn_group_banner 517 'run_fundamental.at:296' \
  "MOVE to edited item (2)" "                        " 4
at_xfail=no
(
  $as_echo "517. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SRC-1        PIC S99V99  VALUE  -0.06.
       01  SRC-2        PIC S99V99  VALUE  -0.07.
       01  SRC-3        PIC S99V99  VALUE  -0.08.
       01  SRC-4        PIC S99V99  VALUE  -0.09.
       01  SRC-5        PIC S99V99  VALUE  -1.10.
       01  EDT-1        PIC 9(04)-.
       01  EDT-2        PIC 9(04)+.
       01  EDT-3        PIC Z(04)+.
       01  EDT-4        PIC 9(04)DB.
       01  EDT-5        PIC 9(04)DB.
       PROCEDURE        DIVISION.
           MOVE SRC-1   TO EDT-1.
           MOVE SRC-2   TO EDT-2.
           MOVE SRC-3   TO EDT-3.
           MOVE SRC-4   TO EDT-4.
           MOVE SRC-5   TO EDT-5.
           DISPLAY '>' EDT-1 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-2 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-3 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-4 '<'
           END-DISPLAY.
           DISPLAY '>' EDT-5 '<'
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:333: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:333"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:333"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:334: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:334"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ">0000 <
>0000+<
>     <
>0000  <
>0001DB<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:334"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_517
#AT_START_518
at_fn_group_banner 518 'run_fundamental.at:345' \
  "MOVE to edited item (3)" "                        " 4
at_xfail=no
(
  $as_echo "518. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID . DisplayToAlphaEdited.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 SRC-FIELD              PIC 9(06).
      *>
       01 DST-FIELD-1            PIC 0XXXXXX.
       01 DST-FIELD-2            PIC BXXXXXX.
       01 DST-FIELD-3            PIC /XXXXXX.
       01 DST-FIELD-4            PIC XXXXXX0.
       01 DST-FIELD-5            PIC XXXXXXB.
       01 DST-FIELD-6            PIC XXXXXX/.
       01 DST-FIELD-7            PIC XXX0XXX.
       01 DST-FIELD-8            PIC XXXBXXX.
       01 DST-FIELD-9            PIC XXX/XXX.
       01 DST-FIELD-10           PIC XB0XB0/.
       01 DST-FIELD-11           PIC 0AA.
       01 DST-FIELD-12           PIC BXA.
       01 DST-FIELD-13           PIC /99.
       01 DST-FIELD-14           PIC 990.
       01 DST-FIELD-15           PIC XAB.
       01 DST-FIELD-16           PIC XA/.
      *>
       01 EXPT-FIELD-1  CONSTANT AS '0123456' .
       01 EXPT-FIELD-2  CONSTANT AS ' 123456' .
       01 EXPT-FIELD-3  CONSTANT AS '/123456' .
       01 EXPT-FIELD-4  CONSTANT AS '1234560' .
       01 EXPT-FIELD-5  CONSTANT AS '123456 ' .
       01 EXPT-FIELD-6  CONSTANT AS '123456/' .
       01 EXPT-FIELD-7  CONSTANT AS '1230456' .
       01 EXPT-FIELD-8  CONSTANT AS '123 456' .
       01 EXPT-FIELD-9  CONSTANT AS '123/456' .
       01 EXPT-FIELD-10 CONSTANT AS '1 02 0/' .
       01 EXPT-FIELD-11 CONSTANT AS '012' .
       01 EXPT-FIELD-12 CONSTANT AS ' 12' .
       01 EXPT-FIELD-13 CONSTANT AS '/00' .
       01 EXPT-FIELD-14 CONSTANT AS '560' .
       01 EXPT-FIELD-15 CONSTANT AS '12 ' .
       01 EXPT-FIELD-16 CONSTANT AS '12/' .
       PROCEDURE DIVISION.
       TEST-RUNNER.
      *> done twice to already check for later compile-time optimization
           MOVE '123456'
             TO DST-FIELD-1  DST-FIELD-2  DST-FIELD-3
                DST-FIELD-4  DST-FIELD-5  DST-FIELD-6
                DST-FIELD-7  DST-FIELD-8  DST-FIELD-9
                DST-FIELD-10 DST-FIELD-11 DST-FIELD-12
                DST-FIELD-12 DST-FIELD-14 DST-FIELD-15
                DST-FIELD-16 SRC-FIELD
           PERFORM DO-TEST.
      *> done twice to already check for later compile-time optimization
           MOVE SRC-FIELD
             TO DST-FIELD-1  DST-FIELD-2  DST-FIELD-3
                DST-FIELD-4  DST-FIELD-5  DST-FIELD-6
                DST-FIELD-7  DST-FIELD-8  DST-FIELD-9
                DST-FIELD-10 DST-FIELD-11 DST-FIELD-12
                DST-FIELD-12 DST-FIELD-14 DST-FIELD-15
                DST-FIELD-16
           PERFORM DO-TEST.
           GOBACK.
       DO-TEST.
           IF DST-FIELD-1 NOT =  EXPT-FIELD-1
              DISPLAY '1: <' DST-FIELD-1 '> != <' EXPT-FIELD-1 '>'.
           IF DST-FIELD-2 NOT =  EXPT-FIELD-2
              DISPLAY '2: <' DST-FIELD-2 '> != <' EXPT-FIELD-2 '>'.
           IF DST-FIELD-3 NOT =  EXPT-FIELD-3
              DISPLAY '3: <' DST-FIELD-3 '> != <' EXPT-FIELD-3 '>'.
           IF DST-FIELD-4 NOT =  EXPT-FIELD-4
              DISPLAY '4: <' DST-FIELD-4 '> != <' EXPT-FIELD-4 '>'.
           IF DST-FIELD-5 NOT =  EXPT-FIELD-5
              DISPLAY '5: <' DST-FIELD-5 '> != <' EXPT-FIELD-5 '>'.
           IF DST-FIELD-6 NOT =  EXPT-FIELD-6
              DISPLAY '6: <' DST-FIELD-6 '> != <' EXPT-FIELD-6 '>'.
           IF DST-FIELD-7 NOT =  EXPT-FIELD-7
              DISPLAY '7: <' DST-FIELD-7 '> != <' EXPT-FIELD-7 '>'.
           IF DST-FIELD-8 NOT =  EXPT-FIELD-8
              DISPLAY '8: <' DST-FIELD-8 '> != <' EXPT-FIELD-8 '>'.
           IF DST-FIELD-9 NOT =  EXPT-FIELD-9
              DISPLAY '9: <' DST-FIELD-9 '> != <' EXPT-FIELD-9 '>'.
           IF DST-FIELD-10 NOT =  EXPT-FIELD-10
              DISPLAY '10: <' DST-FIELD-10 '> != <' EXPT-FIELD-10 '>'.
           IF DST-FIELD-11 NOT =  EXPT-FIELD-11
              DISPLAY '11: <' DST-FIELD-11 '> != <' EXPT-FIELD-11 '>'.
           IF DST-FIELD-12 NOT =  EXPT-FIELD-12
              DISPLAY '12: <' DST-FIELD-12 '> != <' EXPT-FIELD-12 '>'.
           IF DST-FIELD-13 NOT =  EXPT-FIELD-13
              DISPLAY '13: <' DST-FIELD-13 '> != <' EXPT-FIELD-13 '>'.
           IF DST-FIELD-14 NOT =  EXPT-FIELD-14
              DISPLAY '14: <' DST-FIELD-14 '> != <' EXPT-FIELD-14 '>'.
           IF DST-FIELD-15 NOT =  EXPT-FIELD-15
              DISPLAY '15: <' DST-FIELD-15 '> != <' EXPT-FIELD-15 '>'.
           IF DST-FIELD-16 NOT =  EXPT-FIELD-16
              DISPLAY '16: <' DST-FIELD-16 '> != <' EXPT-FIELD-16 '>'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:444: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:444"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:444"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:445: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:445"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:445"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_518
#AT_START_519
at_fn_group_banner 519 'run_fundamental.at:450' \
  "MOVE to item with simple and floating insertion" "" 4
at_xfail=no
(
  $as_echo "519. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num-1 PIC -*B*99.
       01  num-2 PIC $BB**,***.**.
       01  num-3 PIC $BB--,---.--.

       PROCEDURE DIVISION.
           MOVE -123 TO num-1
           DISPLAY ">" num-1 "<"

           MOVE 1234.56 TO num-2
           DISPLAY ">" num-2 "<"

           MOVE 1234.56 TO num-3
           DISPLAY ">" num-3 "<"
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:475: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:475"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:475"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:476: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:476"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ">-**123<
>\$  *1,234.56<
>\$   1,234.56<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:476"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_519
#AT_START_520
at_fn_group_banner 520 'run_fundamental.at:485' \
  "MOVE to JUSTIFIED item" "                         " 4
at_xfail=no
(
  $as_echo "520. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SRC-1        PIC S9(04)          VALUE  11.
       01  SRC-2        PIC S9(04) COMP     VALUE  22.
       01  SRC-3        PIC S9(04) COMP-5   VALUE  33.
       01  SRC-4        PIC S9(04)PP        VALUE  4400.
       01  SRC-5        PIC S9(04)PPPPP     VALUE  55500000.
       01  EDT-FLD      PIC X(07)           JUSTIFIED RIGHT.
       PROCEDURE        DIVISION.
           MOVE SRC-1   TO EDT-FLD.
           DISPLAY '>' EDT-FLD '<'
           END-DISPLAY.
           MOVE SRC-2   TO EDT-FLD.
           DISPLAY '>' EDT-FLD '<'
           END-DISPLAY.
           MOVE SRC-3   TO EDT-FLD.
           DISPLAY '>' EDT-FLD '<'
           END-DISPLAY.
           MOVE SRC-4   TO EDT-FLD.
           DISPLAY '>' EDT-FLD '<'
           END-DISPLAY.
           MOVE SRC-5   TO EDT-FLD.
           DISPLAY '>' EDT-FLD '<'
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:518: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:518"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:518"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:519: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:519"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ">   0011<
>   0022<
>   0033<
> 004400<
>5500000<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:519"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_520
#AT_START_521
at_fn_group_banner 521 'run_fundamental.at:530' \
  "MOVE integer literal to alphanumeric" "           " 4
at_xfail=no
(
  $as_echo "521. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(04) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE 0 TO X.
           DISPLAY X NO ADVANCING END-DISPLAY.
           MOVE 1000 TO X.
           DISPLAY X NO ADVANCING END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:547: \$COMPILE_ONLY -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fdiagnostics-show-option prog.cob" "run_fundamental.at:547"
( $at_check_trace; $COMPILE_ONLY -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: alphanumeric value is expected [-Wtyping]
prog.cob:6: note: 'X' defined here as PIC X(04) [-Wtyping]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:547"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:551: \$COMPILE_ONLY -Wstrict-typing -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wstrict-typing -fdiagnostics-show-option prog.cob" "run_fundamental.at:551"
( $at_check_trace; $COMPILE_ONLY -Wstrict-typing -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: alphanumeric value is expected [-Wtyping]
prog.cob:6: note: 'X' defined here as PIC X(04) [-Wtyping]
prog.cob:10: warning: alphanumeric value is expected [-Wstrict-typing]
prog.cob:6: note: 'X' defined here as PIC X(04) [-Wstrict-typing]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:551"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:557: \$COMPILE_ONLY -Wextra -Wno-strict-typing -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -Wextra -Wno-strict-typing -fdiagnostics-show-option prog.cob" "run_fundamental.at:557"
( $at_check_trace; $COMPILE_ONLY -Wextra -Wno-strict-typing -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: alphanumeric value is expected [-Wtyping]
prog.cob:6: note: 'X' defined here as PIC X(04) [-Wtyping]
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:557"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:561: \$COMPILE -Wextra -Wno-typing -fdiagnostics-show-option prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wextra -Wno-typing -fdiagnostics-show-option prog.cob" "run_fundamental.at:561"
( $at_check_trace; $COMPILE -Wextra -Wno-typing -fdiagnostics-show-option prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:561"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:562: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:562"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0   1000" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:562"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_521
#AT_START_522
at_fn_group_banner 522 'run_fundamental.at:567' \
  "Compare FLOAT-LONG with floating-point literal" " " 4
at_xfail=no
(
  $as_echo "522. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  VAR          FLOAT-LONG VALUE 0.0.

       PROCEDURE        DIVISION.
           MOVE 9.899999999999E+304 TO VAR
           IF VAR < 0
               DISPLAY 'error: compare ' VAR ' < ' 0
                       ' failed!'
               END-DISPLAY
           END-IF.
           IF VAR < 9.799999999999E+304
               DISPLAY 'error: compare ' VAR ' < ' 9.799999999999E+304
                       ' failed!'
               END-DISPLAY
           END-IF.
           IF VAR > 9.999999999999E+304
               DISPLAY 'error: compare ' VAR ' > ' 9.999999999999E+304
                       ' failed!'
               END-DISPLAY
           END-IF.
           MOVE -9.899999999999E+304 TO VAR
           IF VAR > 0
               DISPLAY 'error: compare ' VAR ' > ' 0
                       ' failed!'
               END-DISPLAY
           END-IF.
           IF VAR < -9.999999999999E+304
               DISPLAY 'error: compare ' VAR ' < ' -9.999999999999E+304
                       ' failed!'
               END-DISPLAY
           END-IF.
           IF VAR > -9.799999999999E+304
               DISPLAY 'error: compare ' VAR ' > ' -9.799999999999E+304
                       ' failed!'
               END-DISPLAY
           END-IF.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:614: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:614"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:614"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:615: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:615"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:615"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_522
#AT_START_523
at_fn_group_banner 523 'run_fundamental.at:620' \
  "equality of FLOAT-SHORT / FLOAT-LONG" "           " 4
at_xfail=no
(
  $as_echo "523. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SRC1          FLOAT-LONG VALUE 11.55.
       01  DST1          FLOAT-SHORT.
       01  SRC2          FLOAT-SHORT VALUE 11.55.
       01  DST2          FLOAT-LONG.

       PROCEDURE        DIVISION.
           MOVE SRC1 TO DST1.
           IF DST1 not = 11.55
               DISPLAY 'error 1: move/compare FLOAT-LONG to FLOAT-SHORT
      -                'failed ' DST1
               END-DISPLAY
           END-IF.

           MOVE SRC1 TO DST2.
           IF DST1 not = 11.55
               DISPLAY 'error 2: move/compare FLOAT-LONG to FLOAT-LONG f
      -                'ailed ' DST2
               END-DISPLAY
           END-IF.

           MOVE ZERO TO DST1.
           MOVE ZERO TO DST2.

           MOVE SRC2 TO DST1.
           IF DST1 not = 11.55
               DISPLAY 'error 3: move/compare FLOAT-SHORT to FLOAT-SHORT
      -                ' failed: ' DST1
               END-DISPLAY
           END-IF.

           MOVE SRC2 TO DST2.
           IF DST2 not = 11.55
               DISPLAY 'error 4: move/compare FLOAT-SHORT to FLOAT-LONG
      -                'failed: ' DST2
               END-DISPLAY
           END-IF.

           MOVE ZERO TO DST1.
           IF not (DST1 = 0 AND 0.0)
               DISPLAY "Zero compare failed: " DST1 END-DISPLAY
           END-IF.

           MOVE -0.0 TO DST1.
           IF not (DST1 = 0 AND 0.0)
               DISPLAY "Negative Zero compare failed: " DST1
               END-DISPLAY
           END-IF.

           MOVE 1.1234567 TO DST1.
           MOVE DST1 TO DST2.
           IF DST2 not = 1.1234567
               DISPLAY "move/compare number to FLOAT to DOUBLE failed: "
                       DST1 " - " DST2
               END-DISPLAY
           END-IF.

      * Check for Tolerance
           MOVE 1.1234567 TO DST1.
           MOVE 1.1234568 TO DST2.
           IF DST1 not = DST2 THEN
               DISPLAY 'move/compare of very near numbers failed (not id
      -                'entical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

      * Within tolerance by definition, therefore not checked
      *     MULTIPLY 10000000000 BY DST1 DST2 END-MULTIPLY.
      *     IF DST1 = DST2 THEN
      *         DISPLAY "compare of very near numbers computed failed (id
      *-                "entical): " DST1 " - " DST2
      *         END-DISPLAY
      *     END-IF.

           MOVE 1.1234567 TO DST1.
           MOVE 1.1234569 TO DST2.
           IF DST1 = DST2 THEN
               DISPLAY 'move/compare of near equal numbers failed (ident
      -                'ical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

           MOVE 0.0001 TO DST1.
           MOVE 0.0000 TO DST2.
           IF DST1 = DST2 THEN
               DISPLAY 'move/compare of nearly equal very small numbers
      -                'failed  (identical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

           MOVE 1000001.0 TO DST1.
           MOVE 1000000.0 TO DST2.
           IF DST1 = DST2 THEN
               DISPLAY 'move/compare of nearly equal big numbers failed
      -                '(identical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

      * Within tolerance by definition, therefore not checked
      *     MOVE 1000000000.0 TO DST1.
      *     MOVE 1000000001.0 TO DST2.
      *     IF DST1 = DST2 THEN
      *         DISPLAY 'move/compare of nearly equal very big numbers fa
      *-                'iled (identical): ' DST1 " - " DST2
      *         END-DISPLAY
      *     END-IF.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:737: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:737"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:737"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:738: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:738"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:738"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_523
#AT_START_524
at_fn_group_banner 524 'run_fundamental.at:743' \
  "equality of FLOAT-SHORT / FLOAT-EXTENDED" "       " 4
at_xfail=no
(
  $as_echo "524. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SRC1          FLOAT-EXTENDED VALUE 11.55.
       01  DST1          FLOAT-SHORT.
       01  SRC2          FLOAT-SHORT VALUE 11.55.
       01  DST2          FLOAT-EXTENDED.

       PROCEDURE        DIVISION.
           MOVE SRC1 TO DST1.
           IF DST1 not = 11.55
               DISPLAY 'error 1: move/compare FLOAT-EXTENDED to FLOAT-SH
      -                'ORT failed ' DST1
               END-DISPLAY
           END-IF.

           MOVE SRC1 TO DST2.
           IF DST1 not = 11.55
               DISPLAY 'error 2: move/compare FLOAT-EXTENDED to FLOAT-SH
      -                'ORT failed ' DST2
               END-DISPLAY
           END-IF.

           MOVE ZERO TO DST1.
           MOVE ZERO TO DST2.

           MOVE SRC2 TO DST1.
           IF DST1 not = 11.55
               DISPLAY 'error 3: move/compare FLOAT-EXTENDED to FLOAT-SH
      -                'ORT failed ' DST1
               END-DISPLAY
           END-IF.

           MOVE SRC2 TO DST2.
           IF DST2 not = 11.55
               DISPLAY 'error 4: move/compare FLOAT-EXTENDED to FLOAT-SHOR
      -                'T failed ' DST2
               END-DISPLAY
           END-IF.

           MOVE ZERO TO DST1.
           IF not (DST1 = 0 AND 0.0)
               DISPLAY "Zero compare failed: " DST1 END-DISPLAY
           END-IF.

           MOVE -0.0 TO DST1.
           IF not (DST1 = 0 AND 0.0)
               DISPLAY "Negative Zero compare failed: " DST1
               END-DISPLAY
           END-IF.

           MOVE 1.1234567 TO DST1.
           MOVE DST1 TO DST2.
           IF DST2 not = 1.1234567
               DISPLAY "move/compare number to FLOAT to DOUBLE failed: "
                       DST1 " - " DST2
               END-DISPLAY
           END-IF.

      * Check for Tolerance
           MOVE 1.1234567 TO DST1.
           MOVE 1.1234568 TO DST2.
           IF DST1 not = DST2 THEN
               DISPLAY 'move/compare of very near numbers failed (not id
      -                'entical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.
           MOVE 1.1234567 TO DST1.
           MOVE 0.1234568 TO DST2.
           ADD  1.0       TO DST2.
           IF DST1 not = DST2 THEN
               DISPLAY 'move/compare of very near numbers failed (not id
      -                'entical after ADD): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

      * Within tolerance by definition, therefore not checked
      *     MULTIPLY 10000000000 BY DST1 DST2 END-MULTIPLY.
      *     IF DST1 = DST2 THEN
      *         DISPLAY "compare of very near numbers computed failed (id
      *-                "entical): " DST1 " - " DST2
      *         END-DISPLAY
      *     END-IF.

           MOVE 1.1234567 TO DST1.
           MOVE 1.1234569 TO DST2.
           IF DST1 = DST2 THEN
               DISPLAY 'move/compare of near equal numbers failed (ident
      -                'ical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

           MOVE 0.0001 TO DST1.
           MOVE 0.0000 TO DST2.
           IF DST1 = DST2 THEN
               DISPLAY 'move/compare of nearly equal very small numbers
      -                'failed  (identical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

           MOVE 1000001.0 TO DST1.
           MOVE 1000000.0 TO DST2.
           IF DST1 = DST2 THEN
               DISPLAY 'move/compare of nearly equal big numbers failed
      -                '(identical): ' DST1 " - " DST2
               END-DISPLAY
           END-IF.

      * Within tolerance by definition, therefore not checked
      *     MOVE 1000000000.0 TO DST1.
      *     MOVE 1000000001.0 TO DST2.
      *     IF DST1 = DST2 THEN
      *         DISPLAY 'move/compare of nearly equal very big numbers fa
      *-                'iled (identical): ' DST1 " - " DST2
      *         END-DISPLAY
      *     END-IF.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:868: \$COMPILE -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob" "run_fundamental.at:868"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:868"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:869: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:869"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:869"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_524
#AT_START_525
at_fn_group_banner 525 'run_fundamental.at:874' \
  "Overlapping MOVE (GnuCOBOL)" "                    " 4
at_xfail=no
(
  $as_echo "525. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  FILLER.
         05  TSTMOV1 PIC X(479).
         05  TSTMOV2 PIC X(10).
       PROCEDURE DIVISION.
           MOVE "0123456789" TO TSTMOV2.
           MOVE TSTMOV2 (2:9) TO TSTMOV2 (1:9)
           IF TSTMOV2 NOT = "1234567899"
              DISPLAY "  PROBLEM MOVE: " TSTMOV2
           ELSE
              DISPLAY "  OK with MOVE: " TSTMOV2.
           MOVE "0123456789" TO TSTMOV2.
           MOVE TSTMOV2 (1:8) TO TSTMOV2 (2:8)
           IF TSTMOV2 = "0000000009"
              DISPLAY "IBM style MOVE: " TSTMOV2
           ELSE IF TSTMOV2 NOT = "0012345679"
              DISPLAY "  PROBLEM MOVE: " TSTMOV2
           ELSE
              DISPLAY "  OK with MOVE: " TSTMOV2.
           STOP RUN.
_ATEOF


# directly seen by the compiler
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:904: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:904"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: overlapping MOVE may produce unpredictable results
prog.cob:17: warning: overlapping MOVE may produce unpredictable results
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:904"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:909: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:909"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "  OK with MOVE: 1234567899
  OK with MOVE: 0012345679
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:909"
$at_failed && at_fn_log_failure
$at_traceon; }


# not seen by the compiler because in LINKAGE
cat >subprog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. subprog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        LINKAGE SECTION.
        01 F1 PIC X(10).
        01 F2 PIC X(15).

        PROCEDURE DIVISION USING F1 F2.
        MOVE F1(1:8) TO F2 (7:8).
        IF F2 NOT = "Hallo1123456780"
           DISPLAY "error:3: " F2.

        GOBACK.
_ATEOF


cat >prog2.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog2.

        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 STRUCTURE.
            05 FIELD1 PIC X(5).
            05 FIELD2 PIC X(10).

        PROCEDURE DIVISION.
           MOVE "Hallo" TO FIELD1.
           MOVE "1234567890" TO FIELD2.

           CALL "subprog" USING BY REFERENCE FIELD2 STRUCTURE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:951: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_fundamental.at:951"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:951"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:952: \$COMPILE_MODULE subprog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE subprog.cob" "run_fundamental.at:952"
( $at_check_trace; $COMPILE_MODULE subprog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:952"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:953: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_fundamental.at:953"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:953"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_525
#AT_START_526
at_fn_group_banner 526 'run_fundamental.at:958' \
  "Overlapping MOVE (IBM)" "                         " 4
at_xfail=no
(
  $as_echo "526. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  FILLER.
         05  TSTMOV1 PIC X(479).
         05  TSTMOV2 PIC X(10).
       PROCEDURE DIVISION.
           MOVE "0123456789" TO TSTMOV2.
           MOVE TSTMOV2 (2:9) TO TSTMOV2 (1:9)
           IF TSTMOV2 NOT = "1234567899"
              DISPLAY "  PROBLEM MOVE: " TSTMOV2
           ELSE
              DISPLAY "  OK with MOVE: " TSTMOV2.
           MOVE "0123456789" TO TSTMOV2.
           MOVE TSTMOV2 (1:8) TO TSTMOV2 (2:8)
           IF TSTMOV2 = "0000000009"
              DISPLAY "IBM style MOVE: " TSTMOV2
           ELSE IF TSTMOV2 NOT = "0012345679"
              DISPLAY "  PROBLEM MOVE: " TSTMOV2
           ELSE
              DISPLAY "  OK with MOVE: " TSTMOV2.
           STOP RUN.
_ATEOF


# Overlap directly seen by the compiler, ignored because of move-ibm
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:988: \$COMPILE -fmove-ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fmove-ibm prog.cob" "run_fundamental.at:988"
( $at_check_trace; $COMPILE -fmove-ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:988"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:990: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:990"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "  OK with MOVE: 1234567899
IBM style MOVE: 0000000009
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:990"
$at_failed && at_fn_log_failure
$at_traceon; }


# not seen by the compiler because in LINKAGE
cat >subprog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. subprog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        LINKAGE SECTION.
        01 F1 PIC X(10).
        01 F2 PIC X(15).

        PROCEDURE DIVISION USING F1 F2.
        MOVE F1(1:8) TO F2 (7:8).
        IF F2 NOT = "Hallo1111111110"
           DISPLAY "error:3: " F2.

        GOBACK.
_ATEOF


cat >prog2.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog2.

        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 STRUCTURE.
            05 FIELD1 PIC X(5).
            05 FIELD2 PIC X(10).

        PROCEDURE DIVISION.
           MOVE "Hallo" TO FIELD1.
           MOVE "1234567890" TO FIELD2.

           CALL "subprog" USING BY REFERENCE FIELD2 STRUCTURE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1032: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_fundamental.at:1032"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1032"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1033: \$COMPILE_MODULE -fmove-ibm subprog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fmove-ibm subprog.cob" "run_fundamental.at:1033"
( $at_check_trace; $COMPILE_MODULE -fmove-ibm subprog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1033"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1034: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_fundamental.at:1034"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1034"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_526
#AT_START_527
at_fn_group_banner 527 'run_fundamental.at:1039' \
  "ALPHABETIC test" "                                " 4
at_xfail=no
(
  $as_echo "527. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(04) VALUE "AAAA".
       01  FILLER REDEFINES X.
           03  XBYTE    PIC X.
           03  FILLER   PIC XXX.
       PROCEDURE        DIVISION.
           MOVE X"0D"   TO XBYTE.
           IF X ALPHABETIC
              DISPLAY "Fail - Alphabetic"
              END-DISPLAY
           END-IF.
           MOVE "A"     TO XBYTE.
           IF X NOT ALPHABETIC
              DISPLAY "Fail - Not Alphabetic"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1065: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1065"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1065"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1066: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1066"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1066"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_527
#AT_START_528
at_fn_group_banner 528 'run_fundamental.at:1071' \
  "ALPHABETIC-UPPER test" "                          " 4
at_xfail=no
(
  $as_echo "528. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(04) VALUE "AAAA".
       01  FILLER REDEFINES X.
           03  XBYTE    PIC X.
           03  FILLER   PIC XXX.
       PROCEDURE        DIVISION.
           MOVE X"0D"   TO XBYTE.
           IF X ALPHABETIC-UPPER
              DISPLAY "Fail - Not alphabetic upper"
              END-DISPLAY
           END-IF.
           MOVE "A"     TO XBYTE.
           IF X NOT ALPHABETIC-UPPER
              DISPLAY "Fail - Alphabetic upper"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1097: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1097"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1097"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1098: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1098"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1098"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_528
#AT_START_529
at_fn_group_banner 529 'run_fundamental.at:1103' \
  "ALPHABETIC-LOWER test" "                          " 4
at_xfail=no
(
  $as_echo "529. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(04) VALUE "aaaa".
       01  FILLER REDEFINES X.
           03  XBYTE    PIC X.
           03  FILLER   PIC XXX.
       PROCEDURE        DIVISION.
           MOVE X"0D"   TO XBYTE.
           IF X ALPHABETIC-LOWER
              DISPLAY "Fail - Not alphabetic lower"
              END-DISPLAY
           END-IF.
           MOVE "a"     TO XBYTE.
           IF X NOT ALPHABETIC-LOWER
              DISPLAY "Fail - Alphabetic lower"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1129: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1129"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1129"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1130: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1130"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1130"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_529
#AT_START_530
at_fn_group_banner 530 'run_fundamental.at:1135' \
  "GLOBAL at same level" "                           " 4
at_xfail=no
(
  $as_echo "530. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  X   PIC X(5) GLOBAL  VALUE "prog1".
       PROCEDURE        DIVISION.
           DISPLAY X
           END-DISPLAY.
           CALL "prog2"
           END-CALL
           CALL "prog3"
           END-CALL
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01  X   PIC X(5) GLOBAL  VALUE "prog2".
        PROCEDURE        DIVISION.
            DISPLAY X
            END-DISPLAY.
            EXIT PROGRAM.
        END PROGRAM prog2.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog3.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            DISPLAY X
            END-DISPLAY.
            EXIT PROGRAM.
        END PROGRAM prog3.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1174: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1174"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1174"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1175: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1175"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "prog1
prog2
prog1
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1175"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_530
#AT_START_531
at_fn_group_banner 531 'run_fundamental.at:1184' \
  "GLOBAL at lower level" "                          " 4
at_xfail=no
(
  $as_echo "531. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  X   PIC X(5) GLOBAL  VALUE "prog1".
       PROCEDURE        DIVISION.
           DISPLAY X
           END-DISPLAY.
           CALL "prog2"
           END-CALL
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01  X   PIC X(5) GLOBAL  VALUE "prog2".
        PROCEDURE        DIVISION.
            DISPLAY X
            END-DISPLAY.
            CALL "prog3"
            END-CALL
            EXIT PROGRAM.
         IDENTIFICATION   DIVISION.
         PROGRAM-ID.      prog3.
         DATA DIVISION.
         WORKING-STORAGE SECTION.
         PROCEDURE        DIVISION.
             DISPLAY X
             END-DISPLAY.
             EXIT PROGRAM.
         END PROGRAM prog3.
        END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1223: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1223"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1223"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1224: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1224"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "prog1
prog2
prog2
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1224"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_531
#AT_START_532
at_fn_group_banner 532 'run_fundamental.at:1233' \
  "GLOBAL CONSTANT" "                                " 4
at_xfail=no
(
  $as_echo "532. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN    GLOB-PATH
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE    GLOBAL.
       01  TEST-REC     PIC X(4).
       WORKING-STORAGE  SECTION.
       78  GLOB-PATH           GLOBAL VALUE "GLOBP1".
       01  GLOB-PATH2 CONSTANT GLOBAL       "GLOBP2".
      * Test global vars because of implicitly defined ASSIGN var, too.
       78  GLOB-VAR            GLOBAL VALUE "GLOBV1".
       01  GLOB-VAR2  CONSTANT GLOBAL       "GLOBV2".
       PROCEDURE        DIVISION.
           DISPLAY GLOB-PATH GLOB-VAR
           END-DISPLAY.
           CALL "prog2"
           END-CALL.
           CALL "prog3"
           END-CALL.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        ENVIRONMENT      DIVISION.
        INPUT-OUTPUT     SECTION.
        FILE-CONTROL.
        SELECT TEST2-FILE
               ASSIGN    GLOB-PATH2
        .
        DATA             DIVISION.
        FILE             SECTION.
        FD  TEST2-FILE   GLOBAL.
        01  TEST2-REC    PIC X(4).
        WORKING-STORAGE  SECTION.
        PROCEDURE        DIVISION.
            DISPLAY GLOB-PATH2 GLOB-VAR2
            END-DISPLAY.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST3-FILE
              ASSIGN    GLOB-PATH
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST3-FILE   GLOBAL.
       01  TEST3-REC    PIC X(4).
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY 'in prog3'
           END-DISPLAY
           IF GLOB-PATH NOT = SPACES
              DISPLAY FUNCTION TRIM (GLOB-PATH TRAILING)
              END-DISPLAY
           END-IF
           EXIT PROGRAM.
       END PROGRAM prog3.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1306: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1306"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1306"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1307: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1307"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GLOBP1GLOBV1
GLOBP2GLOBV2
in prog3
GLOB-PATH
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1307"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_532
#AT_START_533
at_fn_group_banner 533 'run_fundamental.at:1317' \
  "GLOBAL identifiers from ENVIRONMENT DIVISION" "   " 4
at_xfail=no
(
  $as_echo "533. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       FUNCTION-ID. f1.
       DATA DIVISION.
       LINKAGE SECTION.
       01 r BINARY-LONG.
       PROCEDURE DIVISION RETURNING r.
           move 1 to r
           GOBACK
           .
       END FUNCTION f1.
       FUNCTION-ID. f2.
       DATA DIVISION.
       LINKAGE SECTION.
       01 i BINARY-LONG.
       01 r BINARY-LONG.
       PROCEDURE DIVISION USING i RETURNING r.
           add i to i giving r
           GOBACK
           .
       END FUNCTION f2.

       PROGRAM-ID.   prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION f1
           FUNCTION f2.
       SPECIAL-NAMES.
           CURRENCY SIGN IS "Y"
           DECIMAL-POINT IS COMMA.

       PROCEDURE DIVISION.
           CALL "prog-nested"
           .

       PROGRAM-ID. prog-nested.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  n1    BINARY-LONG VALUE 0.
       77  curr  PIC 9.9999,99Y.

       PROCEDURE DIVISION.
           MOVE f1()   TO n1
           IF n1 NOT = 1
             DISPLAY "ERROR 1" GOBACK
           END-IF
           MOVE f2(n1) TO n1
           IF n1 NOT = 2
             DISPLAY "ERROR 2" GOBACK
           END-IF
           MOVE f1()   TO n1
           IF n1 NOT = 1
             DISPLAY "ERROR 1 2nd" GOBACK
           END-IF
           MOVE f2(f2(n1)) TO n1
           IF n1 NOT = 4
             DISPLAY "ERROR 4" GOBACK
           END-IF
           MOVE n1 TO curr
           DISPLAY curr

           GOBACK
           .
       END PROGRAM prog-nested.
       END PROGRAM prog.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1390: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1390"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1390"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1391: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1391"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0.0004,00Y
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1391"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_533
#AT_START_534
at_fn_group_banner 534 'run_fundamental.at:1398' \
  "GLOBAL REDEFINES" "                               " 4
at_xfail=no
(
  $as_echo "534. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 T0 PIC X VALUE "X".
       01 T1 REDEFINES T0 PIC X GLOBAL.
       PROCEDURE DIVISION.
          DISPLAY T1.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1412: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1412"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1412"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_534
#AT_START_535
at_fn_group_banner 535 'run_fundamental.at:1417' \
  "function with variable-length RETURNING item" "   " 4
at_xfail=no
(
  $as_echo "535. $at_setup_line: testing $at_desc ..."
  $at_traceon



# see Bug #641


# Skipped in 3.1.1 as the codegen is not safe (returning local variable address)
# codegen adjusted in 4.x

$as_echo "run_fundamental.at:1426" >"$at_check_line_file"
at_fn_check_skip 77 "$at_srcdir/run_fundamental.at:1426"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. reply.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77 arg-len   USAGE BINARY-LONG.
       LINKAGE SECTION.
       01 argument  PIC X ANY LENGTH.
       01 result.
          05 filler PIC X OCCURS 0 to 999 DEPENDING ON arg-len.
       PROCEDURE DIVISION USING BY REFERENCE argument RETURNING result.
           MOVE FUNCTION LENGTH (argument) TO arg-len
           MOVE argument TO result.
       END FUNCTION reply.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION reply.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  arg   pic x(100).

       PROCEDURE DIVISION.
      *>
           IF not (FUNCTION         REPLY ("test")  = "test"
               and FUNCTION LENGTH (REPLY ("test")) = 4     )
              DISPLAY "'test' failed: "
                     FUNCTION LENGTH (REPLY ("test")) " #"
                     FUNCTION         REPLY ("test")  "#".
      *>
           IF not (FUNCTION         REPLY ("test   ")  = "test"
               and FUNCTION LENGTH (REPLY ("test   ")) = 7     )
              DISPLAY "'test   ' failed: "
                     FUNCTION LENGTH (REPLY ("test   ")) " #"
                     FUNCTION         REPLY ("test   ")  "#".
      *>
           IF not (FUNCTION         REPLY (arg)  = spaces
               and FUNCTION LENGTH (REPLY (arg)) = 100 )
              DISPLAY "empty arg failed: "
                     FUNCTION LENGTH (REPLY (arg)) " #"
                     FUNCTION         REPLY (arg)  "#".
      *>
           MOVE "echo this" to arg
           IF not (FUNCTION         REPLY (arg)  = arg
               and FUNCTION LENGTH (REPLY (arg)) = 100 )
              DISPLAY "echo arg failed: "
                     FUNCTION LENGTH (REPLY (arg)) " #"
                     FUNCTION         REPLY (arg)  "#".
      *>
           MOVE z"echo this" to arg
           IF not (FUNCTION         REPLY (arg)  = arg
               and FUNCTION LENGTH (REPLY (arg)) = 100 )
              DISPLAY "z'echo arg failed: "
                     FUNCTION LENGTH (REPLY (arg)) " #"
                     FUNCTION         REPLY (arg)  "#".
      *>
           GOBACK
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1494: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1494"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1494"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1495: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1495"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1495"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_535
#AT_START_536
at_fn_group_banner 536 'run_fundamental.at:1500' \
  "Entry point visibility (1)" "                     " 4
at_xfail=no
(
  $as_echo "536. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       PROCEDURE        DIVISION.
           CALL 'module'
           CALL 'modulepart'
           STOP RUN.
_ATEOF


cat >module.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      module.
       DATA DIVISION.
       PROCEDURE        DIVISION.
           DISPLAY 'A' WITH NO ADVANCING
           GOBACK.
       ENTRY 'modulepart'.
           DISPLAY 'B' WITH NO ADVANCING
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1525: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1525"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1525"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1526: \$COMPILE_MODULE module.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE module.cob" "run_fundamental.at:1526"
( $at_check_trace; $COMPILE_MODULE module.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1526"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1527: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1527"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "AB" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1527"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_536
#AT_START_537
at_fn_group_banner 537 'run_fundamental.at:1532' \
  "Entry point visibility (2)" "                     " 4
at_xfail=no
(
  $as_echo "537. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: skip on __OS400__

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       PROCEDURE        DIVISION.
       CALL 'module'
       STOP RUN.
_ATEOF


cat >module.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
some (void)
{
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1557: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1557"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1557"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1558: \$COMPILE_MODULE module.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE module.c" "run_fundamental.at:1558"
( $at_check_trace; $COMPILE_MODULE module.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1558"
$at_failed && at_fn_log_failure
$at_traceon; }

# the warning itself is very system specific, so disable it,
# then run again checking only for the warning
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1561: COB_DISABLE_WARNINGS=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_DISABLE_WARNINGS=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:1561"
( $at_check_trace; COB_DISABLE_WARNINGS=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:6: error: entry point 'module' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:1561"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1564: \$COBCRUN_DIRECT ./prog 2> err.log"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog 2> err.log" "run_fundamental.at:1564"
( $at_check_trace; $COBCRUN_DIRECT ./prog 2> err.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:1564"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1565: \$GREP \"libcob: prog.cob:6: warning: \" err.log"
at_fn_check_prepare_dynamic "$GREP \"libcob: prog.cob:6: warning: \" err.log" "run_fundamental.at:1565"
( $at_check_trace; $GREP "libcob: prog.cob:6: warning: " err.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1565"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_537
#AT_START_538
at_fn_group_banner 538 'run_fundamental.at:1570' \
  "Contained program visibility (1)" "               " 4
at_xfail=no
(
  $as_echo "538. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  X   PIC X(5) GLOBAL  VALUE "prog1".
       PROCEDURE        DIVISION.
           IF X NOT = "prog1"
              DISPLAY X
              END-DISPLAY
           END-IF.
           CALL "prog2"
           END-CALL.
           CALL "prog3"
           END-CALL.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01  X   PIC X(5) GLOBAL  VALUE "prog2".
        PROCEDURE        DIVISION.
            IF X NOT = "prog2"
               DISPLAY X
               END-DISPLAY
            END-IF.
            CALL "prog3"
            END-CALL.
            EXIT PROGRAM.
         IDENTIFICATION   DIVISION.
         PROGRAM-ID.      prog3.
         DATA DIVISION.
         WORKING-STORAGE SECTION.
         PROCEDURE        DIVISION.
             IF X NOT = "prog2"
                DISPLAY X
                END-DISPLAY
             END-IF
             EXIT PROGRAM.
         END PROGRAM prog3.
        END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1617: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1617"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1617"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1618: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1618"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:14: error: module 'prog3' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:1618"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_538
#AT_START_539
at_fn_group_banner 539 'run_fundamental.at:1625' \
  "Contained program visibility (2)" "               " 4
at_xfail=no
(
  $as_echo "539. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  X   PIC X(5) GLOBAL  VALUE "prog1".
       PROCEDURE        DIVISION.
           IF X NOT = "prog1"
              DISPLAY X
              END-DISPLAY
           END-IF.
           CALL "prog2"
           END-CALL.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01  X   PIC X(5) GLOBAL  VALUE "prog2".
        PROCEDURE        DIVISION.
            IF X NOT = "prog2"
               DISPLAY X
               END-DISPLAY
            END-IF.
            CALL "prog3"
            END-CALL.
            EXIT PROGRAM.
        END PROGRAM prog2.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog3.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            IF X NOT = "prog2"
               DISPLAY X
               END-DISPLAY
            END-IF.
            EXIT PROGRAM.
        END PROGRAM prog3.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1670: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1670"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1670"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1671: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1671"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:25: error: module 'prog3' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:1671"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_539
#AT_START_540
at_fn_group_banner 540 'run_fundamental.at:1678' \
  "Contained program visibility (3)" "               " 4
at_xfail=no
(
  $as_echo "540. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  X   PIC X(5) GLOBAL  VALUE "prog1".
       PROCEDURE        DIVISION.
           IF X NOT = "prog1"
              DISPLAY X
              END-DISPLAY
           END-IF.
           CALL "prog2"
           END-CALL.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01  X   PIC X(5) GLOBAL  VALUE "prog2".
        PROCEDURE        DIVISION.
            IF X NOT = "prog2"
               DISPLAY X
               END-DISPLAY
            END-IF.
            CALL "prog3"
            END-CALL.
            EXIT PROGRAM.
        END PROGRAM prog2.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog3 COMMON.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            IF X NOT = "prog1"
               DISPLAY X
               END-DISPLAY
            END-IF.
            EXIT PROGRAM.
        END PROGRAM prog3.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1723: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1723"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1723"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1724: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1724"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1724"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_540
#AT_START_541
at_fn_group_banner 541 'run_fundamental.at:1729' \
  "Contained program visibility (4)" "               " 4
at_xfail=no
(
  $as_echo "541. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           DISPLAY "P1" NO ADVANCING
           END-DISPLAY.
           CALL "prog2"
           END-CALL
           CALL "prog3"
           END-CALL
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            DISPLAY "P2" NO ADVANCING
            END-DISPLAY.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           DISPLAY "P3" NO ADVANCING
           END-DISPLAY.
           CALL "prog2"
           END-CALL.
           EXIT PROGRAM.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            DISPLAY "P4" NO ADVANCING
            END-DISPLAY.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog3.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1777: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1777"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1777"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1778: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1778"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P1P2P3P4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1778"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_541
#AT_START_542
at_fn_group_banner 542 'run_fundamental.at:1784' \
  "CALL alphanumeric data-name" "                    " 4
at_xfail=no
(
  $as_echo "542. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  prgm        PIC X(32) VALUE "recursion-test".

       PROCEDURE       DIVISION.
           CALL prgm
           DISPLAY "<"

           MOVE "cancel-test" TO prgm
           CALL prgm
           CALL prgm
           CANCEL prgm
           CALL prgm
           DISPLAY "<"

           MOVE "dummy-call" TO prgm
           CALL prgm
       >> IF CHECK-PERF IS DEFINED
           PERFORM 500000 TIMES
              CALL prgm
           END-PERFORM
       >> END-IF
           .
       END PROGRAM     prog.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     recursion-test RECURSIVE.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           PIC 9 VALUE 0.

       PROCEDURE       DIVISION.
           ADD 1 TO x
           DISPLAY x NO ADVANCING
           IF x = 1
               CALL "recursion-test"
           END-IF
           .
       END PROGRAM     recursion-test.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     cancel-test.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           PIC 9 VALUE 1.

       PROCEDURE       DIVISION.
           DISPLAY x NO ADVANCING
           ADD 1 TO x
           .
       END PROGRAM     cancel-test.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     dummy-call.

       PROCEDURE       DIVISION.
           CONTINUE
           .
       END PROGRAM     dummy-call.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1856: \$COMPILE -fno-program-name-redefinition prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-program-name-redefinition prog.cob" "run_fundamental.at:1856"
( $at_check_trace; $COMPILE -fno-program-name-redefinition prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1856"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1857: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1857"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1857"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1861: COB_PHYSICAL_CANCEL=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog" "run_fundamental.at:1861"
( $at_check_trace; COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1861"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1865: COB_PHYSICAL_CANCEL=NEVER \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=NEVER $COBCRUN_DIRECT ./prog" "run_fundamental.at:1865"
( $at_check_trace; COB_PHYSICAL_CANCEL=NEVER $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1865"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_542
#AT_START_543
at_fn_group_banner 543 'run_fundamental.at:1872' \
  "CALL program-pointer" "                           " 4
at_xfail=no
(
  $as_echo "543. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77  prog-ptr    USAGE PROGRAM-POINTER.
       77  num         PIC 9 VALUE 0.

       PROCEDURE       DIVISION.
           SET  prog-ptr TO ADDRESS OF PROGRAM "recursion-test"
           CALL prog-ptr USING num
           DISPLAY "<"

           SET  prog-ptr TO ADDRESS OF PROGRAM "cancel-test"
           CALL prog-ptr
           CALL prog-ptr
           CANCEL "cancel-test"
      *>   NOTE: the following results in the previous address
      *>         if physical cancel is not active, otherwise _likely_
      *>         in a different one
           SET  prog-ptr TO ADDRESS OF PROGRAM "cancel-test"
           CALL prog-ptr
           DISPLAY "<"

           SET  prog-ptr TO ADDRESS OF PROGRAM "dummy-call"
           CALL prog-ptr
       >> IF CHECK-PERF IS DEFINED
           PERFORM 500000 TIMES
              CALL prog-ptr
           END-PERFORM
       >> END-IF
           .
       END PROGRAM     prog.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     recursion-test RECURSIVE.

       DATA            DIVISION.
       LINKAGE         SECTION.
       01  x           PIC 9.

       PROCEDURE       DIVISION USING x.
           ADD 1 TO x
           DISPLAY x NO ADVANCING
           IF x = 1
               CALL "recursion-test" USING x
           END-IF
           .
       END PROGRAM     recursion-test.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     cancel-test.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77  self-ptr    USAGE PROGRAM-POINTER VALUE NULL.
       01  x           PIC 9 VALUE 1.

       PROCEDURE       DIVISION.
           SET self-ptr TO ENTRY "cancel-test"
           IF  self-ptr = NULL
               DISPLAY 'self-address not set' UPON SYSERR.
           DISPLAY x NO ADVANCING
           ADD 1 TO x
           .
       END PROGRAM     cancel-test.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     dummy-call.

       PROCEDURE       DIVISION.
           CONTINUE
           .
       END PROGRAM     dummy-call.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1956: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:1956"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1956"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1957: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:1957"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1957"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:1961: COB_PHYSICAL_CANCEL=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog" "run_fundamental.at:1961"
( $at_check_trace; COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:1961"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_543
#AT_START_544
at_fn_group_banner 544 'run_fundamental.at:1968' \
  "CALL/CANCEL/SET ADDRESS program-prototype-name" " " 4
at_xfail=no
(
  $as_echo "544. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

      *> simple prototypes
       IDENTIFICATION DIVISION.
       PROGRAM-ID. recursion-test PROTOTYPE.
       DATA DIVISION.
       LINKAGE SECTION.
       01  n PIC 9.
       PROCEDURE DIVISION USING n.
       END PROGRAM recursion-test.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. cancel-test IS PROTOTYPE.
       PROCEDURE DIVISION.
       END PROGRAM cancel-test.

      *> program referencing those prototpyes
       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       ENVIRONMENT     DIVISION.
       CONFIGURATION   SECTION.
       REPOSITORY.
           PROGRAM recursion-test
           PROGRAM cancel-test
           .
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77  prog-ptr    USAGE PROGRAM-POINTER VALUE NULL.
       01  num         PIC 9 VALUE 0.

       PROCEDURE       DIVISION.
           CALL recursion-test USING num
           DISPLAY "<"

           CALL cancel-test
           CALL cancel-test
           CANCEL cancel-test
           CALL cancel-test
           DISPLAY "<"
           SET prog-ptr TO ADDRESS OF PROGRAM recursion-test
           IF  prog-ptr = NULL
               DISPLAY 'address of recursion-prog not set' UPON SYSERR
           ELSE
               SET prog-ptr TO NULL
           END-IF
           SET prog-ptr TO ADDRESS OF PROGRAM cancel-test
           IF  prog-ptr = NULL
               DISPLAY 'address of cancel-prog not set' UPON SYSERR
           ELSE
               SET prog-ptr TO NULL
           END-IF
           .
       END PROGRAM     prog.

      *> actual implementation of the prototyped programs
       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     recursion-test RECURSIVE.

       DATA            DIVISION.
       LINKAGE         SECTION.
       01  x           PIC 9.

       PROCEDURE       DIVISION USING x.
           ADD 1 TO x
           DISPLAY x NO ADVANCING
           IF x = 1
      *>       CHECKME: Should this work (disabled for now...) ?
      *>       CALL recursion-test USING x
               CALL "recursion-test" USING x
           END-IF
           .
       END PROGRAM     recursion-test.


       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     cancel-test.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           PIC 9 VALUE 1.

       PROCEDURE       DIVISION.
           DISPLAY x NO ADVANCING
           ADD 1 TO x
           .
       END PROGRAM     cancel-test.
_ATEOF


# TODO:
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2060: \$COMPILE -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob" "run_fundamental.at:2060"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2060"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2061: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2061"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2061"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2065: COB_PHYSICAL_CANCEL=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog" "run_fundamental.at:2065"
( $at_check_trace; COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12<
121<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2065"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_544
#AT_START_545
at_fn_group_banner 545 'run_fundamental.at:2072' \
  "GLOBAL FD (1)" "                                  " 4
at_xfail=no
(
  $as_echo "545. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN      "TESTFILE"
              ACCESS       DYNAMIC
              ORGANIZATION RELATIVE
              STATUS       TESTSTAT
              RELATIVE KEY TESTKEY
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE    GLOBAL.
       01  TEST-REC     PIC X(4).
       WORKING-STORAGE  SECTION.
       01  GLOBVALS.
           03  TESTKEY  PIC 9(4).
           03  TESTSTAT PIC XX.
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CALL  "prog2"
           END-CALL.
           CLOSE TEST-FILE.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            READ TEST-FILE
                 INVALID KEY
                 DISPLAY "NOK"
                 END-DISPLAY
            END-READ.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF


# FIXME: move to different place or adjust test - note: so far
#        we only want to verify codegen
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2119: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2119"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2119"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_545
#AT_START_546
at_fn_group_banner 546 'run_fundamental.at:2123' \
  "GLOBAL FD (2)" "                                  " 4
at_xfail=no
(
  $as_echo "546. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN      "TESTFILE"
              ACCESS       DYNAMIC
              ORGANIZATION INDEXED
              STATUS       TESTSTAT
              RECORD KEY   TESTKEY
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE    GLOBAL.
       01  TEST-REC.
           03  TESTKEY  PIC X(4).
       WORKING-STORAGE  SECTION.
       01  GLOBVALS.
           03  TESTSTAT PIC XX.
       PROCEDURE        DIVISION.
           OPEN  INPUT TEST-FILE.
           CALL  "prog2"
           END-CALL.
           CLOSE TEST-FILE.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            READ TEST-FILE
                 INVALID KEY
                 DISPLAY "NOK"
                 END-DISPLAY
            END-READ.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF

# FIXME: move to different place or adjust test - note: so far
#        we only want to verify codegen, otherwise add
# AT_SKIP_IF([test "$COB_HAS_ISAM" = "no"])
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2170: \$COMPILE -Wno-unsupported prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unsupported prog.cob" "run_fundamental.at:2170"
( $at_check_trace; $COMPILE -Wno-unsupported prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2170"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_546
#AT_START_547
at_fn_group_banner 547 'run_fundamental.at:2175' \
  "GLOBAL FD (3)" "                                  " 4
at_xfail=no
(
  $as_echo "547. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN      "TESTFILE"
              ACCESS       DYNAMIC
              ORGANIZATION RELATIVE
              STATUS       TESTSTAT
              RELATIVE KEY TESTKEY
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE    GLOBAL.
       01  TEST-REC     PIC X(4).
       WORKING-STORAGE  SECTION.
       01  GLOBVALS.
           03  TESTKEY  PIC 9(4).
           03  TESTSTAT PIC XX.
       PROCEDURE        DIVISION.
           MOVE "00"    TO TESTSTAT.
           CALL  "prog2"
           END-CALL.
           IF TESTSTAT = "00"
              DISPLAY "Not OK"
              END-DISPLAY
           END-IF.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            OPEN  INPUT TEST-FILE.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2219: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2219"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2219"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2220: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2220"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2220"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_547
#AT_START_548
at_fn_group_banner 548 'run_fundamental.at:2225' \
  "GLOBAL FD (4)" "                                  " 4
at_xfail=no
(
  $as_echo "548. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE
              ASSIGN      "TESTFILE"
              ACCESS       DYNAMIC
              ORGANIZATION INDEXED
              STATUS       TESTSTAT
              RECORD KEY   TESTKEY
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE    GLOBAL.
       01  TEST-REC.
           03  TESTKEY  PIC X(4).
       WORKING-STORAGE  SECTION.
       01  GLOBVALS.
           03  TESTSTAT PIC XX.
       PROCEDURE        DIVISION.
           MOVE "00"    TO TESTSTAT.
           CALL  "prog2"
           END-CALL.
           IF TESTSTAT = "00"
              DISPLAY "Not OK"
              END-DISPLAY
           END-IF.
           STOP RUN.
        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE        DIVISION.
            OPEN  INPUT TEST-FILE.
            EXIT PROGRAM.
        END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF


# Note: special check: we test the invalid open here, it doesn't
#       matter _why_ it is invalid (missing file / missing support)
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2271: \$COMPILE -Wno-unsupported prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unsupported prog.cob" "run_fundamental.at:2271"
( $at_check_trace; $COMPILE -Wno-unsupported prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2271"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2272: COB_DISABLE_WARNINGS=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_DISABLE_WARNINGS=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:2272"
( $at_check_trace; COB_DISABLE_WARNINGS=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2272"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_548
#AT_START_549
at_fn_group_banner 549 'run_fundamental.at:2277' \
  "CANCEL test (1)" "                                " 4
at_xfail=no
(
  $as_echo "549. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           CANCEL "notthere".
           CANCEL "prog".
           DISPLAY "NG" NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2293: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2293"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2293"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2294: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2294"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:8: error: attempt to CANCEL active program
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:2294"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2297: COB_PHYSICAL_CANCEL=1 ./prog"
at_fn_check_prepare_trace "run_fundamental.at:2297"
( $at_check_trace; COB_PHYSICAL_CANCEL=1 ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:8: error: attempt to CANCEL active program
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:2297"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_549
#AT_START_550
at_fn_group_banner 550 'run_fundamental.at:2304' \
  "CANCEL test (2)" "                                " 4
at_xfail=no
(
  $as_echo "550. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           CALL "prog2".
           DISPLAY "NG" NO ADVANCING.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           CANCEL "prog".
           DISPLAY "NG" NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2329: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2329"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2329"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2330: \$COMPILE_MODULE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog2.cob" "run_fundamental.at:2330"
( $at_check_trace; $COMPILE_MODULE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2330"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2331: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2331"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:7: error: attempt to CANCEL active program
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:2331"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2334: COB_PHYSICAL_CANCEL=1 ./prog"
at_fn_check_prepare_trace "run_fundamental.at:2334"
( $at_check_trace; COB_PHYSICAL_CANCEL=1 ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:7: error: attempt to CANCEL active program
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:2334"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_550
#AT_START_551
at_fn_group_banner 551 'run_fundamental.at:2341' \
  "CANCEL test (3)" "                                " 4
at_xfail=no
(
  $as_echo "551. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           CALL "prog2".
           CALL "prog2".
           CANCEL "prog2".
           CALL "prog2".
           CANCEL "prog2".
           DISPLAY "NG" NO ADVANCING.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  VAR          PIC 9(01) value 1.
       PROCEDURE        DIVISION.
           DISPLAY VAR NO ADVANCING.
           ADD  1 TO VAR.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2371: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2371"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2371"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2372: \$COMPILE_MODULE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog2.cob" "run_fundamental.at:2372"
( $at_check_trace; $COMPILE_MODULE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2372"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2373: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2373"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "121NG" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2373"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2374: COB_PHYSICAL_CANCEL=1 ./prog"
at_fn_check_prepare_trace "run_fundamental.at:2374"
( $at_check_trace; COB_PHYSICAL_CANCEL=1 ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "121NG" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2374"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_551
#AT_START_552
at_fn_group_banner 552 'run_fundamental.at:2379' \
  "Separate sign positions (1)" "                    " 4
at_xfail=no
(
  $as_echo "552. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC S9 VALUE -1 SIGN LEADING SEPARATE.
       01  Y            PIC S9 VALUE -1 SIGN TRAILING SEPARATE.
       PROCEDURE        DIVISION.
           DISPLAY X(1:1) X(2:1) NO ADVANCING
           END-DISPLAY.
           DISPLAY Y(1:1) Y(2:1) NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2397: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2397"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2397"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2398: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2398"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-11-" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2398"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_552
#AT_START_553
at_fn_group_banner 553 'run_fundamental.at:2403' \
  "Separate sign positions (2)" "                    " 4
at_xfail=no
(
  $as_echo "553. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC S9 SIGN LEADING SEPARATE.
       01  Y            PIC S9 SIGN TRAILING SEPARATE.
       PROCEDURE        DIVISION.
           MOVE 0 TO X.
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           MOVE ZERO TO X.
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           MOVE 0 TO Y.
           DISPLAY Y NO ADVANCING
           END-DISPLAY.
           MOVE ZERO TO Y.
           DISPLAY Y NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2428: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2428"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2428"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2429: \$COMPILE_MODULE -fpretty-display prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fpretty-display prog.cob" "run_fundamental.at:2429"
( $at_check_trace; $COMPILE_MODULE -fpretty-display prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2429"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2430: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2430"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+0+00+0+" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2430"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2431: \$COBCRUN prog"
at_fn_check_prepare_dynamic "$COBCRUN prog" "run_fundamental.at:2431"
( $at_check_trace; $COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+0+00+0+" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2431"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_553
#AT_START_554
at_fn_group_banner 554 'run_fundamental.at:2436' \
  "Context sensitive words (1)" "                    " 4
at_xfail=no
(
  $as_echo "554. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  BYTE-LENGTH  PIC 9.
       01  X            CONSTANT AS BYTE-LENGTH OF BYTE-LENGTH.
       PROCEDURE        DIVISION.
           MOVE X TO BYTE-LENGTH.
           DISPLAY BYTE-LENGTH NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2453: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2453"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2453"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2454: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2454"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2454"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_554
#AT_START_555
at_fn_group_banner 555 'run_fundamental.at:2459' \
  "Context sensitive words (2)" "                    " 4
at_xfail=no
(
  $as_echo "555. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  YYYYMMDD     PIC 9 VALUE 0.
       01  X            PIC X(16).
       PROCEDURE        DIVISION.
           ACCEPT X FROM DATE YYYYMMDD
           END-ACCEPT.
           DISPLAY YYYYMMDD NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2477: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2477"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2477"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2478: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2478"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2478"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_555
#AT_START_556
at_fn_group_banner 556 'run_fundamental.at:2483' \
  "Context sensitive words (3)" "                    " 4
at_xfail=no
(
  $as_echo "556. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  YYYYDDD      PIC 9 VALUE 0.
       01  X            PIC X(16).
       PROCEDURE        DIVISION.
           ACCEPT X FROM DAY YYYYDDD
           END-ACCEPT.
           DISPLAY YYYYDDD NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2501: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2501"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2501"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2502: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2502"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2502"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_556
#AT_START_557
at_fn_group_banner 557 'run_fundamental.at:2507' \
  "Context sensitive words (4)" "                    " 4
at_xfail=no
(
  $as_echo "557. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       REPOSITORY.
           FUNCTION ALL INTRINSIC.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  INTRINSIC    PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           DISPLAY INTRINSIC NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2526: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2526"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2526"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2527: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2527"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2527"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_557
#AT_START_558
at_fn_group_banner 558 'run_fundamental.at:2532' \
  "Context sensitive words (5)" "                    " 4
at_xfail=no
(
  $as_echo "558. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog RECURSIVE.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  RECURSIVE    PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           DISPLAY RECURSIVE NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2549: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2549"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2549"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2550: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2550"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2550"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_558
#AT_START_559
at_fn_group_banner 559 'run_fundamental.at:2555' \
  "Context sensitive words (6)" "                    " 4
at_xfail=no
(
  $as_echo "559. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  NORMAL       PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           DISPLAY NORMAL NO ADVANCING *> Intentionally no period or END-DISPLAY
           STOP RUN NORMAL.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2571: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2571"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2571"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2572: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2572"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2572"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_559
#AT_START_560
at_fn_group_banner 560 'run_fundamental.at:2577' \
  "Context sensitive words (7)" "                    " 4
at_xfail=no
(
  $as_echo "560. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X               PIC 9 VALUE 0.
       01  AWAY-FROM-ZERO  PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           COMPUTE X ROUNDED MODE AWAY-FROM-ZERO
                   AWAY-FROM-ZERO = 1.1
           END-COMPUTE
           DISPLAY X AWAY-FROM-ZERO NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2598: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2598"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2598"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2599: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2599"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "21" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2599"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_560
#AT_START_561
at_fn_group_banner 561 'run_fundamental.at:2604' \
  "Context sensitive words (8)" "                    " 4
at_xfail=no
(
  $as_echo "561. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  UNBOUNDED.
           03 ATTRIBUTES  PIC 9 VALUE 0.
       01  LOC.
           03 NAMESPACE   PIC 9 VALUE 1.
       PROCEDURE        DIVISION.
           DISPLAY UNBOUNDED ATTRIBUTES
                   NAMESPACE IN LOC
                   NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2625: \$COMPILE -std=ibm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm-strict prog.cob" "run_fundamental.at:2625"
( $at_check_trace; $COMPILE -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2625"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2626: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2626"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "001" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2626"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_561
#AT_START_562
at_fn_group_banner 562 'run_fundamental.at:2631' \
  "ROUNDED AWAY-FROM-ZERO" "                         " 4
at_xfail=no
(
  $as_echo "562. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE AWAY-FROM-ZERO
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE AWAY-FROM-ZERO
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE AWAY-FROM-ZERO
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE AWAY-FROM-ZERO
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE AWAY-FROM-ZERO
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE AWAY-FROM-ZERO
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE AWAY-FROM-ZERO
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE AWAY-FROM-ZERO
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE AWAY-FROM-ZERO
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE AWAY-FROM-ZERO
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2688: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2688"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2688"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2689: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2689"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+3 -3 +3 -3 +4 -4 +4 -4 +4 -4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2689"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_562
#AT_START_563
at_fn_group_banner 563 'run_fundamental.at:2694' \
  "ROUNDED NEAREST-AWAY-FROM-ZERO" "                 " 4
at_xfail=no
(
  $as_echo "563. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE NEAREST-AWAY-FROM-ZERO
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2751: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2751"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2751"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2752: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2752"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+2 -2 +3 -3 +3 -3 +4 -4 +4 -4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2752"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_563
#AT_START_564
at_fn_group_banner 564 'run_fundamental.at:2757' \
  "ROUNDED NEAREST-EVEN" "                           " 4
at_xfail=no
(
  $as_echo "564. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE NEAREST-EVEN
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE NEAREST-EVEN
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE NEAREST-EVEN
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE NEAREST-EVEN
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE NEAREST-EVEN
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE NEAREST-EVEN
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE NEAREST-EVEN
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE NEAREST-EVEN
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE NEAREST-EVEN
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE NEAREST-EVEN
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2814: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2814"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2814"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2815: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2815"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+2 -2 +2 -2 +3 -3 +4 -4 +4 -4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2815"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_564
#AT_START_565
at_fn_group_banner 565 'run_fundamental.at:2820' \
  "ROUNDED NEAREST-TOWARD-ZERO" "                    " 4
at_xfail=no
(
  $as_echo "565. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE NEAREST-TOWARD-ZERO
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE NEAREST-TOWARD-ZERO
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE NEAREST-TOWARD-ZERO
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE NEAREST-TOWARD-ZERO
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE NEAREST-TOWARD-ZERO
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE NEAREST-TOWARD-ZERO
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE NEAREST-TOWARD-ZERO
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE NEAREST-TOWARD-ZERO
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE NEAREST-TOWARD-ZERO
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE NEAREST-TOWARD-ZERO
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2877: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2877"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2877"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2878: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2878"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+2 -2 +2 -2 +3 -3 +3 -3 +4 -4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2878"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_565
#AT_START_566
at_fn_group_banner 566 'run_fundamental.at:2883' \
  "ROUNDED TOWARD-GREATER" "                         " 4
at_xfail=no
(
  $as_echo "566. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE TOWARD-GREATER
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE TOWARD-GREATER
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE TOWARD-GREATER
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE TOWARD-GREATER
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE TOWARD-GREATER
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE TOWARD-GREATER
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE TOWARD-GREATER
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE TOWARD-GREATER
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE TOWARD-GREATER
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE TOWARD-GREATER
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2940: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:2940"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2940"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:2941: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:2941"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+3 -2 +3 -2 +4 -3 +4 -3 +4 -3" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:2941"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_566
#AT_START_567
at_fn_group_banner 567 'run_fundamental.at:2946' \
  "ROUNDED TOWARD-LESSER" "                          " 4
at_xfail=no
(
  $as_echo "567. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE TOWARD-LESSER
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE TOWARD-LESSER
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE TOWARD-LESSER
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE TOWARD-LESSER
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE TOWARD-LESSER
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE TOWARD-LESSER
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE TOWARD-LESSER
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE TOWARD-LESSER
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE TOWARD-LESSER
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE TOWARD-LESSER
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3003: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:3003"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3003"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3004: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:3004"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+2 -3 +2 -3 +3 -4 +3 -4 +3 -4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3004"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_567
#AT_START_568
at_fn_group_banner 568 'run_fundamental.at:3009' \
  "ROUNDED TRUNCATION" "                             " 4
at_xfail=no
(
  $as_echo "568. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  M                PIC S9.
       01  N                PIC S9.
       01  O                PIC S9.
       01  P                PIC S9.
       01  Q                PIC S9.
       01  R                PIC S9.
       01  S                PIC S9.
       01  T                PIC S9.
       01  U                PIC S9.
       01  V                PIC S9.
       PROCEDURE DIVISION.
           COMPUTE M ROUNDED MODE TRUNCATION
                   = 2.49
           END-COMPUTE
           COMPUTE N ROUNDED MODE TRUNCATION
                   = -2.49
           END-COMPUTE
           COMPUTE O ROUNDED MODE TRUNCATION
                   = 2.50
           END-COMPUTE
           COMPUTE P ROUNDED MODE TRUNCATION
                   = -2.50
           END-COMPUTE
           COMPUTE Q ROUNDED MODE TRUNCATION
                   = 3.49
           END-COMPUTE
           COMPUTE R ROUNDED MODE TRUNCATION
                   = -3.49
           END-COMPUTE
           COMPUTE S ROUNDED MODE TRUNCATION
                   = 3.50
           END-COMPUTE
           COMPUTE T ROUNDED MODE TRUNCATION
                   = -3.50
           END-COMPUTE
           COMPUTE U ROUNDED MODE TRUNCATION
                   = 3.510
           END-COMPUTE
           COMPUTE V ROUNDED MODE TRUNCATION
                   = -3.510
           END-COMPUTE
           DISPLAY M " " N " " O " " P " " Q " " R " " S " " T
                   " " U " " V
               NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3066: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:3066"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3066"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3067: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:3067"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+2 -2 +2 -2 +3 -3 +3 -3 +3 -3" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3067"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_568
#AT_START_569
at_fn_group_banner 569 'run_fundamental.at:3072' \
  "Numeric operations (1)" "                         " 4
at_xfail=no
(
  $as_echo "569. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC S9V9.
       01  Y            PIC S9V9 COMP-3.
       PROCEDURE        DIVISION.
           MOVE -0.1  TO X.
           ADD 1      TO X.
           IF X NOT = 0.9
              DISPLAY X.
           MOVE  0.1  TO X.
           SUBTRACT 1 FROM X.
           IF X NOT = -0.9
              DISPLAY X.
           MOVE -0.1 TO Y.
           ADD 1     TO Y.
           IF Y NOT = 0.9
              DISPLAY Y.
           MOVE  0.1  TO Y.
           SUBTRACT 1 FROM Y.
           IF Y NOT = -0.9
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3102: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:3102"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3102"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3103: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:3103"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3103"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_569
#AT_START_570
at_fn_group_banner 570 'run_fundamental.at:3108' \
  "Numeric operations (2) DISPLAY" "                 " 4
at_xfail=no
(
  $as_echo "570. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FIELD        PIC S9(1)V9(1).
       01  FELD2        PIC S9(5)V9(5).
       01  FELD3        PIC 9(1)V9(1).
       01  FELD4        PIC S9(1).
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           MOVE 0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  1 " FIELD.

           MOVE 0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  2 " FIELD.

           MOVE -0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  3 " FIELD.

           MOVE -0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  4 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  5 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  6 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  7 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  8 " FIELD.

           MOVE 0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test  9 " FELD2.

           MOVE 0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 10 " FELD2.

           MOVE -0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 11 " FELD2.

           MOVE -0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 12 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 13 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test 14 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 15 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 16 " FELD2.

           MOVE 0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 17 " FELD3.

           MOVE 0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 18 " FELD3.

           MOVE -0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 19 " FELD3.

           MOVE -0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 20 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 21 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 22 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 23 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 24 " FELD3.

           MOVE 2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 25 " FELD4.

           MOVE 2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 26 " FELD4.

           MOVE -2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 27 " FELD4.

           MOVE -2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 28 " FELD4.

           MOVE 2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 29 " FELD4.

           MOVE 2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 30 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 31 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 32 " FELD4.

           MOVE 1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 33 " FELD4.

           MOVE 1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 34 " FELD4.

           MOVE -1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 35 " FELD4.

           MOVE -1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 36 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 37 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 38 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 39 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 40 " FELD4.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3338: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:3338"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3338"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3339: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:3339"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3339"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_570
#AT_START_571
at_fn_group_banner 571 'run_fundamental.at:3344' \
  "Numeric operations (3) PACKED-DECIMAL" "          " 4
at_xfail=no
(
  $as_echo "571. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FIELD        PIC S9(1)V9(1) COMP-3.
       01  FELD2        PIC S9(5)V9(5) COMP-3.
       01  FELD3        PIC 9(1)V9(1)  COMP-3.
       01  FELD4        PIC S9(1)      COMP-3.
       01  FELD4b       PIC S9(4)      COMP-3.
       01  FELD5        PIC 9(9)v9(9)  COMP-3.
       01  FELD5b       PIC 9(18)      COMP-3.
       01  FELD6        PIC 9(8)v9(20) COMP-3.
       01  FELD6b       PIC s9(8)9(20)  COMP-3.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           MOVE 0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  1 " FIELD.

           MOVE 0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  2 " FIELD.

           MOVE -0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  3 " FIELD.

           MOVE -0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  4 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  5 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  6 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  7 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  8 " FIELD.

           MOVE 0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test  9 " FELD2.

           MOVE 0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 10 " FELD2.

           MOVE -0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 11 " FELD2.

           MOVE -0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 12 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 13 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test 14 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 15 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 16 " FELD2.

           MOVE 0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 17 " FELD3.

           MOVE 0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 18 " FELD3.

      *    unsigned, so ends as 0.2
           MOVE -0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 19 " FELD3.

      *    unsigned, so ends as 0.2 - 1 -> -0.8 -> 0.8
           MOVE -0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 20 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 21 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 22 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 23 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 24 " FELD3.

           MOVE 2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 25 " FELD4.

           MOVE 2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 26 " FELD4.

           MOVE -2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 27 " FELD4.

           MOVE -2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 28 " FELD4.

           MOVE -2 TO FELD4b
           ADD -1 TO FELD4b
           IF FELD4b  NOT = -3
              DISPLAY "Test 28b " FELD4b.

           MOVE 2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 29 " FELD4.

           MOVE 2 TO FELD4b
           SUBTRACT 1 FROM FELD4b
           IF FELD4b NOT = 1
              DISPLAY "Test 29b " FELD4b.

           MOVE 2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 30 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 31 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 32 " FELD4.

           MOVE 1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 33 " FELD4.

           MOVE 1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 34 " FELD4.

           MOVE -1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 35 " FELD4.

           MOVE -1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 36 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 37 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 38 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 39 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 40 " FELD4.

      *>   test with 18 digits (last implied zero by field)
      *>   -> maximum cob_u64_t for separate code branch
           MOVE 123456789.01234567 TO FELD5
           ADD 2 TO FELD5
           IF FELD5  NOT = 123456791.01234567
              DISPLAY "Test 41 ADD " FELD5.
           MOVE 123456789.01234567 TO FELD5
           SUBTRACT -2 FROM FELD5
           IF FELD5  NOT = 123456791.01234567
              DISPLAY "Test 41 SUBTRACT " FELD5.

      *>   now testing optimized functions (only used for non-scaled)
           MOVE 12345678901234567 TO FELD5b
           ADD 18518518351851850 TO FELD5b
           IF FELD5b  NOT = 30864197253086417
              DISPLAY "Test 41b ADD " FELD5b.
           MOVE 30864197253086417 TO FELD5b
           SUBTRACT 18518518351851850 FROM FELD5b
           IF FELD5b  NOT = 12345678901234567
              DISPLAY "Test 41b SUBTRACT " FELD5b.

      *>   tests with more than 19 digits for separate code branch
      *>   -> last 8 digits with implied zero by field
           MOVE 12345678.123456901234 TO FELD6
           ADD -2.1 TO FELD6
           IF FELD6  NOT = 12345676.023456901234
              DISPLAY "Test 42 ADD " FELD6.
           MOVE 12345678.123456901234 TO FELD6
           SUBTRACT 2.1 FROM FELD6
           IF FELD6  NOT = 12345676.023456901234
              DISPLAY "Test 42 SUBTRACT " FELD6.

      *>   -> first 8 digits with implied zero by field,
      *>      last 4 digits truncated
           MOVE .123456789012345678901234 TO FELD6
           ADD 1.8 TO FELD6
           IF FELD6  NOT = 1.9234567890123456789
              DISPLAY "Test 43 " FELD6.

      *>   now testing optimized functions (only used for non-scaled)
           MOVE 7123456789012345670 TO FELD6b
           ADD  1800000000000000000 TO FELD6b
           IF FELD6b  NOT = 8923456789012345670
              DISPLAY "Test 43b ADD " FELD6b.
           IF FELD6b  = -8923456789012345670
              DISPLAY "Test 43b2 ADD " FELD6b.
           MULTIPLY FELD6b BY -1 GIVING FELD6b
           IF FELD6b  NOT = -8923456789012345670
              DISPLAY "Test 43c NEGATIVE " FELD6b.
           IF FELD6b  = 8923456789012345670
              DISPLAY "Test 43c2 NEGATIVE " FELD6b.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3642: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:3642"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3642"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3643: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:3643"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3643"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_571
#AT_START_572
at_fn_group_banner 572 'run_fundamental.at:3648' \
  "Numeric operations (4) BINARY" "                  " 4
at_xfail=no
(
  $as_echo "572. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FIELD        PIC S9(1)V9(1) COMP.
       01  FELD2        PIC S9(5)V9(5) COMP.
       01  FELD3        PIC 9(1)V9(1)  COMP.
       01  FELD4        PIC S9(1)      COMP.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           MOVE 0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  1 " FIELD.

           MOVE 0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  2 " FIELD.

           MOVE -0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  3 " FIELD.

           MOVE -0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  4 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  5 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  6 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  7 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  8 " FIELD.

           MOVE 0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test  9 " FELD2.

           MOVE 0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 10 " FELD2.

           MOVE -0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 11 " FELD2.

           MOVE -0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 12 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 13 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test 14 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 15 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 16 " FELD2.

           MOVE 0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 17 " FELD3.

           MOVE 0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 18 " FELD3.

           MOVE -0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 19 " FELD3.

           MOVE -0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 20 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 21 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 22 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 23 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 24 " FELD3.

           MOVE 2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 25 " FELD4.

           MOVE 2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 26 " FELD4.

           MOVE -2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 27 " FELD4.

           MOVE -2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 28 " FELD4.

           MOVE 2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 29 " FELD4.

           MOVE 2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 30 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 31 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 32 " FELD4.

           MOVE 1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 33 " FELD4.

           MOVE 1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 34 " FELD4.

           MOVE -1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 35 " FELD4.

           MOVE -1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 36 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 37 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 38 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 39 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 40 " FELD4.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3877: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:3877"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3877"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:3878: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:3878"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:3878"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_572
#AT_START_573
at_fn_group_banner 573 'run_fundamental.at:3883' \
  "Numeric operations (5) COMP-5" "                  " 4
at_xfail=no
(
  $as_echo "573. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FIELD        PIC S9(1)V9(1) COMP-5.
       01  FELD2        PIC S9(5)V9(5) COMP-5.
       01  FELD3        PIC 9(1)V9(1)  COMP-5.
       01  FELD4        PIC S9(1)      COMP-5.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           MOVE 0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  1 " FIELD.

           MOVE 0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  2 " FIELD.

           MOVE -0.2 TO FIELD
           ADD 1 TO FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  3 " FIELD.

           MOVE -0.2 TO FIELD
           ADD -1 TO FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  4 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -0.8
              DISPLAY "Test  5 " FIELD.

           MOVE 0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 1.2
              DISPLAY "Test  6 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT 1 FROM FIELD
           IF FIELD  NOT = -1.2
              DISPLAY "Test  7 " FIELD.

           MOVE -0.2 TO FIELD
           SUBTRACT -1 FROM FIELD
           IF FIELD  NOT = 0.8
              DISPLAY "Test  8 " FIELD.

           MOVE 0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test  9 " FELD2.

           MOVE 0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 10 " FELD2.

           MOVE -0.2 TO FELD2
           ADD 1 TO FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 11 " FELD2.

           MOVE -0.2 TO FELD2
           ADD -1 TO FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 12 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -0.8
              DISPLAY "Test 13 " FELD2.

           MOVE 0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 1.2
              DISPLAY "Test 14 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT 1 FROM FELD2
           IF FELD2  NOT = -1.2
              DISPLAY "Test 15 " FELD2.

           MOVE -0.2 TO FELD2
           SUBTRACT -1 FROM FELD2
           IF FELD2  NOT = 0.8
              DISPLAY "Test 16 " FELD2.

           MOVE 0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 17 " FELD3.

           MOVE 0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 18 " FELD3.

           MOVE -0.2 TO FELD3
           ADD 1 TO FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 19 " FELD3.

           MOVE -0.2 TO FELD3
           ADD -1 TO FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 20 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 21 " FELD3.

           MOVE 0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 22 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT 1 FROM FELD3
           IF FELD3  NOT = 0.8
              DISPLAY "Test 23 " FELD3.

           MOVE -0.2 TO FELD3
           SUBTRACT -1 FROM FELD3
           IF FELD3  NOT = 1.2
              DISPLAY "Test 24 " FELD3.

           MOVE 2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 25 " FELD4.

           MOVE 2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 26 " FELD4.

           MOVE -2 TO FELD4
           ADD 1 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 27 " FELD4.

           MOVE -2 TO FELD4
           ADD -1 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 28 " FELD4.

           MOVE 2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 29 " FELD4.

           MOVE 2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 30 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT 1 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 31 " FELD4.

           MOVE -2 TO FELD4
           SUBTRACT -1 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 32 " FELD4.

           MOVE 1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 33 " FELD4.

           MOVE 1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 34 " FELD4.

           MOVE -1 TO FELD4
           ADD 2 TO FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 35 " FELD4.

           MOVE -1 TO FELD4
           ADD -2 TO FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 36 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -1
              DISPLAY "Test 37 " FELD4.

           MOVE 1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 3
              DISPLAY "Test 38 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT 2 FROM FELD4
           IF FELD4  NOT = -3
              DISPLAY "Test 39 " FELD4.

           MOVE -1 TO FELD4
           SUBTRACT -2 FROM FELD4
           IF FELD4  NOT = 1
              DISPLAY "Test 40 " FELD4.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4112: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:4112"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4113: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4113"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4113"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_573
#AT_START_574
at_fn_group_banner 574 'run_fundamental.at:4118' \
  "Numeric operations (6)" "                         " 4
at_xfail=no
(
  $as_echo "574. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (char *p)
{
  printf ("%c%c", p[0], p[1]);
  return 0;
}
_ATEOF


cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.

        DATA DIVISION.
        WORKING-STORAGE SECTION.

        01 P-FIELD1 PIC 99PPP.
        01 P-FIELD2 PIC PPP99.

        PROCEDURE DIVISION.

        MOVE 5000 TO P-FIELD1.
        ADD  5 TO P-FIELD1
        IF P-FIELD1 NOT = 5000
            DISPLAY "Error: Add 5 to PIC 99PPP.".
        CALL "dump" USING P-FIELD1.

        ADD  5000 TO P-FIELD1
        IF P-FIELD1 NOT = 10000
            DISPLAY "Error: Add 5000 to PIC 99PPP.".
        CALL "dump" USING P-FIELD1.

        MOVE 0.00055 TO P-FIELD2
        ADD  0.00033 TO P-FIELD2
        IF P-FIELD2 NOT = 0.00088
            DISPLAY "Error: Add 0.00033 to PIC PPP99.".
        CALL "dump" USING P-FIELD2.

        MOVE 0.00055 TO P-FIELD2
        ADD  0.00300 TO P-FIELD2
        IF P-FIELD2 NOT = 0.00055
            DISPLAY "Error: Add 0.00300 to PIC PPP99.".
        CALL "dump" USING P-FIELD2.

        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4171: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "run_fundamental.at:4171"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4171"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4172: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4172"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4172"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4173: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4173"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "05108855" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4173"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_574
#AT_START_575
at_fn_group_banner 575 'run_fundamental.at:4178' \
  "Numeric operations (7)" "                         " 4
at_xfail=no
(
  $as_echo "575. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FIELD         PIC S9(4)V9(2) COMP-5.
       01  FIELD-DISP    PIC S9(4)V9(2) DISPLAY.
       PROCEDURE        DIVISION.
           MOVE 0.2 TO FIELD.
           ADD 1
               2
               3
               4
               5
               6
               7
               8
               9
               10
               11
               12
               13
               14
               15
               16
               17
               18
               19
               20
               21
               22
               23
               24
               25
               26
               27
               28
               29
               30
               31
               32
               33
               34
               35
               36
               37
               38
               39
               40
               41
               42
               43
               44
               45
               46
               47
               48
               49
               50
               51
               52
               53
               54
               55
               56
               57
               58
               59
               60
               61
               62
               63
               64
               65
               66
               67
               68
               69
               70
               71
               72
               73
               74
               75
               76
               77
               78
               79
               80
               81
               82
               83
               84
               85
               86
               87
               88
               89
               90
               91
               92
               93
               94
               95
               96
               97
               98
               99
               100
               101
               102
               103
               104
               105
               106
               107
               108
               109
               110
               111
               112
               113
               114
               115
               116
               117
               118
               119
               120
               121
               122
               123
               124
               125
               126
               127
               128
               129
               TO FIELD
           END-ADD.
           IF FIELD NOT = 8385.2
              MOVE FIELD TO FIELD-DISP
              DISPLAY 'ADD with wrong result: ' FIELD-DISP.

           COMPUTE FIELD = (0.2
                         + 2
                         + 3
                         + 4
                         + 5
                         + 6
                         + 7
                         + 8
                         + 9
                         + 10
                         + 11
                         + 12
                         + 13
                         + 14
                         + 15
                         + 16
                         + 17
                         + 18
                         + 19
                         + 20
                         + 21
                         + 22
                         + 23
                         + 24
                         + 25
                         + 26
                         + 27
                         + 28
                         + 29
                         + 30
                         + 31
                         + 32
                         + 33
                         + 34
                         + 35
                         + 36
                         + 37
                         + 38
                         + 39
                         + 40
                         + 41
                         + 42
                         + 43
                         + 44
                         + 45
                         + 46
                         + 47
                         + 48
                         + 49
                         + 50
                         + 51
                         + 52
                         + 53
                         + 54
                         + 55
                         + 56
                         + 57
                         + 58
                         - 59
                         - 60
                         - 61
                         - 62
                         - 63
                         - 64
                         - 65
                         - 66
                         - 67
                         - 68
                         - 69
                         - 70
                         - 71
                         - 72
                         - 73
                         - 74
                         - 75
                         - 76
                         - 77
                         - 78
                         - 79
                         - 80
                         - 81
                         - 82
                         - 83
                         - 84
                         - 85
                         - 86
                         - 87
                         - 88
                         - 89
                         - 90
                         - 91
                         - 92
                         - 93
                         - 94
                         - 95
                         - 96
                         - 97
                         - 98
                         - 99
                         - 100
                         - 101
                         - 102
                         - 103
                         - 104
                         - 105
                         - 106
                         - 107
                         - 108
                         - 109
                         - 110
                         - 111
                         - 112
                         - 113
                         - 114
                         - 115
                         - 116
                         - 117
                         - 118
                         - 119
                         - 120
                         - 121
                         - 122
                         - 123
                         - 124
                         - 125
                         - 126
                         - 127)
                         * 12800000000
                         / 12900000000
           END-COMPUTE.
           IF FIELD NOT = -4670.31
              MOVE FIELD TO FIELD-DISP
              DISPLAY 'COMPUTE with wrong result: ' FIELD-DISP.

           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4462: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4462"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4462"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4463: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4463"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4463"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_575
#AT_START_576
at_fn_group_banner 576 'run_fundamental.at:4468' \
  "Numeric operations (8)" "                         " 4
at_xfail=no
(
  $as_echo "576. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
          1 COMPUTE-DATA.
           2 COMPUTE-8             PICTURE 999       VALUE ZERO.
       PROCEDURE        DIVISION.
           COMPUTE COMPUTE-8 = (((24.0 + 1) * (60 - 10)) / 125) ** 2
           IF COMPUTE-8 NOT = 100
              DISPLAY 'COMPUTE with wrong result: ' COMPUTE-8
              END-DISPLAY
           END-IF
           COMPUTE COMPUTE-8 = 55 / (1 - 2 + 1)
              NOT ON SIZE ERROR
                 DISPLAY 'SIZE ERROR not set from divide by zero!'
                 END-DISPLAY
           END-COMPUTE
           COMPUTE COMPUTE-8 = 0 ** 1
           IF COMPUTE-8 NOT = 0
              DISPLAY '0 ** 1 <> 0: ' COMPUTE-8
              END-DISPLAY
           END-IF
           COMPUTE COMPUTE-8 = 55 ** 0
           IF COMPUTE-8 NOT = 1
              DISPLAY '55 ** 0 <> 1: ' COMPUTE-8
              END-DISPLAY
           END-IF
           COMPUTE COMPUTE-8 = 1 ** 55
           IF COMPUTE-8 NOT = 1
              DISPLAY '11 ** 55 <> 1: ' COMPUTE-8
              END-DISPLAY
           END-IF

           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4508: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4508"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:14: warning: divide by constant ZERO
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4508"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4511: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4511"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4511"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_576
#AT_START_577
at_fn_group_banner 577 'run_fundamental.at:4518' \
  "ADD CORRESPONDING" "                              " 4
at_xfail=no
(
  $as_echo "577. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GROUP-1.
          05 FIELD-A           PIC 9 VALUE 1.
          05 FIELD-B           USAGE BINARY-CHAR VALUE 2.
          05 INNER-GROUP.
             10 FIELD-C        USAGE FLOAT-SHORT VALUE 3.
          05 FIELD-D           PIC X VALUE "A".
       01 GROUP-2.
          05 FIELD-A           PIC 9.
          05 FIELD-B           USAGE BINARY-LONG.
          05 INNER-GROUP.
             10 FIELD-C        PIC 9.
          05 FIELD-D           PIC 9.

       PROCEDURE DIVISION.
       ADD CORRESPONDING GROUP-1 TO GROUP-2.
       IF FIELD-A IN GROUP-2 NOT EQUAL 1 THEN
           DISPLAY "BAD FIELD-A " FIELD-A IN GROUP-2
           END-DISPLAY
       END-IF.
       IF FIELD-B IN GROUP-2 NOT EQUAL 2 THEN
           DISPLAY "BAD FIELD-B " FIELD-B IN GROUP-2
           END-DISPLAY
       END-IF.
       IF FIELD-C IN GROUP-2 NOT EQUAL 3 THEN
           DISPLAY "BAD FIELD-C " FIELD-C IN GROUP-2
           END-DISPLAY
       END-IF.
       IF FIELD-D IN GROUP-2 NOT EQUAL 0 THEN
           DISPLAY "BAD FIELD-D " FIELD-D IN GROUP-2
           END-DISPLAY
       END-IF.
       STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4560: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4560"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4560"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4561: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4561"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4561"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_577
#AT_START_578
at_fn_group_banner 578 'run_fundamental.at:4566' \
  "ADD CORRESPONDING no match" "                     " 4
at_xfail=no
(
  $as_echo "578. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 GROUP-1.
          05 FIELD-A           PIC X.
          05 FIELD-B           PIC Z9.
          05 INNER-GROUP.
             10 FIELD-C        PIC X.
          05 FIELD-D           PIC 9.
       01 GROUP-2.
          05 FIELD-A           PIC 9 VALUE 1.
          05 FIELD-B           USAGE BINARY-CHAR VALUE 2.
          05 INNER-GROUP.
             10 FIELD-C        USAGE FLOAT-SHORT VALUE 3.
          05 FIELD-D           PIC X VALUE "A".

       PROCEDURE DIVISION.
       SUBTRACT CORRESPONDING GROUP-2 FROM GROUP-1.
       IF FIELD-A IN GROUP-2 NOT EQUAL 1 THEN
           DISPLAY "BAD FIELD-A " FIELD-A IN GROUP-2
           END-DISPLAY
       END-IF.
       IF FIELD-B IN GROUP-2 NOT EQUAL 2 THEN
           DISPLAY "BAD FIELD-B " FIELD-B IN GROUP-2
           END-DISPLAY
       END-IF.
       IF FIELD-C IN GROUP-2 NOT EQUAL 3 THEN
           DISPLAY "BAD FIELD-C " FIELD-C IN GROUP-2
           END-DISPLAY
       END-IF.
       IF FIELD-D IN GROUP-2 NOT EQUAL "A" THEN
           DISPLAY "BAD FIELD-D " FIELD-D IN GROUP-2
           END-DISPLAY
       END-IF.
       STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4608: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4608"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:20: warning: no CORRESPONDING items found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4608"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4611: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4611"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4611"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_578
#AT_START_579
at_fn_group_banner 579 'run_fundamental.at:4616' \
  "SYNC in OCCURS" "                                 " 4
at_xfail=no
(
  $as_echo "579. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01 x.
           03  ptrs                     OCCURS 5 TIMES.
               05  misalign-1           PIC X.
               05  ptr                  POINTER, SYNC.
               05  ptr-num              REDEFINES ptr,
       >>IF P64 SET
                                        USAGE BINARY-DOUBLE UNSIGNED.
       >>ELSE
                                        USAGE BINARY-LONG UNSIGNED.
       >>END-IF
               05  misalign-2           PIC X.

       01  num                          BINARY-LONG.

       PROCEDURE       DIVISION.
           SET ptr (2) TO ADDRESS OF ptr (2)
           SET ptr (3) TO ADDRESS OF ptr (3)

           SUBTRACT ptr-num (2) FROM ptr-num (3) GIVING num
           DISPLAY FUNCTION MOD (num, FUNCTION LENGTH (ptr (1)))
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4648: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4648"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4648"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4649: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4649"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4649"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_579
#AT_START_580
at_fn_group_banner 580 'run_fundamental.at:4656' \
  "88 level with THRU" "                             " 4
at_xfail=no
(
  $as_echo "580. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  VAR-X        PIC X VALUE SPACE.
           88 X         VALUE "X".
           88 T-Y       VALUE "T" THRU "Y".
       01  VAR-9        PIC 9 VALUE ZERO.
           88 V9        VALUE 9.
           88 V2-4      VALUE 2 THRU 4.
       PROCEDURE        DIVISION.
           IF X
               DISPLAY "NOT OK '" VAR-X "' IS X"
               END-DISPLAY
           END-IF
           SET X TO TRUE
           IF NOT X
               DISPLAY "NOT OK '" VAR-X "' IS NOT X"
               END-DISPLAY
           END-IF
           IF NOT T-Y
               DISPLAY "NOT OK '" VAR-X "' IS NOT T-Y"
               END-DISPLAY
           END-IF
           SET T-Y TO TRUE
           IF NOT T-Y
               DISPLAY "NOT OK '" VAR-X "' IS NOT T-Y"
               END-DISPLAY
           END-IF
           MOVE 'Y' TO VAR-X
           IF NOT T-Y
               DISPLAY "NOT OK '" VAR-X "' IS NOT T-Y"
               END-DISPLAY
           END-IF
           MOVE 'Z' TO VAR-X
           IF T-Y
               DISPLAY "NOT OK '" VAR-X "' IS T-Y"
               END-DISPLAY
           END-IF
           MOVE 'A' TO VAR-X
           IF T-Y
               DISPLAY "NOT OK '" VAR-X "' IS T-Y"
               END-DISPLAY
           END-IF
           IF V9
               DISPLAY "NOT OK '" VAR-9 "' IS V9"
               END-DISPLAY
           END-IF
           SET V9 TO TRUE
           IF NOT V9
               DISPLAY "NOT OK '" VAR-9 "' IS NOT V9"
               END-DISPLAY
           END-IF
           SET V2-4 TO TRUE
           IF V9
               DISPLAY "NOT OK '" VAR-9 "' IS V9"
               END-DISPLAY
           END-IF
           IF NOT V2-4
               DISPLAY "NOT OK '" VAR-9 "' IS NOT V2-4"
               END-DISPLAY
           END-IF
           MOVE 3 TO VAR-9
           IF NOT V2-4
               DISPLAY "NOT OK '" VAR-9 "' IS NOT V2-4"
               END-DISPLAY
           END-IF
           MOVE 4 TO VAR-9
           IF NOT V2-4
               DISPLAY "NOT OK '" VAR-9 "' IS NOT V2-4"
               END-DISPLAY
           END-IF
           MOVE 5 TO VAR-9
           IF V2-4
               DISPLAY "NOT OK '" VAR-9 "' IS V2-4"
               END-DISPLAY
           END-IF
           MOVE 1 TO VAR-9
           IF V2-4
               DISPLAY "NOT OK '" VAR-9 "' IS V2-4"
               END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4745: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4745"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4745"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4746: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4746"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4746"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_580
#AT_START_581
at_fn_group_banner 581 'run_fundamental.at:4751' \
  "88 level with FILLER" "                           " 4
at_xfail=no
(
  $as_echo "581. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FILLER       PIC X VALUE SPACE.
           88 X         VALUE "X".
       PROCEDURE        DIVISION.
           IF X
               DISPLAY "NOT OK"
               END-DISPLAY
           END-IF
           SET X TO TRUE.
           IF NOT X
               DISPLAY "NOT OK"
               END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4774: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4774"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4774"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4775: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4775"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4775"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_581
#AT_START_582
at_fn_group_banner 582 'run_fundamental.at:4780' \
  "88 level with FALSE IS clause" "                  " 4
at_xfail=no
(
  $as_echo "582. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYFLD        PIC X(6) VALUE "ABCDEF".
           88  MYFLD88  VALUE "ABCDEF"
               FALSE IS "OKOKOK".
       PROCEDURE        DIVISION.
       ASTART SECTION.
       A01.
           SET MYFLD88 TO FALSE
           IF MYFLD NOT = "OKOKOK"
              DISPLAY MYFLD
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4802: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4802"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4802"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4803: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4803"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4803"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_582
#AT_START_583
at_fn_group_banner 583 'run_fundamental.at:4808' \
  "BLANK WHEN ZERO" "                                " 4
at_xfail=no
(
  $as_echo "583. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  x            PIC 9, BLANK WHEN ZERO, VALUE 1.

       PROCEDURE        DIVISION.
           DISPLAY x
           MOVE 0 TO x
           DISPLAY FUNCTION TRIM(x)
           MOVE ZERO TO x
           DISPLAY FUNCTION TRIM(x)
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4828: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4828"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4828"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4829: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4829"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1


" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4829"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_583
#AT_START_584
at_fn_group_banner 584 'run_fundamental.at:4838' \
  "MULTIPLY BY literal in INITIAL program" "         " 4
at_xfail=no
(
  $as_echo "584. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog INITIAL.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  num          PIC 9(4)    VALUE 5.
       01  result       PIC 9(4).
       01  ws-temp      PIC 9(8)V99.
       01  ws-temp2     PIC 9(3)V99 VALUE 10.50.
       PROCEDURE        DIVISION.
           MULTIPLY num BY 4 GIVING result
           MOVE 1.10          TO WS-TEMP.
           MULTIPLY WS-TEMP2  BY WS-TEMP GIVING WS-TEMP.
      *>
           IF result  NOT = 20    DISPLAY 'Bad integer: ' result.
           IF WS-TEMP NOT = 11.55 DISPLAY 'Bad decimal: ' ws-temp.
      *>
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4861: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4861"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4861"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4862: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4862"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4862"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_584
#AT_START_585
at_fn_group_banner 585 'run_fundamental.at:4867' \
  "DIVIDE complex" "                                 " 4
at_xfail=no
(
  $as_echo "585. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DivideExtent.
       DATA DIVISION.
      *>----------------------------------------------------------------
      *>   Cover the cob_div_quotient c FUNCTION
      *>   and complete all  divide_statement parser rules
      *>----------------------------------------------------------------
       WORKING-STORAGE SECTION.
       01 W01-DIVIDES.
          05  RES-TAB          PIC S9(09) BINARY  OCCURS 3.
      *>
       PROCEDURE DIVISION.
      *>------------------
       TEST-FORMAT-1.
      *>-------------
      *> DIVIDE Format 1 DIVIDE INTO
      *> case 1 : should not size error
           MOVE 100 TO RES-TAB(1).
           MOVE 200 TO RES-TAB(2).
           MOVE 300 TO RES-TAB(3).
           DIVIDE 100 INTO
                      RES-TAB(1)
                      RES-TAB(2)
                      RES-TAB(3)
                ON SIZE ERROR
                    DISPLAY '1: Should not raised size error'
           END-DIVIDE.
           IF    RES-TAB(1)  NOT = 1
              OR RES-TAB(2)  NOT = 2
              OR RES-TAB(3)  NOT = 3
              DISPLAY 'F1.1: result <' RES-TAB(1) '> <' RES-TAB(2) '> <'
                                    RES-TAB(3) '> should be 1 2 3'.
      *> case 2 : should  size error
           MOVE 0    TO RES-TAB(1).
           MOVE 100  TO RES-TAB(2).
           MOVE 200  TO RES-TAB(3).
           DIVIDE RES-TAB(1) INTO
                      RES-TAB(2)
                      RES-TAB(3)
                 NOT ON SIZE ERROR
                    DISPLAY 'F1.2: Should raise size error'
           END-DIVIDE.
           IF    RES-TAB(1)  NOT = 0
              OR RES-TAB(2)  NOT = 100
              OR RES-TAB(3)  NOT = 200
              DISPLAY 'F1.2: result <' RES-TAB(1) '> <' RES-TAB(2) '> <'
                                     RES-TAB(3) '> should be 0 100 200'.
      *> case 3 : not rounded
           MOVE   100 TO RES-TAB(1).
           DIVIDE 2.19 INTO  RES-TAB(1)
                ON SIZE ERROR
                    DISPLAY 'F1.3: Should not raise size error'
           END-DIVIDE.
           IF RES-TAB(1) NOT = 45
              DISPLAY 'F1.3: result <' RES-TAB(1)  '> should be 45'.
      *> case 4 : rounded
           MOVE   100 TO RES-TAB(1).
           DIVIDE 2.19 INTO  RES-TAB(1) ROUNDED
                ON SIZE ERROR
                    DISPLAY 'F1.4: Should not raise size error'
           END-DIVIDE.
      *
           IF RES-TAB(1) NOT = 46
              DISPLAY 'F1.4: result <' RES-TAB(1)  '> should be 46'.
      *>
       TEST-FORMAT-2.
      *>-------------
      *> DIVIDE Format 2:
      *> DIVIDE STATEMENT WITH INTO AND GIVING PHRASE
           DIVIDE 10.2 INTO 100 GIVING RES-TAB(1)
                ON SIZE ERROR
                        DISPLAY 'F2.1: Should not raised size error'
           END-DIVIDE.
           IF RES-TAB(1) NOT = 9
              DISPLAY 'F2.1: result <' RES-TAB(1)  '> should be 9'.
           DIVIDE 10.5 INTO 100 GIVING RES-TAB(1) ROUNDED
                ON SIZE ERROR
                        DISPLAY 'F2.2: Should not raise size error'
           END-DIVIDE.
           IF RES-TAB(1) NOT = 10
              DISPLAY 'F2.2: result <' RES-TAB(1)  '> should be 10'.
           DIVIDE 10.6 INTO 100 GIVING RES-TAB(1) ROUNDED
                ON SIZE ERROR
                        DISPLAY 'F2.3: Should not raise size error'
           END-DIVIDE.
           IF RES-TAB(1) NOT = 9
              DISPLAY 'F2.3: result <' RES-TAB(1)  '> should be 9'.
      *>
       TEST-FORMAT-4.
      *>-------------
      *> DIVIDE Format 4:
      *> DIVIDE STATEMENT WITH INTO AND REMAINDER PHRASE
           DIVIDE 2 INTO 100 GIVING RES-TAB(1) REMAINDER RES-TAB(2).
           IF RES-TAB(1) NOT = 50 OR RES-TAB(2) NOT = 0
              DISPLAY 'F4.1: result <' RES-TAB(1) '> <' RES-TAB(2)
                        '> should be <50> <0>'.
           DIVIDE 3 INTO 100 GIVING RES-TAB(1) REMAINDER RES-TAB(2).
           IF RES-TAB(1) NOT = 33 OR RES-TAB(2) NOT = 1
              DISPLAY 'F4.1: result <' RES-TAB(1) '> <' RES-TAB(2)
                        '> should be <33> <1>'.
           MOVE 0 TO RES-TAB(1) RES-TAB(2) RES-TAB(3).
           DIVIDE RES-TAB(1) INTO 100
                  GIVING RES-TAB(2)
                  REMAINDER RES-TAB(3)
                NOT ON SIZE ERROR
                    DISPLAY 'F4.3: Should  raised size error'
           END-DIVIDE.
      *>
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4982: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:4982"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4982"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:4983: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:4983"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:4983"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_585
#AT_START_586
at_fn_group_banner 586 'run_fundamental.at:4988' \
  "COMPUTE with decimal constants" "                 " 4
at_xfail=no
(
  $as_echo "586. $at_setup_line: testing $at_desc ..."
  $at_traceon



# see bug #798, GC 2.2 may change the precision of decimal contants

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  CNT                    PIC  99     VALUE ZERO.
       77  CALCER                 PIC s99v99.
       01  DUMMY-RES              PIC  99.
      *>
       PROCEDURE DIVISION.
      *>  variable setting postponed here to work around "easy"
      *>  optimization to constant
           MOVE 3.5 TO CALCER
           PERFORM 42 TIMES
             ADD   1 TO CNT
    >>D      DISPLAY CNT
      *> directly returns:
      *>    COMPUTE DUMMY-RES = 2 * (CALCER + 2) + 2
      *> performs "felt as forever":
             COMPUTE DUMMY-RES = (CALCER + 2) * 2 + 2
           END-PERFORM

           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5018: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5018"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5018"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5019: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5019"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5019"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_586
#AT_START_587
at_fn_group_banner 587 'run_fundamental.at:5024' \
  "debugging lines (not active)" "                   " 4
at_xfail=no
(
  $as_echo "587. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY.
      D    DISPLAY "KO" NO ADVANCING
      D    END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5040: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5040"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5040"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5041: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5041"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5041"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_587
#AT_START_588
at_fn_group_banner 588 'run_fundamental.at:5047' \
  "debugging lines (-fdebugging-line)" "             " 4
at_xfail=no
(
  $as_echo "588. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY.
      D    DISPLAY "KO" NO ADVANCING
      D    END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5063: \$COMPILE -fdebugging-line prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdebugging-line prog.cob" "run_fundamental.at:5063"
( $at_check_trace; $COMPILE -fdebugging-line prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5063"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5064: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5064"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKKO" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5064"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_588
#AT_START_589
at_fn_group_banner 589 'run_fundamental.at:5070' \
  "debugging lines (WITH DEBUGGING MODE)" "          " 4
at_xfail=no
(
  $as_echo "589. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
      D    DISPLAY "KO" NO ADVANCING UPON STDOUT
      D    END-DISPLAY.
           DISPLAY "OK" NO ADVANCING UPON STDOUT
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5089: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5089"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5089"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5090: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5090"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "KOOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5090"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_589
#AT_START_590
at_fn_group_banner 590 'run_fundamental.at:5096' \
  "debugging lines, free format (not active)" "      " 4
at_xfail=no
(
  $as_echo "590. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY.
      >>D    DISPLAY "KO" NO ADVANCING
      >>D    END-DISPLAY.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5112: \$COMPILE -free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -free prog.cob" "run_fundamental.at:5112"
( $at_check_trace; $COMPILE -free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5113: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5113"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5113"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_590
#AT_START_591
at_fn_group_banner 591 'run_fundamental.at:5119' \
  "debugging lines, free format (-fdebugging-line)" "" 4
at_xfail=no
(
  $as_echo "591. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY.
      >>D    DISPLAY "KO" NO ADVANCING
      >>D    END-DISPLAY.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5135: \$COMPILE -free -fdebugging-line prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -free -fdebugging-line prog.cob" "run_fundamental.at:5135"
( $at_check_trace; $COMPILE -free -fdebugging-line prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5135"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5136: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5136"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKKO" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5136"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_591
#AT_START_592
at_fn_group_banner 592 'run_fundamental.at:5142' \
  "USE FOR DEBUGGING (no DEBUGGING MODE)" "          " 4
at_xfail=no
(
  $as_echo "592. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION. USE FOR DEBUGGING ON ALL PROCEDURES.
           DISPLAY DEBUG-ITEM END-DISPLAY.
       END DECLARATIVES.
       FIRST-PAR.
           DISPLAY "OK1" END-DISPLAY.
           GO TO SECOND-PAR.
       SECOND-PAR.
           DISPLAY "OK2" END-DISPLAY.
       THIRD-PAR.
           DISPLAY "OK3" END-DISPLAY.
           PERFORM FIRST-PAR THRU SECOND-PAR.
           DISPLAY "OK4" END-DISPLAY.
           PERFORM SECOND-PAR.
           DISPLAY "OK5" END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5172: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5172"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5172"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5173: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5173"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK1
OK2
OK3
OK1
OK2
OK4
OK2
OK5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5173"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_592
#AT_START_593
at_fn_group_banner 593 'run_fundamental.at:5187' \
  "USE FOR DEBUGGING (COB_SET_DEBUG deactivated)" "  " 4
at_xfail=no
(
  $as_echo "593. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION. USE FOR DEBUGGING ON ALL PROCEDURES.
           DISPLAY DEBUG-ITEM END-DISPLAY.
       END DECLARATIVES.
       FIRST-PAR.
           DISPLAY "OK1" END-DISPLAY.
           GO TO SECOND-PAR.
       SECOND-PAR.
           DISPLAY "OK2" END-DISPLAY.
       THIRD-PAR.
           DISPLAY "OK3" END-DISPLAY.
           PERFORM FIRST-PAR THRU SECOND-PAR.
           DISPLAY "OK4" END-DISPLAY.
           PERFORM SECOND-PAR.
           DISPLAY "OK5" END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5217: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5217"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5217"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5218: COB_SET_DEBUG=0 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=0 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5218"
( $at_check_trace; COB_SET_DEBUG=0 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK1
OK2
OK3
OK1
OK2
OK4
OK2
OK5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5218"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_593
#AT_START_594
at_fn_group_banner 594 'run_fundamental.at:5232' \
  "USE FOR DEBUGGING ON ALL PROCEDURES" "            " 4
at_xfail=no
(
  $as_echo "594. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION. USE FOR DEBUGGING ON ALL PROCEDURES.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       FIRST-PAR.
           DISPLAY "OK1" END-DISPLAY.
           GO TO SECOND-PAR.
       SECOND-PAR.
           DISPLAY "OK2" END-DISPLAY.
       THIRD-PAR.
           DISPLAY "OK3" END-DISPLAY.
           PERFORM FIRST-PAR THRU SECOND-PAR.
           DISPLAY "OK4" END-DISPLAY.
           PERFORM SECOND-PAR.
           DISPLAY "OK5" END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5262: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5262"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5262"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5263: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5263"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "       FIRST-PAR                                        START PROGRAM                 |
OK1
    16 SECOND-PAR                                                                     |
OK2
    18 THIRD-PAR                                        FALL THROUGH                  |
OK3
    21 FIRST-PAR                                        PERFORM LOOP                  |
OK1
    16 SECOND-PAR                                                                     |
OK2
OK4
    23 SECOND-PAR                                       PERFORM LOOP                  |
OK2
OK5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5263"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_594
#AT_START_595
at_fn_group_banner 595 'run_fundamental.at:5283' \
  "USE FOR DEBUGGING ON procedure" "                 " 4
at_xfail=no
(
  $as_echo "595. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION. USE FOR DEBUGGING ON SECOND-PAR.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       FIRST-PAR.
           DISPLAY "OK1" END-DISPLAY.
           GO TO SECOND-PAR.
       SECOND-PAR.
           DISPLAY "OK2" END-DISPLAY.
       THIRD-PAR.
           DISPLAY "OK3" END-DISPLAY.
           PERFORM FIRST-PAR THRU SECOND-PAR.
           DISPLAY "OK4" END-DISPLAY.
           PERFORM SECOND-PAR.
           DISPLAY "OK5" END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5313: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5313"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5313"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5314: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5314"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK1
    16 SECOND-PAR                                                                     |
OK2
OK3
OK1
    16 SECOND-PAR                                                                     |
OK2
OK4
    23 SECOND-PAR                                       PERFORM LOOP                  |
OK2
OK5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5314"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_595
#AT_START_596
at_fn_group_banner 596 'run_fundamental.at:5331' \
  "USE FOR DEBUGGING (COB_SET_DEBUG switched)" "     " 4
at_xfail=no
(
  $as_echo "596. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION. USE FOR DEBUGGING ON ALL PROCEDURES.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       FIRST-PAR.
           SET ENVIRONMENT "COB_SET_DEBUG" TO "false"
           DISPLAY "OK1" END-DISPLAY.
           GO TO SECOND-PAR.
       SECOND-PAR.
           DISPLAY "OK2" END-DISPLAY.
       THIRD-PAR.
           DISPLAY "OK3" END-DISPLAY.
           PERFORM FIRST-PAR THRU SECOND-PAR.
           DISPLAY "OK4" END-DISPLAY.
           SET ENVIRONMENT "COB_SET_DEBUG" TO "Y"
           PERFORM SECOND-PAR.
           DISPLAY "OK5" END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5363: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5363"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5363"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5364: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5364"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "       FIRST-PAR                                        START PROGRAM                 |
OK1
OK2
OK3
OK1
OK2
OK4
    25 SECOND-PAR                                       PERFORM LOOP                  |
OK2
OK5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5364"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_596
#AT_START_597
at_fn_group_banner 597 'run_fundamental.at:5380' \
  "USE FOR DEBUGGING ON [ALL] REFERENCES OF field" " " 4
at_xfail=no
(
  $as_echo "597. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MY-DATA-FIELDS.
           02  MY-DATA-FIELD-1  PIC 9 VALUE 1.
           02  MDF.
             03 MDF-TOO-LONG-NAMES.
               05  MY-DATA-FIELD-2  PIC 9 VALUE 4.
               05  MY-DATA-FIELD-3  REDEFINES MY-DATA-FIELD-2 PIC X.
       01  MY-DATA-FIELD-B  PIC X(40) VALUE "ABCD".
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF MY-DATA-FIELD-1
                                ALL               MY-DATA-FIELD-2
                                MY-DATA-FIELD-3 MY-DATA-FIELD-B.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       INIT-PAR.
           MOVE 6 TO MY-DATA-FIELD-2.
       FIRST-PAR.
           PERFORM VARYING MY-DATA-FIELD-1 FROM 1 BY 1
                   UNTIL   MY-DATA-FIELD-1 > MY-DATA-FIELD-2
              *> empty by design
           END-PERFORM.
       END-PAR.
           MOVE "99" TO MY-DATA-FIELD-B.
           MOVE MY-DATA-FIELD-B TO MY-DATA-FIELDS.
           MOVE "X"  TO MY-DATA-FIELD-3
                     OF MDF
                     OF MY-DATA-FIELDS.
           MOVE "-"  TO MY-DATA-FIELD-3
                     OF MDF-TOO-LONG-NAMES
                     OF MDF
                     OF MY-DATA-FIELDS.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5426: \$COMPILE -fmissing-statement=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fmissing-statement=ok prog.cob" "run_fundamental.at:5426"
( $at_check_trace; $COMPILE -fmissing-statement=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5426"
$at_failed && at_fn_log_failure
$at_traceon; }

# TODO: validate against other compilers, especially the line 30;
#       likely the second line should be 25 instead of 24:
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5429: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5429"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "    25 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  1                                       |
    27 MY-DATA-FIELD-1                                  1                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  2                                       |
    27 MY-DATA-FIELD-1                                  2                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  3                                       |
    27 MY-DATA-FIELD-1                                  3                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  4                                       |
    27 MY-DATA-FIELD-1                                  4                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  5                                       |
    27 MY-DATA-FIELD-1                                  5                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  6                                       |
    27 MY-DATA-FIELD-1                                  6                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    27 MY-DATA-FIELD-1                                  7                                       |
    27 MY-DATA-FIELD-1                                  7                                       |
    27 MY-DATA-FIELD-2                                  6                                       |
    32 MY-DATA-FIELD-B                                  99                                      |
    34 MY-DATA-FIELD-3 OF MDF OF MY-D                   X                                       |
    37 MY-DATA-FIELD-3 OF MDF-TOO-LON                   -                                       |
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5429"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_597
#AT_START_598
at_fn_group_banner 598 'run_fundamental.at:5460' \
  "USE FOR DEBUGGING, reference within DEBUGGING" "  " 4
at_xfail=no
(
  $as_echo "598. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  DATA-FIELD   PIC X(40) VALUE "ABCD".
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF DATA-FIELD.
           DISPLAY DEBUG-ITEM "|".
           MOVE "ABCD" TO DATA-FIELD.
           DISPLAY DEBUG-ITEM "|".
       END DECLARATIVES.
       SOME-PAR.
           MOVE QUOTE TO DATA-FIELD.
           IF DATA-FIELD = QUOTE DISPLAY "NO DEBUG" STOP RUN.
           DISPLAY "DEBUG".
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5486: \$COMPILE -Wno-terminator prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-terminator prog.cob" "run_fundamental.at:5486"
( $at_check_trace; $COMPILE -Wno-terminator prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5486"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5487: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5487"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "    19 DATA-FIELD                                       \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"|
    19 DATA-FIELD                                       \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"|
    20 DATA-FIELD                                       ABCD                                    |
    20 DATA-FIELD                                       ABCD                                    |
DEBUG
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5487"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5494: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5494"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "NO DEBUG
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5494"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_598
#AT_START_599
at_fn_group_banner 599 'run_fundamental.at:5501' \
  "USE FOR DEBUGGING, time of execution" "           " 4
at_xfail=yes
(
  $as_echo "599. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: the debugging procedure is executed after the statement,
#        which is generally fine, but not for "nested" statements
#        where DEBUG-ITEM contains wrong data and the
#        debugging procedure is called too late


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  DATA-FIELD   PIC X(40) VALUE "ABCD".
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF DATA-FIELD.
           DISPLAY DEBUG-ITEM "|".
           MOVE "ABCD" TO DATA-FIELD.
       END DECLARATIVES.
       SOME-PAR.
           MOVE QUOTE TO DATA-FIELD.
           IF DATA-FIELD = QUOTE
              DISPLAY "NO DEBUG"
           ELSE
              DISPLAY "DEBUG"
              MOVE SPACES TO DATA-FIELD
              CALL "NOTHERE" USING DATA-FIELD
                 ON OVERFLOW
                    DISPLAY "THIS IS FINE".
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5538: \$COMPILE -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w prog.cob" "run_fundamental.at:5538"
( $at_check_trace; $COMPILE -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5538"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5539: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5539"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "    18 DATA-FIELD                                       \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"|
    19 DATA-FIELD                                       ABCD                                    |
DEBUG
    23 DATA-FIELD                                                                               |
    24 DATA-FIELD                                       ABCD                                    |
THIS IS FINE
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5539"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_599
#AT_START_600
at_fn_group_banner 600 'run_fundamental.at:5551' \
  "USE FOR DEBUGGING, reference with OCCURS" "       " 4
at_xfail=no
(
  $as_echo "600. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FILLER.
           02 FILLER    OCCURS 10.
              03 FILLER    OCCURS 5.
                 04 DATA-FIELD   PIC X(40) VALUE "ABCD" OCCURS 2.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION.
           USE FOR DEBUGGING ON ALL REFERENCES OF DATA-FIELD.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       SOME-PAR.
           MOVE QUOTE TO DATA-FIELD (4, 2, 1).
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5576: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5576"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5576"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5577: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5577"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "    20 DATA-FIELD                     +0004 +0002 +0001 \"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"\"|
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5577"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_600
#AT_START_601
at_fn_group_banner 601 'run_fundamental.at:5584' \
  "USE FOR DEBUGGING, referencing BASED item" "      " 4
at_xfail=no
(
  $as_echo "601. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  DATA-FIELD   PIC X(40) VALUE "ABCD" BASED.
       77  PTR          USAGE POINTER VALUE NULL.
       01  DATA-FIELD3  PIC X(13) VALUE "42"   BASED.
       LINKAGE SECTION.
       01  DATA-FIELD2  PIC X(10) VALUE "DEF".
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION.
           USE FOR DEBUGGING  ON ALL REFERENCES OF DATA-FIELD
                                 ALL REFERENCES OF DATA-FIELD2
                                 DATA-FIELD3.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       SOME-PAR.
           ALLOCATE -20 CHARACTERS RETURNING PTR
           SET ADDRESS OF DATA-FIELD TO PTR   *> first expected output -> is NULL
           ALLOCATE DATA-FIELD INITIALIZED    *> output with data as specified
           FREE DATA-FIELD                    *> No data any more
           ALLOCATE DATA-FIELD2 INITIALIZED   *> DO-CHECK MF extension - otherwise identical
           SET PTR TO ADDRESS OF DATA-FIELD2
           FREE PTR
           SET ADDRESS OF DATA-FIELD2 TO NULL
           ALLOCATE DATA-FIELD3 INITIALIZED
           SET PTR TO ADDRESS OF DATA-FIELD3  *> only read, no output expected
           FREE DATA-FIELD3
           STOP RUN.
_ATEOF

# relaxed syntax is needed as the standard allows only to ALLOCATE BASED items
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5623: \$COMPILE -frelax-syntax-checks prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -frelax-syntax-checks prog.cob" "run_fundamental.at:5623"
( $at_check_trace; $COMPILE -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5623"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5624: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:5624"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5624"
$at_failed && at_fn_log_failure
$at_traceon; }
  # not active -> no displays
{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5625: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5625"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "    24 DATA-FIELD                                       <NULL>                                  |
    25 DATA-FIELD                                       ABCD                                    |
    26 DATA-FIELD                                       <NULL>                                  |
    27 DATA-FIELD2                                      DEF                                     |
    28 DATA-FIELD2                                      DEF                                     |
    30 DATA-FIELD2                                      <NULL>                                  |
    31 DATA-FIELD3                                      42                                      |
    33 DATA-FIELD3                                      <NULL>                                  |
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5625"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_601
#AT_START_602
at_fn_group_banner 602 'run_fundamental.at:5639' \
  "USE FOR DEBUGGING file" "                         " 4
at_xfail=no
(
  $as_echo "602. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           SOURCE-COMPUTER. mine WITH DEBUGGING MODE.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "./TEST-FILE".
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC     PIC X(40).
       PROCEDURE        DIVISION.
       DECLARATIVES.
       TEST-DEBUG SECTION.
           USE FOR DEBUGGING ON TEST-FILE.
           DISPLAY DEBUG-ITEM "|" END-DISPLAY.
       END DECLARATIVES.
       SOME-PAR.
           OPEN  OUTPUT TEST-FILE.
           WRITE TEST-REC FROM "DEF".
           CLOSE TEST-FILE.
           OPEN  INPUT TEST-FILE.
           READ TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5670: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:5670"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5670"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:5671: COB_SET_DEBUG=1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog" "run_fundamental.at:5671"
( $at_check_trace; COB_SET_DEBUG=1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "    21 TEST-FILE                                                                                |
    23 TEST-FILE                                                                                |
    24 TEST-FILE                                                                                |
    25 TEST-FILE                                        DEF                                     |
    26 TEST-FILE                                                                                |
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:5671"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_602
#AT_START_603
at_fn_group_banner 603 'run_fundamental.at:5682' \
  "Simple Expressions with figurative constants" "   " 4
at_xfail=no
(
  $as_echo "603. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
      ******************************************************************
       WORKING-STORAGE SECTION.
       01  FLDX     PIC X        VALUE 'X'.
       01  FLDXX    PIC XX       VALUE SPACES.
       01  FLDX50   PIC X(50)    VALUE 'X50'.
       01  FLDX500  PIC X(500)   VALUE 'X500'.
       01  FLDX32K  PIC X(32000) VALUE 'X'.
       01  FLD1     PIC X        VALUE '1'.
       01  FLD1X    PIC X(32000) VALUE '1'.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE DIVISION.
       MAIN-LINE.

      *>   Test with DISPLAY on error
           PERFORM DO-CHECK
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *>   minimal side-test for performance comparisons
           PERFORM DO-CHECK 20000 TIMES
       >> END-IF
           GOBACK.

       DO-CHECK.
      *> check with 1 byte, comparison algorithm is a direct comparison
           IF FLDX       >  SPACE      CONTINUE
           ELSE                        DISPLAY '! "X" > SPACE'.
           IF FLDX       <  SPACE      DISPLAY '  "X" < SPACE!'.
           IF FLDX       >= SPACE      CONTINUE
           ELSE                        DISPLAY '! "X" >= SPACE'.
           IF FLDX       <= SPACE      DISPLAY '  "X" <= SPACE!'.

           IF SPACE      <  FLDX       CONTINUE
           ELSE                        DISPLAY '! SPACE < "X"'.
           IF SPACE      >  FLDX       DISPLAY '  SPACE > "X"!'.
           IF SPACE      <= FLDX       CONTINUE
           ELSE                        DISPLAY '! SPACE <= "X"'.
           IF SPACE      >= FLDX       DISPLAY '  SPACE >= "X"!'.

           IF FLDX       >  " "        CONTINUE
           ELSE                        DISPLAY '! "X" > " "'.
           IF FLDX       <  " "        DISPLAY '  "X" < " "!'.
           IF FLDX       >= " "        CONTINUE
           ELSE                        DISPLAY '! "X" >= " "'.
           IF FLDX       <= " "        DISPLAY '  "X" <= " "!'.

           IF " "        <  FLDX       CONTINUE
           ELSE                        DISPLAY '! " " < "X"'.
           IF " "        >  FLDX       DISPLAY '  " " > "X"!'.
           IF " "        <= FLDX       CONTINUE
           ELSE                        DISPLAY '! " " <= "X"'.
           IF " "        >= FLDX       DISPLAY '  " " >= "X"!'.


           IF FLDX       >  LOW-VALUE  CONTINUE
           ELSE                        DISPLAY '! "X" > LOW-VALUE'.
           IF FLDX       <  LOW-VALUE  DISPLAY '  "X" < LOW-VALUE!'.
           IF FLDX       >= LOW-VALUE  CONTINUE
           ELSE                        DISPLAY '! "X" >= LOW-VALUE'.
           IF FLDX       <= LOW-VALUE  DISPLAY '  "X" <= LOW-VALUE!'.

           IF LOW-VALUE  <  FLDX       CONTINUE
           ELSE                        DISPLAY '! LOW-VALUE < "X"'.
           IF LOW-VALUE  >  FLDX       DISPLAY '  LOW-VALUE > "X"!'.
           IF LOW-VALUE  <= FLDX       CONTINUE
           ELSE                        DISPLAY '! LOW-VALUE <= "X"'.
           IF LOW-VALUE  >= FLDX       DISPLAY '  LOW-VALUE >= "X"!'.

           IF FLDX       >  x"00"      CONTINUE
           ELSE                        DISPLAY '! "X" > x"00"'.
           IF FLDX       <  x"00"      DISPLAY '  "X" < x"00"!'.
           IF FLDX       >= x"00"      CONTINUE
           ELSE                        DISPLAY '! "X" >= x"00"'.
           IF FLDX       <= x"00"      DISPLAY '  "X" <= x"00"!'.

           IF x"00"      <  FLDX       CONTINUE
           ELSE                        DISPLAY '! x"00" < "X"'.
           IF x"00"      >  FLDX       DISPLAY '  x"00" > "X"!'.
           IF x"00"      <= FLDX       CONTINUE
           ELSE                        DISPLAY '! x"00" <= "X"'.
           IF x"00"      >= FLDX       DISPLAY '  x"00" >= "X"!'.


           IF FLDX       <  HIGH-VALUE CONTINUE
           ELSE                        DISPLAY '! "X" < HIGH-VALUE'.
           IF FLDX       >  HIGH-VALUE DISPLAY '  "X" > HIGH-VALUE!'.
           IF FLDX       <= HIGH-VALUE CONTINUE
           ELSE                        DISPLAY '! "X" <= HIGH-VALUE'.
           IF FLDX       >= HIGH-VALUE DISPLAY '  "X" >= HIGH-VALUE!'.

           IF HIGH-VALUE >  FLDX       CONTINUE
           ELSE                        DISPLAY '! HIGH-VALUE > "X"'.
           IF HIGH-VALUE <  FLDX       DISPLAY '  HIGH-VALUE < "X"!'.
           IF HIGH-VALUE >= FLDX       CONTINUE
           ELSE                        DISPLAY '! HIGH-VALUE >= "X"'.
           IF HIGH-VALUE <= FLDX       DISPLAY '  HIGH-VALUE <= "X"!'.

           IF FLDX       <  x"FF"      CONTINUE
           ELSE                        DISPLAY '! "X" < x"FF"'.
           IF FLDX       >  x"FF"      DISPLAY '  "X" > x"FF"!'.
           IF FLDX       <= x"FF"      CONTINUE
           ELSE                        DISPLAY '! "X" <= x"FF"'.
           IF FLDX       >= x"FF"      DISPLAY '  "X" >= x"FF"!'.

           IF x"FF"      >  FLDX       CONTINUE
           ELSE                        DISPLAY '! x"FF" > "X"'.
           IF x"FF"      <  FLDX       DISPLAY '  x"FF" < "X"!'.
           IF x"FF"      >= FLDX       CONTINUE
           ELSE                        DISPLAY '! x"FF" >= "X"'.
           IF x"FF"      <= FLDX       DISPLAY '  x"FF" <= "X"!'.


           IF FLD1       >  ZERO       CONTINUE
           ELSE                        DISPLAY '! "1" > ZERO'.
           IF FLD1       <  ZERO       DISPLAY '  "1" < ZERO!'.
           IF FLD1       >= ZERO       CONTINUE
           ELSE                        DISPLAY '! "1" >= ZERO'.
           IF FLD1       <= ZERO       DISPLAY '  "1" <= ZERO!'.

           IF ZERO       <  FLD1       CONTINUE
           ELSE                        DISPLAY '! ZERO < "1"'.
           IF ZERO       >  FLD1       DISPLAY '  ZERO > "1"!'.
           IF ZERO       <= FLD1       CONTINUE
           ELSE                        DISPLAY '! ZERO <= "1"'.
           IF ZERO       >= FLD1       DISPLAY '  ZERO >= "1"!'.

           IF FLD1       >  "0"        CONTINUE
           ELSE                        DISPLAY '! "1" > "0"'.
           IF FLD1       <  "0"        DISPLAY '  "1" < "0"!'.
           IF FLD1       >= "0"        CONTINUE
           ELSE                        DISPLAY '! "1" >= "0"'.
           IF FLD1       <= "0"        DISPLAY '  "1" <= "0"!'.

           IF "0"        <  FLD1       CONTINUE
           ELSE                        DISPLAY '! "0" < "1"'.
           IF "0"        >  FLD1       DISPLAY '  "0" > "1"!'.
           IF "0"        <= FLD1       CONTINUE
           ELSE                        DISPLAY '! "0" <= "1"'.
           IF "0"        >= FLD1       DISPLAY '  "0" >= "1"!'.

      *> check with many bytes, needs another comparison algorithm (function)
           IF FLDX32K    >  SPACE      CONTINUE
           ELSE                        DISPLAY '! "X " > SPACE'.
           IF FLDX32K    <  SPACE      DISPLAY '  "X " < SPACE!'.
           IF FLDX32K    >= SPACE      CONTINUE
           ELSE                        DISPLAY '! "X " >= SPACE'.
           IF FLDX32K    <= SPACE      DISPLAY '  "X " <= SPACE!'.

           IF SPACE      <  FLDX32K    CONTINUE
           ELSE                        DISPLAY '! SPACE < "X "'.
           IF SPACE      >  FLDX32K    DISPLAY '  SPACE > "X "!'.
           IF SPACE      <= FLDX32K    CONTINUE
           ELSE                        DISPLAY '! SPACE <= "X "'.
           IF SPACE      >= FLDX32K    DISPLAY '  SPACE >= "X "!'.

           IF FLDX32K    >  "  "       CONTINUE
           ELSE                        DISPLAY '! "X " > " "'.
           IF FLDX32K    <  "  "       DISPLAY '  "X " < " "!'.
           IF FLDX32K    >= "  "       CONTINUE
           ELSE                        DISPLAY '! "X " >= " "'.
           IF FLDX32K    <= "  "       DISPLAY '  "X " <= " "!'.

           IF "  "       <  FLDX32K    CONTINUE
           ELSE                        DISPLAY '! "  " < "X "'.
           IF "  "       >  FLDX32K    DISPLAY '  "  " > "X "!'.
           IF "  "       <= FLDX32K    CONTINUE
           ELSE                        DISPLAY '! "  " <= "X "'.
           IF "  "       >= FLDX32K    DISPLAY '  "  " >= "X "!'.


           IF FLDX32K    >  LOW-VALUE  CONTINUE
           ELSE                        DISPLAY '! "X" > LOW-VALUE'.
           IF FLDX32K    <  LOW-VALUE  DISPLAY '  "X" < LOW-VALUE!'.
           IF FLDX32K    >= LOW-VALUE  CONTINUE
           ELSE                        DISPLAY '! "X" >= LOW-VALUE'.
           IF FLDX32K    <= LOW-VALUE  DISPLAY '  "X" <= LOW-VALUE!'.

           IF LOW-VALUE  <  FLDX32K    CONTINUE
           ELSE                        DISPLAY '! LOW-VALUE < "X"'.
           IF LOW-VALUE  >  FLDX32K    DISPLAY '  LOW-VALUE > "X"!'.
           IF LOW-VALUE  <= FLDX32K    CONTINUE
           ELSE                        DISPLAY '! LOW-VALUE <= "X"'.
           IF LOW-VALUE  >= FLDX32K    DISPLAY '  LOW-VALUE >= "X"!'.

           IF FLDX32K    >  x"00"      CONTINUE
           ELSE                        DISPLAY '! "X " > x"00"'.
           IF FLDX32K    <  x"00"      DISPLAY '  "X " < x"00"!'.
           IF FLDX32K    >= x"00"      CONTINUE
           ELSE                        DISPLAY '! "X " >= x"00"'.
           IF FLDX32K    <= x"00"      DISPLAY '  "X " <= x"00"!'.

           IF x"00"      <  FLDX32K    CONTINUE
           ELSE                        DISPLAY '! x"00" < "X "'.
           IF x"00"      >  FLDX32K    DISPLAY '  x"00" > "X "!'.
           IF x"00"      <= FLDX32K    CONTINUE
           ELSE                        DISPLAY '! x"00" <= "X "'.
           IF x"00"      >= FLDX32K    DISPLAY '  x"00" >= "X "!'.


           IF FLDX32K    <  HIGH-VALUE CONTINUE
           ELSE                        DISPLAY '! "X " < HIGH-VALUE'.
           IF FLDX32K    >  HIGH-VALUE DISPLAY '  "X " > HIGH-VALUE!'.
           IF FLDX32K    <= HIGH-VALUE CONTINUE
           ELSE                        DISPLAY '! "X " <= HIGH-VALUE'.
           IF FLDX32K    >= HIGH-VALUE DISPLAY '  "X " >= HIGH-VALUE!'.

           IF HIGH-VALUE >  FLDX32K    CONTINUE
           ELSE                        DISPLAY '! HIGH-VALUE > "X "'.
           IF HIGH-VALUE <  FLDX32K    DISPLAY '  HIGH-VALUE < "X "!'.
           IF HIGH-VALUE >= FLDX32K    CONTINUE
           ELSE                        DISPLAY '! HIGH-VALUE >= "X "'.
           IF HIGH-VALUE <= FLDX32K    DISPLAY '  HIGH-VALUE <= "X "!'.

           IF FLDX32K    <  x"FF"      CONTINUE
           ELSE                        DISPLAY '! "X " < x"FF"'.
           IF FLDX32K    >  x"FF"      DISPLAY '  "X " > x"FF"!'.
           IF FLDX32K    <= x"FF"      CONTINUE
           ELSE                        DISPLAY '! "X " <= x"FF"'.
           IF FLDX32K    >= x"FF"      DISPLAY '  "X " >= x"FF"!'.

           IF x"FF"      >  FLDX32K    CONTINUE
           ELSE                        DISPLAY '! x"FF" > "X "'.
           IF x"FF"      <  FLDX32K    DISPLAY '  x"FF" < "X "!'.
           IF x"FF"      >= FLDX32K    CONTINUE
           ELSE                        DISPLAY '! x"FF" >= "X "'.
           IF x"FF"      <= FLDX32K    DISPLAY '  x"FF" <= "X "!'.


           IF FLD1X      >  ZERO       CONTINUE
           ELSE                        DISPLAY '! "1 " > ZERO'.
           IF FLD1X      <  ZERO       DISPLAY '  "1 " < ZERO!'.
           IF FLD1X      >= ZERO       CONTINUE
           ELSE                        DISPLAY '! "1 " >= ZERO'.
           IF FLD1X      <= ZERO       DISPLAY '  "1 " <= ZERO!'.

           IF ZERO       <  FLD1X      CONTINUE
           ELSE                        DISPLAY '! ZERO < "1 "'.
           IF ZERO       >  FLD1X      DISPLAY '  ZERO > "1 "!'.
           IF ZERO       <= FLD1X      CONTINUE
           ELSE                        DISPLAY '! ZERO <= "1 "'.
           IF ZERO       >= FLD1X      DISPLAY '  ZERO >= "1 "!'.

           IF FLD1X      >  "0"        CONTINUE
           ELSE                        DISPLAY '! "1 " > "0"'.
           IF FLD1X      <  "0"        DISPLAY '  "1 " < "0"!'.
           IF FLD1X      >= "0"        CONTINUE
           ELSE                        DISPLAY '! "1 " >= "0"'.
           IF FLD1X      <= "0"        DISPLAY '  "1 " <= "0"!'.

           IF "0"        <  FLD1X      CONTINUE
           ELSE                        DISPLAY '! "0" < "1 "'.
           IF "0"        >  FLD1X      DISPLAY '  "0" > "1 "!'.
           IF "0"        <= FLD1X      CONTINUE
           ELSE                        DISPLAY '! "0" <= "1 "'.
           IF "0"        >= FLD1X      DISPLAY '  "0" >= "1 "!'.

      *> special check for SPACE-optimization and extra spaces
           IF FLDX500    >  SPACE      CONTINUE
           ELSE                        DISPLAY '! "X5" > SPACE'.
           IF FLDX500    <  SPACE      DISPLAY '  "X5" < SPACE!'.
           IF FLDX500    >= SPACE      CONTINUE
           ELSE                        DISPLAY '! "X5" >= SPACE'.
           IF FLDX500    <= SPACE      DISPLAY '  "X5" <= SPACE!'.

           IF SPACE      <  FLDX500    CONTINUE
           ELSE                        DISPLAY '! SPACE < "X5"'.
           IF SPACE      >  FLDX500    DISPLAY '  SPACE > "X5"!'.
           IF SPACE      <= FLDX500    CONTINUE
           ELSE                        DISPLAY '! SPACE <= "X5"'.
           IF SPACE      >= FLDX500    DISPLAY '  SPACE >= "X5"!'.

           MOVE SPACES TO FLDXX
           IF FLDXX      =  "    "     CONTINUE
           ELSE                        DISPLAY '! "XX" <> "     "'.
           MOVE ALL "A" TO FLDXX
           IF FLDXX      =  "AA  "     CONTINUE
           ELSE                        DISPLAY '! "AA" <> "AA  "'.
           IF FLDXX      =  "AAA"      DISPLAY '! "AA" = "AAA "'.
           IF FLDXX      =  ALL "A"    CONTINUE
           ELSE                        DISPLAY '! "AA" <> ALL "A"'.
           MOVE "B" TO FLDXX (2:1)
           IF FLDXX      =  ALL "AB"   CONTINUE
           ELSE                        DISPLAY '! "AB" <> ALL "AB"'.

           IF FLDX      <=  ALL "XX"   CONTINUE
           ELSE                        DISPLAY '! "X" > ALL "XX"'.
           IF ALL "XX" NOT > FLDX      CONTINUE
           ELSE                        DISPLAY '! ALL "XX" <= "X"'.

      *> special check for ZERO-optimization and extra spaces
           MOVE ALL ZERO TO FLDX500 FLDX50
           MOVE "1"      TO FLDX500 (500:1) FLDX50(50:1)
           IF FLDX50     >  ZERO       CONTINUE
           ELSE                        DISPLAY '! "000...01" > ZERO'.
           IF FLDX50     <  ZERO       DISPLAY '  "000...01" < ZERO!'.
           IF FLDX50     >= ZERO       CONTINUE
           ELSE                        DISPLAY '! "000...01" >= ZERO'.
           IF FLDX50     <= ZERO       DISPLAY '  "000...01" <= ZERO!'.

           IF ZERO       <  FLDX50     CONTINUE
           ELSE                        DISPLAY '! ZERO < "000...01"'.
           IF ZERO       >  FLDX50     DISPLAY '  ZERO > "000...01"!'.
           IF ZERO       <= FLDX50     CONTINUE
           ELSE                        DISPLAY '! ZERO <= "000...01"'.
           IF ZERO       >= FLDX50     DISPLAY '  ZERO >= "000...01"!'.

           IF FLDX500    >  ZERO       CONTINUE
           ELSE                        DISPLAY '! "000...01" > ZERO'.
           IF FLDX500    <  ZERO       DISPLAY '  "000...01" < ZERO!'.
           IF FLDX500    >= ZERO       CONTINUE
           ELSE                        DISPLAY '! "000...01" >= ZERO'.
           IF FLDX500    <= ZERO       DISPLAY '  "000...01" <= ZERO!'.

           IF ZERO       <  FLDX500    CONTINUE
           ELSE                        DISPLAY '! ZERO < "000...01"'.
           IF ZERO       >  FLDX500    DISPLAY '  ZERO > "000...01"!'.
           IF ZERO       <= FLDX500    CONTINUE
           ELSE                        DISPLAY '! ZERO <= "000...01"'.
           IF ZERO       >= FLDX500    DISPLAY '  ZERO >= "000...01"!'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6013: \$COMPILE prog.cob -Wno-constant-expression"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -Wno-constant-expression" "run_fundamental.at:6013"
( $at_check_trace; $COMPILE prog.cob -Wno-constant-expression
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6013"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6014: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6014"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6014"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6016: \$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare" "run_fundamental.at:6016"
( $at_check_trace; $COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6016"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6017: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6017"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6017"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6019: \$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding" "run_fundamental.at:6019"
( $at_check_trace; $COMPILE prog.cob -Wno-constant-expression -fno-constant-folding
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6019"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6020: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6020"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6020"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_603
#AT_START_604
at_fn_group_banner 604 'run_fundamental.at:6025' \
  "Expression numeric vs. DISPLAY" "                 " 4
at_xfail=no
(
  $as_echo "604. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
      ******************************************************************
       WORKING-STORAGE SECTION.
       01  FLDX50   PIC X(50)    VALUE 'X50'.
       01  FLDX10J  PIC X(10)    VALUE '0123'.
       01  FLDNUMD  PIC S9(3)    VALUE -123.
       01  FLDNUMD4 PIC S9(4)    VALUE -123.
       01  FLDNUMB  PIC S9v99    VALUE -1.23 USAGE BINARY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE DIVISION.
       MAIN-LINE.

      *>   Test with DISPLAY on error
           PERFORM DO-CHECK
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *>   minimal side-test for performance comparisons
           PERFORM DO-CHECK 20000 TIMES
       >> END-IF
           GOBACK.

       DO-CHECK.
           MOVE "123" TO FLDX50
           IF 123        =  FLDX50     CONTINUE
           ELSE                        DISPLAY '! 123  <> "123"'.
           IF FLDNUMD    =  FLDNUMD4   CONTINUE
           ELSE                        DISPLAY '! 123  <> 0123'.
           IF FLDX50     =  FLDNUMD4   DISPLAY '! "123" = 0123'
           ELSE                        CONTINUE.
           IF FLDNUMD    =  FLDX50     CONTINUE
           ELSE                        DISPLAY '!-123 DISP <> "123"'.
           IF FLDX50     =  FLDNUMB    CONTINUE
           ELSE                        DISPLAY '!-1.23 BIN  <> "123"'.
           IF FLDX10J    =  FLDNUMD4   CONTINUE
           ELSE                        DISPLAY '! "0123" J  <> "0123"'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6072: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6072"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6072"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6073: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6073"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6073"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6075: \$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare" "run_fundamental.at:6075"
( $at_check_trace; $COMPILE prog.cob -Wno-constant-expression -fno-constant-folding -fno-fast-compare
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6075"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_604
#AT_START_605
at_fn_group_banner 605 'run_fundamental.at:6080' \
  "Abbreviated Expressions" "                        " 4
at_xfail=no
(
  $as_echo "605. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           SWITCH-1
           IS WRK-SWITCH-1
           ON STATUS IS ON-WRK-SWITCH-1
           OFF STATUS IS OFF-WRK-SWITCH-1
           SWITCH-2
           IS WRK-SWITCH-2
           OFF STATUS IS OFF-WRK-SWITCH-2.
       DATA DIVISION.
      ******************************************************************
       WORKING-STORAGE SECTION.
      *
       01 FLD9-0   PIC 9 VALUE 0.
       01 FLD9-1   PIC 9 VALUE 1.
       01 FLD9-2   PIC 9 VALUE 2.
       01 FLD9-5   PIC 9 VALUE 5.
       01 FLD9-7   PIC 9 VALUE 7.
       01 FLD9-9   PIC 9 VALUE 9.
       01 FLDX     PIC X VALUE 'X'.
       01 FLDY     PIC X VALUE 'Y'.
       01 FLDYY    PIC X VALUE 'Y'.
       01 FLDZ     PIC X VALUE 'Z'.
       01 TESTNUM  PIC 99 VALUE 1.

       PROCEDURE DIVISION.
       MAIN-LINE.

           IF FLD9-7 > FLD9-5 AND NOT < FLD9-0 OR FLD9-1
                PERFORM PASS ELSE PERFORM FAIL.
           IF FLD9-7 NOT = FLD9-5 OR FLD9-1
                PERFORM PASS ELSE PERFORM FAIL.
           IF FLD9-7 NOT = FLD9-5 AND FLD9-1
                PERFORM PASS ELSE PERFORM FAIL.
           IF NOT FLD9-7 = FLD9-5 OR FLD9-1
                PERFORM PASS ELSE PERFORM FAIL.
           IF NOT (FLD9-5 > FLD9-7 OR < FLD9-1)
                PERFORM PASS ELSE PERFORM FAIL.
           IF NOT (FLD9-7 NOT > FLD9-5 AND FLD9-2 AND NOT FLD9-1)
                PERFORM PASS ELSE PERFORM FAIL.
           IF FLD9-9 > FLD9-2 AND FLD9-7 AND FLD9-5
                PERFORM PASS ELSE PERFORM FAIL.
           IF FLD9-9 > FLD9-2 AND FLD9-7 OR FLD9-5
                PERFORM PASS ELSE PERFORM FAIL.
           IF FLD9-1 < FLD9-2 AND FLD9-5 AND FLD9-7
                PERFORM PASS ELSE PERFORM FAIL.

      * // DISPLAY "***Constant expressions***".
           IF 9 > 2 AND 7 AND 5 AND 1
                PERFORM PASS ELSE PERFORM FAIL.
           IF 1 < 2 AND 5 AND 7 AND 9
                PERFORM PASS ELSE PERFORM FAIL.
           IF 5 < 2 OR 1 OR 9 OR 7
                PERFORM PASS ELSE PERFORM FAIL.
           IF 5 > 1 AND < 3 OR 6
                PERFORM PASS ELSE PERFORM FAIL.

      * // DISPLAY "***Switch expressions***".
           IF           ON-WRK-SWITCH-1
                 OR NOT OFF-WRK-SWITCH-2
                AND     OFF-WRK-SWITCH-1
                PERFORM FAIL ELSE PERFORM PASS.
           DISPLAY "***FINE***" WITH NO ADVANCING.
           STOP RUN.

       PASS.
      * // DISPLAY 'Test ' TESTNUM ' passed'
           ADD 1 TO TESTNUM.

       FAIL.
           DISPLAY 'Test ' TESTNUM ' failed!'
           ADD 1 TO TESTNUM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6161: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6161"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-LINE':
prog.cob:47: warning: suggest parentheses around AND within OR
prog.cob:53: warning: expression '9' GREATER THAN '2' is always TRUE
prog.cob:53: warning: expression '9' GREATER THAN '7' is always TRUE
prog.cob:53: warning: expression '9' GREATER THAN '5' is always TRUE
prog.cob:53: warning: expression '9' GREATER THAN '1' is always TRUE
prog.cob:55: warning: expression '1' LESS THAN '2' is always TRUE
prog.cob:55: warning: expression '1' LESS THAN '5' is always TRUE
prog.cob:55: warning: expression '1' LESS THAN '7' is always TRUE
prog.cob:55: warning: expression '1' LESS THAN '9' is always TRUE
prog.cob:57: warning: expression '5' LESS THAN '2' is always FALSE
prog.cob:57: warning: expression '5' LESS THAN '1' is always FALSE
prog.cob:57: warning: expression '5' LESS THAN '9' is always TRUE
prog.cob:57: warning: expression '5' LESS THAN '7' is always TRUE
prog.cob:59: warning: expression '5' GREATER THAN '1' is always TRUE
prog.cob:59: warning: expression '5' LESS THAN '3' is always FALSE
prog.cob:59: warning: expression '5' LESS THAN '6' is always TRUE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6161"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6181: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6181"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "***FINE***" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6181"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6183: \$COMPILE -fno-constant-folding prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-constant-folding prog.cob" "run_fundamental.at:6183"
( $at_check_trace; $COMPILE -fno-constant-folding prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-LINE':
prog.cob:47: warning: suggest parentheses around AND within OR
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6183"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6187: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6187"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "***FINE***" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6187"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_605
#AT_START_606
at_fn_group_banner 606 'run_fundamental.at:6192' \
  "integer arithmetic on floating-point var" "       " 4
at_xfail=no
(
  $as_echo "606. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           USAGE FLOAT-SHORT VALUE 123.456.

       PROCEDURE       DIVISION.
           ADD 360 TO x
           IF x <> 483.456
               DISPLAY "ADD wrong: " x
               MOVE 483.456 TO x
           END-IF

           SUBTRACT 360 FROM x
           IF x <> 123.456
               DISPLAY "SUBTRACT wrong: " x
               MOVE 123.456 TO x
           END-IF

           DIVIDE 2 INTO x
           IF x <> 61.728
               DISPLAY "DIVIDE wrong: " x
               MOVE 61.728 TO x
           END-IF

           MULTIPLY 2 BY x
           IF x <> 123.456
               DISPLAY "MULTIPLY wrong: " x
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6229: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6229"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6229"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6230: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6230"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6230"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_606
#AT_START_607
at_fn_group_banner 607 'run_fundamental.at:6234' \
  "TYPEDEF application" "                            " 4
at_xfail=no
(
  $as_echo "607. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     caller.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77  INT         IS TYPEDEF BINARY-LONG.
       77  EXT-INT     IS TYPEDEF BINARY-LONG EXTERNAL.
      *> should this be possible?
      *>77  INT-VAL     IS TYPEDEF USAGE INT VALUE 12.
       77  INT-VAL     IS TYPEDEF BINARY-LONG VALUE 12.
       77  SOMEVAR     USAGE INT VALUE 10.
       77  SOMEVAL     USAGE INT-VAL.
       77  SOMEEXT     USAGE EXT-INT.

       PROCEDURE       DIVISION.
           IF SOMEVAR <> 10
              DISPLAY "SOMEVAR (INT) wrong: " SOMEVAR
           END-IF
           IF SOMEVAL <> 12
              DISPLAY "SOMEVAR (INT-VAL) wrong: " SOMEVAL
           END-IF
           MOVE 42 TO SOMEEXT
           CALL "callee"
           .
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     callee.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       77  EXT-INT     IS TYPEDEF BINARY-LONG EXTERNAL.
       77  SOMEEXT     USAGE EXT-INT.

       PROCEDURE       DIVISION.
           IF SOMEEXT <> 42
              DISPLAY "SOMEEXT (EXT-INT) wrong: " SOMEEXT
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6280: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_fundamental.at:6280"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6280"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6281: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_fundamental.at:6281"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6281"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6282: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_fundamental.at:6282"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6282"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_607
#AT_START_608
at_fn_group_banner 608 'run_fundamental.at:6286' \
  "Alphanumeric VALUE longer than PIC" "             " 4
at_xfail=no
(
  $as_echo "608. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-SPACES      PIC XXX VALUE "    ".
       01 X-Xs          PIC XX  VALUE "XXX".
      *> not longer but goes into similar codegen:
       01 X-XXX         PIC XXX VALUE "XX".
       PROCEDURE        DIVISION.
           IF X-SPACES NOT = ALL SPACE
             DISPLAY 'BAD SPACE: ' X-SPACES.
           IF X-Xs NOT = ALL "X"
             DISPLAY 'BAD X: ' X-Xs.
           IF X-XXX NOT = "XX "
             DISPLAY 'BAD XXX: ' X-XXX.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6308: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6308"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: value does not fit the picture string
prog.cob:7: warning: value size exceeds data size
prog.cob:7: note: value size is 3
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6308"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6313: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6313"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6313"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_608
#AT_START_609
at_fn_group_banner 609 'run_fundamental.at:6318' \
  "DISPLAY with P fields" "                          " 4
at_xfail=no
(
  $as_echo "609. $at_setup_line: testing $at_desc ..."
  $at_traceon



# this test verifies that the size is correctly printed, which was buggy
# with "P on the left side of the decimal point", see bug #874
# me make a general DISPLAY with implied digits out of this test
# and also verify no-pretty-printing result to be reasonable

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 P1 PIC  999  value 1.
       01 P2 PIC  9P   value 0.
       01 P3 PIC  V999 value .123.
       01 P4 PIC  VP9  value 0.
       01 P5 PIC  VPP9 value 0.
       01 P6 PIC  9P   value 10.
       PROCEDURE DIVISION.
           display '00=' P2 '; 001=' P1 '; 00=' P2 ';'
           display '.00=' P4 '; .000=' P5 '; .123=' P3 '; '
                   '.00=' P4 '; .000=' P5 ';'
           move P1 to P2
           move P3 to P4, P5
           display '00=' P2 '; .02=' P4 '; .003=' P5 ';'
           display '10=' P6 ';'
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6348: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6348"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6348"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6349: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6349"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00=00; 001=001; 00=00;
.00=.00; .000=.000; .123=.123; .00=.00; .000=.000;
00=00; .02=.02; .003=.003;
10=10;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6349"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6355: \$COMPILE -fno-pretty-display prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-pretty-display prog.cob" "run_fundamental.at:6355"
( $at_check_trace; $COMPILE -fno-pretty-display prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6355"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6356: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6356"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00=0; 001=001; 00=0;
.00=0; .000=0; .123=123; .00=0; .000=0;
00=0; .02=2; .003=3;
10=1;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6356"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >packed.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. packed.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 P1 PIC  999  COMP-3 value 1.
       01 P2 PIC  9P   COMP-3 value 0.
       01 P3 PIC  V999 COMP-3 value .123.
       01 P4 PIC  VP9  COMP-3 value 0.
       01 P5 PIC  VPP9 COMP-3 value 0.
       01 P6 PIC  9P   COMP-3 value 10.
       PROCEDURE DIVISION.
           display '00=' P2 '; 001=' P1 '; 00=' P2 ';'
           display '.00=' P4 '; .000=' P5 '; .123=' P3 '; '
                   '.00=' P4 '; .000=' P5 ';'
           move P1 to P2
           move P3 to P4, P5
           display '00=' P2 '; .02=' P4 '; .003=' P5 ';'
           display '10=' P6 ';'
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6385: \$COMPILE packed.cob"
at_fn_check_prepare_dynamic "$COMPILE packed.cob" "run_fundamental.at:6385"
( $at_check_trace; $COMPILE packed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6385"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6386: \$COBCRUN_DIRECT ./packed"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./packed" "run_fundamental.at:6386"
( $at_check_trace; $COBCRUN_DIRECT ./packed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00=00; 001=001; 00=00;
.00=.00; .000=.000; .123=.123; .00=.00; .000=.000;
00=00; .02=.02; .003=.003;
10=10;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6386"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6393: \$COMPILE -fno-pretty-display packed.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-pretty-display packed.cob" "run_fundamental.at:6393"
( $at_check_trace; $COMPILE -fno-pretty-display packed.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6393"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6394: \$COBCRUN_DIRECT ./packed"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./packed" "run_fundamental.at:6394"
( $at_check_trace; $COBCRUN_DIRECT ./packed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00=0; 001=001; 00=0;
.00=0; .000=0; .123=123; .00=0; .000=0;
00=0; .02=2; .003=3;
10=1;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6394"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_609
#AT_START_610
at_fn_group_banner 610 'run_fundamental.at:6404' \
  "condition IS ZERO AND" "                          " 4
at_xfail=no
(
  $as_echo "610. $at_setup_line: testing $at_desc ..."
  $at_traceon



# for more details see bug #875

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  V            PIC 9 VALUE 0.
       01  W            PIC 9 VALUE 1.
       PROCEDURE        DIVISION.
           IF V IS ZERO
              DISPLAY "V IS ZERO"
           END-IF.
           IF V IS ZERO AND W EQUAL 1
              DISPLAY "V IS ZERO AND W EQUAL 1"
           END-IF.
           IF W EQUAL 1 AND V IS ZERO
              DISPLAY "W EQUAL 1 AND V IS ZERO"
           END-IF.
           IF W IS POSITIVE
              DISPLAY "W IS POSITIVE"
           END-IF.
           IF W IS NEGATIVE
              DISPLAY "W IS NEGATIVE"
           END-IF.
           IF W IS POSITIVE AND V EQUAL 0
              DISPLAY "W IS POSITIVE AND V EQUAL 0"
           END-IF.
           IF V EQUAL 0 AND W IS POSITIVE
              DISPLAY "V EQUAL 0 AND W IS POSITIVE"
           END-IF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6440: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6440"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:21: warning: unsigned 'W' may not be LESS THAN ZERO
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6440"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6444: ./prog"
at_fn_check_prepare_trace "run_fundamental.at:6444"
( $at_check_trace; ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "V IS ZERO
V IS ZERO AND W EQUAL 1
W EQUAL 1 AND V IS ZERO
W IS POSITIVE
W IS POSITIVE AND V EQUAL 0
V EQUAL 0 AND W IS POSITIVE
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6444"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_610
#AT_START_611
at_fn_group_banner 611 'run_fundamental.at:6455' \
  "abbreviated conditions with multiple words operators" "" 4
at_xfail=no
(
  $as_echo "611. $at_setup_line: testing $at_desc ..."
  $at_traceon



# for more details see bug #880

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    CHECKBOOL.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  VAR1                    PIC X(16) VALUE "#0001".
       01  VAR2                    PIC X(16) VALUE "#0002".
       01  VAR3                    PIC X(16) VALUE "#0003".
       01  VAR4                    PIC X(16) VALUE "#0004".
       PROCEDURE DIVISION.
       MAIN-PROGRAM SECTION.
       INIZIO.
           IF VAR1 = (VAR2 AND VAR3 AND VAR4)
              DISPLAY "TRUE 1"
           END-IF
           IF VAR1 NOT = (VAR2 AND VAR3 AND VAR4)
              DISPLAY "TRUE 2"
           END-IF
           IF VAR1 NOT > (VAR2 AND VAR3 AND VAR4)
              DISPLAY "TRUE 3"
           END-IF
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6484: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6484"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6484"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6486: ./prog"
at_fn_check_prepare_trace "run_fundamental.at:6486"
( $at_check_trace; ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "TRUE 2
TRUE 3
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6486"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_611
#AT_START_612
at_fn_group_banner 612 'run_fundamental.at:6493' \
  "abbreviated conditions with multiple words operators" "" 4
at_xfail=no
(
  $as_echo "612. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    CHECKCOND.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  VAR1                    PIC X.
                88 VAR1-K VALUE 'K'
       01  VAR2                    PIC X.
                88 VAR2-K VALUE 'K'

       PROCEDURE DIVISION.
       MAIN-PROGRAM SECTION.
       BUG.
           IF VAR1-K AND NOT = VAR2-K
              DISPLAY "INVALID" UPON STDERR.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6514: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "run_fundamental.at:6514"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: error: syntax error, unexpected Identifier
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_fundamental.at:6514"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_612
#AT_START_613
at_fn_group_banner 613 'run_fundamental.at:6521' \
  "MOVE with JUSTIFIED clause" "                     " 4
at_xfail=no
(
  $as_echo "613. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. JUST00.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       77  ELE                         PIC X(10) JUSTIFIED RIGHT.
       77  SHORT                       PIC X(4)  VALUE 'ABC '.
       77  LONG                        PIC X(16)
               VALUE 'ABCDEFGHIGKLMNOP'.

       PROCEDURE DIVISION.
           MOVE 'ABC '                 TO ELE
           IF ELE NOT EQUAL '      ABC '
               DISPLAY 'MOVE WITH SHORT FIELD JUSTIFIED HAS FAILED: '
               '"' ELE '"'.

           MOVE 'ABCDEFGHIGKLMNOP'     TO ELE
           IF ELE NOT EQUAL 'GHIGKLMNOP'
               DISPLAY 'MOVE WITH LONG FIELD JUSTIFIED HAS FAILED: '
               '"' ELE '"'.

           MOVE SHORT                  TO ELE
           IF ELE NOT EQUAL '      ABC '
               DISPLAY 'MOVE WITH SHORT FIELD JUSTIFIED HAS FAILED: '
               '"' ELE '"'.

           MOVE LONG                   TO ELE
           IF ELE NOT EQUAL 'GHIGKLMNOP'
               DISPLAY 'MOVE WITH LONG FIELD JUSTIFIED HAS FAILED: '
               '"' ELE '"'.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6560: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:6560"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6560"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6561: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6561"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6561"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_613
#AT_START_614
at_fn_group_banner 614 'run_fundamental.at:6566' \
  "MOVE with PICTURE P" "                            " 4
at_xfail=no
(
  $as_echo "614. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. Move_Basic_P_Pic .
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> Basic checking of P Picture
      *>   -check lengt content and move
      *>----------------------------------------------------------------
      *>
       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *>
       01 P-PIC-1       PIC 99P(4)    .
       01 P-PIC-1-9 REDEFINES P-PIC-1  PIC 9(02)  .
       01 FLD-1         PIC 9(06)     .
       01 FLD-1-RES     PIC 9(06)                 .
      *>
       01 P-PIC-2       PIC S99P(4)   .
       01 P-PIC-2-9 REDEFINES P-PIC-2  PIC S9(02)  .
       01 FLD-2         PIC S9(06)    .
       01 FLD-2-RES     PIC S9(06)    .
      *>
       01 P-PIC-3       PIC P(4)9     .
       01 P-PIC-3-9 REDEFINES P-PIC-3  PIC 9(01)  .
       01 FLD-3         PIC V9(05)    .
       01 FLD-3-RES     PIC V9(05)    .
      *>
       01 P-PIC-4       PIC SP(4)9    .
       01 P-PIC-4-9 REDEFINES P-PIC-4  PIC S9(01)  .
       01 FLD-4         PIC SV9(05)   .
       01 FLD-4-RES     PIC SV9(05)    .
      *>
       01 W01-I         PIC 9(02)     .
      *>
       PROCEDURE DIVISION .
      *>
      *>   Check Length
      *>
           PERFORM CHECK-LENGTH .
      *>
           PERFORM CHECK-CONTENT.
      *>
           PERFORM CHECK-MOVE   .
      *>
           GOBACK .
      *>
       CHECK-CONTENT.
      *>------------
      *>
           MOVE    123456  TO P-PIC-1      .
           IF P-PIC-1-9 NOT = 12
           THEN
                   DISPLAY 'Error C1 VALUE <' P-PIC-1-9 '> != 12' .
      *>
           MOVE    345678  TO P-PIC-2      .
           IF P-PIC-2-9 NOT = 34
           THEN
                   DISPLAY 'Error C2 VALUE <' P-PIC-2-9 '> != 34' .
      *>
           MOVE   -456789  TO P-PIC-2      .
           IF P-PIC-2-9 NOT = -45
           THEN
                   DISPLAY 'Error C3 VALUE <' P-PIC-2-9 '> != -45' .
      *>
           MOVE   0.12345  TO P-PIC-3      .
           IF P-PIC-3-9 NOT = 5
           THEN
                   DISPLAY 'Error C4 VALUE <' P-PIC-3-9 '> != 5' .
      *>
           MOVE   0.56789  TO P-PIC-4      .
           IF P-PIC-4-9 NOT = 9
           THEN
                   DISPLAY 'Error C5 VALUE <' P-PIC-4-9 '> != 9' .
      *>
           MOVE  -0.34567  TO P-PIC-4      .
           IF P-PIC-4-9 NOT = -7
           THEN
                   DISPLAY 'Error C6 VALUE <' P-PIC-4-9 '> != -7' .
      *>
       CHECK-MOVE .
      *>----------
      *>
           MOVE    123456  TO P-PIC-1      .
           MOVE    P-PIC-1 TO FLD-1        .
           MOVE    120000  TO FLD-1-RES    .
           IF FLD-1 NOT = FLD-1-RES
           THEN
               DISPLAY 'M1 <' FLD-1-RES '> != ' FLD-1 .
      *>
           MOVE    001234  TO P-PIC-1      .
           MOVE    P-PIC-1 TO FLD-1        .
           MOVE    000000  TO FLD-1-RES    .
           IF FLD-1 NOT = FLD-1-RES
           THEN
               DISPLAY 'M2 <' FLD-1-RES '> != ' FLD-1 .
      *>-----------------------------------
           MOVE    001234  TO P-PIC-2      .
           MOVE    P-PIC-2 TO FLD-2        .
           MOVE    000000  TO FLD-2-RES    .
           IF FLD-2 NOT = FLD-2-RES
           THEN
               DISPLAY 'M3 <' FLD-2-RES '> != ' FLD-2 .
      *>
           MOVE   -005678  TO P-PIC-2      .
           MOVE    P-PIC-2 TO FLD-2        .
           MOVE    000000  TO FLD-2-RES    .
           IF FLD-2 NOT = FLD-2-RES
           THEN
               DISPLAY 'M4 <' FLD-2-RES '> != ' FLD-2 .
      *>
           MOVE    456789  TO P-PIC-2      .
           MOVE    P-PIC-2 TO FLD-2        .
           MOVE    450000  TO FLD-2-RES    .
           IF FLD-2 NOT = FLD-2-RES
           THEN
               DISPLAY 'M5 <' FLD-2-RES '> != ' FLD-2 .
      *>
           MOVE   -456789  TO P-PIC-2      .
           MOVE    P-PIC-2 TO FLD-2        .
           MOVE   -450000  TO FLD-2-RES    .
           IF FLD-2 NOT = FLD-2-RES
           THEN
               DISPLAY 'M6 <' FLD-2-RES '> != ' FLD-2 .
      *>-----------------------------------
           MOVE   0.12345  TO P-PIC-3      .
           MOVE    P-PIC-3 TO FLD-3        .
           MOVE   0.00005  TO FLD-3-RES    .
           IF FLD-3 NOT = FLD-3-RES
           THEN
               DISPLAY 'M7 <' FLD-3-RES '> != ' FLD-3 .
      *>
           MOVE   0.00010  TO P-PIC-3      .
           MOVE    P-PIC-3 TO FLD-3        .
           MOVE   0.00000  TO FLD-3-RES    .
           IF FLD-3 NOT = FLD-3-RES
           THEN
               DISPLAY 'M8 <' FLD-3-RES '> != ' FLD-3 .
      *>
      *>-----------------------------------
      *>
           MOVE   0.23456  TO P-PIC-4      .
           MOVE    P-PIC-4 TO FLD-4        .
           MOVE   0.00006  TO FLD-4-RES    .
           IF FLD-4 NOT = FLD-4-RES
           THEN
               DISPLAY 'M9 <' FLD-4-RES '> != ' FLD-4 .
      *>
           MOVE   0.02340  TO P-PIC-4      .
           MOVE    P-PIC-4 TO FLD-4        .
           MOVE   0.00000  TO FLD-4-RES    .
           IF FLD-4 NOT = FLD-4-RES
           THEN
               DISPLAY 'M10 <' FLD-4-RES '> != ' FLD-4 .
      *>
           MOVE  -0.12345  TO P-PIC-4      .
           MOVE    P-PIC-4 TO FLD-4        .
           MOVE  -0.00005  TO FLD-4-RES    .
           IF FLD-4 NOT = FLD-4-RES
           THEN
               DISPLAY 'M11 <' FLD-4-RES '> != ' FLD-4 .
      *>
           MOVE  -0.34560  TO P-PIC-4      .
           MOVE    P-PIC-4 TO FLD-4        .
           MOVE   0.00000  TO FLD-4-RES    .
           IF FLD-4 NOT = FLD-4-RES
           THEN
               DISPLAY 'M11 <' FLD-4-RES '> != ' FLD-4 .
      *>
      *>-----------------------------------
      *>
       CHECK-LENGTH.
      *>-----------
      *>
           MOVE LENGTH OF P-PIC-1 TO W01-I .
           IF W01-I NOT = 2
           THEN
               DISPLAY 'Error 1 size <' W01-I '> !=2' .
      *>
           MOVE LENGTH OF P-PIC-2 TO W01-I .
           IF W01-I NOT = 2
           THEN
               DISPLAY 'Error 2 size <' W01-I '> !=2' .
      *>
           MOVE LENGTH OF P-PIC-3 TO W01-I .
           IF W01-I NOT = 1
           THEN
               DISPLAY 'Error 3 size <' W01-I '> !=1' .
      *>

           MOVE LENGTH OF P-PIC-4 TO W01-I .
           IF W01-I NOT = 1
           THEN
               DISPLAY 'Error 4 size <' W01-I '> !=1' .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6764: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_fundamental.at:6764"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6764"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6765: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6765"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6765"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_614
#AT_START_615
at_fn_group_banner 615 'run_fundamental.at:6770' \
  "MOVE with de-editting to USAGE DISPLAY" "         " 4
at_xfail=no
(
  $as_echo "615. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. MoveDeEditing.
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> CHECK DE-EDITING
      *>    Receiving field is NUMERIC DISPLAY Type
      *>----------------------------------------------------------------
      *>
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  EDIT-1               PIC $(4)9.99CR.
       01  DISP-1               PIC S9(4)V99.
       01  EDIT-2               PIC --9B.99B99/99.
       01  DISP-2               PIC S99V9(6).


       PROCEDURE DIVISION .

           MOVE -123.45 TO EDIT-1       .
           MOVE  EDIT-1 TO DISP-1       .
           IF    DISP-1 NOT = -123.45
           THEN
                 DISPLAY 'Error 1: DISP-1 <' DISP-1 '> != -0123.45' .

           IF    EDIT-1 NOT = " $123.45CR"
           THEN
                 DISPLAY 'Error 2: EDIT-1 <' EDIT-1 '> != < $123.45CR>'.

           MOVE -42.9876 TO EDIT-2.
           MOVE  EDIT-2 TO DISP-2.
           IF    DISP-2 NOT = -42.987600
           THEN
              DISPLAY 'Error 3: DISP-2 <' DISP-2 '> != <-42.987600>'.

           IF   EDIT-2 NOT = "-42 .98 76/00"
           THEN
              DISPLAY 'Error 4: EDIT-2 <' EDIT-2 '> != <-42 .98 76/00>'.


           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6816: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6816"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6816"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6817: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6817"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6817"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_615
#AT_START_616
at_fn_group_banner 616 'run_fundamental.at:6822' \
  "MOVE with de-editting to DECIMAL IS COMMA" "      " 4
at_xfail=no
(
  $as_echo "616. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. MoveDeEditing_2 .
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> CHECK DE-EDITING WITH DECIMAL-POINT IS COMMA
      *>     Receiving fied is display type
      *>----------------------------------------------------------------
      *>

       ENVIRONMENT DIVISION .
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       DATA DIVISION.

       WORKING-STORAGE SECTION.
       01  EDIT-1               PIC $(4)9,99CR.
       01  DISP-1               PIC S9(4)V99.
       01  EDIT-2               PIC --9B,99B99/99.
       01  DISP-2               PIC S99V9(6).


       PROCEDURE DIVISION .

           MOVE -123,45 TO EDIT-1       .
           MOVE  EDIT-1 TO DISP-1       .
           IF    DISP-1 NOT = -123,45
           THEN
                 DISPLAY 'Error 1: DISP-1 <' DISP-1 '> != -0123,45' .

           IF    EDIT-1 NOT = " $123,45CR"
           THEN
                 DISPLAY 'Error 2: EDIT-1 <' EDIT-1 '> != < $123,45CR>'.

           MOVE -42,9876 TO EDIT-2.
           MOVE  EDIT-2 TO DISP-2.
           IF    DISP-2 NOT = -42,987600
           THEN
              DISPLAY 'Error 3: DISP-2 <' DISP-2 '> != <-42,987600>'.

           IF   EDIT-2 NOT = "-42 ,98 76/00"
           THEN
              DISPLAY 'Error 4: EDIT-2 <' EDIT-2 '> != <-42 ,98 76/00>'.


           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6874: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6874"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6874"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6875: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6875"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6875"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_616
#AT_START_617
at_fn_group_banner 617 'run_fundamental.at:6880' \
  "MOVE with de-editting to BINARY" "                " 4
at_xfail=no
(
  $as_echo "617. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. MoveDeEditing_3.
       DATA DIVISION.
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> CHECK DE-EDITING
      *>     Receiving fied is binary type
      *>----------------------------------------------------------------
       WORKING-STORAGE SECTION.
       01  EDIT-1               PIC $(4)9.99CR.
       01  DISP-1               PIC S9(4)V99 BINARY .
       01  EDIT-2               PIC --9B.99B99/99.
       01  DISP-2               PIC S99V9(6) BINARY .


       PROCEDURE DIVISION .

           MOVE -123.45 TO EDIT-1       .
           MOVE  EDIT-1 TO DISP-1       .
           IF    DISP-1 NOT = -123.45
           THEN
                 DISPLAY 'Error 1: DISP-1 <' DISP-1 '> != -0123.45' .

           IF    EDIT-1 NOT = " $123.45CR"
           THEN
                 DISPLAY 'Error 2: EDIT-1 <' EDIT-1 '> != < $123.45CR>'.

           MOVE -42.9876 TO EDIT-2.
           MOVE  EDIT-2 TO DISP-2.
           IF    DISP-2 NOT = -42.987600
           THEN
              DISPLAY 'Error 3: DISP-2 <' DISP-2 '> != <-42.987600>'.

           IF   EDIT-2 NOT = "-42 .98 76/00"
           THEN
              DISPLAY 'Error 4: EDIT-2 <' EDIT-2 '> != <-42 .98 76/00>'.


           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6925: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6925"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6925"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6926: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6926"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6926"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_617
#AT_START_618
at_fn_group_banner 618 'run_fundamental.at:6931' \
  "MOVE with de-editting to COMP-3" "                " 4
at_xfail=no
(
  $as_echo "618. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. MoveDeEditing_4.
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> CHECK DE-EDITING
      *>    Receiving field is PACKED Type
      *>----------------------------------------------------------------
      *>
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  EDIT-1               PIC $(4)9.99CR.
       01  DISP-1               PIC S9(4)V99 COMP-3 .
       01  EDIT-2               PIC --9B.99B99/99.
       01  DISP-2               PIC S99V9(6) COMP-3 .


       PROCEDURE DIVISION .

           MOVE -123.45 TO EDIT-1       .
           MOVE  EDIT-1 TO DISP-1       .
           IF    DISP-1 NOT = -123.45
           THEN
                 DISPLAY 'Error 1: DISP-1 <' DISP-1 '> != -0123.45' .

           IF    EDIT-1 NOT = " $123.45CR"
           THEN
                 DISPLAY 'Error 2: EDIT-1 <' EDIT-1 '> != < $123.45CR>'.

           MOVE -42.9876 TO EDIT-2.
           MOVE  EDIT-2 TO DISP-2.
           IF    DISP-2 NOT = -42.987600
           THEN
              DISPLAY 'Error 3: DISP-2 <' DISP-2 '> != <-42.987600>'.

           IF   EDIT-2 NOT = "-42 .98 76/00"
           THEN
              DISPLAY 'Error 4: EDIT-2 <' EDIT-2 '> != <-42 .98 76/00>'.


           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6977: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:6977"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6977"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:6978: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:6978"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:6978"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_618
#AT_START_619
at_fn_group_banner 619 'run_fundamental.at:6983' \
  "MOVE with de-editting to COMP-5" "                " 4
at_xfail=no
(
  $as_echo "619. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. MoveDeEditing_5.
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> CHECK DE-EDITING
      *>    Receiving field is COMP-5 Type
      *>----------------------------------------------------------------
      *>
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  EDIT-1               PIC $(4)9.99CR.
       01  DISP-1               PIC S9(4)V99 COMP-5 .
       01  EDIT-2               PIC --9B.99B99/99.
       01  DISP-2               PIC S99V9(6) COMP-5 .


       PROCEDURE DIVISION .

           MOVE -123.45 TO EDIT-1       .
           MOVE  EDIT-1 TO DISP-1       .
           IF    DISP-1 NOT = -123.45
           THEN
                 DISPLAY 'Error 1: DISP-1 <' DISP-1 '> != -0123.45' .

           IF    EDIT-1 NOT = " $123.45CR"
           THEN
                 DISPLAY 'Error 2: EDIT-1 <' EDIT-1 '> != < $123.45CR>'.

           MOVE -42.9876 TO EDIT-2.
           MOVE  EDIT-2 TO DISP-2.
           IF    DISP-2 NOT = -42.987600
           THEN
              DISPLAY 'Error 3: DISP-2 <' DISP-2 '> != <-42.987600>'.

           IF   EDIT-2 NOT = "-42 .98 76/00"
           THEN
              DISPLAY 'Error 4: EDIT-2 <' EDIT-2 '> != <-42 .98 76/00>'.


           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:7029: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:7029"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:7029"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:7030: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:7030"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:7030"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_619
#AT_START_620
at_fn_group_banner 620 'run_fundamental.at:7035' \
  "MOVE with de-editting to NUMERIC DISPLAY (2)" "   " 4
at_xfail=no
(
  $as_echo "620. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID.  MoveEditedToDisplay.
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *>   Add more test case for edited field
      *>----------------------------------------------------------------
      *>

        ENVIRONMENT DIVISION.

        DATA DIVISION.
        WORKING-STORAGE SECTION.

        01 EDITED-FIELD .


           05 SRC-FIELD-100   PIC +$ZZ9999900BB9   .
           05 SRC-FIELD-101   PIC -$ZZ9999900BB9   .
           05 SRC-FIELD-102   PIC  $ZZ9999900BB9CR .
           05 SRC-FIELD-103   PIC  $ZZ9999900BB9DB .
           05 SRC-FIELD-400   PIC +$**9999900BB9   .
           05 SRC-FIELD-401   PIC -$**9999900BB9   .
           05 SRC-FIELD-402   PIC  $**9999900BB9CR .
           05 SRC-FIELD-403   PIC  $**9999900BB9DB .
      *
        01 DST-FIELD.
           05 DST-FIELD-1     PIC 9(10)V9(04) .
           05 DST-FIELD-2     PIC S9(10)V9(04) .
      *
        PROCEDURE DIVISION.
      *>-------------------
      *>
           MOVE 12345      TO SRC-FIELD-100  .
           MOVE SRC-FIELD-100 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 1234005
              DISPLAY '1: DST-FIELD-1 <' DST-FIELD-1 '> != 1234005' .
      *>
           MOVE 23456      TO SRC-FIELD-101  .
           MOVE SRC-FIELD-101 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 2345006
              DISPLAY '2: DST-FIELD-1 <' DST-FIELD-1 '> != 2345006' .
      *>
           MOVE 34567      TO SRC-FIELD-102  .
           MOVE SRC-FIELD-102 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 3456007
              DISPLAY '3: DST-FIELD-1 <' DST-FIELD-1 '> != 3456007' .
      *>
           MOVE 45678      TO SRC-FIELD-103  .
           MOVE SRC-FIELD-103 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 4567008
              DISPLAY '4: DST-FIELD-1 <' DST-FIELD-1 '> != 4567008' .
      *>
      *>--------------------------------------------------------------
      *>
           MOVE -12345      TO SRC-FIELD-100  .
           MOVE SRC-FIELD-100 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = 1234005
               DISPLAY '5: DST-FIELD-2 <' DST-FIELD-2 '> != 1234005' .
      *>
           MOVE -23456      TO SRC-FIELD-101  .
           MOVE SRC-FIELD-101 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = -2345006
              DISPLAY '6: DST-FIELD-2 <' DST-FIELD-2 '> != -2345006' .
      *>
           MOVE -34567      TO SRC-FIELD-102  .
           MOVE SRC-FIELD-102 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = -3456007
              DISPLAY '7: DST-FIELD-2 <' DST-FIELD-2 '> != -3456007' .
      *>
           MOVE -45678      TO SRC-FIELD-103  .
           MOVE SRC-FIELD-103 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = 4567008
              DISPLAY '8: DST-FIELD-2 <' DST-FIELD-2 '> != 45676008' .
      *>
      *>--------------------------------------------------------------
      *>
           MOVE 12345      TO SRC-FIELD-400  .
           MOVE SRC-FIELD-400 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 1234005
              DISPLAY '9: DST-FIELD-1 <' DST-FIELD-1 '> != 1234005' .
      *>
           MOVE 23456      TO SRC-FIELD-401  .
           MOVE SRC-FIELD-401 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 2345006
              DISPLAY '10: DST-FIELD-1 <' DST-FIELD-1 '> != 2345006' .
      *>
           MOVE 34567      TO SRC-FIELD-402  .
           MOVE SRC-FIELD-402 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 3456007
              DISPLAY '11: DST-FIELD-1 <' DST-FIELD-1 '> != 3456007' .
      *>
           MOVE 45678      TO SRC-FIELD-403  .
           MOVE SRC-FIELD-403 TO DST-FIELD-1 .
           IF DST-FIELD-1 NOT = 4567008
              DISPLAY '12: DST-FIELD-1 <' DST-FIELD-1 '1 != 45676008' .
      *>
           MOVE -12345     TO SRC-FIELD-400  .
           MOVE SRC-FIELD-400 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = 1234005
              DISPLAY '13: DST-FIELD-2 <' DST-FIELD-2 '> != 1234005' .
      *>
           MOVE -23456      TO SRC-FIELD-401  .
           MOVE SRC-FIELD-401 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = -2345006
              DISPLAY '14: DST-FIELD-2 <' DST-FIELD-2 '> != -2345006' .
      *>
           MOVE -34567      TO SRC-FIELD-402  .
           MOVE SRC-FIELD-402 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = -3456007
              DISPLAY '15: DST-FIELD-2 <' DST-FIELD-2 '> != -3456007' .
      *>
           MOVE -45678      TO SRC-FIELD-403  .
           MOVE SRC-FIELD-403 TO DST-FIELD-2 .
           IF DST-FIELD-2 NOT = 4567008
              DISPLAY '16: DST-FIELD-2 <' DST-FIELD-2 '> != 4567008' .
      *>
           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:7158: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:7158"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:7158"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:7159: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:7159"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:7159"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_620
#AT_START_621
at_fn_group_banner 621 'run_fundamental.at:7164' \
  "MOVE misc. edited" "                              " 4
at_xfail=no
(
  $as_echo "621. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID . MoveOtherCases .
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> Last several specifics test cases
      *>----------------------------------------------------------------
      *>
       ENVIRONMENT DIVISION.
      *>-------------

       DATA DIVISION .
      *>--------------

       WORKING-STORAGE SECTION.
      *>-----------------------

       01  SRC-BIN        PIC S9(09) BINARY .
       01  DST-BIN        PIC  9(09) BINARY .
      *>
       01  SRC-EDIT       PIC $$$$,$$9V99-  .
       01  DST-DISP       PIC  9(06)        .
      *>
       01  DST-FIELD-1    PIC XB0XB099/ .

      *>
       PROCEDURE DIVISION .
      *>-------------------
      *>
      *>   Case 1 move unsigned to signed
      *>
           MOVE -12345678     TO SRC-BIN    .
           MOVE SRC-BIN       TO DST-BIN    .
           IF DST-BIN NOT = 12345678
           THEN
               DISPLAY '1: DST-BIN <' DST-BIN '>!= <12345678>'  .

      *>
      *>   Case 2 move negative edited to display
      *>
           MOVE -3            TO SRC-EDIT .
           MOVE SRC-EDIT      TO DST-DISP .
           IF SRC-EDIT NOT = '      $300-'
           THEN
             DISPLAY '2: SRC-EDIT <' SRC-EDIT '> != <      $300->'  .
      *>
           IF DST-DISP NOT = 3
           THEN
             DISPLAY '2.1: DST-DISP <' DST-DISP '> != <3>'  .


      *>
      *>   Case 3 cob_move alphanum to  edited case
      *>
           MOVE 3          TO SRC-EDIT     .
           MOVE SRC-EDIT   TO DST-FIELD-1  .

           IF DST-FIELD-1 NOT = '  0  0  /'
           THEN
             DISPLAY '3: DST-FIELD-1 <' DST-FIELD-1 '> != <  0  0  />'.

      *>
           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:7232: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:7232"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:7232"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:7233: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:7233"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:7233"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_621
#AT_START_622
at_fn_group_banner 622 'run_fundamental.at:7238' \
  "MOVE between USAGEs" "                            " 4
at_xfail=no
(
  $as_echo "622. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID . MoveTestCobMove .
      *>----------------------------------------------------------------
      *> This programm cover the cob_move function for numeric
      *> data types except numeric edited
      *>----------------------------------------------------------------
      *>
       ENVIRONMENT DIVISION.
       DATA DIVISION .
       WORKING-STORAGE  SECTION.

       01 ALL-SRC .
          05 FIELD-02 BINARY-C-LONG  SIGNED  .
          05 FIELD-03 BINARY-C-LONG UNSIGNED .
          05 FIELD-04 BINARY-CHAR  SIGNED  .
          05 FIELD-05 BINARY-CHAR UNSIGNED .
          05 FIELD-06 BINARY-DOUBLE  SIGNED  .
          05 FIELD-07 BINARY-DOUBLE UNSIGNED .
          05 FIELD-08 BINARY-INT .
          05 FIELD-09 BINARY-LONG  SIGNED  .
          05 FIELD-10 BINARY-LONG UNSIGNED .
          05 FIELD-11 BINARY-LONG-LONG .
          05 FIELD-12 BINARY-SHORT  SIGNED  .
          05 FIELD-13 BINARY-SHORT UNSIGNED .
          05 FIELD-14 FLOAT-DECIMAL-16 .
          05 FIELD-15 FLOAT-DECIMAL-34 .
          05 FIELD-16 FLOAT-LONG .
          05 FIELD-17 FLOAT-SHORT .
          05 FIELD-18 SIGNED-INT .
          05 FIELD-19 SIGNED-LONG .
          05 FIELD-20 SIGNED-SHORT .
          05 FIELD-21 UNSIGNED-INT .
          05 FIELD-22 UNSIGNED-LONG .
          05 FIELD-23 UNSIGNED-SHORT .
          05 FIELD-24            COMP-1 .
          05 FIELD-25            COMP-2 .
          05 FIELD-26 PIC  9(10) COMP-6 .
          05 FIELD-50 PIC S9(09) BINARY            .
          05 FIELD-51 PIC S9(09) COMP .
          05 FIELD-52 PIC S9(09)V99 COMP-3 .
          05 FIELD-53 PIC S9(09) COMP-4 .
          05 FIELD-54 PIC S9(09) COMP-5 .
          05 FIELD-55 PIC S9(09) COMP-X .
          05 FIELD-56 PIC S9(09)V99 DISPLAY .
      *>
       01 EXPTD-RESULT PIC 9(09)     .
      *>
       01 ALL-DST .
          05 FIELD-02 BINARY-C-LONG  SIGNED  .
          05 FIELD-03 BINARY-C-LONG UNSIGNED .
          05 FIELD-04 BINARY-CHAR  SIGNED  .
          05 FIELD-05 BINARY-CHAR UNSIGNED .
          05 FIELD-06 BINARY-DOUBLE  SIGNED  .
          05 FIELD-07 BINARY-DOUBLE UNSIGNED .
          05 FIELD-08 BINARY-INT .
          05 FIELD-09 BINARY-LONG  SIGNED  .
          05 FIELD-10 BINARY-LONG UNSIGNED .
          05 FIELD-11 BINARY-LONG-LONG .
          05 FIELD-12 BINARY-SHORT  SIGNED  .
          05 FIELD-13 BINARY-SHORT UNSIGNED .
          05 FIELD-14 FLOAT-DECIMAL-16 .
          05 FIELD-15 FLOAT-DECIMAL-34 .
          05 FIELD-16 FLOAT-LONG .
          05 FIELD-17 FLOAT-SHORT .
          05 FIELD-18 SIGNED-INT .
          05 FIELD-19 SIGNED-LONG .
          05 FIELD-20 SIGNED-SHORT .
          05 FIELD-21 UNSIGNED-INT .
          05 FIELD-22 UNSIGNED-LONG .
          05 FIELD-23 UNSIGNED-SHORT .
          05 FIELD-24            COMP-1 .
          05 FIELD-25            COMP-2 .
          05 FIELD-26 PIC 9(10)  COMP-6 .
          05 FIELD-50 PIC S9(09) BINARY            .
          05 FIELD-51 PIC S9(09) COMP .
          05 FIELD-52 PIC S9(09)V99 COMP-3 .
          05 FIELD-53 PIC S9(09) COMP-4 .
          05 FIELD-54 PIC S9(09) COMP-5 .
          05 FIELD-55 PIC S9(09) COMP-X .
          05 FIELD-56 PIC S9(09)V99 DISPLAY .

      *>
       PROCEDURE DIVISION .
      *>
           INITIALIZE ALL-SRC REPLACING NUMERIC BY 1 .
           PERFORM TEST-PASS-1 .
      *>
           INITIALIZE ALL-DST REPLACING NUMERIC BY 2 .
           PERFORM TEST-PASS-2 .
      *>
           MOVE  3        TO FIELD-02 OF ALL-SRC .
           MOVE  3        TO EXPTD-RESULT        .
           MOVE  FIELD-02 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  4        TO FIELD-03 OF ALL-SRC .
           MOVE  4        TO EXPTD-RESULT        .
           MOVE  FIELD-03 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  5        TO FIELD-04 OF ALL-SRC .
           MOVE  5        TO EXPTD-RESULT        .
           MOVE  FIELD-04 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  6        TO FIELD-05 OF ALL-SRC .
           MOVE  6        TO EXPTD-RESULT        .
           MOVE  FIELD-05 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  7        TO FIELD-06 OF ALL-SRC .
           MOVE  7        TO EXPTD-RESULT        .
           MOVE  FIELD-06 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  8        TO FIELD-07 OF ALL-SRC .
           MOVE  8        TO EXPTD-RESULT        .
           MOVE  FIELD-07 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  9        TO FIELD-08 OF ALL-SRC .
           MOVE  9        TO EXPTD-RESULT        .
           MOVE  FIELD-08 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  10       TO FIELD-09 OF ALL-SRC .
           MOVE  10       TO EXPTD-RESULT        .
           MOVE  FIELD-09 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  11       TO FIELD-10 OF ALL-SRC .
           MOVE  11       TO EXPTD-RESULT        .
           MOVE  FIELD-10 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  12       TO FIELD-11 OF ALL-SRC .
           MOVE  12       TO EXPTD-RESULT        .
           MOVE  FIELD-11 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  13       TO FIELD-12 OF ALL-SRC .
           MOVE  13       TO EXPTD-RESULT        .
           MOVE  FIELD-12 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  14       TO FIELD-13 OF ALL-SRC .
           MOVE  14       TO EXPTD-RESULT        .
           MOVE  FIELD-13 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  15       TO FIELD-14 OF ALL-SRC .
           MOVE  15       TO EXPTD-RESULT        .
           MOVE  FIELD-14 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  16       TO FIELD-15 OF ALL-SRC .
           MOVE  16       TO EXPTD-RESULT        .
           MOVE  FIELD-15 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  17       TO FIELD-16 OF ALL-SRC .
           MOVE  17       TO EXPTD-RESULT        .
           MOVE  FIELD-16 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  18       TO FIELD-17 OF ALL-SRC .
           MOVE  18       TO EXPTD-RESULT        .
           MOVE  FIELD-17 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  19       TO FIELD-18 OF ALL-SRC .
           MOVE  19       TO EXPTD-RESULT        .
           MOVE  FIELD-18 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  20       TO FIELD-19 OF ALL-SRC .
           MOVE  20       TO EXPTD-RESULT        .
           MOVE  FIELD-19 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  21       TO FIELD-20 OF ALL-SRC .
           MOVE  21       TO EXPTD-RESULT        .
           MOVE  FIELD-20 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  22       TO FIELD-21 OF ALL-SRC .
           MOVE  22       TO EXPTD-RESULT        .
           MOVE  FIELD-21 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  23       TO FIELD-22 OF ALL-SRC .
           MOVE  23       TO EXPTD-RESULT        .
           MOVE  FIELD-22 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  24       TO FIELD-23 OF ALL-SRC .
           MOVE  24       TO EXPTD-RESULT        .
           MOVE  FIELD-23 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  25       TO FIELD-24 OF ALL-SRC .
           MOVE  25       TO EXPTD-RESULT        .
           MOVE  FIELD-24 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  26       TO FIELD-25 OF ALL-SRC .
           MOVE  26       TO EXPTD-RESULT        .
           MOVE  FIELD-25 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  27       TO FIELD-26 OF ALL-SRC .
           MOVE  27       TO EXPTD-RESULT        .
           MOVE  FIELD-26 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  50       TO FIELD-50 OF ALL-SRC .
           MOVE  50       TO EXPTD-RESULT        .
           MOVE  FIELD-50 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  51       TO FIELD-51 OF ALL-SRC .
           MOVE  51       TO EXPTD-RESULT        .
           MOVE  FIELD-51 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  52       TO FIELD-52 OF ALL-SRC .
           MOVE  52       TO EXPTD-RESULT        .
           MOVE  FIELD-52 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  53       TO FIELD-53 OF ALL-SRC .
           MOVE  53       TO EXPTD-RESULT        .
           MOVE  FIELD-53 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  54       TO FIELD-54 OF ALL-SRC .
           MOVE  54       TO EXPTD-RESULT        .
           MOVE  FIELD-54 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  55       TO FIELD-55 OF ALL-SRC .
           MOVE  55       TO EXPTD-RESULT        .
           MOVE  FIELD-55 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           MOVE  56       TO FIELD-56 OF ALL-SRC .
           MOVE  56       TO EXPTD-RESULT        .
           MOVE  FIELD-56 OF ALL-SRC
             TO  FIELD-02 OF ALL-DST
                 FIELD-03 OF ALL-DST
                 FIELD-04 OF ALL-DST
                 FIELD-05 OF ALL-DST
                 FIELD-06 OF ALL-DST
                 FIELD-07 OF ALL-DST
                 FIELD-08 OF ALL-DST
                 FIELD-09 OF ALL-DST
                 FIELD-10 OF ALL-DST
                 FIELD-11 OF ALL-DST
                 FIELD-12 OF ALL-DST
                 FIELD-13 OF ALL-DST
                 FIELD-14 OF ALL-DST
                 FIELD-15 OF ALL-DST
                 FIELD-16 OF ALL-DST
                 FIELD-17 OF ALL-DST
                 FIELD-18 OF ALL-DST
                 FIELD-19 OF ALL-DST
                 FIELD-20 OF ALL-DST
                 FIELD-21 OF ALL-DST
                 FIELD-22 OF ALL-DST
                 FIELD-23 OF ALL-DST
                 FIELD-24 OF ALL-DST
                 FIELD-25 OF ALL-DST
                 FIELD-26 OF ALL-DST
                 FIELD-50 OF ALL-DST
                 FIELD-51 OF ALL-DST
                 FIELD-52 OF ALL-DST
                 FIELD-53 OF ALL-DST
                 FIELD-54 OF ALL-DST
                 FIELD-55 OF ALL-DST
                 FIELD-56 OF ALL-DST .
           PERFORM TEST-PASS-3        .
      *>
           GOBACK .
      *>
       TEST-PASS-1.
      *>----------
      *>
         IF FIELD-02 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-02 <' FIELD-02 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-03 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-03 <' FIELD-03 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-04 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-04 <' FIELD-04 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-05 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-05 <' FIELD-05 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-06 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-06 <' FIELD-06 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-07 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-07 <' FIELD-07 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-08 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-08 <' FIELD-08 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-09 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-09 <' FIELD-09 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-10 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-10 <' FIELD-10 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-11 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-11 <' FIELD-11 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-12 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-12 <' FIELD-12 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-13 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-13 <' FIELD-13 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-14 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-14 <' FIELD-14 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-15 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-15 <' FIELD-15 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-16 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-16 <' FIELD-16 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-17 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-17 <' FIELD-17 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-18 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-18 <' FIELD-18 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-19 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-19 <' FIELD-19 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-20 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-20 <' FIELD-20 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-21 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-21 <' FIELD-21 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-22 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-22 <' FIELD-22 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-23 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-23 <' FIELD-23 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-24 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-24 <' FIELD-24 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-25 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-25 <' FIELD-25 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-26 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-26 <' FIELD-26 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-50 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-50 <' FIELD-50 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-51 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-51 <' FIELD-51 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-52 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-52 <' FIELD-52 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-53 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-53 <' FIELD-52 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-54 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-54 <' FIELD-54 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-55 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-55 <' FIELD-55 OF
                ALL-SRC '> != 1' .
      *>
         IF FIELD-56 OF ALL-SRC    IS NOT = 1
            THEN
                DISPLAY 'PASS ONE: FIELD-56 <' FIELD-56 OF
                ALL-SRC '> != 1' .
      *>
       TEST-PASS-2.
      *>----------
      *>
         IF FIELD-02 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-02 <' FIELD-02 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-03 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-03 <' FIELD-03 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-04 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-04 <' FIELD-04 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-05 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-05 <' FIELD-05 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-06 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-06 <' FIELD-06 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-07 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-07 <' FIELD-07 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-08 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-08 <' FIELD-08 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-09 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-09 <' FIELD-09 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-10 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-10 <' FIELD-10 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-11 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-11 <' FIELD-11 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-12 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-12 <' FIELD-12 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-13 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-13 <' FIELD-13 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-14 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-14 <' FIELD-14 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-15 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-15 <' FIELD-15 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-16 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-16 <' FIELD-16 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-17 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-17 <' FIELD-17 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-18 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-18 <' FIELD-18 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-19 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-19 <' FIELD-19 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-20 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-20 <' FIELD-20 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-21 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-21 <' FIELD-21 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-22 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-22 <' FIELD-22 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-23 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-23 <' FIELD-23 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-24 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-24 <' FIELD-24 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-25 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-25 <' FIELD-25 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-26 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-26 <' FIELD-26 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-50 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-50 <' FIELD-50 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-51 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-51 <' FIELD-51 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-52 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-52 <' FIELD-52 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-53 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-53 <' FIELD-52 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-54 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-54 <' FIELD-54 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-55 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-55 <' FIELD-55 OF
                ALL-DST '> != 2' .
      *>
         IF FIELD-56 OF ALL-DST    IS NOT = 2
            THEN
                DISPLAY 'PASS TWO: FIELD-56 <' FIELD-56 OF
                ALL-DST '> != 2' .
      *>
       TEST-PASS-3.
      *>----------
      *>
         IF FIELD-02 OF ALL-DST    IS NOT =  EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-02 <' FIELD-02 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-03 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-03 <' FIELD-03 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-04 OF ALL-DST    IS NOT =  EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-04 <' FIELD-04 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .

      *>
         IF FIELD-05 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-05 <' FIELD-05 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-06 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-06 <' FIELD-06 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-07 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-07 <' FIELD-07 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-08 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-08 <' FIELD-08 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-09 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-09 <' FIELD-09 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-10 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-10 <' FIELD-10 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-11 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-11 <' FIELD-11 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-12 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-12 <' FIELD-12 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-13 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-13 <' FIELD-13 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-14 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-14 <' FIELD-14 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-15 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-15 <' FIELD-15 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-16 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-16 <' FIELD-16 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-17 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-17 <' FIELD-17 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-18 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-18 <' FIELD-18 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-19 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-19 <' FIELD-19 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-20 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-20 <' FIELD-20 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-21 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-21 <' FIELD-21 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-22 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-22 <' FIELD-22 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-23 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-23 <' FIELD-23 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-24 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-24 <' FIELD-24 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-25 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-25 <' FIELD-25 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-26 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-26 <' FIELD-26 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-50 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-50 <' FIELD-50 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-51 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-51 <' FIELD-51 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-52 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-52 <' FIELD-52 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-53 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-53 <' FIELD-52 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-54 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-54 <' FIELD-54 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-55 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-55 <' FIELD-55 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
      *>
         IF FIELD-56 OF ALL-DST    IS NOT = EXPTD-RESULT
            THEN
                DISPLAY 'PASS THREE: FIELD-56 <' FIELD-56 OF
                ALL-DST '> != <' EXPTD-RESULT '>' .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:9015: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:9015"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:9015"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:9016: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:9016"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:9016"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_622
#AT_START_623
at_fn_group_banner 623 'run_fundamental.at:9021' \
  "MOVE to editted ZERO" "                           " 4
at_xfail=no
(
  $as_echo "623. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. MoveToEditedZero .
      *>----------------------------------------------------------------
      *>           Additional test cases for MOVE statement
      *> Move To Edited
      *>    Edited field contains only '*'  and sending field is ZERO
      *>----------------------------------------------------------------
      *>
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 DISP-1       PIC 999999  .
       01 EDIT-1       PIC ****** .
       01 EDIT-1-X     REDEFINES EDIT-1 PIC X(06) .

      *>
       PROCEDURE DIVISION .
      *>
           MOVE 111111 TO EDIT-1 *> avoid init by default
      *>
           MOVE ZEROES  TO DISP-1 .
           MOVE DISP-1  TO EDIT-1 .
           IF EDIT-1-X NOT = '******'
           THEN
               DISPLAY 'Error EDIT-1-X <' EDIT-1-X '> !=  <******>' .
      *>
      *>
           MOVE 123     TO DISP-1 .
           MOVE DISP-1  TO EDIT-1 .
           IF EDIT-1-X NOT = '***123'
           THEN
               DISPLAY 'Error EDIT-1-X <' EDIT-1-X '> !=  <***123>' .
      *>
           GOBACK .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:9060: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:9060"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:9060"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:9061: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:9061"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:9061"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_623
#AT_START_624
at_fn_group_banner 624 'run_fundamental.at:9066' \
  "SPECIAL-NAMES CLASS" "                            " 4
at_xfail=no
(
  $as_echo "624. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. TSTCLASS.

       ENVIRONMENT  DIVISION.
       CONFIGURATION SECTION .
       SPECIAL-NAMES         .
       CLASS HEXA IS '0' THRU '9'
                     'A' THRU 'F' .
       CLASS ODD   IS '1' '3' '5' '7' '9'   .

      * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
      *                                                               *
      *    NOTICE THAT THE VALUES SUPPLIED ARE NUMERIC LITERALS       *
      *    WHICH REPRESENT A VALUE WHICH IS 1 NUMBER HIGHER THAN      *
      *    THE HEX VALUES WHICH THEY REPRESENT. THIS IS BECAUSE       *
      *    THE ALLOWABLE VALUES ARE FROM 1 THROUGH 256.               *
      *                                                               *
      * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *

       CLASS EVEN  IS  49 51 53 55 57.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  ALPHA       PIC X(01)  .
       01  NUM-1       PIC 9(01)  .
      *>
       PROCEDURE DIVISION.
      *>
           MOVE '3' TO ALPHA .
           IF ALPHA IS HEXA
           THEN
               CONTINUE
           ELSE
               DISPLAY 'ERROR 1'
           END-IF.
      *>
           IF ALPHA IS ODD
           THEN
               CONTINUE
           ELSE
               DISPLAY 'ERROR 2'
           END-IF.
      *>
           MOVE  2  TO NUM-1
           IF NUM-1 IS EVEN
           THEN
               CONTINUE
           ELSE
               DISPLAY 'ERROR 3'
           END-IF.
      *>
           GOBACK  .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_fundamental.at:9123: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_fundamental.at:9123"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:9123"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_fundamental.at:9124: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_fundamental.at:9124"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_fundamental.at:9124"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_624
#AT_START_625
at_fn_group_banner 625 'run_subscripts.at:26' \
  "Subscript out of bounds" "                        " 4
at_xfail=no
(
  $as_echo "625. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 10.
       01 I             PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           DISPLAY X(I)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:43: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:43"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:44: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:44"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:10: error: subscript of 'X' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 10.
       01 I             PIC 99 VALUE 11.
       PROCEDURE        DIVISION.
           DISPLAY X(I)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:62: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_subscripts.at:62"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:63: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_subscripts.at:63"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:10: error: subscript of 'X' out of bounds: 11
note: maximum subscript for 'X': 10
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_625
#AT_START_626
at_fn_group_banner 626 'run_subscripts.at:71' \
  "Value of DEPENDING ON N out of bounds" "          " 4
at_xfail=no
(
  $as_echo "626. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N.
       01 N             PIC 9.
       PROCEDURE        DIVISION.
           MOVE 5 TO N.
           MOVE '12345' TO G
           DISPLAY X(3) WITH NO ADVANCING
           END-DISPLAY.
           MOVE 3 TO N.
           DISPLAY X(5)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:93: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:93"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:94: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:94"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:15: error: OCCURS DEPENDING ON 'N' out of bounds: 3
note: minimum subscript for 'X': 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N.
       01 N             PIC 9 VALUE 7.
       PROCEDURE        DIVISION.
           DISPLAY X(5)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:113: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_subscripts.at:113"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:113"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:114: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_subscripts.at:114"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:10: error: OCCURS DEPENDING ON 'N' out of bounds: 7
note: maximum subscript for 'X': 6
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:114"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_626
#AT_START_627
at_fn_group_banner 627 'run_subscripts.at:122' \
  "Subscript bounds with OCCURS DEPENDING ON (1)" "  " 4
at_xfail=no
(
  $as_echo "627. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N.
       01 N             PIC 9 VALUE 4.
       PROCEDURE        DIVISION.
           DISPLAY X(5)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:139: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:139"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:140: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:140"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:10: error: subscript of 'X' out of bounds: 5
note: current maximum subscript for 'X': 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_627
#AT_START_628
at_fn_group_banner 628 'run_subscripts.at:148' \
  "Subscript bounds with OCCURS DEPENDING ON (2)" "  " 4
at_xfail=no
(
  $as_echo "628. $at_setup_line: testing $at_desc ..."
  $at_traceon



# verifies that the check is generated within conditions - simple IF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N.
       01 N             PIC 9 VALUE 4.
       PROCEDURE        DIVISION.
           IF X(5) <> SPACE
              DISPLAY X(5).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:167: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:167"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:168: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:168"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:10: error: subscript of 'X' out of bounds: 5
note: current maximum subscript for 'X': 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:168"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_628
#AT_START_629
at_fn_group_banner 629 'run_subscripts.at:176' \
  "Subscript bounds with OCCURS DEPENDING ON (3)" "  " 4
at_xfail=no
(
  $as_echo "629. $at_setup_line: testing $at_desc ..."
  $at_traceon



# verifies that the check is generated within conditions - WHEN
# complex test for correct place and not raised if guarded by check

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N.
       01 N             PIC 9 VALUE 4.
       PROCEDURE        DIVISION.
           EVALUATE TRUE
           WHEN N >= 5
            AND X(5) <> SPACE
              DISPLAY "1-" X(5)
           WHEN N >= 5
           WHEN X(5) <> SPACE
              DISPLAY "2-" X(5)
           END-EVALUATE
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:202: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:202"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:202"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:203: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:203"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:15: error: subscript of 'X' out of bounds: 5
note: current maximum subscript for 'X': 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:203"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_629
#AT_START_630
at_fn_group_banner 630 'run_subscripts.at:211' \
  "Subscript by arithmetic expression" "             " 4
at_xfail=no
(
  $as_echo "630. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G             VALUE "1234".
         02 X           PIC X OCCURS 4.
       01 Z             PIC X.
       PROCEDURE        DIVISION.
           MOVE X((3 + 1) / 2) TO Z.
           IF Z NOT = "2"
              DISPLAY Z
              END-DISPLAY
           END-IF.
           MOVE X(2 ** 2) TO Z.
           IF Z NOT = "4"
              DISPLAY Z
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:236: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:236"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:236"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:237: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:237"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:237"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_630
#AT_START_631
at_fn_group_banner 631 'run_subscripts.at:242' \
  "length of ODO w/- reference-modification" "       " 4
at_xfail=no
(
  $as_echo "631. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  PLINE.
           03  PLINE-LEN PIC S9(4) COMP-5.
           03  PLINE-TEXT.
               04  FILLER    PIC X(1) OCCURS  1 TO 80
                                      DEPENDING ON PLINE-LEN.
       procedure division.
       a-main section.
             MOVE 5                    TO PLINE-LEN
             MOVE 'the first part in'  TO PLINE-TEXT
             MOVE 30                   TO PLINE-LEN
             IF PLINE-TEXT NOT = 'the f'
                DISPLAY 'text1 wrong: ' PLINE-TEXT
                END-DISPLAY
             END-IF
             MOVE 'the first part in'  TO PLINE-TEXT
             MOVE 4                    TO PLINE-LEN
             MOVE 'second'             TO PLINE-TEXT
             MOVE 14                   TO PLINE-LEN
             IF PLINE-TEXT NOT = 'secofirst part'
                DISPLAY 'text2 wrong: ' PLINE-TEXT
                END-DISPLAY
             END-IF
             MOVE 80                   TO PLINE-LEN
             MOVE SPACES               TO PLINE-TEXT
             MOVE 5                    TO PLINE-LEN
             MOVE 'the first part in'  TO PLINE-TEXT (2:)
             MOVE 30                   TO PLINE-LEN
             IF PLINE-TEXT NOT = ' the '
                DISPLAY 'text3 wrong: ' PLINE-TEXT
                END-DISPLAY
             END-IF
             MOVE 'the first part in'  TO PLINE-TEXT (2:)
             MOVE 4                    TO PLINE-LEN
             MOVE 'second'             TO PLINE-TEXT (2:)
             MOVE 14                   TO PLINE-LEN
             IF PLINE-TEXT NOT = ' sec first par'
                DISPLAY 'text4 wrong: ' PLINE-TEXT
                END-DISPLAY
             END-IF
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:292: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:292"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:292"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:293: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:293"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:293"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_631
#AT_START_632
at_fn_group_banner 632 'run_subscripts.at:298' \
  "SEARCH ALL with OCCURS DEPENDING ON" "            " 4
at_xfail=no
(
  $as_echo "632. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *
       77  SCREEN-AKT         PIC 9(02) VALUE 0.
       01  SCREEN-TAB.
           03 SCREEN-ENTRY    OCCURS 0  TO  20
                              DEPENDING ON  SCREEN-AKT
                              ASCENDING KEY SCREEN-NAME
                              INDEXED   BY  SCREEN-IDX.
             05 SCREEN-NAME     PIC X(02).

       PROCEDURE DIVISION.

           SEARCH ALL SCREEN-ENTRY
              AT END
                 DISPLAY 'END'
              WHEN SCREEN-NAME (SCREEN-IDX) = 'AB'
                 DISPLAY 'FOUND'
           END-SEARCH
           MOVE 1 TO SCREEN-AKT
           MOVE 'AB' TO  SCREEN-NAME (1)
           SEARCH ALL SCREEN-ENTRY
              AT END
                 DISPLAY 'END'
              WHEN SCREEN-NAME (SCREEN-IDX) = 'AB'
                 DISPLAY 'FOUND'
           END-SEARCH
           MOVE 2 TO SCREEN-AKT
           MOVE 'CD' TO  SCREEN-NAME (2)
           SEARCH ALL SCREEN-ENTRY
              AT END
                 DISPLAY 'END'
              WHEN SCREEN-NAME (SCREEN-IDX) = 'CD'
                 DISPLAY 'FOUND'
           END-SEARCH
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:342: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:342"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:342"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:343: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:343"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "END
FOUND
FOUND
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:343"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_632
#AT_START_633
at_fn_group_banner 633 'run_subscripts.at:351' \
  "enable / disable subscript check" "               " 4
at_xfail=no
(
  $as_echo "633. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x VALUE "12345!".
           03  y PIC X OCCURS 5 TIMES.
           03  z PIC X VALUE "!".
       01  idx PIC 99 VALUE 6.

       PROCEDURE DIVISION.
           DISPLAY y (idx)
                   WITH NO ADVANCING
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
                   WITH NO ADVANCING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:374: \$COMPILE prog.cob -o badprog1"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -o badprog1" "run_subscripts.at:374"
( $at_check_trace; $COMPILE prog.cob -o badprog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:374"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:375: \$COBCRUN_DIRECT ./badprog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./badprog1" "run_subscripts.at:375"
( $at_check_trace; $COBCRUN_DIRECT ./badprog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:13: error: subscript of 'y' out of bounds: 6
note: maximum subscript for 'y': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:375"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:379: \$COBC -x prog.cob -o exprog1"
at_fn_check_prepare_dynamic "$COBC -x prog.cob -o exprog1" "run_subscripts.at:379"
( $at_check_trace; $COBC -x prog.cob -o exprog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:379"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:380: \$COBCRUN_DIRECT ./exprog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./exprog1" "run_subscripts.at:380"
( $at_check_trace; $COBCRUN_DIRECT ./exprog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:380"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:382: \$COMPILE -fno-ec=EC-BOUND-SUBSCRIPT -o exprog2 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=EC-BOUND-SUBSCRIPT -o exprog2 prog.cob" "run_subscripts.at:382"
( $at_check_trace; $COMPILE -fno-ec=EC-BOUND-SUBSCRIPT -o exprog2 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:382"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:383: \$COBCRUN_DIRECT ./exprog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./exprog2" "run_subscripts.at:383"
( $at_check_trace; $COBCRUN_DIRECT ./exprog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:383"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:384: \$COMPILE -fno-ec=BOUND -o exprog3 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=BOUND -o exprog3 prog.cob" "run_subscripts.at:384"
( $at_check_trace; $COMPILE -fno-ec=BOUND -o exprog3 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:384"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:385: \$COBCRUN_DIRECT ./exprog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./exprog3" "run_subscripts.at:385"
( $at_check_trace; $COBCRUN_DIRECT ./exprog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:385"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:387: \$COBC -x -fec=BoUnd-subscript prog.cob -o badprog2"
at_fn_check_prepare_dynamic "$COBC -x -fec=BoUnd-subscript prog.cob -o badprog2" "run_subscripts.at:387"
( $at_check_trace; $COBC -x -fec=BoUnd-subscript prog.cob -o badprog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:387"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:388: \$COBCRUN_DIRECT ./badprog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./badprog2" "run_subscripts.at:388"
( $at_check_trace; $COBCRUN_DIRECT ./badprog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:13: error: subscript of 'y' out of bounds: 6
note: maximum subscript for 'y': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:388"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_633
#AT_START_634
at_fn_group_banner 634 'run_subscripts.at:396' \
  "enable / disable subscript check with ODO" "      " 4
at_xfail=no
(
  $as_echo "634. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 TAB.
         02 X           PIC X OCCURS 4 TO 6 DEPENDING ON N
	                      VALUE "A".
       01 N             PIC 9 VALUE 5.
       PROCEDURE        DIVISION.
           MOVE "B" TO X (6)
	   IF X (6) NOT EQUAL TO "B" THEN
	      DISPLAY "Got X (6) = " X (6) ", expected B"
	   END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:416: \$COMPILE prog.cob -o badprog1"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -o badprog1" "run_subscripts.at:416"
( $at_check_trace; $COMPILE prog.cob -o badprog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:416"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:417: \$COBCRUN_DIRECT ./badprog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./badprog1" "run_subscripts.at:417"
( $at_check_trace; $COBCRUN_DIRECT ./badprog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:11: error: subscript of 'X' out of bounds: 6
note: current maximum subscript for 'X': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:417"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:422: \$COMPILE prog.cob -fsubscript-check=full -o failprog1-check-full"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fsubscript-check=full -o failprog1-check-full" "run_subscripts.at:422"
( $at_check_trace; $COMPILE prog.cob -fsubscript-check=full -o failprog1-check-full
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:422"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:423: \$COBCRUN_DIRECT ./failprog1-check-full"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./failprog1-check-full" "run_subscripts.at:423"
( $at_check_trace; $COBCRUN_DIRECT ./failprog1-check-full
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:11: error: subscript of 'X' out of bounds: 6
note: current maximum subscript for 'X': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:423"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:428: \$COMPILE prog.cob -fsubscript-check=max -o okprog1-check-max"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fsubscript-check=max -o okprog1-check-max" "run_subscripts.at:428"
( $at_check_trace; $COMPILE prog.cob -fsubscript-check=max -o okprog1-check-max
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:428"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:429: \$COBCRUN_DIRECT ./okprog1-check-max"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./okprog1-check-max" "run_subscripts.at:429"
( $at_check_trace; $COBCRUN_DIRECT ./okprog1-check-max
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:429"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:431: \$COMPILE prog.cob -fno-ec=bound -fsubscript-check=full -o okprog1-no-ec"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fno-ec=bound -fsubscript-check=full -o okprog1-no-ec" "run_subscripts.at:431"
( $at_check_trace; $COMPILE prog.cob -fno-ec=bound -fsubscript-check=full -o okprog1-no-ec
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:431"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:432: \$COBCRUN_DIRECT ./okprog1-no-ec"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./okprog1-no-ec" "run_subscripts.at:432"
( $at_check_trace; $COBCRUN_DIRECT ./okprog1-no-ec
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:432"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_634
#AT_START_635
at_fn_group_banner 635 'run_subscripts.at:437' \
  "BOUND and NOBOUND directives" "                   " 4
at_xfail=no
(
  $as_echo "635. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: the >> TURN directive is checked in run_misc.at

cat >prog.cob <<'_ATEOF'

      $SET BOUND
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x VALUE "12345!".
           03  y PIC X OCCURS 5 TIMES.
           03  z PIC X.
       01  idx PIC 99 VALUE 6.

       PROCEDURE DIVISION.
           DISPLAY y (idx) WITH NO ADVANCING
           .
_ATEOF


cat >progn.cob <<'_ATEOF'

      $SET NOBOUND
       IDENTIFICATION DIVISION.
       PROGRAM-ID. progn.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x VALUE "12345!".
           03  y PIC X OCCURS 5 TIMES.
           03  z PIC X.
       01  idx PIC 99 VALUE 6.

       PROCEDURE DIVISION.
           DISPLAY y (idx) WITH NO ADVANCING
           .
_ATEOF


cat >progn2.cob <<'_ATEOF'

      $SET NO-BOUND
       IDENTIFICATION DIVISION.
       PROGRAM-ID. progn2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x VALUE "12345!".
           03  y PIC X OCCURS 5 TIMES.
           03  z PIC X.
       01  idx PIC 99 VALUE 6.

       PROCEDURE DIVISION.
           DISPLAY y (idx) WITH NO ADVANCING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:493: \$COBC -x prog.cob"
at_fn_check_prepare_dynamic "$COBC -x prog.cob" "run_subscripts.at:493"
( $at_check_trace; $COBC -x prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:493"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:494: \$COMPILE progn.cob"
at_fn_check_prepare_dynamic "$COMPILE progn.cob" "run_subscripts.at:494"
( $at_check_trace; $COMPILE progn.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:494"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:495: \$COMPILE progn2.cob"
at_fn_check_prepare_dynamic "$COMPILE progn2.cob" "run_subscripts.at:495"
( $at_check_trace; $COMPILE progn2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:495"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:496: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:496"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:14: error: subscript of 'y' out of bounds: 6
note: maximum subscript for 'y': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:496"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:500: \$COBCRUN_DIRECT ./progn"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progn" "run_subscripts.at:500"
( $at_check_trace; $COBCRUN_DIRECT ./progn
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:500"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:501: \$COBCRUN_DIRECT ./progn2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progn2" "run_subscripts.at:501"
( $at_check_trace; $COBCRUN_DIRECT ./progn2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:501"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_635
#AT_START_636
at_fn_group_banner 636 'run_subscripts.at:506' \
  "SSRANGE and NOSSRANGE directives" "               " 4
at_xfail=no
(
  $as_echo "636. $at_setup_line: testing $at_desc ..."
  $at_traceon



# WARNING: this testcase is "broken" as those SSRANGE may only be
#          defined before IDENTIFICATION DIVISION (initial $SET)

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y       PIC X OCCURS 5 TIMES VALUE SPACE.
           03  z       PIC X VALUE "!".
       01  idx         PIC 99 VALUE 6.

       PROCEDURE DIVISION.
      $SET NOSSRANGE
           DISPLAY y (idx)
      *> Note: MF says "sets BOUND"
      $SET SSRANGE
           DISPLAY y (idx)
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:532: \$COMPILE -DTEST-SUBSCRIPT prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -DTEST-SUBSCRIPT prog.cob" "run_subscripts.at:532"
( $at_check_trace; $COMPILE -DTEST-SUBSCRIPT prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:532"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:533: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:533"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:17: error: subscript of 'y' out of bounds: 6
note: maximum subscript for 'y': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_subscripts.at:533"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_636
#AT_START_637
at_fn_group_banner 637 'run_subscripts.at:542' \
  "CALL with OCCURS DEPENDING ON" "                  " 4
at_xfail=no
(
  $as_echo "637. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog-main.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  parm.
           03  parm-size PIC S999 COMP.
           03  parm-str.
               05  parm-char PIC X OCCURS 0 TO 100 TIMES
                        DEPENDING ON parm-size.

       PROCEDURE DIVISION.
           MOVE 10 TO parm-size
           MOVE "Hi, there!" TO parm-str
           CALL "prog" USING parm
           .
       END PROGRAM prog-main.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       LINKAGE SECTION.
       01  parm.
           03  parm-size PIC S999 COMP.
           03  parm-str.
               05  parm-char PIC X OCCURS 0 TO 100 TIMES
                        DEPENDING ON parm-size.

       PROCEDURE DIVISION USING parm.
           DISPLAY FUNCTION TRIM(parm-str) WITH NO ADVANCING
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_subscripts.at:581: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_subscripts.at:581"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:581"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_subscripts.at:582: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_subscripts.at:582"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hi, there!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_subscripts.at:582"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_637
#AT_START_638
at_fn_group_banner 638 'run_refmod.at:25' \
  "Static reference-modification" "                  " 4
at_xfail=no
(
  $as_echo "638. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       PROCEDURE        DIVISION.
           DISPLAY X(1:1) ":" X(1:2) ":" X(1:3) ":" X(1:4) ":" X(1:)
           END-DISPLAY.
           DISPLAY X(2:1) ":" X(2:2) ":" X(2:3) ":" X(2:)
           END-DISPLAY.
           DISPLAY X(3:1) ":" X(3:2) ":" X(3:)
           END-DISPLAY.
           DISPLAY X(4:1) ":" X(4:)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:46: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:46"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:47: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:47"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "a:ab:abc:abcd:abcd
b:bc:bcd:bcd
c:cd:cd
d:d
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:47"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_638
#AT_START_639
at_fn_group_banner 639 'run_refmod.at:57' \
  "Dynamic reference-modification" "                 " 4
at_xfail=no
(
  $as_echo "639. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9.
       PROCEDURE        DIVISION.
           MOVE 1 TO I.
           DISPLAY X(I:1)
           END-DISPLAY.
           MOVE 4 TO I.
           DISPLAY X(I:1)
           END-DISPLAY.
           MOVE 1 TO I.
           DISPLAY X(1:I)
           END-DISPLAY.
           MOVE 4 TO I.
           DISPLAY X(1:I)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:83: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:83"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:84: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:84"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "a
d
a
abcd
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_639
#AT_START_640
at_fn_group_banner 640 'run_refmod.at:94' \
  "Offset underflow" "                               " 4
at_xfail=no
(
  $as_echo "640. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           DISPLAY X(I:1) NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:110: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:110"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:110"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:111: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:111"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:9: error: offset of 'X' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:111"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_640
#AT_START_641
at_fn_group_banner 641 'run_refmod.at:118' \
  "Offset overflow" "                                " 4
at_xfail=no
(
  $as_echo "641. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01.
          03 X          PIC X(4) VALUE "abcd".
          03 I          PIC 9 VALUE 5.
       PROCEDURE        DIVISION.
           DISPLAY X(I:1) NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:134: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:134"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:134"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:135: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:135"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:10: error: offset of 'X' out of bounds: 5, maximum: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:135"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_refmod.at:139: \$COBC -x prog.cob -o progb"
at_fn_check_prepare_dynamic "$COBC -x prog.cob -o progb" "run_refmod.at:139"
( $at_check_trace; $COBC -x prog.cob -o progb
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:139"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:140: \$COBCRUN_DIRECT ./progb"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progb" "run_refmod.at:140"
( $at_check_trace; $COBCRUN_DIRECT ./progb
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "5" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:140"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_641
#AT_START_642
at_fn_group_banner 642 'run_refmod.at:145' \
  "Length underflow" "                               " 4
at_xfail=no
(
  $as_echo "642. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
           DISPLAY X(1:I) NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:161: \$COMPILE -std=cobol2002 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2002 prog.cob" "run_refmod.at:161"
( $at_check_trace; $COMPILE -std=cobol2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:161"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:162: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:162"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:9: error: length of 'X' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:162"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 0.
       PROCEDURE        DIVISION.
       >> REF-MOD-ZERO-LENGTH
           DISPLAY X(1:I) NO ADVANCING.
       >> REF-MOD-ZERO-LENGTH OFF
           DISPLAY X(1:I) NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:181: \$COMPILE -fno-ref-mod-zero-length prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ref-mod-zero-length prog2.cob" "run_refmod.at:181"
( $at_check_trace; $COMPILE -fno-ref-mod-zero-length prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:181"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:182: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_refmod.at:182"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:11: error: length of 'X' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:182"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_642
#AT_START_643
at_fn_group_banner 643 'run_refmod.at:189' \
  "Length overflow" "                                " 4
at_xfail=no
(
  $as_echo "643. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 5.
       PROCEDURE        DIVISION.
           DISPLAY X(1:I) NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:205: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:205"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:205"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:206: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:206"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:9: error: length of 'X' out of bounds: 5, maximum: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:206"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 5.
       PROCEDURE        DIVISION.
           DISPLAY X(3:I) NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:223: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_refmod.at:223"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:223"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:224: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_refmod.at:224"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:9: error: length of 'X' out of bounds: 5, maximum: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:224"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_643
#AT_START_644
at_fn_group_banner 644 'run_refmod.at:231' \
  "Length overflow with offset (1)" "                " 4
at_xfail=no
(
  $as_echo "644. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 3.
       PROCEDURE        DIVISION.
           DISPLAY X(3:I) NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:246: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:246"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:246"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:247: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:247"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:9: error: length of 'X' out of bounds: 3, starting at: 3, maximum: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:247"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_644
#AT_START_645
at_fn_group_banner 645 'run_refmod.at:254' \
  "Length overflow with offset (2)" "                " 4
at_xfail=no
(
  $as_echo "645. $at_setup_line: testing $at_desc ..."
  $at_traceon



# verifies that the check is generated within conditions - simple IF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 3.
       PROCEDURE        DIVISION.
           IF X(3:I) <> SPACES
              DISPLAY X(3:I) NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:272: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:272"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:272"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:273: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:273"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:9: error: length of 'X' out of bounds: 3, starting at: 3, maximum: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:273"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_645
#AT_START_646
at_fn_group_banner 646 'run_refmod.at:280' \
  "Length overflow with offset (3)" "                " 4
at_xfail=no
(
  $as_echo "646. $at_setup_line: testing $at_desc ..."
  $at_traceon



# verifies that the check is generated within conditions - WHEN
# complex test for correct place and not raised if guarded by check

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 3.
       PROCEDURE        DIVISION.
           EVALUATE TRUE
           WHEN I < 2
            AND X(3:I) <> SPACES
              DISPLAY "1-" X(3:I) NO ADVANCING
           WHEN I < 2
           WHEN X(3:I) <> SPACES
              DISPLAY "2-" X(3:I) NO ADVANCING
           END-EVALUATE
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:305: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_refmod.at:305"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:305"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:306: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:306"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:14: error: length of 'X' out of bounds: 3, starting at: 3, maximum: 4
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:306"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_646
#AT_START_647
at_fn_group_banner 647 'run_refmod.at:313' \
  "enable / disable ref-mod check" "                 " 4
at_xfail=no
(
  $as_echo "647. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y PIC XXX VALUE "abc".
           03  z PIC X VALUE "d".
       01  len PIC 99 VALUE 2.

       PROCEDURE DIVISION.
           DISPLAY y (3:len)
                   WITH NO ADVANCING
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
                   WITH NO ADVANCING
           DISPLAY "."
                   WITH NO ADVANCING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:337: \$COMPILE -w -fno-ec=BOUND-REF-MOD prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w -fno-ec=BOUND-REF-MOD prog.cob" "run_refmod.at:337"
( $at_check_trace; $COMPILE -w -fno-ec=BOUND-REF-MOD prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:337"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:338: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:338"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "cd." | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:338"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:339: \$COMPILE -w -fno-ec=BOUND prog.cob -o progb"
at_fn_check_prepare_dynamic "$COMPILE -w -fno-ec=BOUND prog.cob -o progb" "run_refmod.at:339"
( $at_check_trace; $COMPILE -w -fno-ec=BOUND prog.cob -o progb
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:339"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:340: \$COBCRUN_DIRECT ./progb"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progb" "run_refmod.at:340"
( $at_check_trace; $COBCRUN_DIRECT ./progb
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "cd." | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:340"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:341: \$COMPILE -w prog.cob -o progc"
at_fn_check_prepare_dynamic "$COMPILE -w prog.cob -o progc" "run_refmod.at:341"
( $at_check_trace; $COMPILE -w prog.cob -o progc
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:341"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:342: \$COBCRUN_DIRECT ./progc"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progc" "run_refmod.at:342"
( $at_check_trace; $COBCRUN_DIRECT ./progc
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:13: error: length of 'y' out of bounds: 2, starting at: 3, maximum: 3
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:342"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y PIC X VALUE "a".
           03  z PIC X VALUE "b".
       01  len   PIC 99 VALUE 0.

       PROCEDURE DIVISION.
           DISPLAY y (1:len)
                   WITH NO ADVANCING
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
                   WITH NO ADVANCING
           DISPLAY "."
                   WITH NO ADVANCING
           MOVE    2 TO len
           DISPLAY y (1:len)
                   WITH NO ADVANCING
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
                   WITH NO ADVANCING
           DISPLAY "."
                   WITH NO ADVANCING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:374: \$COMPILE -w -fno-ec=BOUND-REF-MOD prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -w -fno-ec=BOUND-REF-MOD prog2.cob" "run_refmod.at:374"
( $at_check_trace; $COMPILE -w -fno-ec=BOUND-REF-MOD prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:374"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:375: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_refmod.at:375"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ".ab." | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:375"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:376: \$COMPILE -w -o prog2b prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -w -o prog2b prog2.cob" "run_refmod.at:376"
( $at_check_trace; $COMPILE -w -o prog2b prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:376"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:377: \$COBCRUN_DIRECT ./prog2b"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2b" "run_refmod.at:377"
( $at_check_trace; $COBCRUN_DIRECT ./prog2b
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:20: error: length of 'y' out of bounds: 2, maximum: 1
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "." | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:377"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:380: \$COMPILE -w -fno-ref-mod-zero-length -o prog2c prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -w -fno-ref-mod-zero-length -o prog2c prog2.cob" "run_refmod.at:380"
( $at_check_trace; $COMPILE -w -fno-ref-mod-zero-length -o prog2c prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:380"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:381: \$COBCRUN_DIRECT ./prog2c"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2c" "run_refmod.at:381"
( $at_check_trace; $COBCRUN_DIRECT ./prog2c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:13: error: length of 'y' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:381"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_647
#AT_START_648
at_fn_group_banner 648 'run_refmod.at:388' \
  "MF SSRANGE and NOSSRANGE directives" "            " 4
at_xfail=no
(
  $as_echo "648. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: SSRANGE directive is "initial" and must be specified
#       before IDENTIFICATION DIVISION

cat >prog.cob <<'_ATEOF'

      $SET NOSSRANGE
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y       PIC X VALUE SPACE.
           03  z       PIC X VALUE "!".
       01  n           PIC 9 VALUE 0.
       01  m           PIC 9 VALUE 2.

       PROCEDURE DIVISION.
           DISPLAY y (1:m) NO ADVANCING
           DISPLAY y (1:n) no ADVANCING
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:413: \$COBC -w -x -debug -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COBC -w -x -debug -std=mf prog.cob" "run_refmod.at:413"
( $at_check_trace; $COBC -w -x -debug -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:413"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:414: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_refmod.at:414"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " !" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:414"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog1.cob <<'_ATEOF'

      $SET SSRANGE"1"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. progb.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y       PIC X VALUE SPACE.
           03  z       PIC X VALUE "!".
       01  n           PIC 9 VALUE 0.
       01  m           PIC 9 VALUE 2.

       PROCEDURE DIVISION.
           DISPLAY y (1:m) NO ADVANCING
           DISPLAY y (1:n)
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:435: \$COBC -w -x -std=mf prog1.cob"
at_fn_check_prepare_dynamic "$COBC -w -x -std=mf prog1.cob" "run_refmod.at:435"
( $at_check_trace; $COBC -w -x -std=mf prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:435"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:436: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_refmod.at:436"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog1.cob:16: error: length of 'y' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " !" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:436"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

      $SET SSRANGE"2"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y       PIC X VALUE SPACE.
           03  z       PIC X VALUE "!".
       01  n           PIC 9 VALUE 0.
       01  m           PIC 9 VALUE 2.

       PROCEDURE DIVISION.
      $IF TEST-ZERO-LEN-REF-MOD DEFINED
           DISPLAY y (1:n)
      $END
           DISPLAY y (1:m)
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:461: \$COBC -w -x -std=mf -DTEST-ZERO-LEN-REF-MOD prog2.cob"
at_fn_check_prepare_dynamic "$COBC -w -x -std=mf -DTEST-ZERO-LEN-REF-MOD prog2.cob" "run_refmod.at:461"
( $at_check_trace; $COBC -w -x -std=mf -DTEST-ZERO-LEN-REF-MOD prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:461"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:462: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_refmod.at:462"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:16: error: length of 'y' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:462"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_refmod.at:466: \$COBC -w -x -std=mf -o prog2b prog2.cob"
at_fn_check_prepare_dynamic "$COBC -w -x -std=mf -o prog2b prog2.cob" "run_refmod.at:466"
( $at_check_trace; $COBC -w -x -std=mf -o prog2b prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:466"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:467: \$COBCRUN_DIRECT ./prog2b"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2b" "run_refmod.at:467"
( $at_check_trace; $COBCRUN_DIRECT ./prog2b
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:18: error: length of 'y' out of bounds: 2, maximum: 1
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:467"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

      $SET SSRANGE"3"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x.
           03  y       PIC X VALUE SPACE.
           03  z       PIC X VALUE "!".
       01  n           PIC 9 VALUE 0.
       01  m           PIC 9 VALUE 2.

       PROCEDURE DIVISION.
           DISPLAY y (1:n) NO ADVANCING
           DISPLAY y (1:m)
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_refmod.at:490: \$COBC -w -x -std=mf prog3.cob"
at_fn_check_prepare_dynamic "$COBC -w -x -std=mf prog3.cob" "run_refmod.at:490"
( $at_check_trace; $COBC -w -x -std=mf prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_refmod.at:490"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_refmod.at:491: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_refmod.at:491"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog3.cob:16: error: length of 'y' out of bounds: 2, maximum: 1
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_refmod.at:491"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_648
#AT_START_649
at_fn_group_banner 649 'run_accept.at:29' \
  "ACCEPT OMITTED (simple)" "                        " 4
at_xfail=no
(
  $as_echo "649. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       PROCEDURE      DIVISION.
           ACCEPT OMITTED.
_ATEOF


cat >input.txt <<'_ATEOF'

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_accept.at:42: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_accept.at:42"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:42"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:43: \$COBCRUN_DIRECT ./prog < input.txt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog < input.txt" "run_accept.at:43"
( $at_check_trace; $COBCRUN_DIRECT ./prog < input.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_649
#AT_START_650
at_fn_group_banner 650 'run_accept.at:51' \
  "ACCEPT FROM TIME / DATE / DAY / DAY-OF-WEEK (1)" "" 4
at_xfail=no
(
  $as_echo "650. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *> one byte longer to make sure there is no garbage in
       01 X             PIC X(9).
       PROCEDURE        DIVISION.
           ACCEPT X FROM TIME
           END-ACCEPT
           IF X (1:2) >= "00" AND <= "23" AND
              X (3:2) >= "00" AND <= "59" AND
              X (5:2) >= "00" AND <= "60" AND
              X (7:2) >= "00" AND <= "99" AND
              X (9: )  = SPACE
              CONTINUE
           ELSE
              DISPLAY "TIME " X "!"
              END-DISPLAY
           END-IF
           ACCEPT X FROM DATE
           END-ACCEPT
           INSPECT X CONVERTING "012345678" TO "999999999"
           IF X NOT = "999999"
              DISPLAY "DATE " X "!"
              END-DISPLAY
           END-IF
           ACCEPT X FROM DATE YYYYMMDD
           END-ACCEPT
           INSPECT X CONVERTING "012345678" TO "999999999"
           IF X NOT = "99999999"
              DISPLAY "YYYYMMDD " X "!"
              END-DISPLAY
           END-IF
           ACCEPT X FROM DAY
           END-ACCEPT
           INSPECT X CONVERTING "012345678" TO "999999999"
           IF X NOT = "99999"
              DISPLAY "DAY " X "!"
              END-DISPLAY
           END-IF
           ACCEPT X FROM DAY YYYYDDD
           END-ACCEPT
           INSPECT X CONVERTING "012345678" TO "999999999"
           IF X NOT = "9999999"
              DISPLAY "YYYYDDD " X "!"
              END-DISPLAY
           END-IF
           ACCEPT X FROM DAY-OF-WEEK
           END-ACCEPT
           INSPECT X CONVERTING "1234567" TO "9999999"
           IF X NOT = "9"
              DISPLAY "DAY-OF-WEEK " X "!"
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_accept.at:112: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_accept.at:112"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:113: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_accept.at:113"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:113"
$at_failed && at_fn_log_failure
$at_traceon; }


# testing all variants for the offset (to not break anything hard,
# actual testing of the values need a bigger test in COBOL)
{ set +x
$as_echo "$at_srcdir/run_accept.at:117: COB_CURRENT_DATE=\"YYYYMMDDHHMMSS+01:00\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:117"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSS+01:00" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:117"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:119: COB_CURRENT_DATE=\"YYYYMMDDHHMMSS-0115\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:119"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSS-0115" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:119"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:121: COB_CURRENT_DATE=\"YYYYMMDDHHMMSS+02\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:121"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSS+02" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:121"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:123: COB_CURRENT_DATE=\"YYYYMMDDHHMMSSZ\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:123"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSSZ" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:123"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:125: COB_CURRENT_DATE=\"YYYYMMDDHHMMSS-011569\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:125"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSS-011569" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: COB_CURRENT_DATE 'YYYYMMDDHHMMSS-011569' is invalid
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:125"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:129: COB_CURRENT_DATE=\"YYYYMMDDHHMMSS+01:0000\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:129"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSS+01:0000" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: COB_CURRENT_DATE 'YYYYMMDDHHMMSS+01:0000' is invalid
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:129"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:133: COB_CURRENT_DATE=\"YYYYMMDDHHMMSS-010A\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:133"
( $at_check_trace; COB_CURRENT_DATE="YYYYMMDDHHMMSS-010A" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: COB_CURRENT_DATE 'YYYYMMDDHHMMSS-010A' is invalid
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_650
#AT_START_651
at_fn_group_banner 651 'run_accept.at:141' \
  "ACCEPT FROM TIME / DATE / DAY / DAY-OF-WEEK (2)" "" 4
at_xfail=no
(
  $as_echo "651. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       *> one byte longer to make sure there is no garbage in
       01  WS-YYYYMMDD   PIC X(9).
       01  WS-YYYYDDD    PIC X(8).
       01  WS-DAYOFWEEK  PIC X(2).
       01  WS-DATE-TODAY.
           05  WS-TODAYS-YY            PIC 9(02) VALUE 0.
           05  WS-TODAYS-MM            PIC 9(02) VALUE 0.
           05  WS-TODAYS-DD            PIC 9(02) VALUE 0.
       01  WS-DATE-TODAY-9  REDEFINES WS-DATE-TODAY PIC 9(06).

       01  WS-DATE.
           05  WS-DATE-MM              PIC 9(02) VALUE 0.
           05  FILLER                  PIC X(01) VALUE '/'.
           05  WS-DATE-DD              PIC 9(02) VALUE 0.
           05  FILLER                  PIC X(01) VALUE '/'.
           05  WS-DATE-YY              PIC 9(02) VALUE 0.

       01  WS-TIME-NOW.
           05  WS-NOW-HH               PIC 9(02) VALUE 0.
           05  WS-NOW-MM               PIC 9(02) VALUE 0.
           05  WS-NOW-SS               PIC 9(02) VALUE 0.
           05  WS-NOW-HS               PIC 9(02) VALUE 0.
       01  WS-TIME-NOW-9  REDEFINES WS-TIME-NOW PIC 9(08).

       01  WS-TIME.
           05  WS-TIME-HH              PIC 9(02) VALUE 0.
           05  FILLER                  PIC X(01) VALUE ':'.
           05  WS-TIME-MM              PIC 9(02) VALUE 0.
           05  FILLER                  PIC X(01) VALUE ':'.
           05  WS-TIME-SS              PIC 9(02) VALUE 0.

       01  WS-MICROSECOND-TIME.
           05 WS-TIME-MICRO            PIC 9(14).

       PROCEDURE DIVISION.
           PERFORM RUN-TEST.
           PERFORM RUN-VALIDATION.
       >> IF CHECK-PERF IS DEFINED
      *>   included performance check
           PERFORM RUN-TEST 50000 TIMES
       >> END-IF
           GOBACK.

        RUN-TEST.
            ACCEPT WS-DATE-TODAY-9      FROM DATE.
            ACCEPT WS-TIME-NOW-9        FROM TIME.
            ACCEPT WS-TIME-MICRO        FROM MICROSECOND-TIME.

        RUN-VALIDATION.
      *>   actual verification
           MOVE WS-TODAYS-YY TO WS-DATE-YY
           MOVE WS-TODAYS-MM TO WS-DATE-MM
           MOVE WS-TODAYS-DD TO WS-DATE-DD
           MOVE WS-NOW-HH    TO WS-TIME-HH
           MOVE WS-NOW-MM    TO WS-TIME-MM
           MOVE WS-NOW-SS    TO WS-TIME-SS
           DISPLAY 'PROCESS DATE/TIME : ' WS-DATE ' ' WS-TIME
                   WITH NO ADVANCING UPON SYSOUT
           END-DISPLAY
           DISPLAY ' MICROSECOND-TIME '
                   WITH NO ADVANCING UPON SYSOUT
           END-DISPLAY
           DISPLAY WS-MICROSECOND-TIME
                   WITH NO ADVANCING UPON SYSOUT
           END-DISPLAY
           DISPLAY '.' UPON SYSOUT.
      *>   Bigger fields return 8/12 depending on std
      *>   CHECKME: we may should limit to 6 depending on std, too
           ACCEPT WS-TIME-MICRO FROM TIME
           DISPLAY 'PROCESS BIG TIME : '
                   WITH NO ADVANCING UPON SYSOUT
           DISPLAY WS-MICROSECOND-TIME UPON SYSOUT.
           ACCEPT WS-YYYYMMDD   FROM DATE YYYYMMDD
           IF WS-YYYYMMDD not = "20150405"
              DISPLAY 'Wrong date DATE YYYYMMDD: ' WS-YYYYMMDD
                      ' expected: 20150405'
                      UPON SYSERR.
           ACCEPT WS-YYYYDDD    FROM DAY  YYYYDDD
           IF WS-YYYYDDD  not = "2015095"
              DISPLAY 'Wrong date YYYYDDD:  '      WS-YYYYDDD
                      ' expected: 2015095'
                      UPON SYSERR.
           ACCEPT WS-DAYOFWEEK    FROM DAY-OF-WEEK
           IF WS-DAYOFWEEK  not = "7"
              DISPLAY 'Wrong date DAYOFWEEK: '     WS-DAYOFWEEK
                      ' expected: 7'
                      UPON SYSERR.
       *>
           PERFORM 500 TIMES
              ACCEPT WS-DATE-TODAY        FROM DATE
              ACCEPT WS-TIME-NOW          FROM TIME
              ACCEPT WS-MICROSECOND-TIME  FROM MICROSECOND-TIME
           END-PERFORM
           MOVE WS-TODAYS-YY TO WS-DATE-YY
           MOVE WS-TODAYS-MM TO WS-DATE-MM
           MOVE WS-TODAYS-DD TO WS-DATE-DD
           MOVE WS-NOW-HH    TO WS-TIME-HH
           MOVE WS-NOW-MM    TO WS-TIME-MM
           MOVE WS-NOW-SS    TO WS-TIME-SS
           DISPLAY 'PROCESS DATE/TIME : ' WS-DATE ' ' WS-TIME
                   WITH NO ADVANCING UPON SYSOUT
           END-DISPLAY
           DISPLAY ' MICROSECOND-TIME '
                   WITH NO ADVANCING UPON SYSOUT
           END-DISPLAY
           DISPLAY WS-MICROSECOND-TIME
                   WITH NO ADVANCING UPON SYSOUT
           END-DISPLAY
           DISPLAY '.' UPON SYSOUT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_accept.at:260: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_accept.at:260"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:260"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_accept.at:262: COB_CURRENT_DATE='2015/04/05 18:45:22.123400056' \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:262"
( $at_check_trace; COB_CURRENT_DATE='2015/04/05 18:45:22.123400056' \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "PROCESS DATE/TIME : 04/05/15 18:45:22 MICROSECOND-TIME 00184522123400.
PROCESS BIG TIME : 00000018452212
PROCESS DATE/TIME : 04/05/15 18:45:22 MICROSECOND-TIME 184522123400  .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:262"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_accept.at:269: \$COMPILE -std=acu -o proga prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=acu -o proga prog.cob" "run_accept.at:269"
( $at_check_trace; $COMPILE -std=acu -o proga prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:269"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_accept.at:271: COB_CURRENT_DATE='2015/04/05 18:45:22.123400056' \\
\$COBCRUN_DIRECT ./proga"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:271"
( $at_check_trace; COB_CURRENT_DATE='2015/04/05 18:45:22.123400056' \
$COBCRUN_DIRECT ./proga
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "PROCESS DATE/TIME : 04/05/15 18:45:22 MICROSECOND-TIME 00184522123400.
PROCESS BIG TIME : 00184522123400
PROCESS DATE/TIME : 04/05/15 18:45:22 MICROSECOND-TIME 184522123400  .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:271"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_651
#AT_START_652
at_fn_group_banner 652 'run_accept.at:283' \
  "ACCEPT DATE / DAY and intrinsic functions (1)" "  " 4
at_xfail=no
(
  $as_echo "652. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *> one byte longer to make sure there is no garbage in
       01  WS-YYYYMMDD   PIC 9(9).
       01  WS-YYYYDDD    PIC 9(8).
       PROCEDURE        DIVISION.
           ACCEPT WS-YYYYMMDD FROM DATE YYYYMMDD
           END-ACCEPT
           ACCEPT WS-YYYYDDD  FROM DAY  YYYYDDD
           END-ACCEPT
           IF    FUNCTION INTEGER-OF-DATE (WS-YYYYMMDD)
           NOT = FUNCTION INTEGER-OF-DAY  (WS-YYYYDDD)
              DISPLAY "DIFFERENCES FOUND!"
              END-DISPLAY
              DISPLAY "YYYYMMDD = " WS-YYYYMMDD ", "
                      "YYYYDDD = " WS-YYYYDDD
              END-DISPLAY
              DISPLAY "INTEGER-OF-DATE = "
                      FUNCTION INTEGER-OF-DATE (WS-YYYYMMDD) ", "
                      "INTEGER-OF-DAY = "
                      FUNCTION INTEGER-OF-DAY  (WS-YYYYDDD)
              END-DISPLAY
              MOVE 1 TO RETURN-CODE
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_accept.at:316: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_accept.at:316"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:316"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:317: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_accept.at:317"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:317"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_652
#AT_START_653
at_fn_group_banner 653 'run_accept.at:320' \
  "ACCEPT DATE / DAY and intrinsic functions (2)" "  " 4
at_xfail=no
(
  $as_echo "653. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: verify via COB_CURRENT_DATE that the values are resolved correctly

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *> one byte longer to make sure there is no garbage in
       01  WS-YYYYMMDD   PIC 9(9).
       01  WS-YYYYDDD    PIC 9(8).
       PROCEDURE        DIVISION.
           ACCEPT WS-YYYYMMDD FROM DATE YYYYMMDD
           END-ACCEPT
           ACCEPT WS-YYYYDDD  FROM DAY  YYYYDDD
           END-ACCEPT
           IF    FUNCTION INTEGER-OF-DATE (WS-YYYYMMDD)
           NOT = FUNCTION INTEGER-OF-DAY  (WS-YYYYDDD)
              DISPLAY "DIFFERENCES FOUND!"
              END-DISPLAY
              DISPLAY "YYYYMMDD = " WS-YYYYMMDD ", "
                      "YYYYDDD = " WS-YYYYDDD
              END-DISPLAY
              DISPLAY "INTEGER-OF-DATE = "
                      FUNCTION INTEGER-OF-DATE (WS-YYYYMMDD) ", "
                      "INTEGER-OF-DAY = "
                      FUNCTION INTEGER-OF-DAY  (WS-YYYYDDD)
              END-DISPLAY
              MOVE 1 TO RETURN-CODE
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_accept.at:355: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_accept.at:355"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:355"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:356: COB_CURRENT_DATE='2020/06/12 18:45:22' \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_accept.at:356"
( $at_check_trace; COB_CURRENT_DATE='2020/06/12 18:45:22' \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:356"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_653
#AT_START_654
at_fn_group_banner 654 'run_accept.at:367' \
  "ACCEPT OMITTED (SCREEN)" "                        " 4
at_xfail=no
(
  $as_echo "654. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/run_accept.at:370: test \"\$COB_HAS_CURSES\" = \"yes\" || exit 77"
at_fn_check_prepare_dynamic "test \"$COB_HAS_CURSES\" = \"yes\" || exit 77" "run_accept.at:370"
( $at_check_trace; test "$COB_HAS_CURSES" = "yes" || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:370"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA           DIVISION.
       SCREEN         SECTION.
       01  scr.
           03  VALUE "Hello!" LINE 3 COL 3.

       PROCEDURE      DIVISION.
           ACCEPT OMITTED
           END-ACCEPT.
_ATEOF


cat >input.txt <<'_ATEOF'

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_accept.at:389: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_accept.at:389"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:389"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_accept.at:390: \$COBCRUN_DIRECT ./prog < input.txt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog < input.txt" "run_accept.at:390"
( $at_check_trace; $COBCRUN_DIRECT ./prog < input.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_accept.at:390"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_654
#AT_START_655
at_fn_group_banner 655 'run_initialize.at:29' \
  "INITIALIZE group entry with OCCURS" "             " 4
at_xfail=no
(
  $as_echo "655. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 G2          OCCURS 2.
           03 X1        PIC X.
           03 X2        PIC 9.
       PROCEDURE        DIVISION.
           MOVE SPACE TO G1.
           INITIALIZE G2 (2).
           IF G1 NOT = "   0"
              DISPLAY G1 NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:51: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:51"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:51"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:52: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:52"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:52"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_655
#AT_START_656
at_fn_group_banner 656 'run_initialize.at:57' \
  "INITIALIZE OCCURS with numeric edited" "          " 4
at_xfail=no
(
  $as_echo "656. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 G2          OCCURS 5.
           03 X         PIC Z9.
       PROCEDURE        DIVISION.
           INITIALIZE G1
           MOVE 5  TO X(1)
           MOVE 99 TO X(3)
           IF G1 NOT = " 5 099 0 0"
              DISPLAY 'MOVE "' G1 '"'
              END-DISPLAY
           END-IF
           INITIALIZE G1
           IF G1 NOT = " 0 0 0 0 0"
              DISPLAY 'INIT "' G1 '"'
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:84: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:84"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:85: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:85"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:85"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_656
#AT_START_657
at_fn_group_banner 657 'run_initialize.at:90' \
  "INITIALIZE OCCURS with SIGN LEADING / TRAILING" " " 4
at_xfail=no
(
  $as_echo "657. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 FILLER      OCCURS 2.
           03 X         PIC S9 SIGN LEADING  SEPARATE.
         02 FILLER      OCCURS 2.
           03 Y         PIC S9 SIGN TRAILING SEPARATE.
      *> definition taken from NC1184.2
       01  MINUS-NAMES SIGN IS TRAILING SEPARATE CHARACTER.
         02 MINUS-NAMES-1.
           03  MINUS-NAME1 PIC  S9(18) VALUE -999999999999999999.
           03  EVEN-NAME1  PIC  S9(18) VALUE +1.
           03  PLUS-NAME1  PIC  S9(18) VALUE +999999999999999999.
         02 MINUS-NAMES-2.
           03  MINUS-NAME3 PIC SV9(18) VALUE -.999999999999999999.
           03  EVEN-NAME2  PIC SV9(18) VALUE +.1.
           03  PLUS-NAME3  PIC SV9(18) VALUE +.999999999999999999.
       PROCEDURE        DIVISION.
           INITIALIZE G1
           MOVE 5    TO X(1), PLUS-NAME1
           MOVE -9   TO Y(2), MINUS-NAME1
           IF G1 NOT = "+5+00+9-"
              DISPLAY 'MOVE G "' G1 '"'
              END-DISPLAY
           END-IF
           MOVE .123 TO PLUS-NAME3
           IF MINUS-NAMES-1 NOT =
           "000000000000000009-000000000000000001+000000000000000005+"
           OR MINUS-NAMES-2 NOT =
           "999999999999999999-100000000000000000+123000000000000000+"
              DISPLAY 'MOVE MN1 "' MINUS-NAMES-1 '"'
              END-DISPLAY
              DISPLAY 'MOVE MN2 "' MINUS-NAMES-2 '"'
              END-DISPLAY
           END-IF
           INITIALIZE G1, MINUS-NAMES
           IF G1 NOT = "+0+00+0+"
              DISPLAY 'INIT G1 "' G1 '"'
              END-DISPLAY
           END-IF
           IF MINUS-NAMES-1 NOT =
           "000000000000000000+000000000000000000+000000000000000000+"
           OR MINUS-NAMES-2 NOT =
           "000000000000000000+000000000000000000+000000000000000000+"
              DISPLAY 'MOVE MN1 "' MINUS-NAMES-1 '"'
              END-DISPLAY
              DISPLAY 'MOVE MN2 "' MINUS-NAMES-2 '"'
              END-DISPLAY
           END-IF
           MOVE .123 TO PLUS-NAME3
           MOVE -.456 TO MINUS-NAME3
           DISPLAY PLUS-NAME3  END-DISPLAY
           DISPLAY MINUS-NAME3 END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:152: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:152"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:152"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:153: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:153"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ".123000000000000000+
.456000000000000000-
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:153"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_657
#AT_START_658
at_fn_group_banner 658 'run_initialize.at:161' \
  "INITIALIZE complex group (1)" "                   " 4
at_xfail=no
(
  $as_echo "658. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X.
         02 G2          OCCURS 2.
           03 Y         PIC 9.
         02 Z           PIC 9.
       PROCEDURE        DIVISION.
           INITIALIZE G1.
           IF G1 NOT = " 000"
              DISPLAY "Test failed: " G1 "."
              DISPLAY "  should be: "
                      " 000.".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:183: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:183"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:183"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:184: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:184"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:184"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_658
#AT_START_659
at_fn_group_banner 659 'run_initialize.at:189' \
  "INITIALIZE complex group (2)" "                   " 4
at_xfail=no
(
  $as_echo "659. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 G2          OCCURS 2.
           03 X         PIC 9.
           03 Y         PIC X OCCURS 2.
           03 Z         PIC X.
       PROCEDURE        DIVISION.
           INITIALIZE G1.
           IF G1 NOT = "0   0   "
              DISPLAY "Test failed: " G1 "."
              DISPLAY "  should be: "
                      "0   0   .".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:211: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:211"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:211"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:212: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:212"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:212"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_659
#AT_START_660
at_fn_group_banner 660 'run_initialize.at:217' \
  "initial value for group item with VALUE" "        " 4
at_xfail=no
(
  $as_echo "660. $at_setup_line: testing $at_desc ..."
  $at_traceon



# see bug #694

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 G2          OCCURS 3.
           03 X         PIC 9 VALUE ZERO.
           03 Y.
             04 Y-REC   OCCURS 5.
              05  Y1    PIC 9 VALUE 9.
              05  Y2    PIC X VALUE 'Y'.
           03 Z         PIC X VALUE 'Z'.
       PROCEDURE        DIVISION.
           IF G NOT = "09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ"
              DISPLAY "Test failed: " G "."
              DISPLAY "  should be: "
                      "09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ.".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:243: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:243"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:243"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:244: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:244"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:244"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_660
#AT_START_661
at_fn_group_banner 661 'run_initialize.at:249' \
  "Value for group item with VALUE" "                " 4
at_xfail=no
(
  $as_echo "661. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'
       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *01 FAILED        PIC 9(4) COMP-5 VALUE ZERO.
       01 G.
         02 G2          OCCURS 3.
           03 X         PIC 9 VALUE ZERO.
           03 Y.
             04 Y-REC   OCCURS 5.
              05  Y1    PIC 9 VALUE 9.
              05  Y2    PIC X VALUE 'Y'.
           03 Z         PIC X VALUE 'Z'.
       PROCEDURE        DIVISION.
           IF G NOT = "09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ"
              DISPLAY "Compile failed: " G "."
              DISPLAY "     should be: "
                      "09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ."
      *       ADD 1 TO FAILED
           END-IF.
           INITIALIZE G.
           IF G NOT = "00 0 0 0 0  00 0 0 0 0  00 0 0 0 0  "
              DISPLAY "INITIALIZE failed: " G "."
              DISPLAY "        should be: "
                      "00 0 0 0 0  00 0 0 0 0  00 0 0 0 0  ."
      *       ADD 1 TO FAILED
           END-IF.
           INITIALIZE G ALL TO VALUE.
           IF G NOT = "09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ"
              DISPLAY "INIT VALUE failed: " G "."
              DISPLAY "        should be: "
                      "09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ09Y9Y9Y9Y9YZ."
      *       ADD 1 TO FAILED
           END-IF.
      *    IF FAILED = ZERO
      *       DISPLAY "All INITIALIZE tests passed."
      *    END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:292: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:292"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:292"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:293: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:293"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:293"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_661
#AT_START_662
at_fn_group_banner 662 'run_initialize.at:298' \
  "INITIALIZE group item" "                          " 4
at_xfail=no
(
  $as_echo "662. $at_setup_line: testing $at_desc ..."
  $at_traceon



# see bug #694

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 G2          OCCURS 3.
           03 X         PIC 9.
           03 Y.
             04 Y-REC   OCCURS 5.
              05  Y1    PIC 9 VALUE 9.
              05  Y2    PIC X VALUE 'Y'.
           03 Z         PIC X VALUE 'Z'.
       PROCEDURE        DIVISION.
           MOVE ALL "A" TO G2(1)
           MOVE ALL "B" TO G2(2)
           MOVE ALL "C" TO G2(3)
           INITIALIZE Y (2).
           IF G NOT = "AAAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC"
              DISPLAY "Test 1 failed: " G "."
              DISPLAY "    should be: "
                      "AAAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC.".
           MOVE ALL "A" TO G2(1)
           MOVE ALL "B" TO G2(2)
           MOVE ALL "C" TO G2(3)
           MOVE 2       TO X(1)
           INITIALIZE Y (X(1)).
           IF G NOT = "2AAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC"
              DISPLAY "Test 2 failed: " G "."
              DISPLAY "    should be: "
                      "2AAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC.".
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 NUM           PIC 9 COMP-5 VALUE 3.
       01 G.
         02 G2          OCCURS 0 TO 3 DEPENDING ON NUM.
           03 X         PIC 9.
           03 Y.
             04 Y-REC   OCCURS 5.
              05  Y1    PIC 9 VALUE 9.
              05  Y2    PIC X VALUE 'Y'.
           03 Z         PIC X VALUE 'Z'.
       PROCEDURE        DIVISION.
           MOVE ALL "A" TO G2(1)
           MOVE ALL "B" TO G2(2)
           MOVE ALL "C" TO G2(3)
           INITIALIZE Y (2).
           IF G NOT = "AAAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC"
              DISPLAY "Test 1 failed: " G "."
              DISPLAY "    should be: "
                      "AAAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC.".
           MOVE ALL "A" TO G2(1)
           MOVE ALL "B" TO G2(2)
           MOVE ALL "C" TO G2(3)
           MOVE 2       TO X(1)
           INITIALIZE Y (X(1)).
           IF G NOT = "2AAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC"
              DISPLAY "Test 2 failed: " G "."
              DISPLAY "    should be: "
                      "2AAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC.".
           STOP RUN.
_ATEOF


# FIXME: finish test later, using both ODOSLIDE (ibm)
#        and complex-odo alone (GC)...
#AT_DATA([prog3.cob], [
#       IDENTIFICATION   DIVISION.
#       PROGRAM-ID.      prog3.
#       DATA             DIVISION.
#       WORKING-STORAGE  SECTION.
#       77 NUM           PIC 9 COMP-5 VALUE 3.
#       77 NUM2          PIC 9 COMP-5 VALUE 5.
#       01 G.
#         02 G2          OCCURS 0 TO 3 DEPENDING ON NUM.
#           03 X         PIC 9.
#           03 Y         PIC X VALUE 'Z'.
#           03 Z         OCCURS 1 TO 6 DEPENDING ON NUM2.
#              05  Z1    PIC 9 VALUE 9.
#              05  Z2    PIC X.
#       PROCEDURE        DIVISION.
#           MOVE ALL "A" TO G2(1)
#           MOVE ALL "B" TO G2(2)
#           MOVE ALL "C" TO G2(3)
#           INITIALIZE Y (2).
#           IF G NOT = "AAAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC"
#              DISPLAY "Test 1 failed: " G ".".
#           MOVE ALL "A" TO G2(1)
#           MOVE ALL "B" TO G2(2)
#           MOVE ALL "C" TO G2(3)
#           MOVE 2       TO X(1)
#           INITIALIZE Y (X(1)).
#           IF G NOT = "2AAAAAAAAAAAB0 0 0 0 0 BCCCCCCCCCCCC"
#              DISPLAY "Test 2 failed: " G ".".
#           STOP RUN.
#])

{ set +x
$as_echo "$at_srcdir/run_initialize.at:405: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:405"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:405"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:406: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:406"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:406"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:407: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_initialize.at:407"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:407"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:408: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_initialize.at:408"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:408"
$at_failed && at_fn_log_failure
$at_traceon; }

#AT_CHECK([$COMPILE -std=ibm prog3.cob], [0], [], [])
#AT_CHECK([$COBCRUN_DIRECT ./prog3], [0], [], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_662
#AT_START_663
at_fn_group_banner 663 'run_initialize.at:415' \
  "INITIALIZE with REDEFINES" "                      " 4
at_xfail=no
(
  $as_echo "663. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC X.
         02 Y           REDEFINES X PIC 9.
         02 Z           PIC 9.
       PROCEDURE        DIVISION.
           INITIALIZE G1.
           IF G1 NOT = " 0"
              DISPLAY G1 NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:436: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:436"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:436"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:437: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:437"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:437"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_663
#AT_START_664
at_fn_group_banner 664 'run_initialize.at:442' \
  "INITIALIZE with FILLER" "                         " 4
at_xfail=no
(
  $as_echo "664. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G1.
         02 X           PIC 99.
         02 FILLER      PIC X.
         02 Z           PIC 99.
       01 MY-FILLER.
         02 FILLER      PIC 9(6) VALUE 12345.
       PROCEDURE        DIVISION.
           MOVE ALL   'A' TO G1.
           INITIALIZE G1.
           IF G1 NOT = "00A00"
              DISPLAY "G1 (INIT): " G1
              END-DISPLAY
           END-IF.
           MOVE ALL   'A' TO G1.
           INITIALIZE G1  WITH FILLER.
           IF G1 NOT = "00 00"
              DISPLAY "G1 (INIT FILLER):"   G1
              END-DISPLAY
           END-IF.

           INITIALIZE MY-FILLER
           IF MY-FILLER NOT = "012345"
              DISPLAY "MY-FILLER (INIT): " MY-FILLER
              END-DISPLAY
           END-IF

           INITIALIZE MY-FILLER WITH FILLER
           IF MY-FILLER NOT = "000000"
              DISPLAY "MY-FILLER (INIT FILLER): " MY-FILLER
              END-DISPLAY
           END-IF

           INITIALIZE MY-FILLER ALL TO VALUE
           IF MY-FILLER NOT = "000000"
              DISPLAY "MY-FILLER (INIT TO VAL): " MY-FILLER
              END-DISPLAY
           END-IF

           INITIALIZE MY-FILLER WITH FILLER ALL TO VALUE
           IF MY-FILLER NOT = "012345"
              DISPLAY "MY-FILLER (INIT FILLER TO VAL): " MY-FILLER
              END-DISPLAY
           END-IF

           INITIALIZE MY-FILLER (2:3)
           IF MY-FILLER NOT = "0   45"
              DISPLAY "MY-FILLER (REF-MOD): " MY-FILLER
              END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:503: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:503"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:503"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:504: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:504"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:504"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_664
#AT_START_665
at_fn_group_banner 665 'run_initialize.at:509' \
  "INITIALIZE of EXTERNAL data items" "              " 4
at_xfail=no
(
  $as_echo "665. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR-01    PIC X(5) EXTERNAL.
       01 EXT-VAR-GRP   EXTERNAL.
         02  EXT-FIELD1 PIC 999.
         02  EXT-FIELD2 PIC x(4).
         02  EXT-FIELD3 PIC 9(6).
         02  EXT-FIELD4 PIC s9(5)v99.
       PROCEDURE        DIVISION.
           MOVE "MOVE"  TO EXT-VAR-01.
           MOVE 1       TO EXT-FIELD1.
           MOVE "X"     TO EXT-FIELD2.
           MOVE 123     TO EXT-FIELD3.
           MOVE -2.1    TO EXT-FIELD4.
           INITIALIZE EXT-VAR-01.
           INITIALIZE EXT-VAR-GRP.
           IF EXT-VAR-01 NOT = SPACES
              DISPLAY "EXT-VAR-01 " EXT-VAR-01
              END-DISPLAY
           END-IF.
           IF EXT-FIELD1 NOT = ZERO
              DISPLAY "EXT-FIELD1 " EXT-FIELD1
              END-DISPLAY
           END-IF.
           IF EXT-FIELD2 NOT = SPACES
              DISPLAY "EXT-FIELD2 " EXT-FIELD2
              END-DISPLAY
           END-IF.
           IF EXT-FIELD3 NOT = ZERO
              DISPLAY "EXT-FIELD3 " EXT-FIELD3
              END-DISPLAY
           END-IF.
           IF EXT-FIELD4 NOT = ZERO
              DISPLAY "EXT-FIELD4 " EXT-FIELD4
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:554: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:554"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:554"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:555: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:555"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:555"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_665
#AT_START_666
at_fn_group_banner 666 'run_initialize.at:560' \
  "INITIALIZE with reference-modification" "         " 4
at_xfail=no
(
  $as_echo "666. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MY-FLD       PIC X(6) VALUE "ABCDEF".
       01  MY-OTHER-FLD PIC 9(4) VALUE ZERO.
       PROCEDURE        DIVISION.
       ASTART SECTION.
       A01.
           INITIALIZE MY-FLD (1:2).
           IF MY-FLD NOT = "  CDEF"
              DISPLAY "MY-FLD: " MY-FLD
              END-DISPLAY
           END-IF

      *>  note: INITIALIZE with refmod => handle field as alphanumeric
           INITIALIZE MY-OTHER-FLD (2:2)
           MOVE "0  0" TO MY-FLD
           IF MY-OTHER-FLD NOT = MY-FLD (1:4)
               DISPLAY "MY-OTHER-FLD: " MY-OTHER-FLD
               END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:590: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:590"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:590"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:591: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:591"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:591"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_666
#AT_START_667
at_fn_group_banner 667 'run_initialize.at:596' \
  "INITIALIZE big table with VALUE" "                " 4
at_xfail=no
(
  $as_echo "667. $at_setup_line: testing $at_desc ..."
  $at_traceon



# some versions stumbled over tables like these and initialized
# every field on its own - which generates ultiple MB C source
# also most versions took the VALUE definitions "extra", even
# when they match -fno-defaultbyte

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  T01-ALL.
           05 T01-REC OCCURS 10.
              10 T01-SOMEBER                PIC X(500) VALUE SPACES.
              10 T01-ENTRY.
                 15 T01-TAB OCCURS 2200.
                    20 T01-NAME             PIC  X(020).
                    20 T01-DETREC.
                       25 T01-DETTAB OCCURS 47.
                          30 T01-SHL        PIC  X(001) value 'A'.
                          30 T01-LEN        USAGE BINARY-INT VALUE 0.
                          30 T01-CODE1      PIC S999 COMP-5.
                          30 T01-CODE2      PIC S999 COMP-5  VALUE 0.
                          30 T01-CODE3      PIC S999 COMP-5  VALUE 42.
                          30 T01-PREF       PIC  X(001).
                          30 T01-TXT1       PIC  X(020) VALUE ALL ' '.
                          30 T01-TXT2       PIC  X(020).
                          30 T01-TXT3       PIC  X(020) VALUE ALL '3'.
                       25 T02-DETTAB OCCURS 33.
                          30 T02-LEN        USAGE BINARY-INT SIGNED.
                          30 T02-CODE1      PIC S999 COMP-5.
                          30 T02-CODE2      PIC S999 COMP-5  VALUE 0.
                          30 T02-SHL        PIC  X(001) value 'B'.
                          30 T02-PREF       PIC  X(001).
                          30 T02-TXT1       PIC  X(030) VALUE SPACES.
                          30 T02-TXT2       PIC  X(030) VALUE ALL SPACE.
                          30 T02-TXT3       PIC  X(030) VALUE ALL ZERO.
       PROCEDURE DIVISION.
       INIT-RTN.
         MOVE ALL HIGH-VALUE TO T01-TAB (5,55)
         MOVE ALL LOW-VALUE  TO T01-TAB (10,400)
         MOVE SPACES TO T01-REC (2) T01-REC (4)
         INITIALIZE T01-REC (2) TO DEFAULT
         INITIALIZE T01-REC (4) WITH FILLER ALL TO VALUE
         GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_initialize.at:647: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_initialize.at:647"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:647"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:648: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:648"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:648"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:649: \$COMPILE -O2 prog.cob -o progo"
at_fn_check_prepare_dynamic "$COMPILE -O2 prog.cob -o progo" "run_initialize.at:649"
( $at_check_trace; $COMPILE -O2 prog.cob -o progo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:649"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_initialize.at:650: \$COBCRUN_DIRECT ./progo"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progo" "run_initialize.at:650"
( $at_check_trace; $COBCRUN_DIRECT ./progo
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:650"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_667
#AT_START_668
at_fn_group_banner 668 'run_initialize.at:655' \
  "INITIALIZE to table-format VALUES ARE" "          " 4
at_xfail=no
(
  $as_echo "668. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01  GRP-3.
           05   FILLER  PIC X(3).
           05   FLD-3   OCCURS 3 TIMES.
                15   FLD-3-2 PIC XXX VALUES "ABC".
                15   FLD-3-3 PIC 99  VALUES ZERO.
                15           OCCURS 4 VALUE ALL "D99".
                     25   FLD-3O-1 PIC X.
                     25   FLD-3O-2 PIC 99.
                15   FLD-3-4 PIC XX  VALUE ALL "X".
           05   FILLER  PIC X(3).
           05   FILLER  PIC X(3) VALUES "End".  *> needs relaxed

       77  C5    PIC 9(03)  VALUE 6.
       01  GRP-5.
           05   FILLER  PIC X(3).
           05   FLD-5.
              10   FLD-5-1 OCCURS 0 TO 9 TIMES
                        DEPENDING ON C5.
                15   FLD-5-2 PIC XXX VALUES "Mon".
                15   FLD-5-3 PIC 99  VALUES 49.
                15   FLD-5-4 PIC XX  VALUES "ey".
           05   FILLER  PIC X(3).

       01  WS.
         05  IX1  PIC 99.
         05  IX2  PIC 99.
         05  IX3  PIC 99.
         05  GRP1 OCCURS 3 TIMES.
             10  GRPX  PIC X(99).
         05  MONTH-IN-YEAR OCCURS 13 TIMES PICTURE X(3)
                        VALUES "jan" "feb" "mar" "apr"
                               "may" "jun" "jul" "aug"
                               "sep" "oct" "nov" "dec".
         05  DAYS-IN-MONTH OCCURS 13 TIMES PICTURE 9(2) BINARY
                         VALUES 31 28 31 30 31 30 31 31 30 31 30 31.
         05  DAYS-MONTHS  OCCURS 2 TIMES.
          06  DAYX-MONTHX OCCURS 4 TIMES.
           07  DAY-MONTH  OCCURS 3 TIMES.
             10  XXX1   PICTURE X VALUE " ".
             10  MONTHS PICTURE X(3)
                        VALUES "Jan" "Feb" "Mar" "Apr"
                               "May" "Jun" "Jul" "Aug"
                               "Sep" "Oct" "Nov" "Dec"
                               "JAN" "FEB" "MAR" "APR"
                               "MAY" "JUN" "JUL" "AUG"
                               "SEP" "OCT" "NOV" "DEC".
             10  SEPX   PICTURE XX VALUE ", ".
             10  DAYS   PICTURE 99
                        VALUES 31 28 31 30 31 30 31 31 30 31 30 31
                               91 28 91 90 91 90 91 91 90 91 90 91.
             10  PER    PICTURE X VALUE ".".
           07  FLR    PICTURE X(4) VALUES " <A>" " <B>" " <C>" " <D>"
                                          " <E>" " <F>" " <G>" " <*>".

       PROCEDURE DIVISION.

       INIT-RTN.
           DISPLAY "Simple OCCURS with multi VALUES".
           PERFORM VARYING IX1 FROM 1 BY 1 UNTIL IX1 > 13
              DISPLAY IX1 ": "
                      MONTH-IN-YEAR (IX1) " has "
                      DAYS-IN-MONTH (IX1) " days"
              END-DISPLAY
           END-PERFORM.
           DISPLAY "Complex OCCURS with multi VALUES".
           PERFORM VARYING IX3 FROM 1 BY 1 UNTIL IX3 > 2
             PERFORM VARYING IX2 FROM 1 BY 1 UNTIL IX2 > 4
                 DISPLAY IX3 "-" IX2 ": "
                         DAYX-MONTHX (IX3, IX2)
                 END-DISPLAY
             END-PERFORM
           END-PERFORM.
           DISPLAY "Group VALUE test".
           DISPLAY GRP-3 ".".
           INITIALIZE GRP-3 NUMERIC TO VALUE
           DISPLAY GRP-3 ".".
           INITIALIZE FLD-3 (1) ALL TO VALUE
           INITIALIZE FLD-3 (2) ALL TO VALUE
           INITIALIZE FLD-3 (3) ALL TO VALUE
           INITIALIZE FLD-3O-1 (3,2), FLD-3O-2 (3,2)
           DISPLAY GRP-3 ".".
           DISPLAY "Initialize VALUE OCCURS DEPENDING test".
           MOVE 6 TO C5.
           MOVE ALL "*" TO grp-5.
           INITIALIZE FLD-5 ALL TO VALUE.
           DISPLAY "GRP-5 with 6:" grp-5 ".".
           MOVE 4 TO C5.
           MOVE ALL "*" TO grp-5.
           INITIALIZE FLD-5 ALL TO VALUE.
           DISPLAY "GRP-5 with 4:" grp-5 ".".

      *
      * The following gets very complicated because of multiple
      * VALUES in the sub-fields, still works :-)
      *
           MOVE 1 TO IX3 MOVE 2 TO IX2.
           DISPLAY IX3 "-" IX2 ": " DAYX-MONTHX (IX3, IX2) ".".
           MOVE ALL "*" TO DAYX-MONTHX (IX3, IX2).
           DISPLAY IX3 "-" IX2 ": " DAYX-MONTHX (IX3, IX2) ".".
           INITIALIZE DAYX-MONTHX (IX3, IX2).
           DISPLAY IX3 "-" IX2 ": " DAYX-MONTHX (IX3, IX2) ".".
           DISPLAY "Initialize VALUE inside OCCURS test".
           INITIALIZE DAYX-MONTHX (IX3, IX2) ALL TO VALUE.
           DISPLAY IX3 "-" IX2 ": " DAYX-MONTHX (IX3, IX2) ".".
           STOP RUN.
_ATEOF


# Note to compile options:
#   -fbinary-truncate --> error
#   -fcomplex-odo             because of fields after ODO
#   -frelax-syntax-checks -w  to compile "VAR VALUES lit" (must be VALUE according to all COBOL standards)
{ set +x
$as_echo "$at_srcdir/run_initialize.at:777: \$COMPILE -fno-binary-truncate  -fcomplex-odo -frelax-syntax-checks -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-binary-truncate  -fcomplex-odo -frelax-syntax-checks -w prog.cob" "run_initialize.at:777"
( $at_check_trace; $COMPILE -fno-binary-truncate  -fcomplex-odo -frelax-syntax-checks -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:777"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_initialize.at:779: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_initialize.at:779"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Simple OCCURS with multi VALUES
01: jan has 31 days
02: feb has 28 days
03: mar has 31 days
04: apr has 30 days
05: may has 31 days
06: jun has 30 days
07: jul has 31 days
08: aug has 31 days
09: sep has 30 days
10: oct has 31 days
11: nov has 30 days
12: dec has 31 days
13:     has 00 days
Complex OCCURS with multi VALUES
01-01:  Jan, 31. Feb, 28. Mar, 31. <A>
01-02:  Apr, 30. May, 31. Jun, 30. <B>
01-03:  Jul, 31. Aug, 31. Sep, 30. <C>
01-04:  Oct, 31. Nov, 30. Dec, 31. <D>
02-01:  JAN, 91. FEB, 28. MAR, 91. <E>
02-02:  APR, 90. MAY, 91. JUN, 90. <F>
02-03:  JUL, 91. AUG, 91. SEP, 90. <G>
02-04:  OCT, 91. NOV, 90. DEC, 91. <*>
Group VALUE test
   ABC00D99D99D99D99XXABC00D99D99D99D99XXABC00D99D99D99D99XX   End.
   ABC00D99D99D99D99XXABC00D99D99D99D99XXABC00D99D99D99D99XX   End.
   ABC00D99D99D99D99XXABC00D99D99D99D99XXABC00D99 00D99D99XX   End.
Initialize VALUE OCCURS DEPENDING test
GRP-5 with 6:***Mon49eyMon49eyMon49eyMon49eyMon49eyMon49ey***.
GRP-5 with 4:***Mon49eyMon49eyMon49eyMon49ey***.
01-02:  Apr, 30. May, 31. Jun, 30. <B>.
01-02: *******************************.
01-02:       00       00       00     .
Initialize VALUE inside OCCURS test
01-02:  Apr, 30. May, 31. Jun, 30. <B>.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_initialize.at:779"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_668
#AT_START_669
at_fn_group_banner 669 'run_misc.at:23' \
  "Comma separator without space" "                  " 4
at_xfail=no
(
  $as_echo "669. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY 1,1,1 NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:35: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:35"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:35"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:36: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:36"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "111" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:36"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_669
#AT_START_670
at_fn_group_banner 670 'run_misc.at:44' \
  "DECIMAL-POINT is COMMA (1)" "                     " 4
at_xfail=no
(
  $as_echo "670. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC 99V99.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MIN (3,,,,,,5) TO X.
           DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:64: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:64"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:65: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:65"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00,50
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:65"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_670
#AT_START_671
at_fn_group_banner 671 'run_misc.at:72' \
  "DECIMAL-POINT is COMMA (2)" "                     " 4
at_xfail=no
(
  $as_echo "671. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC 99V99.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MIN (3,,,,,, 5) TO X.
           DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:92: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:92"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:93: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:93"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "03,00
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_671
#AT_START_672
at_fn_group_banner 672 'run_misc.at:100' \
  "DECIMAL-POINT is COMMA (3)" "                     " 4
at_xfail=no
(
  $as_echo "672. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC 99V99.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MIN (3,,,,,, 1,5) TO X.
           DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:120: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:120"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:120"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:121: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:121"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "01,50
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:121"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_672
#AT_START_673
at_fn_group_banner 673 'run_misc.at:128' \
  "DECIMAL-POINT is COMMA (4)" "                     " 4
at_xfail=no
(
  $as_echo "673. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC 99V99.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MIN (3,,,,,,1,5) TO X.
           DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:148: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:148"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:148"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:149: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:149"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00,10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:149"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_673
#AT_START_674
at_fn_group_banner 674 'run_misc.at:156' \
  "DECIMAL-POINT is COMMA (5)" "                     " 4
at_xfail=no
(
  $as_echo "674. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT    IS COMMA.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC 99V99.
       PROCEDURE        DIVISION.
           COMPUTE X=1 + ,1
           END-COMPUTE
           DISPLAY X
           END-DISPLAY.
           COMPUTE X=1*,1
           END-COMPUTE
           DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:181: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:181"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:181"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:182: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:182"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "01,10
00,10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:182"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_674
#AT_START_675
at_fn_group_banner 675 'run_misc.at:190' \
  "CURRENCY SIGN" "                                  " 4
at_xfail=no
(
  $as_echo "675. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       PROGRAM-ID.   prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CURRENCY SIGN IS "Y".

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  amount    pic Y(6)9.99.

       PROCEDURE DIVISION.
           Move 1512.34 to Amount
           Display "Amount is #" Amount '#' with no advancing.

           GOBACK
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:214: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:214"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:214"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:215: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:215"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Amount is #  Y1512.34#" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:215"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_675
#AT_START_676
at_fn_group_banner 676 'run_misc.at:221' \
  "CURRENCY SIGN WITH PICTURE SYMBOL" "              " 4
at_xfail=yes
(
  $as_echo "676. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME - see FR #246


cat >prog.cob <<'_ATEOF'

       PROGRAM-ID.   prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           *> note the space after EUR / before ct.
           CURRENCY SIGN IS "EUR "      WITH PICTURE SYMBOL "U",
           CURRENCY SIGN IS " ct (EUR)" WITH PICTURE SYMBOL "c",
           Currency Sign is "$US" with Picture Symbol "$".

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  EUROS    PIC U99v99.
       77  cents    PIC c9,999.
       77  DOLLARS  Pic $$,$$9.99.

       PROCEDURE DIVISION.
           MOVE 12.34 TO EUROS
           MULTIPLY euros BY 1000 GIVING cents.
           DISPLAY "#" EUROS "# equal #" cents '#'.
           Move 1500 to Invoice-Amount
           Display "Invoice amount #1 is " Invoice-Amount '.'.
           Move 12.34 to Invoice-Amount
           Display "Invoice amount #2 is " Invoice-Amount '.'.

           GOBACK
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:258: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:258"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:258"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:259: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:259"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "#EUR 12.34# equal #1,234 ct (EUR)#
Invoice amount #1 is  \$US1,500.00.
Invoice amount #2 is     \$US12.34.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:259"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_676
#AT_START_677
at_fn_group_banner 677 'run_misc.at:268' \
  "LOCAL-STORAGE (1)" "                              " 4
at_xfail=no
(
  $as_echo "677. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 WRK-X         PIC XXX VALUE "abc".
       LOCAL-STORAGE    SECTION.
       01 LCL-X         PIC XXX VALUE "abc".
       PROCEDURE        DIVISION.
           DISPLAY WRK-X LCL-X NO ADVANCING
           END-DISPLAY.
           MOVE ZERO TO WRK-X LCL-X.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee"
           END-CALL.
           CALL "callee"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:297: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:297"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:297"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:298: \$COMPILE -o prog caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog caller.cob" "run_misc.at:298"
( $at_check_trace; $COMPILE -o prog caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:298"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:299: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:299"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abcabc000abc" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:299"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_677
#AT_START_678
at_fn_group_banner 678 'run_misc.at:304' \
  "LOCAL-STORAGE (2)" "                              " 4
at_xfail=no
(
  $as_echo "678. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 LNK-X         PIC XXX.
       PROCEDURE        DIVISION USING LNK-X.
           DISPLAY LNK-X NO ADVANCING.
           EXIT PROGRAM.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LOCAL-STORAGE    SECTION.
       01 LCL-X.
          05 FILLER     PIC XXX VALUE "abc".
       PROCEDURE        DIVISION.
           CALL "callee2" USING LCL-X.
           MOVE ZERO TO LCL-X.
           CALL "callee2" USING LCL-X.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:340: \$COMPILE_MODULE callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee2.cob" "run_misc.at:340"
( $at_check_trace; $COMPILE_MODULE callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:340"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:341: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:341"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:341"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:342: \$COMPILE -o prog caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog caller.cob" "run_misc.at:342"
( $at_check_trace; $COMPILE -o prog caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:342"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:343: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:343"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abc000" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:343"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_678
#AT_START_679
at_fn_group_banner 679 'run_misc.at:348' \
  "LOCAL-STORAGE (3)" "                              " 4
at_xfail=no
(
  $as_echo "679. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: this tests undefined behaviour, because the initial value
#       of index-names are undefined per standard; where they are
#       explicit defined to be "... treated as a static item [for WS]
#       and as an automatic item [for LS]"; see bug #794
#       for GnuCOBOL that is defined depending on dialect options
#       init-indexed-by and defaultbyte

cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 DISP-VALS.
          05 DISP-VAL   PIC 9 VALUE 0.
          05 DISP-IDX   PIC 9 VALUE 0.
       01 WRK-X.
          05 WRK-VAR    PIC 9 VALUE 0 OCCURS 1 INDEXED BY WRK-IDX.
       LOCAL-STORAGE    SECTION.
       01 LCL-X.
          05 LCL-VAR    PIC 9 VALUE 0 OCCURS 1 INDEXED BY LCL-IDX.
       PROCEDURE        DIVISION.
           DISPLAY SPACE WITH NO ADVANCING UPON SYSOUT.
           ADD  1 TO WRK-VAR(1) LCL-VAR(1)
           SET  WRK-IDX, LCL-IDX UP BY 1
           SET  DISP-IDX TO WRK-IDX.
           MOVE WRK-VAR(1) TO DISP-VAL.
           DISPLAY DISP-VALS WITH NO ADVANCING UPON SYSOUT.
           SET  DISP-IDX TO LCL-IDX.
           MOVE LCL-VAR(1) TO DISP-VAL.
           DISPLAY DISP-VALS WITH NO ADVANCING UPON SYSOUT.
           GOBACK.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee".
           CALL "callee".
           CALL "callee".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:394: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:394"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:394"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:395: \$COMPILE -o prog caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog caller.cob" "run_misc.at:395"
( $at_check_trace; $COMPILE -o prog caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:395"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:396: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:396"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1212 2312 3412" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:396"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:397: \$COMPILE_MODULE -fdefaultbyte=0 callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fdefaultbyte=0 callee.cob" "run_misc.at:397"
( $at_check_trace; $COMPILE_MODULE -fdefaultbyte=0 callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:397"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:398: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:398"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 1111 2211 3311" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:398"
$at_failed && at_fn_log_failure
$at_traceon; }


# note: this is the tested MF result (INDEXED BY are USAGE COMP 9(08), 0-based !):
#AT_CHECK([$COMPILE_MODULE -std=mf-strict callee.cob], [0], [], [])
#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [ 1018 2117 3216], [])

cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 DISP-VALS.
          05 DISP-VAL   PIC 9 VALUE 0.
          05 DISP-IDX   PIC 9 VALUE 0.
       01 WRK-X.
          05 WRK-VAR    PIC 9 VALUE 0 OCCURS 1 INDEXED BY WRK-IDX.
       PROCEDURE        DIVISION.
           DISPLAY SPACE WITH NO ADVANCING UPON SYSOUT.
           ADD  1 TO WRK-VAR(1)
           SET  WRK-IDX UP BY 1
           SET  DISP-IDX TO WRK-IDX.
           MOVE WRK-VAR(1) TO DISP-VAL.
           DISPLAY DISP-VALS WITH NO ADVANCING UPON SYSOUT.
           GOBACK.
_ATEOF



{ set +x
$as_echo "$at_srcdir/run_misc.at:425: \$COMPILE_MODULE -std=acu-strict callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -std=acu-strict callee.cob" "run_misc.at:425"
( $at_check_trace; $COMPILE_MODULE -std=acu-strict callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:425"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:426: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:426"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " 19 20 31" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:426"
$at_failed && at_fn_log_failure
$at_traceon; }

# note: tested result with 2 byte: AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [ 15 26 37], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_679
#AT_START_680
at_fn_group_banner 680 'run_misc.at:432' \
  "EXTERNAL data item" "                             " 4
at_xfail=no
(
  $as_echo "680. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           IF EXT-VAR NOT = "Hello"
              DISPLAY EXT-VAR.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Hello" TO EXT-VAR.
           CALL "callee"
           END-CALL.
           IF EXT-VAR NOT = "World"
              DISPLAY EXT-VAR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:463: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:463"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:463"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:464: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:464"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:464"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:465: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:465"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:465"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_680
#AT_START_681
at_fn_group_banner 681 'run_misc.at:470' \
  "EXTERNAL AS data item" "                          " 4
at_xfail=no
(
  $as_echo "681. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 PRG-VAR       PIC X(5) EXTERNAL AS "WRK-VAR".
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           IF PRG-VAR NOT = "Extrn"
              DISPLAY PRG-VAR.
           IF EXT-VAR NOT = "Hello"
              DISPLAY EXT-VAR.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 MYVAR         PIC X(5) EXTERNAL AS "EXT-VAR".
       01 WRK-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Extrn" TO WRK-VAR.
           MOVE "Hello" TO MYVAR.
           CALL "callee"
           END-CALL.
           IF MYVAR NOT = "World"
              DISPLAY MYVAR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:506: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:506"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:506"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:507: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:507"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:507"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:508: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:508"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:508"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_681
#AT_START_682
at_fn_group_banner 682 'run_misc.at:513' \
  "EXTERNAL data item size mismatch" "               " 4
at_xfail=yes
(
  $as_echo "682. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 PRG-VAR       PIC X(8) EXTERNAL AS "WRK-VAR".
       01 COB-VAR       PIC X(8) EXTERNAL.
       01 EXT-VAR       PIC X(8) EXTERNAL.
       PROCEDURE        DIVISION.
           IF PRG-VAR NOT = "Extrn"
              DISPLAY 'local named external is not correct: ' PRG-VAR.
           IF COB-VAR NOT = "Hello"
              DISPLAY 'remote named external is not correct: ' COB-VAR.
           MOVE "World" TO EXT-VAR.
           EXIT PROGRAM.
_ATEOF


cat >bigger.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      error.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 WRK-VAR       PIC X(10) EXTERNAL.
       01 MYVAR         PIC X(10) EXTERNAL AS "COB-VAR".
       01 EXT-VAR       PIC X(10) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Extrn" TO WRK-VAR
           MOVE "Hello" TO MYVAR
           MOVE SPACES  TO EXT-VAR
           CALL "callee"
           IF EXT-VAR NOT = "World"
              DISPLAY 'simple external back not correct: ' EXT-VAR.
           STOP RUN.
_ATEOF


cat >smaller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      error.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 WRK-VAR       PIC X(5) EXTERNAL.
       01 MYVAR         PIC X(5) EXTERNAL AS "COB-VAR".
       01 EXT-VAR       PIC X(5) EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE "Extrn" TO WRK-VAR
           MOVE "Hello" TO MYVAR
           MOVE SPACES  TO EXT-VAR
           CALL "callee"
           IF EXT-VAR NOT = "World"
              DISPLAY 'simple external back not correct: ' EXT-VAR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:569: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:569"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:569"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:570: \$COMPILE bigger.cob"
at_fn_check_prepare_dynamic "$COMPILE bigger.cob" "run_misc.at:570"
( $at_check_trace; $COMPILE bigger.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:570"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:571: \$COBCRUN_DIRECT ./bigger"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./bigger" "run_misc.at:571"
( $at_check_trace; $COBCRUN_DIRECT ./bigger
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:571"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:573: \$COMPILE smaller.cob"
at_fn_check_prepare_dynamic "$COMPILE smaller.cob" "run_misc.at:573"
( $at_check_trace; $COMPILE smaller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:573"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:574: \$COBCRUN_DIRECT ./smaller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./smaller" "run_misc.at:574"
( $at_check_trace; $COBCRUN_DIRECT ./smaller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:574"
$at_failed && at_fn_log_failure
$at_traceon; }


# FIXME - messages should be adjusted, see Bug #445


{ set +x
$as_echo "$at_srcdir/run_misc.at:579: \$COBCRUN_DIRECT ./bigger"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./bigger" "run_misc.at:579"
( $at_check_trace; $COBCRUN_DIRECT ./bigger
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: callee.cob:6: warning: EXTERNAL item 'WRK-VAR' previously allocated with size 10, requested size is 8
libcob: callee.cob:7: warning: EXTERNAL item 'EXT-VAR' previously allocated with size 10, requested size is 8
libcob: callee.cob:8: warning: EXTERNAL item 'EXT-VAR' previously allocated with size 10, requested size is 8
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:579"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:585: \$COBCRUN_DIRECT ./smaller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./smaller" "run_misc.at:585"
( $at_check_trace; $COBCRUN_DIRECT ./smaller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: callee.cob:6: error: EXTERNAL item 'WRK-VAR' previously allocated with size 5, requested size is 8
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:585"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_682
#AT_START_683
at_fn_group_banner 683 'run_misc.at:594' \
  "MOVE to itself" "                                 " 4
at_xfail=no
(
  $as_echo "683. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 99 VALUE 12.
       PROCEDURE        DIVISION.
           MOVE X TO X.
           IF X NOT = 12
              DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:610: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:610"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: overlapping MOVE may produce unpredictable results
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:610"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:613: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:613"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:613"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_683
#AT_START_684
at_fn_group_banner 684 'run_misc.at:618' \
  "MOVE with refmod" "                               " 4
at_xfail=no
(
  $as_echo "684. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9(4) VALUE 0.
       PROCEDURE        DIVISION.
           MOVE "1" TO X(1:1).
           IF X NOT = 1000
              DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:634: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:634"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:634"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:635: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:635"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:635"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_684
#AT_START_685
at_fn_group_banner 685 'run_misc.at:640' \
  "MOVE with refmod (variable)" "                    " 4
at_xfail=no
(
  $as_echo "685. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "1234".
       01 Y             PIC X(4) VALUE "abcd".
       01 I             PIC 9 VALUE 1.
       PROCEDURE        DIVISION.
           MOVE X(1:I) TO Y.
           IF Y NOT = "1   "
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:658: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:658"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:658"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:659: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:659"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:659"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_685
#AT_START_686
at_fn_group_banner 686 'run_misc.at:664' \
  "MOVE with group refmod" "                         " 4
at_xfail=no
(
  $as_echo "686. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC 9999 VALUE 1234.
       PROCEDURE        DIVISION.
           MOVE "99" TO G(3:2).
           IF G NOT = "1299"
              DISPLAY G.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:681: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:681"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:681"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:682: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:682"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:682"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_686
#AT_START_687
at_fn_group_banner 687 'run_misc.at:687' \
  "MOVE indexes" "                                   " 4
at_xfail=no
(
  $as_echo "687. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 10 INDEXED I.
       PROCEDURE        DIVISION.
           SET I TO ZERO.
           MOVE I TO X(1).
           IF X(1) NOT = "0"
              DISPLAY X(1).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:705: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:705"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:705"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:706: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:706"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:706"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_687
#AT_START_688
at_fn_group_banner 688 'run_misc.at:711' \
  "MOVE X'00'" "                                     " 4
at_xfail=no
(
  $as_echo "688. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  printf ("%02x%02x%02x", data[0], data[1], data[2]);
  return 0;
}
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC XXX.
       PROCEDURE        DIVISION.
           MOVE X"000102" TO X.
           CALL "dump" USING X
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:739: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "run_misc.at:739"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:739"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:740: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:740"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:740"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:741: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:741"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000102" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:741"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_688
#AT_START_689
at_fn_group_banner 689 'run_misc.at:746' \
  "MOVE Z'literal'" "                                " 4
at_xfail=no
(
  $as_echo "689. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC XXXX.
       01  XRED REDEFINES X.
           03  XBYTE1   PIC X.
           03  XBYTE2   PIC X.
           03  XBYTE3   PIC X.
           03  XBYTE4   PIC X.
       PROCEDURE        DIVISION.
           MOVE Z"012" TO X.
           IF XBYTE1 = "0" AND
              XBYTE2 = "1" AND
              XBYTE3 = "2" AND
              XBYTE4 = LOW-VALUE
              DISPLAY "OK" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY "X = " X (1:3) NO ADVANCING
              END-DISPLAY
              IF XBYTE4 = LOW-VALUE
                 DISPLAY " WITH LOW-VALUE"
                 END-DISPLAY
              ELSE
                 DISPLAY " WITHOUT LOW-VALUE BUT '" XBYTE4 "'"
                 END-DISPLAY
              END-IF
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:782: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:782"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:782"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:783: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:783"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:783"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_689
#AT_START_690
at_fn_group_banner 690 'run_misc.at:788' \
  "Floating continuation indicator" "                " 4
at_xfail=no
(
  $as_echo "690. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY "OK"-
            "OK"
             NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:804: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:804"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:804"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:805: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:805"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:805"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_690
#AT_START_691
at_fn_group_banner 691 'run_misc.at:810' \
  "Fixed continuation indicator" "                   " 4
at_xfail=no
(
  $as_echo "691. $at_setup_line: testing $at_desc ..."
  $at_traceon


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(333) VALUE
           '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWX
      -    'YZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUV
      -    'WXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRST
      -    'UVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQR
      -    'STUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP
      -             'QRSTUVWXYZ'.
       PROCEDURE        DIVISION.
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           DISPLAY '_'
           END-DISPLAY.
           MOVE
           "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567
      -    "89abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ012345
      -    "6789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123
      -    "456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01
      -     "23456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXY
      -                                                               "Z
      -             "0123456789" TO X.
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           DISPLAY '_'
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:844: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:844"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:844"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:845: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:845"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ                       _
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789                       _
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:845"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_691
#AT_START_692
at_fn_group_banner 692 'run_misc.at:852' \
  "Concatenation operator" "                         " 4
at_xfail=no
(
  $as_echo "692. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 STR           PIC X(05).
       PROCEDURE        DIVISION.
           MOVE "OK" & " "
            & "OK"
             TO STR
           DISPLAY STR NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:870: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:870"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:870"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:871: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:871"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:871"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_692
#AT_START_693
at_fn_group_banner 693 'run_misc.at:876' \
  "SOURCE FIXED/FREE directives" "                   " 4
at_xfail=no
(
  $as_echo "693. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       >>SOURCE FREE
   DATA             DIVISION.
   WORKING-STORAGE  SECTION.
   >>SOURCE FIXED
       PROCEDURE        DIVISION.                                       FIXED
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY.
       >>SOURCE FREE
                                                                        DISPLAY
   "OK"
 NO ADVANCING
   END-DISPLAY.
   >>SET SOURCEFORMAT "FIXED"
             DISPLAY "OK" NO ADVANCING                                  FIXED
             END-DISPLAY.
       >>SET SOURCEFORMAT "FREE"
                                                                        DISPLAY
   "OK"
 NO ADVANCING
   END-DISPLAY.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:905: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:905"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:905"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:906: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:906"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOKOKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:906"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_693
#AT_START_694
at_fn_group_banner 694 'run_misc.at:912' \
  "TURN directive" "                                 " 4
at_xfail=no
(
  $as_echo "694. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: we only check here that the TURN directive applies
#       for more general tests, including command line options
#       and extension directives, see run_subscript.at, run_refmod.at

cat >prog.cob <<'_ATEOF'

       >>TURN EC-BOUND-SUBSCRIPT CHECKING ON
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x VALUE "12345!".
           03  y PIC X OCCURS 5 TIMES.
           03  z PIC X.
       01  idx PIC 99 VALUE 6.

       PROCEDURE DIVISION.
       >>TURN EC-BOUND-SUBSCRIPT CHECKING OFF
           DISPLAY y (idx) WITH NO ADVANCING
       >>TURN EC-BOUND-SUBSCRIPT CHECKING ON WITH LOCATION
       >>TURN EC-BOUND, EC-PROGRAM CHECKING OFF
           DISPLAY y (idx) WITH NO ADVANCING
       >>TURN EC-BOUND-SUBSCRIPT CHECKING ON
           DISPLAY y (idx) WITH NO ADVANCING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:942: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:942"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:942"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:943: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:943"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:20: error: subscript of 'y' out of bounds: 6
note: maximum subscript for 'y': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "!!" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:943"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_694
#AT_START_695
at_fn_group_banner 695 'run_misc.at:953' \
  "OCCURS on level 01" "                             " 4
at_xfail=no
(
  $as_echo "695. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X OCCURS 10 VALUE "A".
       LINKAGE SECTION.
       01 X-ALL         PIC X(10).
       PROCEDURE        DIVISION.
           INITIALIZE   X(1) X(3) X(5) X(7)
           MOVE ZERO TO X(2) X(4) X(6) X(8)
           SET ADDRESS OF X-ALL TO ADDRESS OF X(1)
           IF X-ALL NOT = " 0 0 0 0AA"
              DISPLAY X-ALL UPON SYSERR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:974: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:974"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:974"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:975: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:975"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:975"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 XX PIC 99 VALUE 5.
       01 X             PIC X OCCURS 0 TO 10
                        DEPENDING ON XX VALUE "A".
       LINKAGE SECTION.
       01 X-ALL         PIC X(10).
       PROCEDURE        DIVISION.
           MOVE ZERO TO X(2) X(4) X(6) X(8)
           INITIALIZE   X(1) X(3) X(5) X(7)
           SET ADDRESS OF X-ALL TO ADDRESS OF X(1)
           IF X-ALL NOT = " 0 0 0 0AA"
              DISPLAY X-ALL UPON SYSERR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:996: \$COMPILE -fno-ec=bound -o baddy2 prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=bound -o baddy2 prog2.cob" "run_misc.at:996"
( $at_check_trace; $COMPILE -fno-ec=bound -o baddy2 prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:996"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:997: \$COBCRUN_DIRECT ./baddy2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./baddy2" "run_misc.at:997"
( $at_check_trace; $COBCRUN_DIRECT ./baddy2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:997"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:999: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_misc.at:999"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:999"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1000: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:1000"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:12: error: subscript of 'X' out of bounds: 6
note: current maximum subscript for 'X': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:1000"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 XX PIC 99 VALUE 5.
       01 X             PIC X OCCURS 0 TO 10
                        DEPENDING ON XX VALUE "A".
       LINKAGE SECTION.
       01 X-ALL         PIC X(10).
       PROCEDURE        DIVISION.
           INITIALIZE   X(1) X(3) X(5) X(7)
           MOVE ZERO TO X(2) X(4) X(6) X(8)
           SET ADDRESS OF X-ALL TO ADDRESS OF X(1)
           IF X-ALL NOT = " 0 0 0 0AA"
              DISPLAY X-ALL UPON SYSERR.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1024: \$COMPILE -fno-ec=bound -o baddy3 prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=bound -o baddy3 prog3.cob" "run_misc.at:1024"
( $at_check_trace; $COMPILE -fno-ec=bound -o baddy3 prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1024"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1025: \$COBCRUN_DIRECT ./baddy3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./baddy3" "run_misc.at:1025"
( $at_check_trace; $COBCRUN_DIRECT ./baddy3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1025"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:1027: \$COMPILE prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE prog3.cob" "run_misc.at:1027"
( $at_check_trace; $COMPILE prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1027"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1028: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_misc.at:1028"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog3.cob:12: error: subscript of 'X' out of bounds: 7
note: current maximum subscript for 'X': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:1028"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_695
#AT_START_696
at_fn_group_banner 696 'run_misc.at:1038' \
  "Class check with reference-modification" "        " 4
at_xfail=no
(
  $as_echo "696. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(6) VALUE "123   ".
       PROCEDURE        DIVISION.
           IF X(1:3) NUMERIC
              STOP RUN.
           DISPLAY "NG" NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1054: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1054"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1054"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1055: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1055"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1055"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_696
#AT_START_697
at_fn_group_banner 697 'run_misc.at:1060' \
  "Index and parenthesized expression" "             " 4
at_xfail=no
(
  $as_echo "697. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X OCCURS 1 INDEXED BY I.
       PROCEDURE        DIVISION.
         IF I < (I + 2)
           DISPLAY "OK" NO ADVANCING.
         STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1076: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1076"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1076"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1077: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1077"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1077"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_697
#AT_START_698
at_fn_group_banner 698 'run_misc.at:1082' \
  "Alphanumeric and binary numeric" "                " 4
at_xfail=no
(
  $as_echo "698. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-X           PIC XXXX VALUE "0001".
       01 X-9           PIC 9999 COMP VALUE 1.
       PROCEDURE        DIVISION.
         IF X-X NOT = X-9
            DISPLAY "NG X-X <> X-9".
         IF X-9 NOT = X-X
            DISPLAY "NG X-9 <> X-X".
         STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1100: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1100"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1100"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1101: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1101"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1101"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_698
#AT_START_699
at_fn_group_banner 699 'run_misc.at:1106' \
  "Non-numeric data in numeric items" "              " 4
at_xfail=no
(
  $as_echo "699. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X.
          03 X-NUM      PIC 9(06) VALUE 123.
       77 NUM           PIC 9(06).
       PROCEDURE        DIVISION.
           MOVE x"0000" TO X (2:2)
           IF X-NUM NUMERIC
              DISPLAY "low-value is numeric" UPON SYSERR.
           MOVE x"01" TO X (3:1)
           IF X-NUM NUMERIC
              DISPLAY "SOH is numeric" UPON SYSERR.
           MOVE X-NUM TO NUM
           DISPLAY "test over"
      *
           GOBACK.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X.
          03 X-NUM      PIC 9(06) PACKED-DECIMAL VALUE 123.
       77 NUM           PIC 9(06).
       PROCEDURE        DIVISION.
           MOVE x"0A" TO X (2:1)
           IF X-NUM NUMERIC
              DISPLAY "bad prog".
           MOVE X-NUM TO NUM
           DISPLAY "test over"
      *
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1149: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1149"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1149"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1150: \$COBC -x -o unchecked_prog prog.cob"
at_fn_check_prepare_dynamic "$COBC -x -o unchecked_prog prog.cob" "run_misc.at:1150"
( $at_check_trace; $COBC -x -o unchecked_prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1150"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1151: \$COBCRUN_DIRECT ./unchecked_prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./unchecked_prog" "run_misc.at:1151"
( $at_check_trace; $COBCRUN_DIRECT ./unchecked_prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "test over
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1151"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1154: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1154"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:16: error: 'X-NUM' (Type: NUMERIC DISPLAY) not numeric: '0\\000\\001123'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:1154"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:1158: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_misc.at:1158"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1158"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1159: \$COBC -x -o unchecked_prog2 prog2.cob"
at_fn_check_prepare_dynamic "$COBC -x -o unchecked_prog2 prog2.cob" "run_misc.at:1159"
( $at_check_trace; $COBC -x -o unchecked_prog2 prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1159"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1160: \$COBCRUN_DIRECT ./unchecked_prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./unchecked_prog2" "run_misc.at:1160"
( $at_check_trace; $COBCRUN_DIRECT ./unchecked_prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "test over
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1160"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1163: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:1163"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:13: error: 'X-NUM' (Type: PACKED-DECIMAL (unsigned)) not numeric: '0x000a123f'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:1163"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_699
#AT_START_700
at_fn_group_banner 700 'run_misc.at:1172' \
  "Dynamic call with static linking" "               " 4
at_xfail=no
(
  $as_echo "700. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1191: \$COMPILE_MODULE -c callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -c callee.cob" "run_misc.at:1191"
( $at_check_trace; $COMPILE_MODULE -c callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1191"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1192: \$COMPILE -c caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -c caller.cob" "run_misc.at:1192"
( $at_check_trace; $COMPILE -c caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1192"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1193: \$COMPILE -o prog caller.\$COB_OBJECT_EXT callee.\$COB_OBJECT_EXT"
at_fn_check_prepare_dynamic "$COMPILE -o prog caller.$COB_OBJECT_EXT callee.$COB_OBJECT_EXT" "run_misc.at:1193"
( $at_check_trace; $COMPILE -o prog caller.$COB_OBJECT_EXT callee.$COB_OBJECT_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1193"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1194: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1194"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1194"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1195: \$COMPILE -o prog2 caller.cob callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog2 caller.cob callee.cob" "run_misc.at:1195"
( $at_check_trace; $COMPILE -o prog2 caller.cob callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1195"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1196: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:1196"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1196"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_700
#AT_START_701
at_fn_group_banner 701 'run_misc.at:1201' \
  "Static call with static linking" "                " 4
at_xfail=no
(
  $as_echo "701. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL STATIC "callee"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1220: \$COMPILE_MODULE -c callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -c callee.cob" "run_misc.at:1220"
( $at_check_trace; $COMPILE_MODULE -c callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1220"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1221: \$COMPILE -c caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -c caller.cob" "run_misc.at:1221"
( $at_check_trace; $COMPILE -c caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1221"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1222: \$COMPILE -o prog caller.\$COB_OBJECT_EXT callee.\$COB_OBJECT_EXT"
at_fn_check_prepare_dynamic "$COMPILE -o prog caller.$COB_OBJECT_EXT callee.$COB_OBJECT_EXT" "run_misc.at:1222"
( $at_check_trace; $COMPILE -o prog caller.$COB_OBJECT_EXT callee.$COB_OBJECT_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1222"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1223: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1223"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1223"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1224: \$COMPILE -o prog2 -static caller.cob callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog2 -static caller.cob callee.cob" "run_misc.at:1224"
( $at_check_trace; $COMPILE -o prog2 -static caller.cob callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1224"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1225: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:1225"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1225"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1226: \$COMPILE -o prog3 caller.cob callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog3 caller.cob callee.cob" "run_misc.at:1226"
( $at_check_trace; $COMPILE -o prog3 caller.cob callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1226"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1227: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_misc.at:1227"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1227"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_701
#AT_START_702
at_fn_group_banner 702 'run_misc.at:1232' \
  "Dynamic CALL with ON EXCEPTION" "                 " 4
at_xfail=no
(
  $as_echo "702. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee1" ON EXCEPTION
              CALL "callee2" ON EXCEPTION
                  DISPLAY "neither calee1 nor callee2 found"
              END-CALL
           END-CALL
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           DISPLAY "this is callee2" NO ADVANCING
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1256: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1256"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1256"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1257: \$COMPILE_MODULE callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee2.cob" "run_misc.at:1257"
( $at_check_trace; $COMPILE_MODULE callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1257"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1258: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1258"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "this is callee2" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1258"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_702
#AT_START_703
at_fn_group_banner 703 'run_misc.at:1264' \
  "Static CALL with ON EXCEPTION" "                  " 4
at_xfail=no
(
  $as_echo "703. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee1" ON EXCEPTION
              CALL "callee2" ON EXCEPTION
                  DISPLAY "neither calee1 nor callee2 found"
              END-CALL
           END-CALL
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           DISPLAY "this is callee2" NO ADVANCING
           GOBACK.
_ATEOF



{ set +x
$as_echo "$at_srcdir/run_misc.at:1289: \$COMPILE_MODULE -c callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -c callee2.cob" "run_misc.at:1289"
( $at_check_trace; $COMPILE_MODULE -c callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1289"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1290: \$COMPILE -c caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -c caller.cob" "run_misc.at:1290"
( $at_check_trace; $COMPILE -c caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1290"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1291: \$COMPILE -o prog caller.\$COB_OBJECT_EXT callee2.\$COB_OBJECT_EXT"
at_fn_check_prepare_dynamic "$COMPILE -o prog caller.$COB_OBJECT_EXT callee2.$COB_OBJECT_EXT" "run_misc.at:1291"
( $at_check_trace; $COMPILE -o prog caller.$COB_OBJECT_EXT callee2.$COB_OBJECT_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1291"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1292: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1292"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "this is callee2" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1292"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1294: \$COMPILE -o prog2 -static caller.cob callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog2 -static caller.cob callee2.cob" "run_misc.at:1294"
( $at_check_trace; $COMPILE -o prog2 -static caller.cob callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1294"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1295: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:1295"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "this is callee2" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1295"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1297: \$COMPILE -o prog3 caller.cob callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog3 caller.cob callee2.cob" "run_misc.at:1297"
( $at_check_trace; $COMPILE -o prog3 caller.cob callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1297"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1298: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_misc.at:1298"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "this is callee2" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1298"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_703
#AT_START_704
at_fn_group_banner 704 'run_misc.at:1304' \
  "CALL m1. CALL m2. CALL m1." "                     " 4
at_xfail=no
(
  $as_echo "704. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >m1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      m1.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9(4).
       PROCEDURE        DIVISION.
           COMPUTE X = 1 + 2
           END-COMPUTE.
           IF X NOT = 3
              DISPLAY X.
_ATEOF


cat >m2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      m2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC 9(4).
       PROCEDURE        DIVISION.
           COMPUTE X = 3 + 4
           END-COMPUTE.
           IF X NOT = 7
              DISPLAY X.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "m1"
           END-CALL.
           CALL "m2"
           END-CALL.
           CALL "m1"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1346: \$COMPILE_MODULE m1.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE m1.cob" "run_misc.at:1346"
( $at_check_trace; $COMPILE_MODULE m1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1346"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1347: \$COMPILE_MODULE m2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE m2.cob" "run_misc.at:1347"
( $at_check_trace; $COMPILE_MODULE m2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1347"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1348: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1348"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1348"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:1350: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1350"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1350"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_704
#AT_START_705
at_fn_group_banner 705 'run_misc.at:1355' \
  "Recursive CALL of RECURSIVE program" "            " 4
at_xfail=no
(
  $as_echo "705. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller IS RECURSIVE.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC S9 EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE 0 TO STOPPER
           CALL "callee"
           DISPLAY 'OK' NO ADVANCING END-DISPLAY
      *> FIXME: CANCEL broken on special environments
      *>   CANCEL "callee" , "callee2"
           DISPLAY ' + FINE' NO ADVANCING END-DISPLAY
           STOP RUN.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee IS RECURSIVE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC S9 EXTERNAL.
       PROCEDURE        DIVISION.
           IF STOPPER = 9
              MOVE -1 TO STOPPER
           ELSE
              ADD   1 TO STOPPER
              CALL "callee2"
           END-IF
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2 IS RECURSIVE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC S9 EXTERNAL.
       PROCEDURE        DIVISION.
           IF STOPPER NOT EQUAL -1
             CALL "callee"
           END-IF
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1405: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1405"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1405"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1406: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:1406"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1406"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1407: \$COMPILE_MODULE callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee2.cob" "run_misc.at:1407"
( $at_check_trace; $COMPILE_MODULE callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1407"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1408: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1408"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK + FINE" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1408"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_705
#AT_START_706
at_fn_group_banner 706 'run_misc.at:1413' \
  "Recursive CALL of INITIAL program" "              " 4
at_xfail=no
(
  $as_echo "706. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC 9 EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE 0 TO STOPPER
           CALL "callee" END-CALL.
           GOBACK.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee IS INITIAL.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC 9 EXTERNAL.
       PROCEDURE        DIVISION.
           IF STOPPER = 1
              DISPLAY 'INITIAL prog was called RECURSIVE'
              END-DISPLAY
              STOP RUN RETURNING 1
           ELSE
              MOVE 1 TO STOPPER
              CALL "callee2" END-CALL
           END-IF.
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           CALL "callee" END-CALL.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1454: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1454"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1454"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1455: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:1455"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1455"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1456: \$COMPILE_MODULE callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee2.cob" "run_misc.at:1456"
( $at_check_trace; $COMPILE_MODULE callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1456"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1457: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1457"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: callee2.cob:5: error: recursive CALL from 'callee2' to 'callee' which is NOT RECURSIVE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:1457"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_706
#AT_START_707
at_fn_group_banner 707 'run_misc.at:1464' \
  "Recursive CALL with RECURSIVE assumed" "          " 4
at_xfail=no
(
  $as_echo "707. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC 9 EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE 0 TO STOPPER
           CALL "callee" END-CALL.
           GOBACK.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee IS INITIAL.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC 9 EXTERNAL.
       PROCEDURE        DIVISION.
           IF STOPPER = 8
              DISPLAY 'OK' NO ADVANCING END-DISPLAY.
           IF STOPPER NOT = 9
              ADD  1 TO STOPPER END-ADD
              CALL "callee2" END-CALL.
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           CALL "callee" END-CALL.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1502: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1502"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1502"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1503: \$COMPILE_MODULE -fno-recursive-check callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fno-recursive-check callee.cob" "run_misc.at:1503"
( $at_check_trace; $COMPILE_MODULE -fno-recursive-check callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1503"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1504: \$COMPILE_MODULE -fno-recursive-check callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fno-recursive-check callee2.cob" "run_misc.at:1504"
( $at_check_trace; $COMPILE_MODULE -fno-recursive-check callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1504"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1505: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1505"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1505"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_707
#AT_START_708
at_fn_group_banner 708 'run_misc.at:1510' \
  "Recursive CALL with ON EXCEPTION" "               " 4
at_xfail=no
(
  $as_echo "708. $at_setup_line: testing $at_desc ..."
  $at_traceon




cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC 9 EXTERNAL.
       PROCEDURE        DIVISION.
           MOVE 0 TO STOPPER
           CALL "callee" END-CALL.
           GOBACK.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee IS INITIAL.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  STOPPER      PIC 9 EXTERNAL.
       PROCEDURE        DIVISION.
           IF STOPPER = 1
              DISPLAY 'INITIAL prog was called RECURSIVE'
              END-DISPLAY
              STOP RUN RETURNING 1
           ELSE
              MOVE 1 TO STOPPER
              CALL "callee2" END-CALL
           END-IF.
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           CALL "callee"
           ON EXCEPTION
              DISPLAY "Exception " FUNCTION EXCEPTION-STATUS ";"
                 UPON SYSERR
              STOP RUN RETURNING 1
           END-CALL.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1557: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1557"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1557"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1558: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:1558"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1558"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1559: \$COMPILE_MODULE callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee2.cob" "run_misc.at:1559"
( $at_check_trace; $COMPILE_MODULE callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1559"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1560: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1560"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "Exception EC-PROGRAM-RECURSIVE-CALL      ;
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:1560"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_708
#AT_START_709
at_fn_group_banner 709 'run_misc.at:1567' \
  "Multiple calls of INITIAL program" "              " 4
at_xfail=no
(
  $as_echo "709. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  PARAM1       PIC X(08).
       01  PARAM2       PIC 9999 COMP VALUE 08.
       PROCEDURE        DIVISION.
           MOVE ' PARAM 1' TO PARAM1
           PERFORM 10 TIMES
              CALL "callee" USING PARAM1 PARAM2 END-CALL
           END-PERFORM
           DISPLAY 'PARAM1 = ' PARAM1
           END-DISPLAY
           STOP RUN.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee IS INITIAL.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  COUNTER      PIC 999 VALUE ZERO.
       01  LPARAM       PIC 9(8) COMP.
       LINKAGE SECTION.
       01  PARAM1       PIC X(08).
       01  PARAM2       PIC 9999 COMP.
       PROCEDURE        DIVISION USING PARAM1 PARAM2.
           ADD 1 TO COUNTER END-ADD
           CALL 'C$PARAMSIZE' USING 1 GIVING LPARAM END-CALL
           DISPLAY 'COUNTER = ' COUNTER ' LPARAM1 = ' LPARAM
                   ' PARAM1 = ' PARAM1
           END-DISPLAY
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1606: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:1606"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1606"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1607: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:1607"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1607"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1608: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:1608"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
COUNTER = 001 LPARAM1 = 00000008 PARAM1 =  PARAM 1
PARAM1 =  PARAM 1
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1608"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_709
#AT_START_710
at_fn_group_banner 710 'run_misc.at:1624' \
  "CALL binary literal parameter/LENGTH OF" "        " 4
at_xfail=no
(
  $as_echo "710. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (int *p)
{
  printf ("%8.8d\n", *p);
  return 0;
}
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYOCC        PIC 9(8) COMP.
       01  MYTAB.
           03  MYBYTE   PIC X OCCURS 1 TO 20
                        DEPENDING ON MYOCC.
       PROCEDURE        DIVISION.
           MOVE 9 TO MYOCC.
           CALL "dump" USING BY CONTENT 1
           END-CALL.
           CALL "dump" USING BY CONTENT LENGTH OF MYTAB
           END-CALL.
           CALL "dump" USING BY CONTENT LENGTH OF MYOCC
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1659: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "run_misc.at:1659"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1659"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1660: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1660"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1660"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1661: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1661"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00000001
00000009
00000004
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1661"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1666: \$COMPILE -fbinary-byteorder=native prog.cob -o prog2"
at_fn_check_prepare_dynamic "$COMPILE -fbinary-byteorder=native prog.cob -o prog2" "run_misc.at:1666"
( $at_check_trace; $COMPILE -fbinary-byteorder=native prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1666"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1667: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:1667"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00000001
00000009
00000004
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1667"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_710
#AT_START_711
at_fn_group_banner 711 'run_misc.at:1678' \
  "INSPECT REPLACING LEADING ZEROS BY SPACES" "      " 4
at_xfail=no
(
  $as_echo "711. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "0001".
       PROCEDURE        DIVISION.
           INSPECT X REPLACING LEADING ZEROS BY SPACES.
           IF X NOT = "   1"
              DISPLAY "Should be '   1' but is '" X "'".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1694: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1694"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1694"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1695: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1695"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1695"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_711
#AT_START_712
at_fn_group_banner 712 'run_misc.at:1700' \
  "INSPECT: no repeat conversion" "                  " 4
at_xfail=no
(
  $as_echo "712. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(3) VALUE "BCA".
       01 Y             PIC X(6) VALUE "   BCA".
       PROCEDURE        DIVISION.
           INSPECT X CONVERTING "ABC" TO "BCD".
           IF X NOT = "CDB"
              DISPLAY "X: " X.
           INSPECT Y CONVERTING "ABC" TO "BCD".
           IF Y NOT = "   CDB"
              DISPLAY "Y: " Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1720: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1720"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1720"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1721: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1721"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1721"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_712
#AT_START_713
at_fn_group_banner 713 'run_misc.at:1726' \
  "TRANSFORM statement" "                            " 4
at_xfail=no
(
  $as_echo "713. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET MY-ASCII  IS STANDARD-1.
           ALPHABET MY-EBCDIC IS EBCDIC.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(3) VALUE "BCA".
       PROCEDURE        DIVISION.
      *> internally: "alias" to INSPECT CONVERTING
           TRANSFORM X FROM "ABC" TO "BCD".
           IF X NOT = "CDB"
              DISPLAY "X: " X.
      *> optional CHARACTERS and ALPHABETs (value test is separate)
           TRANSFORM X CHARACTERS FROM MY-ASCII TO MY-EBCDIC.
      *>
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1753: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1753"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1753"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1754: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1754"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1754"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_713
#AT_START_714
at_fn_group_banner 714 'run_misc.at:1759' \
  "INSPECT CONVERTING alphabet" "                    " 4
at_xfail=no
(
  $as_echo "714. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. charset.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET ALPHA IS ASCII.
           ALPHABET BETA  IS EBCDIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 TESTHEX PIC X(10) VALUE X'C17BD6F2F0F1F8406A5A'.

       procedure division.
       sample-main.

           INSPECT testhex CONVERTING BETA TO ALPHA
           DISPLAY 'Converted: "' TESTHEX '"' WITH NO ADVANCING

           GOBACK.
       END PROGRAM charset.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1787: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1787"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1787"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1788: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1788"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Converted: \"A#O2018 |!\"" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1788"
$at_failed && at_fn_log_failure
$at_traceon; }


# For characters above IBM (with irregularities) and GCOS should match:
{ set +x
$as_echo "$at_srcdir/run_misc.at:1792: \$COMPILE prog.cob -febcdic-table=ebcdic500_ascii7bit -o prog-ibm"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -febcdic-table=ebcdic500_ascii7bit -o prog-ibm" "run_misc.at:1792"
( $at_check_trace; $COMPILE prog.cob -febcdic-table=ebcdic500_ascii7bit -o prog-ibm
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1792"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1793: \$COBCRUN_DIRECT ./prog-ibm"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-ibm" "run_misc.at:1793"
( $at_check_trace; $COBCRUN_DIRECT ./prog-ibm
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Converted: \"A#O2018 |]\"" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1793"
$at_failed && at_fn_log_failure
$at_traceon; }
 # prefix is actually "|]" (escaped for m4 preproc)

{ set +x
$as_echo "$at_srcdir/run_misc.at:1796: \$COMPILE prog.cob -febcdic-table=ebcdic500_ascii8bit -o prog-gcos"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -febcdic-table=ebcdic500_ascii8bit -o prog-gcos" "run_misc.at:1796"
( $at_check_trace; $COMPILE prog.cob -febcdic-table=ebcdic500_ascii8bit -o prog-gcos
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1796"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1797: \$COBCRUN_DIRECT ./prog-gcos"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-gcos" "run_misc.at:1797"
( $at_check_trace; $COBCRUN_DIRECT ./prog-gcos
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Converted: \"A#O2018 |]\"" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1797"
$at_failed && at_fn_log_failure
$at_traceon; }
 # prefix is actually "|]" (escaped for m4 preproc)

# FIXME: This really does not convert to anything close to ASCII;
# what's this table supposed to encode?
# AT_CHECK([$COMPILE prog.cob -febcdic-table=RESTRICTED-GC -o prog-rgc], [0], [], [])
# AT_CHECK([$COBCRUN_DIRECT ./prog-rgc], [0], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_714
#AT_START_715
at_fn_group_banner 715 'run_misc.at:1808' \
  "INSPECT CONVERTING TO figurative constant" "      " 4
at_xfail=no
(
  $as_echo "715. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(3) VALUE "BCA".
       PROCEDURE        DIVISION.
           INSPECT X CONVERTING "ABC" TO SPACES.
           IF X NOT = SPACES
              DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1824: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1824"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1824"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1825: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1825"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1825"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_715
#AT_START_716
at_fn_group_banner 716 'run_misc.at:1830' \
  "INSPECT CONVERTING NULL" "                        " 4
at_xfail=no
(
  $as_echo "716. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(3) VALUE LOW-VALUES.
       PROCEDURE        DIVISION.
           INSPECT X CONVERTING NULL TO "A".
           IF X NOT = "AAA"
              DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1846: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1846"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1846"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1847: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1847"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1847"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_716
#AT_START_717
at_fn_group_banner 717 'run_misc.at:1852' \
  "INSPECT CONVERTING TO NULL" "                     " 4
at_xfail=no
(
  $as_echo "717. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(3) VALUE "AAA".
       PROCEDURE        DIVISION.
           INSPECT X CONVERTING "A" TO NULL
           IF X NOT = LOW-VALUES
              DISPLAY "NG".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1868: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1868"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1868"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1869: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1869"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1869"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_717
#AT_START_718
at_fn_group_banner 718 'run_misc.at:1874' \
  "INSPECT CONVERTING complex" "                     " 4
at_xfail=no
(
  $as_echo "718. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(12) VALUE "AZABBCDCCECC".
       PROCEDURE        DIVISION.
           INSPECT X CONVERTING "ABZC" TO "ZY0X"
           IF X NOT = "Z0ZYYXDXXEXX"
              DISPLAY "1 - " X
              MOVE "Z0ZYYXDXXEXX" TO X.

           INSPECT X CONVERTING "XD" TO SPACES
              BEFORE  "E" AFTER "D"
           IF X NOT = "Z0ZYYXD  EXX"
              DISPLAY "2 - " X
              MOVE "Z0ZYYXD  EXX" TO X.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:1898: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:1898"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1898"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:1899: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:1899"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:1899"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_718
#AT_START_719
at_fn_group_banner 719 'run_misc.at:1903' \
  "INSPECT numeric signed" "                         " 4
at_xfail=no
(
  $as_echo "719. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 SEPARATE1     PIC S99 VALUE -11 SIGN LEADING  SEPARATE.
       01 SEPARATE2     PIC S99 VALUE +11 SIGN LEADING  SEPARATE.
       01 TSEPARATE1    PIC S99 VALUE -11 SIGN TRAILING SEPARATE.
       01 TSEPARATE2    PIC S99 VALUE +11 SIGN TRAILING SEPARATE.
       01 NSEPARATE1    PIC S99 VALUE -11.
       01 NSEPARATE2    PIC S99 VALUE +11.
       01 TRAILING1     PIC S99 VALUE -11 SIGN TRAILING.
       01 TRAILING2     PIC S99 VALUE +11 SIGN TRAILING.
       77 CNT           USAGE BINARY-INT.
       PROCEDURE        DIVISION.
           MOVE 0 TO CNT
           INSPECT SEPARATE1  TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T1 - " CNT.
           MOVE 0 TO CNT
           INSPECT SEPARATE2  TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T2 - " CNT.
           MOVE 0 TO CNT
           INSPECT TSEPARATE1 TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T3 - " CNT.
           MOVE 0 TO CNT
           INSPECT TSEPARATE2 TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T4 - " CNT.
           MOVE 0 TO CNT
           INSPECT NSEPARATE1 TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T5 - " CNT.
           MOVE 0 TO CNT
           INSPECT NSEPARATE2 TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T6 - " CNT.
           MOVE 0 TO CNT
           INSPECT TRAILING1  TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T7 - " CNT.
           MOVE 0 TO CNT
           INSPECT TRAILING2  TALLYING CNT FOR ALL "1"
           IF CNT NOT = 2
              DISPLAY "T8 - " CNT.

           INSPECT SEPARATE1  CONVERTING "123" TO "234"
           IF SEPARATE1 NOT = -22
              DISPLAY "C1 - " SEPARATE1
              MOVE -22 TO SEPARATE1.
           INSPECT SEPARATE2  CONVERTING "123" TO "234"
           IF SEPARATE2 NOT = +22
              DISPLAY "C2 - " SEPARATE2
              MOVE +22 TO SEPARATE2.
           INSPECT TSEPARATE1 CONVERTING "123" TO "234"
           IF TSEPARATE1 NOT = -22
              DISPLAY "C3 - " TSEPARATE1
              MOVE -22 TO TSEPARATE1.
           INSPECT TSEPARATE2 CONVERTING "123" TO "234"
           IF TSEPARATE2 NOT = +22
              DISPLAY "C4 - " TSEPARATE2
              MOVE +22 TO TSEPARATE2.
           INSPECT NSEPARATE1 CONVERTING "123" TO "234"
           IF NSEPARATE1 NOT = -22
              DISPLAY "C5 - " NSEPARATE1
              MOVE -22 TO NSEPARATE1.
           INSPECT NSEPARATE2 CONVERTING "123" TO "234"
           IF NSEPARATE2 NOT = +22
              DISPLAY "C6 - " NSEPARATE2
              MOVE +22 TO NSEPARATE2.
           INSPECT TRAILING1  CONVERTING "123" TO "234"
           IF TRAILING1 NOT = -22
              DISPLAY "C7 - " TRAILING1
              MOVE -22 TO TRAILING1.
           INSPECT TRAILING2  CONVERTING "123" TO "234"
           IF TRAILING2 NOT = +22
              DISPLAY "C8 - " TRAILING2
              MOVE +22 TO TRAILING2.

           INSPECT SEPARATE1  REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF SEPARATE1 NOT = -33
              DISPLAY "R1 - " SEPARATE1
              MOVE -33 TO SEPARATE1.
           INSPECT SEPARATE2  REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF SEPARATE2 NOT = +33
              DISPLAY "R2 - " SEPARATE2
              MOVE +33 TO SEPARATE2.
           INSPECT TSEPARATE1 REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF TSEPARATE1 NOT = -33
              DISPLAY "R3 - " TSEPARATE1
              MOVE -33 TO TSEPARATE1.
           INSPECT TSEPARATE2 REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF TSEPARATE2 NOT = +33
              DISPLAY "R4 - " TSEPARATE2
              MOVE +33 TO TSEPARATE2.
           INSPECT NSEPARATE1 REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF NSEPARATE1 NOT = -33
              DISPLAY "R5 - " NSEPARATE1
              MOVE -33 TO NSEPARATE1.
           INSPECT NSEPARATE2 REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF NSEPARATE2 NOT = +33
              DISPLAY "R6 - " NSEPARATE2
              MOVE +33 TO NSEPARATE2.
           INSPECT TRAILING1  REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF TRAILING1 NOT = -33
              DISPLAY "R7 - " TRAILING1
              MOVE -33 TO TRAILING1.
           INSPECT TRAILING2  REPLACING ALL "1" BY "2"
                                            "2" BY "3"
                                            "3" BY "4"
           IF TRAILING2 NOT = +33
              DISPLAY "R8 - " TRAILING2
              MOVE +33 TO TRAILING2.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2039: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2039"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2039"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2040: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2040"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2040"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_719
#AT_START_720
at_fn_group_banner 720 'run_misc.at:2044' \
  "INSPECT TALLYING BEFORE" "                        " 4
at_xfail=no
(
  $as_echo "720. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "ABC ".
       01 TAL           PIC 999 VALUE 0.
       PROCEDURE        DIVISION.
           MOVE 0 TO TAL.
           INSPECT X TALLYING TAL FOR CHARACTERS
                     BEFORE INITIAL " ".
           IF TAL NOT = 3
              DISPLAY "1: should be 3 but is " TAL.

           MOVE 0 TO TAL.
           MOVE " ABC" TO X.
           INSPECT X TALLYING TAL FOR CHARACTERS
                     BEFORE INITIAL " ".
           IF TAL NOT = 0
              DISPLAY "2: should be 0 but is " TAL.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2071: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2071"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2071"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2072: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2072"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2072"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_720
#AT_START_721
at_fn_group_banner 721 'run_misc.at:2077' \
  "INSPECT TALLYING AFTER" "                         " 4
at_xfail=no
(
  $as_echo "721. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "ABC ".
       01 TAL           PIC 999 VALUE 0.
       PROCEDURE        DIVISION.
           MOVE 0 TO TAL.
           INSPECT X TALLYING TAL FOR CHARACTERS
                     AFTER INITIAL " ".
           IF TAL NOT = 0
              DISPLAY TAL.

           MOVE 0 TO TAL.
           MOVE " ABC" TO X.
           INSPECT X TALLYING TAL FOR CHARACTERS
                     AFTER INITIAL " ".
           IF TAL NOT = 3
              DISPLAY TAL.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2104: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2104"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2104"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2105: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2105"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2105"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_721
#AT_START_722
at_fn_group_banner 722 'run_misc.at:2110' \
  "INSPECT TALLYING BEFORE and AFTER" "              " 4
at_xfail=no
(
  $as_echo "722. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "ABC ".
       01 TAL           PIC 999 VALUE 0.
       01 MSG           PIC X(256) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE 0 TO TAL.
           INSPECT X TALLYING TAL FOR CHARACTERS
                     BEFORE INITIAL " "
                     AFTER   " ".
           IF TAL NOT = 0
              DISPLAY "1: should be 0 but is " TAL.

      *> checking for no match, includes bug #865
           MOVE 0 TO TAL.
           INSPECT MSG TALLYING TAL FOR CHARACTERS
               AFTER INITIAL "<"
               BEFORE INITIAL "</".
           IF TAL NOT = 0
              DISPLAY "2: should be 0 but is " TAL.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2140: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2140"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2140"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2141: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2141"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2141"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_722
#AT_START_723
at_fn_group_banner 723 'run_misc.at:2146' \
  "INSPECT TALLYING REPLACING BEFORE and AFTER" "    " 4
at_xfail=no
(
  $as_echo "723. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  INSP-STRING   PIC X(26) VALUE 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.
       01  EXPTD-RESULT  CONSTANT AS     'A22222111111111122222222YZ'.
       01  RES-IDX       PIC 9(04) BINARY VALUE 100.
       01  RES-IDX-1     PIC 9(04) BINARY VALUE 0.
       PROCEDURE DIVISION.
      *>
           INSPECT INSP-STRING
                   TALLYING RES-IDX   FOR CHARACTERS BEFORE 'H'
                            RES-IDX-1 FOR CHARACTERS AFTER  'B'
             REPLACING
                   CHARACTERS BY '1' AFTER 'F' BEFORE 'Q'
                   CHARACTERS BY '2' AFTER 'A' BEFORE 'Y'.
      *>
           IF INSP-STRING NOT = EXPTD-RESULT
               DISPLAY 'Failed <' INSP-STRING '> != <' EXPTD-RESULT '>'.
           IF RES-IDX NOT = 107
               DISPLAY 'Failed <' RES-IDX   '> != <107>'.
           IF RES-IDX-1 NOT = 19
               DISPLAY 'Failed <' RES-IDX-1 '> != <19>'.
      *>
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2177: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2177"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2177"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2178: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2178"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2178"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_723
#AT_START_724
at_fn_group_banner 724 'run_misc.at:2183' \
  "INSPECT REPLACING figurative constant" "          " 4
at_xfail=no
(
  $as_echo "724. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(3) VALUE "BCA".
       PROCEDURE        DIVISION.
           INSPECT X REPLACING ALL "BC" BY SPACE.
           IF X NOT = "  A"
              DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2199: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2199"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2199"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2200: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2200"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2200"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_724
#AT_START_725
at_fn_group_banner 725 'run_misc.at:2207' \
  "SWITCHES (environment COB_SWITCH_n and SET)" "    " 4
at_xfail=no
(
  $as_echo "725. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           SWITCH-1 IS SWIT1
             ON  IS SWIT1-ON
             OFF IS SWIT1-OFF
           SWITCH-2 IS SWIT2
             ON  IS SWIT2-ON
             OFF IS SWIT2-OFF
           SWITCH-3
             ON  IS SWIT3-ON
             OFF IS SWIT3-OFF
           SWITCH-4 IS SWIT4
             OFF IS SWIT4-OFF
           SWITCH-31
             ON  IS SWIT31-ON
           SWITCH-36 IS SWIT36
             OFF IS SWIT36-OFF.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           IF SWIT1-ON
              DISPLAY "ON" NO ADVANCING
           ELSE
              DISPLAY "OFF" NO ADVANCING.

           IF SWIT2-ON
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           IF SWIT3-ON
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           IF NOT SWIT4-OFF
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           SET SWIT1 TO OFF.
           SET SWIT2 TO ON.
           IF SWIT1-ON
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           IF SWIT2-ON
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           IF SWIT31-ON
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           IF NOT SWIT36-OFF
              DISPLAY " ON" NO ADVANCING
           ELSE
              DISPLAY " OFF" NO ADVANCING.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2279: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2279"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2279"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2280: COB_SWITCH_1=1 COB_SWITCH_2=0 COB_SWITCH_3=OFF COB_SWITCH_4=ON COB_SWITCH_36=ON ./prog"
at_fn_check_prepare_trace "run_misc.at:2280"
( $at_check_trace; COB_SWITCH_1=1 COB_SWITCH_2=0 COB_SWITCH_3=OFF COB_SWITCH_4=ON COB_SWITCH_36=ON ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ON OFF OFF ON OFF ON OFF ON" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2280"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_725
#AT_START_726
at_fn_group_banner 726 'run_misc.at:2288' \
  "Nested PERFORM" "                                 " 4
at_xfail=no
(
  $as_echo "726. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           PERFORM 2 TIMES
             DISPLAY "X" NO ADVANCING
             END-DISPLAY
             PERFORM 2 TIMES
               DISPLAY "Y" NO ADVANCING
             END-PERFORM
           END-PERFORM.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2305: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2305"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2305"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2306: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2306"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "XYYXYY" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2306"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_726
#AT_START_727
at_fn_group_banner 727 'run_misc.at:2311' \
  "PERFORM VARYING BY -0.2 decimal" "                " 4
at_xfail=no
(
  $as_echo "727. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 X             PIC 9v9.
       PROCEDURE        DIVISION.
           PERFORM VARYING X FROM 0.8 BY -0.2
                   UNTIL   X < 0.4
             DISPLAY "X" NO ADVANCING
           END-PERFORM.
           IF X NOT = 0.2
             DISPLAY "WRONG X: " X END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2331: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2331"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2331"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2332: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2332"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "XXX" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2332"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_727
#AT_START_728
at_fn_group_banner 728 'run_misc.at:2337' \
  "PERFORM VARYING Float" "                          " 4
at_xfail=no
(
  $as_echo "728. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  i USAGE FLOAT-LONG.

       PROCEDURE DIVISION.
           PERFORM VARYING i FROM 1.0 BY 1.0 UNTIL i > 5.0
                 DISPLAY i " " NO ADVANCING
           END-PERFORM .
           DISPLAY "Test Part 1 Completed".
           PERFORM VARYING i FROM 1 BY 1 UNTIL i > 5
                 DISPLAY i " " NO ADVANCING
           END-PERFORM .
           DISPLAY "Test Part 2 Completed".
           PERFORM VARYING i FROM 5 BY -1 UNTIL i < 1
                 DISPLAY i " " NO ADVANCING
           END-PERFORM .
           DISPLAY "Test Part 3 Completed".
           STOP RUN.
           END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2365: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2365"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2365"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:2367: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2367"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1 2 3 4 5 Test Part 1 Completed
1 2 3 4 5 Test Part 2 Completed
5 4 3 2 1 Test Part 3 Completed
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2367"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_728
#AT_START_729
at_fn_group_banner 729 'run_misc.at:2376' \
  "PERFORM VARYING BY phrase omitted" "              " 4
at_xfail=no
(
  $as_echo "729. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 X             PIC 9.
       PROCEDURE        DIVISION.
           PERFORM VARYING X FROM 4
                   UNTIL   X > 6
             DISPLAY "X" NO ADVANCING
           END-PERFORM.
           IF X NOT = 7
             DISPLAY "WRONG X: " X
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2396: \$COMPILE_ONLY -std=cobol85 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -std=cobol85 prog.cob" "run_misc.at:2396"
( $at_check_trace; $COMPILE_ONLY -std=cobol85 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: error: PERFORM VARYING without BY phrase does not conform to COBOL 85
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:2396"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2399: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2399"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2399"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2400: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2400"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "XXX" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2400"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_729
#AT_START_730
at_fn_group_banner 730 'run_misc.at:2407' \
  "EXIT PERFORM" "                                   " 4
at_xfail=no
(
  $as_echo "730. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           PERFORM 2 TIMES
             DISPLAY "OK" NO ADVANCING
             EXIT PERFORM
             DISPLAY "NOT OK"
           END-PERFORM
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2422: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2422"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2422"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2423: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2423"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2423"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_730
#AT_START_731
at_fn_group_banner 731 'run_misc.at:2430' \
  "EXIT PERFORM CYCLE" "                             " 4
at_xfail=no
(
  $as_echo "731. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           PERFORM 2 TIMES
             DISPLAY "OK" NO ADVANCING
             EXIT PERFORM CYCLE
             DISPLAY "NOT OK"
           END-PERFORM
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2445: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2445"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2445"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2446: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2446"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2446"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_731
#AT_START_732
at_fn_group_banner 732 'run_misc.at:2453' \
  "EXIT PARAGRAPH" "                                 " 4
at_xfail=no
(
  $as_echo "732. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: testing EXIT PARAGRPAPH without being PERFORMed
#       implicit GO TO only

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 INDVAL        PIC 9(4).
       PROCEDURE        DIVISION.
       A01.
           PERFORM VARYING INDVAL FROM 1 BY 1 UNTIL INDVAL > 10
            IF INDVAL > 2
               EXIT PARAGRAPH
            END-IF
           END-PERFORM.
       A02.
           IF INDVAL NOT = 3
              DISPLAY INDVAL
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2479: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2479"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2479"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2480: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2480"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2480"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_732
#AT_START_733
at_fn_group_banner 733 'run_misc.at:2487' \
  "EXIT SECTION" "                                   " 4
at_xfail=no
(
  $as_echo "733. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: testing EXIT SECTION without being PERFORMed
#       implicit GO TO only

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 INDVAL        PIC 9(4).
       PROCEDURE        DIVISION.
       A01 SECTION.
       A011.
           PERFORM VARYING INDVAL FROM 1 BY 1 UNTIL INDVAL > 10
            IF INDVAL > 2
               EXIT SECTION
            END-IF
           END-PERFORM.
       A012.
           DISPLAY INDVAL.
       A02 SECTION.
           IF INDVAL NOT = 3
              DISPLAY INDVAL.
           STOP RUN.
_ATEOF


# disabling the check for "something leaves the section" - as this is
# guaranteed to happen with this EXIT SECTION as GO TO
{ set +x
$as_echo "$at_srcdir/run_misc.at:2517: \$COMPILE -fno-section-exit-check prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-section-exit-check prog.cob" "run_misc.at:2517"
( $at_check_trace; $COMPILE -fno-section-exit-check prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2517"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2518: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2518"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2518"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:2520: \$COMPILE -fsection-exit-check prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fsection-exit-check prog.cob" "run_misc.at:2520"
( $at_check_trace; $COMPILE -fsection-exit-check prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2520"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2521: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2521"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:12: error: code execution leaving A01
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:2521"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_733
#AT_START_734
at_fn_group_banner 734 'run_misc.at:2528' \
  "implicit GOBACK at end of PROCEDURE DIVISION" "   " 4
at_xfail=no
(
  $as_echo "734. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
       A01 SECTION.
       A011.
          CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2540: \$COMPILE -fno-implicit-goback-check prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-implicit-goback-check prog.cob" "run_misc.at:2540"
( $at_check_trace; $COMPILE -fno-implicit-goback-check prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2540"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2541: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2541"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2541"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:2543: \$COMPILE -fimplicit-goback-check prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fimplicit-goback-check prog.cob" "run_misc.at:2543"
( $at_check_trace; $COMPILE -fimplicit-goback-check prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2543"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2544: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2544"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:8: error: code execution leaving PROCEDURE DIVISION
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:2544"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_734
#AT_START_735
at_fn_group_banner 735 'run_misc.at:2551' \
  "PERFORM FOREVER / PERFORM UNTIL EXIT" "           " 4
at_xfail=no
(
  $as_echo "735. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  INDVAL       PIC 9(4).
       PROCEDURE        DIVISION.
       A01.
           MOVE 0 TO INDVAL
           PERFORM UNTIL EXIT
            ADD 1 TO INDVAL
            IF INDVAL > 2
               EXIT PERFORM
            END-IF
           END-PERFORM
           IF INDVAL NOT = 3
              DISPLAY "1: " INDVAL
              END-DISPLAY
           END-IF
           PERFORM FOREVER
            ADD 1 TO INDVAL
            IF INDVAL > 4
               EXIT PERFORM
            END-IF
           END-PERFORM
           IF INDVAL NOT = 5
              DISPLAY "2: " INDVAL
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2586: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2586"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2586"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2587: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2587"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2587"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_735
#AT_START_736
at_fn_group_banner 736 'run_misc.at:2592' \
  "PERFORM inline (1)" "                             " 4
at_xfail=no
(
  $as_echo "736. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  INDVAL       PIC 9(4).
       PROCEDURE        DIVISION.
           PERFORM VARYING INDVAL FROM 1
            BY 1 UNTIL INDVAL > 2
           END-PERFORM
           IF INDVAL NOT = 3
              DISPLAY INDVAL
           END-IF
           STOP RUN
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2612: \$COMPILE -fmissing-statement=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fmissing-statement=ok prog.cob" "run_misc.at:2612"
( $at_check_trace; $COMPILE -fmissing-statement=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2612"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2613: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2613"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2613"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_736
#AT_START_737
at_fn_group_banner 737 'run_misc.at:2618' \
  "PERFORM inline (2)" "                             " 4
at_xfail=no
(
  $as_echo "737. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  INDVAL       PIC 9(4).
       PROCEDURE        DIVISION.
           PERFORM VARYING INDVAL FROM 1
            BY 1 UNTIL INDVAL > 2.
           IF INDVAL NOT = 3
              DISPLAY INDVAL
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2636: \$COMPILE -frelax-syntax-checks -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -frelax-syntax-checks -w prog.cob" "run_misc.at:2636"
( $at_check_trace; $COMPILE -frelax-syntax-checks -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2636"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2637: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2637"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2637"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_737
#AT_START_738
at_fn_group_banner 738 'run_misc.at:2642' \
  "Non-overflow after overflow" "                    " 4
at_xfail=no
(
  $as_echo "738. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC 9(2) VALUE 0.
       01  Y            PIC 9(2) VALUE 0.
       PROCEDURE        DIVISION.
           COMPUTE X = 100. *> this overflows which does not store a result
           COMPUTE Y = 99.  *> and once in a time this result was not stored
           IF X NOT = 0 AND
              Y NOT = 99
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2661: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2661"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2661"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2662: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2662"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2662"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_738
#AT_START_739
at_fn_group_banner 739 'run_misc.at:2669' \
  "PERFORM ... CONTINUE" "                           " 4
at_xfail=no
(
  $as_echo "739. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           PERFORM 2 TIMES
             CONTINUE
           END-PERFORM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2681: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "run_misc.at:2681"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2681"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_739
#AT_START_740
at_fn_group_banner 740 'run_misc.at:2686' \
  "STRING with subscript reference" "                " 4
at_xfail=no
(
  $as_echo "740. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  G.
           02 X         PIC X(3) OCCURS 3.
       PROCEDURE        DIVISION.
           MOVE   SPACES TO G.
           STRING "abc" INTO X(2)
           END-STRING.
           IF G NOT = "   abc   "
              DISPLAY X(1)
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2706: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2706"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2706"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2707: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2707"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2707"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_740
#AT_START_741
at_fn_group_banner 741 'run_misc.at:2712' \
  "STRING WITH POINTER ON OVERFLOW with DELIMITER" " " 4
at_xfail=no
(
  $as_echo "741. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. StringTest.
      *>----------------------------------------------------------------
      *>           Additional test cases for STRING statement
      *> Testing string  with POINTER clause and with OVERFLOW
      *> managment associated to POINTER clause
      *> Testing also String with delimiter
      *>----------------------------------------------------------------
       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *>-----------------------
       01  TRGT-STRING   PIC X(03) VALUE SPACES.
       01  STR-POINTER   PIC 9(02).
       01  SRC-DELIM     PIC X(01).

       PROCEDURE DIVISION.
      *>-------------------
      *>
      *> case A: Pointer is between 1 and less than TRGT-STRING LENGTH
      *>         Should not overflow
            MOVE 1 to STR-POINTER.
            STRING 'A' 'B' 'C' DELIMITED BY SIZE
                   INTO TRGT-STRING
                   WITH POINTER STR-POINTER
                   ON OVERFLOW
                      DISPLAY 'Case A: Should not overflow' END-DISPLAY
            END-STRING.
            IF TRGT-STRING NOT = 'ABC'
                DISPLAY 'A: TRTG-STRING <' TRGT-STRING '> != <ABC>'.
            IF STR-POINTER NOT = 4
                DISPLAY 'A: STR-POINTER <' STR-POINTER '> != <04>'.
      *>
      *>  case B: Pointer is 0 --> Should  overflow
            MOVE 0                        TO STR-POINTER.
            MOVE SPACES                   TO TRGT-STRING.
            STRING 'A' 'B' 'C'  DELIMITED BY SIZE
                   INTO TRGT-STRING
                   WITH POINTER STR-POINTER
                   NOT ON OVERFLOW
                      DISPLAY 'Case B: Should overflow' END-DISPLAY
            END-STRING.
            IF TRGT-STRING NOT = SPACES
                DISPLAY 'B: TRTG-STRING <' TRGT-STRING '> != SPACES'.
            IF STR-POINTER NOT = 0
                DISPLAY 'B: STR-POINTER <' STR-POINTER '> != <00>'.
      *>
      *>  case C: Pointer is 4 --> Should  overflow
            MOVE 4                        TO STR-POINTER.
            MOVE SPACES                   TO TRGT-STRING.
            STRING 'A' 'B' 'C' DELIMITED BY SIZE
                   INTO TRGT-STRING
                   WITH POINTER STR-POINTER
                   NOT ON OVERFLOW
                      DISPLAY 'Case C: Should overflow' END-DISPLAY
            END-STRING.
            IF TRGT-STRING NOT = SPACES
                DISPLAY 'C: TRTG-STRING <' TRGT-STRING '> != SPACES'.
            IF STR-POINTER NOT = 4
                DISPLAY 'C: STR-POINTER <' STR-POINTER '> != <04>'.
      *>
      *>  case D: Test with delimiter
            MOVE 1      TO STR-POINTER.
            MOVE '|'    TO SRC-DELIM.
            MOVE SPACES TO TRGT-STRING.
            STRING '1|2' 'A|B' 'C|D'   DELIMITED BY SRC-DELIM
                    INTO TRGT-STRING
                    WITH POINTER STR-POINTER
            END-STRING.
            IF TRGT-STRING NOT = '1AC'
                DISPLAY 'D: TRGT-STRING <' TRGT-STRING '> != <1AC>'.
      *>
            GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2790: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2790"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2790"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2791: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2791"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2791"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_741
#AT_START_742
at_fn_group_banner 742 'run_misc.at:2796' \
  "STRING / UNSTRING [NOT] ON OVERFLOW" "            " 4
at_xfail=no
(
  $as_echo "742. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.
       data division.
       working-storage section.
       77 simple-str     pic x(20).
       77 err-str        pic x(50).
      *-----------------------------------------------------------------
       procedure division.
      *    STRING test
           move spaces to simple-str
           string 'data'
             delimited by size
             into simple-str
             on overflow
               move spaces to err-str
               string 'STRING OVERFLOW'
                  delimited by size
                  into err-str
               end-string
               display err-str upon syserr
               end-display
               display '1 failed'
               end-display
             not on overflow
               display '1 passed'
               end-display
           end-string
           if simple-str not = 'data'
             display 'STRING ERROR (1): "' simple-str '"'
             end-display
           end-if
      *
           move spaces to simple-str
           string 'data is too big here...'
             delimited by size
             into simple-str
             on overflow
               display '2 passed'
               end-display
             not on overflow
               display '2 failed'
               end-display
               move spaces to err-str
               string 'missing OVERFLOW'
                  delimited by size
                  into err-str
               end-string
               display err-str upon syserr
               end-display
           end-string
           if simple-str not = 'data is too big here'
             display 'STRING ERROR (2): "' simple-str '"'
             end-display
           end-if
      *
      *    UNSTRING test
           move spaces to simple-str
           unstring 'data'
             into simple-str
             on overflow
               move spaces to err-str
               unstring 'UNSTRING OVERFLOW'
                  into err-str
               end-unstring
               display err-str upon syserr
               end-display
               display '3 failed'
               end-display
             not on overflow
               display '3 passed'
               end-display
           end-unstring
           if simple-str not = 'data'
             display 'UNSTRING ERROR (1): "' simple-str '"'
             end-display
           end-if
      *
           move spaces to simple-str
           unstring 'data is too big here...'
             into simple-str
             on overflow
               display '4 passed'
               end-display
             not on overflow
               display '4 failed'
               end-display
               move spaces to err-str
               string 'missing OVERFLOW'
                  delimited by size
                  into err-str
               end-string
               display err-str upon syserr
               end-display
           end-unstring
           if simple-str not = 'data is too big here'
             display 'UNSTRING ERROR (2): "' simple-str '"'
             end-display
           end-if
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2902: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2902"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2902"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2903: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2903"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1 passed
2 passed
3 passed
4 passed
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2903"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_742
#AT_START_743
at_fn_group_banner 743 'run_misc.at:2913' \
  "UNSTRING DELIMITED ALL LOW-VALUE" "               " 4
at_xfail=no
(
  $as_echo "743. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  G.
           03 FILLER    PIC XXX VALUE "ABC".
           03 FILLER    PIC XX  VALUE LOW-VALUES.
           03 FILLER    PIC XXX VALUE "DEF".
       01  A            PIC XXX.
       01  B            PIC XXX.
       PROCEDURE        DIVISION.
           UNSTRING G DELIMITED BY ALL LOW-VALUES
                      INTO A B
           END-UNSTRING.
           IF A NOT = "ABC"
              DISPLAY A.
           IF B NOT = "DEF"
              DISPLAY B.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2938: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2938"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2938"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2939: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2939"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2939"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_743
#AT_START_744
at_fn_group_banner 744 'run_misc.at:2944' \
  "UNSTRING DELIMITED ALL SPACE-2" "                 " 4
at_xfail=no
(
  $as_echo "744. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       ENVIRONMENT     DIVISION.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  WS-RECORD.
           02 VALUE SPACE           PIC X(04).
           02 VALUE "ABC AND DE"    PIC X(10).
           02 VALUE SPACE           PIC X(07).
           02 VALUE "FG AND HIJ"    PIC X(10).
           02 VALUE SPACE           PIC X(08).
       01  SPACE-2                  PIC X(02) VALUE SPACE.
       01  WS-DUMMY                 PIC X(15).
       01  WS-POINTER               PIC 99.
       PROCEDURE       DIVISION.
           MOVE 1 TO WS-POINTER.
      *
           PERFORM 0001-SUB.
           IF WS-DUMMY NOT = SPACE
              DISPLAY "Expected space - Got " WS-DUMMY.
           IF WS-POINTER NOT = 5
              DISPLAY "Expected 5 - Got " WS-POINTER.
      *
           PERFORM 0001-SUB.
           IF WS-DUMMY NOT = "ABC AND DE"
              DISPLAY "Expected ABC AND DE - Got " WS-DUMMY.
           IF WS-POINTER NOT = 21
              DISPLAY "Expected 21 - Got " WS-POINTER.
      *
           PERFORM 0001-SUB.
           IF WS-DUMMY NOT = " FG AND HIJ"
              DISPLAY "Expected  FG AND HIJ - Got " WS-DUMMY.
           IF WS-POINTER NOT = 40
              DISPLAY "Expected 40 - Got " WS-POINTER.
           STOP RUN.
       0001-SUB.
           UNSTRING WS-RECORD
                    DELIMITED BY ALL SPACE-2
              INTO WS-DUMMY
              POINTER WS-POINTER
           END-UNSTRING.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:2991: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:2991"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2991"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:2992: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:2992"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:2992"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_744
#AT_START_745
at_fn_group_banner 745 'run_misc.at:2997' \
  "UNSTRING DELIMITED POINTER" "                     " 4
at_xfail=no
(
  $as_echo "745. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       ENVIRONMENT     DIVISION.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  WS-LAY-RECORD            PIC X(66).
       01  WS-DUMMY                 PIC X(50).
       01  WS-KEYWORD               PIC X(32).
       01  WS-POINTER               PIC 99.
       PROCEDURE       DIVISION.
           MOVE
       '        10  AF-RECORD-TYPE-SEQUENCE-04     PIC   9(05) COMP-3.'
                  TO WS-LAY-RECORD.
           MOVE 1 TO WS-POINTER.
           PERFORM 0001-SUB.
           IF WS-POINTER NOT = 48
              DISPLAY "Expected 48 - Got " WS-POINTER.
           ADD 7  TO WS-POINTER
          .
           PERFORM 0001-SUB.
           IF WS-POINTER NOT = 62
              DISPLAY "Expected 62 - Got " WS-POINTER.
           PERFORM 0001-SUB.
           IF WS-POINTER NOT = 63
              DISPLAY "Expected 63 - Got " WS-POINTER.
           STOP RUN.
       0001-SUB.
           UNSTRING WS-LAY-RECORD
                    DELIMITED
                    BY ' PIC '
                    OR ' COMP-3'
                    OR '.'
              INTO WS-DUMMY
              DELIMITER WS-KEYWORD
              POINTER WS-POINTER
           END-UNSTRING.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3039: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3039"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3039"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3040: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3040"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3040"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_745
#AT_START_746
at_fn_group_banner 746 'run_misc.at:3045' \
  "UNSTRING DELIMITER IN" "                          " 4
at_xfail=no
(
  $as_echo "746. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  WK-CMD       PIC X(8) VALUE "WWADDBCC".
       01  WK-SIGNS     PIC XX   VALUE "AB".
       01  WKS REDEFINES WK-SIGNS.
           03 WK-SIGN   PIC X OCCURS 2.
       01  WK-DELIM     PIC X OCCURS 2.
       01  WK-DATA      PIC X(2) OCCURS 3.
       PROCEDURE        DIVISION.
           UNSTRING WK-CMD DELIMITED BY WK-SIGN(1) OR WK-SIGN(2)
           INTO WK-DATA(1) DELIMITER IN WK-DELIM(1)
                WK-DATA(2) DELIMITER IN WK-DELIM(2)
                WK-DATA(3)
           END-UNSTRING
           IF  WK-DATA(1)   NOT = "WW"
            OR WK-DATA(2)   NOT = "DD"
            OR WK-DATA(3)   NOT = "CC"
            OR WK-DELIM(1)  NOT = "A"
            OR WK-DELIM(2)  NOT = "B"
               DISPLAY WK-DATA(1)
                       WK-DATA(2)
                       WK-DATA(3)
                       WK-DELIM(1)
                       WK-DELIM(2)
               END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3081: \$COMPILE -ftop-level-occurs-clause=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -ftop-level-occurs-clause=ok prog.cob" "run_misc.at:3081"
( $at_check_trace; $COMPILE -ftop-level-occurs-clause=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3081"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3082: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3082"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3082"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_746
#AT_START_747
at_fn_group_banner 747 'run_misc.at:3087' \
  "UNSTRING combined" "                              " 4
at_xfail=no
(
  $as_echo "747. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. UnstringTest.
      *>----------------------------------------------------------------
      *>           Additional test case for UNSTRING
      *> testing unstring tallying with and without OVERFLOW and with
      *> ALL clause for delimiters
      *>----------------------------------------------------------------
       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *>-----------------------
       01 INP-STRING           PIC X(13) VALUE 'ABC1|DEF--GHI'.
       01 STR-POINTER          PIC 9(02).
       01 RES-DATA.
          05 RES-TRGT-1        PIC X(20).
          05 RES-DELIM-1       PIC X(01).
          05 RES-COUNT-1       PIC 9(02).
          05 RES-TRGT-2        PIC X(20).
          05 RES-DELIM-2       PIC X(01).
          05 RES-COUNT-2       PIC 9(02).
          05 RES-TALLY         PIC 9(02).
      *>
       PROCEDURE DIVISION.
      *>------------------
      *>
      *>   case A : should not  OVERFLOW; use of one delimiter
           INITIALIZE RES-DATA
           MOVE 1  TO STR-POINTER
      *>
           UNSTRING INP-STRING
                    DELIMITED BY '|'
               INTO RES-TRGT-1
                    DELIMITER IN RES-DELIM-1 COUNT IN RES-COUNT-1
                    RES-TRGT-2
                    DELIMITER IN RES-DELIM-2 COUNT IN RES-COUNT-2
               WITH POINTER STR-POINTER
               TALLYING RES-TALLY
               ON OVERFLOW
                   DISPLAY
                      'Unstring tallying case 1 should not OVERFLOW'
                   END-DISPLAY
           END-UNSTRING.
           PERFORM TEST-CASE-1-RESULT
      *>
      *>   case B : should  OVERFLOW; use of two delimiters
           INITIALIZE RES-DATA
           MOVE 1  TO STR-POINTER

           UNSTRING INP-STRING
                    DELIMITED BY '|' OR  ALL '-'
               INTO RES-TRGT-1
                    DELIMITER IN RES-DELIM-1 COUNT IN RES-COUNT-1
                    RES-TRGT-2
                    DELIMITER IN RES-DELIM-2 COUNT IN RES-COUNT-2
               WITH POINTER STR-POINTER
               TALLYING RES-TALLY
               NOT ON OVERFLOW
                   DISPLAY
                      'Unstring tallying case 2 should  OVERFLOW'
                   END-DISPLAY
           END-UNSTRING.
           PERFORM TEST-CASE-2-RESULT
      *>
           GOBACK.

      *>
       TEST-CASE-1-RESULT.
      *>------------------
           IF RES-TRGT-1 NOT = 'ABC1'
              DISPLAY 'A: RES-TRGT-1 <'   RES-TRGT-1  '> != <ABC1>'.
           IF RES-DELIM-1 NOT = '|'
              DISPLAY 'A: RES-DELIM-1 <'  RES-DELIM-1 '> != <|>'.
           IF RES-COUNT-1 NOT = 4
              DISPLAY 'A: RES-COUNT-1 <'  RES-COUNT-1 '> != <4>'.
           IF RES-TRGT-2 NOT = 'DEF--GHI'
              DISPLAY 'A: RES-TRGT-2 <'   RES-TRGT-2  '> != <DEF--GHI>'.
           IF RES-DELIM-2  NOT = SPACES
              DISPLAY 'A: RES-DELIM2 <'   RES-DELIM-2 '> != SPACE'.
           IF RES-COUNT-2 NOT = 8
              DISPLAY 'A: RES-COUNT-1 <'  RES-COUNT-2 '> != <8>'.
           IF STR-POINTER NOT = 14
              DISPLAY 'A: STR-POINTER <'  STR-POINTER '> != <14>'.
           IF RES-TALLY NOT = 2
              DISPLAY 'A: RES-TALLY <'    RES-TALLY   '> != <2>'.
      *>
       TEST-CASE-2-RESULT.
      *>------------------
           IF RES-TRGT-1 NOT = 'ABC1'
              DISPLAY 'B: RES-TRGT-1 <'   RES-TRGT-1  '> != <ABC1>'.
           IF RES-DELIM-1 NOT = '|'
              DISPLAY 'B: RES-DELIM-1 <'  RES-DELIM-1 '> != <|>'.
           IF RES-COUNT-1 NOT = 4
              DISPLAY 'B: RES-COUNT-1 <'  RES-COUNT-1 '> != <4>'.
           IF RES-TRGT-2 NOT = 'DEF'
              DISPLAY 'B: RES-TRGT-2 <'   RES-TRGT-2  '> != <DEF>'.
           IF RES-DELIM-2  NOT = '-'
              DISPLAY 'B: RES-DELIM2 <'   RES-DELIM-2 '> != <->'.
           IF RES-COUNT-2 NOT = 3
              DISPLAY 'B: RES-COUNT-1 <'  RES-COUNT-2 '> != <3>'.
           IF STR-POINTER NOT = 11
              DISPLAY 'B: STR-POINTER <'  STR-POINTER '> != <11>'.
           IF RES-TALLY NOT = 2
              DISPLAY 'B: RES-TALLY <'    RES-TALLY   '> != <2>'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3195: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3195"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3195"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3196: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3196"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3196"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_747
#AT_START_748
at_fn_group_banner 748 'run_misc.at:3201' \
  "UNSTRING with FUNCTION / literal" "               " 4
at_xfail=no
(
  $as_echo "748. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  FILLER.
         05  TSTUNS PIC X(479).
         05  PRM    PIC X(16) OCCURS 4 TIMES.
       PROCEDURE DIVISION.
           MOVE "The,Quick,Brown,Fox" TO TSTUNS.
           UNSTRING TSTUNS DELIMITED BY ','
              INTO  PRM(1), PRM(2), PRM(3), PRM(4).
           DISPLAY "PRM(1) is " PRM(1) ":".
           DISPLAY "PRM(2) is " PRM(2) ":".
           DISPLAY "PRM(3) is " PRM(3) ":".
           DISPLAY "PRM(4) is " PRM(4) ":".
           UNSTRING FUNCTION UPPER-CASE(TSTUNS) DELIMITED BY ','
              INTO  PRM(1), PRM(2), PRM(3), PRM(4).
           DISPLAY "Now using UPPER-CASE"
           DISPLAY "PRM(1) is " PRM(1) ":".
           DISPLAY "PRM(2) is " PRM(2) ":".
           DISPLAY "PRM(3) is " PRM(3) ":".
           DISPLAY "PRM(4) is " PRM(4) ":".
           UNSTRING "Daddy,was,a,Rolling stone" DELIMITED BY ','
              INTO  PRM(1), PRM(2), PRM(3), PRM(4).
           DISPLAY "Now using Literal"
           DISPLAY "PRM(1) is " PRM(1) ":".
           DISPLAY "PRM(2) is " PRM(2) ":".
           DISPLAY "PRM(3) is " PRM(3) ":".
           DISPLAY "PRM(4) is " PRM(4) ":".
           UNSTRING FUNCTION LOWER-CASE("Daddy,was,a,Rolling stone")
                DELIMITED BY ','
              INTO  PRM(1), PRM(2), PRM(3), PRM(4).
           DISPLAY "Now using Literal + LOWER-CASE"
           DISPLAY "PRM(1) is " PRM(1) ":".
           DISPLAY "PRM(2) is " PRM(2) ":".
           DISPLAY "PRM(3) is " PRM(3) ":".
           DISPLAY "PRM(4) is " PRM(4) ":".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3245: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3245"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3245"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3246: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3246"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "PRM(1) is The             :
PRM(2) is Quick           :
PRM(3) is Brown           :
PRM(4) is Fox             :
Now using UPPER-CASE
PRM(1) is THE             :
PRM(2) is QUICK           :
PRM(3) is BROWN           :
PRM(4) is FOX             :
Now using Literal
PRM(1) is Daddy           :
PRM(2) is was             :
PRM(3) is a               :
PRM(4) is Rolling stone   :
Now using Literal + LOWER-CASE
PRM(1) is daddy           :
PRM(2) is was             :
PRM(3) is a               :
PRM(4) is rolling stone   :
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3246"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_748
#AT_START_749
at_fn_group_banner 749 'run_misc.at:3271' \
  "SORT: table" "                                    " 4
at_xfail=no
(
  $as_echo "749. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G             VALUE "d4b2e1a3c5".
         02 TBL         OCCURS 5.
           03 X         PIC X.
           03 Y         PIC 9.
       PROCEDURE        DIVISION.
           SORT TBL ASCENDING KEY X.
           IF G NOT = "a3b2c5d4e1"
              DISPLAY G.
           SORT TBL DESCENDING KEY Y.
           IF G NOT = "c5d4a3b2e1"
              DISPLAY G.
           SORT TBL ASCENDING KEY TBL.
           IF G NOT = "a3b2c5d4e1"
              DISPLAY G.
           SORT TBL DESCENDING KEY.
           IF G NOT = "e1d4c5b2a3"
              DISPLAY G.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3299: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3299"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3299"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3300: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3300"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3300"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_749
#AT_START_750
at_fn_group_banner 750 'run_misc.at:3305' \
  "SORT: table (2)" "                                " 4
at_xfail=no
(
  $as_echo "750. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 K                 PIC 9(2).

       01 CNT1              PIC 9(9) COMP-5 VALUE 4.
       01 TAB1.
          05 ROW1 OCCURS 1 TO 4 DEPENDING CNT1
                                 DESCENDING TAB1-NR.
             10 TAB1-NR     PIC 99.

       01 TAB2.
          05 CNT2           PIC 9(9) COMP-5 VALUE 4.
          05 ROW2 OCCURS 1 TO 4 DEPENDING CNT2
                                 DESCENDING TAB2-NR.
             10 TAB2-NR PIC 99.

       01 TAB3.
          05 CNT3           PIC 9(9) COMP-5 VALUE 10.
          05 ROW3 OCCURS 1 TO 10 DEPENDING CNT3
                                  DESCENDING TAB3-NR
                                  ASCENDING TAB3-DATA.
             10 TAB3-NR     PIC 99.
             10 FILLER      PIC X(2).
             10 TAB3-DATA   PIC X(5).
             10 FILLER      PIC X(2).
             10 TAB3-DATA2  PIC X(5).


       PROCEDURE DIVISION.
       A.
           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             MOVE K TO TAB1-NR(K), TAB2-NR(K)
           END-PERFORM

           MOVE 1 TO TAB3-NR(1).
           MOVE 1 TO TAB3-NR(8).
           MOVE 1 TO TAB3-NR(4).
           MOVE 6 TO TAB3-NR(2).
           MOVE 5 TO TAB3-NR(3).
           MOVE 5 TO TAB3-NR(9).
           MOVE 2 TO TAB3-NR(5).
           MOVE 2 TO TAB3-NR(10).
           MOVE 4 TO TAB3-NR(6).
           MOVE 3 TO TAB3-NR(7).

           MOVE "abcde" TO TAB3-DATA(1).
           MOVE "AbCde" TO TAB3-DATA(2).
           MOVE "abcde" TO TAB3-DATA(3).
           MOVE "zyx" TO TAB3-DATA(4).
           MOVE "12345" TO TAB3-DATA(5).
           MOVE "zyx" TO TAB3-DATA(6).
           MOVE "abcde" TO TAB3-DATA(7).
           MOVE "AbCde" TO TAB3-DATA(8).
           MOVE "abc" TO TAB3-DATA(9).
           MOVE "12346" TO TAB3-DATA(10).

           MOVE "day" TO TAB3-DATA2(1).
           MOVE "The" TO TAB3-DATA2(2).
           MOVE "eats" TO TAB3-DATA2(3).
           MOVE "." TO TAB3-DATA2(4).
           MOVE "mooos" TO TAB3-DATA2(5).
           MOVE "grass" TO TAB3-DATA2(6).
           MOVE "and" TO TAB3-DATA2(7).
           MOVE "whole" TO TAB3-DATA2(8).
           MOVE "cow" TO TAB3-DATA2(9).
           MOVE "the" TO TAB3-DATA2(10).

           SORT ROW1 DESCENDING TAB1-NR
           SORT ROW2 DESCENDING TAB2-NR

           DISPLAY "SINGLE TABLE" END-DISPLAY
           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             DISPLAY  FUNCTION TRIM(TAB1-NR(K)) END-DISPLAY
           END-PERFORM

           DISPLAY "LOWER LEVEL TABLE" END-DISPLAY
           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             DISPLAY  FUNCTION TRIM(TAB2-NR(K)) END-DISPLAY
           END-PERFORM

           SORT ROW3 DESCENDING TAB3-NR ASCENDING TAB3-DATA

           DISPLAY "MULTY KEY SORT" END-DISPLAY
           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 10
             DISPLAY  FUNCTION TRIM(ROW3(K))
             END-DISPLAY
           END-PERFORM

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3403: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3403"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3403"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3404: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3404"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SINGLE TABLE
04
03
02
01
LOWER LEVEL TABLE
04
03
02
01
MULTY KEY SORT
06  AbCde  The
05  abc    cow
05  abcde  eats
04  zyx    grass
03  abcde  and
02  12345  mooos
02  12346  the
01  AbCde  whole
01  abcde  day
01  zyx    .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3404"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_750
#AT_START_751
at_fn_group_banner 751 'run_misc.at:3430' \
  "SORT: table (3)" "                                " 4
at_xfail=no
(
  $as_echo "751. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 K                 PIC 9(2).

       01 CNT1              PIC 9(9) COMP-5 VALUE 4.
       01 TAB1.
          05 ROW1 OCCURS 1 TO 4 DEPENDING CNT1
                                  DESCENDING TAB1-NR.
             10 TAB1-NR     PIC 99.
             10 TAB-DATA    PIC X(5).
       01 TAB2.
          05 ROW2 OCCURS 1 TO 4 DEPENDING CNT1
                                  ASCENDING ROW2.
             10 TAB2-NR     PIC 99.
             10 TAB2-DATA   PIC X(5).

       PROCEDURE DIVISION.
       A.
           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             MOVE K     TO TAB1-NR (K)
             MOVE 'BLA' TO TAB-DATA(K)
           END-PERFORM

           SORT ROW1

           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             DISPLAY TAB1-NR(K) NO ADVANCING END-DISPLAY
           END-PERFORM

           MOVE TAB1 TO TAB2
           SORT ROW2

           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             DISPLAY TAB2-NR(K) NO ADVANCING END-DISPLAY
           END-PERFORM

           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 K                 PIC 9(2).

       01 CNT1              PIC 9(9) COMP-5 VALUE 4.
       01 TAB1.
          05 ROW1 OCCURS 5        DESCENDING TAB1-NR.
             10 TAB1-NR     PIC 99 VALUE ZERO.
             10 TAB-DATA    PIC X(5).
       01 TAB2.
          05 ROW1 OCCURS 1 TO 4 DEPENDING CNT1
                                  DESCENDING TAB1-NR.
             10 TAB1-NR     PIC 99.
             10 TAB-DATA    PIC X(5).

       PROCEDURE DIVISION.
       A.
           DISPLAY TAB1-NR OF TAB1 (2) NO ADVANCING END-DISPLAY

           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             MOVE K     TO TAB1-NR  OF TAB2(K)
             MOVE 'BLA' TO TAB-DATA OF TAB2(K)
           END-PERFORM

           SORT ROW1 OF TAB2.

           PERFORM VARYING K FROM 1 BY 1 UNTIL K > 4
             DISPLAY TAB1-NR OF TAB2(K) NO ADVANCING END-DISPLAY
           END-PERFORM

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3513: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3513"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3513"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3514: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3514"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0403020101020304" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3514"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:3516: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_misc.at:3516"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3516"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3517: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:3517"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0004030201" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3517"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_751
#AT_START_752
at_fn_group_banner 752 'run_misc.at:3522' \
  "SORT: table (toplevel)" "                         " 4
at_xfail=no
(
  $as_echo "752. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 VAL           PIC X(5) VALUE "43512".
       01 TBL           REDEFINES VAL PIC X OCCURS 5.
       PROCEDURE        DIVISION.
           SORT TBL ASCENDING
           IF VAL NOT = "12345" DISPLAY VAL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3538: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3538"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3538"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3539: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3539"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3539"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_752
#AT_START_753
at_fn_group_banner 753 'run_misc.at:3544' \
  "SORT: EBCDIC table" "                             " 4
at_xfail=no
(
  $as_echo "753. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET ALPHA IS EBCDIC.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 Z  PIC X(10)  VALUE "d4b2e1a3c5".
       01 G.
         02 TBL         OCCURS 10.
           03 X         PIC X.
       PROCEDURE        DIVISION.
           MOVE Z TO G.
      *    alphabet-name as collation:
           SORT TBL ASCENDING KEY X SEQUENCE ALPHA.
           IF G NOT = "abcde12345"
              DISPLAY G.
           MOVE Z TO G.
      *    code-name as collation:
           SORT TBL DESCENDING KEY X SEQUENCE EBCDIC.
           IF G NOT = "54321edcba"
              DISPLAY G.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
           OBJECT-COMPUTER.
             x86 PROGRAM COLLATING SEQUENCE IS EBCDIC-CODE.
       SPECIAL-NAMES.
           ALPHABET EBCDIC-CODE IS EBCDIC.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 Z  PIC X(10)  VALUE "d4b2e1a3c5".
       01 G.
         02 TBL         OCCURS 10.
           03 X         PIC X.
       PROCEDURE        DIVISION.
           MOVE Z TO G.
           SORT TBL ASCENDING KEY X.
           IF G NOT = "abcde12345"
              DISPLAY G.
           MOVE Z TO G.
           SORT TBL DESCENDING KEY X.
           IF G NOT = "54321edcba"
              DISPLAY G.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3601: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:3601"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3601"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3602: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3602"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3602"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3603: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_misc.at:3603"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3603"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3604: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:3604"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3604"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_753
#AT_START_754
at_fn_group_banner 754 'run_misc.at:3609' \
  "Alphanum comparison with default COLLATING SEQUENCE" "" 4
at_xfail=no
(
  $as_echo "754. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
      >>IF   EXPECT-ORDER  =  'ASCII'
           IF "1" NOT < "a"
      >>ELIF EXPECT-ORDER  =  'EBCDIC'
           IF "a" NOT < "1"
      >>END-IF
              DISPLAY "ERROR" END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3626: \$COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob" "run_misc.at:3626"
( $at_check_trace; $COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: warning: expression '1' GREATER OR EQUAL 'a' is always FALSE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3626"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3629: \$COBCRUN_DIRECT ./ascii"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ascii" "run_misc.at:3629"
( $at_check_trace; $COBCRUN_DIRECT ./ascii
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3629"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:3631: \$COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob" "run_misc.at:3631"
( $at_check_trace; $COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3631"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3632: \$COBCRUN_DIRECT ./ebcdic"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ebcdic" "run_misc.at:3632"
( $at_check_trace; $COBCRUN_DIRECT ./ebcdic
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3632"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_754
#AT_START_755
at_fn_group_banner 755 'run_misc.at:3637' \
  "SORT: table with default COLLATING SEQUENCE" "    " 4
at_xfail=no
(
  $as_echo "755. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 Z  PIC X(10)  VALUE "d4b2e1a3c5".
       01 G             REDEFINES Z.
         02 TBL         OCCURS 10.
           03 X         PIC X.
       PROCEDURE        DIVISION.
           SORT TBL ASCENDING KEY X.
      >>IF   EXPECT-ORDER  =  'ASCII'
           IF G NOT = "12345abcde"
      >>ELIF EXPECT-ORDER  =  'EBCDIC'
           IF G NOT = "abcde12345"
      >>ELSE           *>  =  'NATIVE'
           IF NOT G = "12345abcde" OR "abcde12345"
      >>END-IF
              DISPLAY G END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3663: \$COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob" "run_misc.at:3663"
( $at_check_trace; $COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3663"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3664: \$COBCRUN_DIRECT ./ascii"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ascii" "run_misc.at:3664"
( $at_check_trace; $COBCRUN_DIRECT ./ascii
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3664"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3665: \$COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob" "run_misc.at:3665"
( $at_check_trace; $COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3665"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3666: \$COBCRUN_DIRECT ./ebcdic"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ebcdic" "run_misc.at:3666"
( $at_check_trace; $COBCRUN_DIRECT ./ebcdic
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3666"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3667: \$COMPILE -fdefault-colseq=native -DEXPECT-ORDER=NATIVE -o native prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=native -DEXPECT-ORDER=NATIVE -o native prog.cob" "run_misc.at:3667"
( $at_check_trace; $COMPILE -fdefault-colseq=native -DEXPECT-ORDER=NATIVE -o native prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3667"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3668: \$COBCRUN_DIRECT ./native"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./native" "run_misc.at:3668"
( $at_check_trace; $COBCRUN_DIRECT ./native
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3668"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_755
#AT_START_756
at_fn_group_banner 756 'run_misc.at:3673' \
  "JUSTIFIED and VALUE clauses" "                    " 4
at_xfail=no
(
  $as_echo "756. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PROG.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  ARR-ARRAY.
           03  ARR-ENTRY       OCCURS 6 TIMES.
               05 ARR-FLD1             PIC X(10)
                   VALUE 'RIGHT' JUSTIFIED RIGHT.
               05 ARR-FLD2             PIC X(10)
                   VALUE 'LEFT'.
               05  ARR-FLD3        OCCURS 6 TIMES.
                   10 ARR-FLD4             PIC X(10)
                       VALUE 'RIGHT' JUSTIFIED RIGHT.
                   10 ARR-FLD5             PIC X(10)
                       VALUE 'LEFT'.

       01  CNTR                        PIC S9(4)  COMP.
       01  CNTR2                       PIC S9(4)  COMP.

       77  ELE                         PIC X(10)
                   VALUE 'RIGHT' JUSTIFIED RIGHT.
       77  ELE2                        PIC X(10)
                   VALUE 'R' JUSTIFIED RIGHT.
       77  ELE3                        PIC X(10)
                   VALUE 'RRRRRRRRR' JUSTIFIED RIGHT.
       77  ELE4                        PIC X(10)
                   VALUE 'RRRRRRRRRR' JUSTIFIED RIGHT.
       77  ELE5                        PIC X(1003)
                   VALUE 'RRR' JUSTIFIED RIGHT.

       PROCEDURE DIVISION.

           >>IF JUSTIFY EQUAL 'JUSTIFY'
               PERFORM 1000-JUSTIFY-IS-RIGHT THRU 1000-EXIT.
           >>ELSE
               PERFORM 2000-JUSTIFY-IS-OFF   THRU 2000-EXIT.
           >>END-IF

           IF ELE4 NOT EQUAL 'RRRRRRRRRR'
               DISPLAY 'ELE4 NOT INITIALIZED CORRECTLY' ELE4
           END-IF.

           STOP RUN.


       1000-JUSTIFY-IS-RIGHT.

           IF ELE NOT EQUAL '     RIGHT'
               DISPLAY 'ELE NOT INITIALIZED CORRECTLY ' ELE
           END-IF.

           IF ELE2 NOT EQUAL '         R'
               DISPLAY 'ELE2 NOT INITIALIZED CORRECTLY ' ELE2
           END-IF.

           IF ELE3 NOT EQUAL ' RRRRRRRRR'
               DISPLAY 'ELE3 NOT INITIALIZED CORRECTLY ' ELE3
           END-IF.

           IF ELE5 (1:1000) NOT EQUAL SPACES
           OR ELE5 (1001:)  NOT EQUAL "RRR"
               DISPLAY 'ELE5 NOT INITIALIZED CORRECTLY ' ELE5
           END-IF.

           IF ARR-FLD1 (2) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD1 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (2) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD1 (6) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD1 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (2,3) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD4 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (2,3) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (6,6) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD4 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (6,6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

           MOVE ALL 'X'                TO ARR-ARRAY.
           MOVE ALL 'X'                TO ELE.

           INITIALIZE ELE       WITH FILLER ALL TO VALUE.
           INITIALIZE ARR-ARRAY WITH FILLER ALL TO VALUE.

           IF ELE NOT EQUAL '     RIGHT'
               DISPLAY 'ELE NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD1 (2) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD1 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (2) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD1 (6) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD1 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (2,3) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD4 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (2,3) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (6,6) NOT EQUAL '     RIGHT'
               DISPLAY 'ARR-FLD4 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (6,6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

       1000-EXIT.  EXIT.


       2000-JUSTIFY-IS-OFF.

           IF ELE NOT EQUAL 'RIGHT     '
               DISPLAY 'ELE NOT INITIALIZED CORRECTLY ' ELE
           END-IF.

           IF ELE2 NOT EQUAL 'R         '
               DISPLAY 'ELE2 NOT INITIALIZED CORRECTLY ' ELE2
           END-IF.

           IF ELE3 NOT EQUAL 'RRRRRRRRR '
               DISPLAY 'ELE3 NOT INITIALIZED CORRECTLY ' ELE3
           END-IF.

           IF ELE5 (1:3) NOT EQUAL "RRR"
           OR ELE5 (4:)  NOT EQUAL SPACES
               DISPLAY 'ELE5 NOT INITIALIZED CORRECTLY ' ELE5
           END-IF.

           IF ARR-FLD1 (2) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD1 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (2) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD1 (6) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD1 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (2,3) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD4 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (2,3) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (6,6) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD4 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (6,6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

           MOVE ALL 'X'                TO ARR-ARRAY.
           MOVE ALL 'X'                TO ELE.

           INITIALIZE ELE       WITH FILLER ALL TO VALUE.
           INITIALIZE ARR-ARRAY WITH FILLER ALL TO VALUE.

           IF ELE NOT EQUAL 'RIGHT     '
               DISPLAY 'ELE NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD1 (2) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD1 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (2) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (2) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD1 (6) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD1 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD2 (6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD2 (6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (2,3) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD4 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (2,3) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (2,3) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD4 (6,6) NOT EQUAL 'RIGHT     '
               DISPLAY 'ARR-FLD4 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

           IF ARR-FLD5 (6,6) NOT EQUAL 'LEFT      '
               DISPLAY 'ARR-FLD5 (6,6) NOT INITIALIZED CORRECTLY'
           END-IF.

       2000-EXIT.  EXIT.


       END PROGRAM PROG.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3919: \$COMPILE -std=ibm -DJUSTIFY=JUSTIFY -o prog  prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm -DJUSTIFY=JUSTIFY -o prog  prog.cob" "run_misc.at:3919"
( $at_check_trace; $COMPILE -std=ibm -DJUSTIFY=JUSTIFY -o prog  prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3919"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3920: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3920"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3920"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3921: \$COMPILE -std=cobol2014 -DJUSTIFY=OFF -o prog  prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2014 -DJUSTIFY=OFF -o prog  prog.cob" "run_misc.at:3921"
( $at_check_trace; $COMPILE -std=cobol2014 -DJUSTIFY=OFF -o prog  prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3921"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3922: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:3922"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3922"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_756
#AT_START_757
at_fn_group_banner 757 'run_misc.at:3927' \
  "SEARCH ALL: table with default COLLATING SEQUENCE" "" 4
at_xfail=no
(
  $as_echo "757. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 Z  PIC X(10)  VALUE "d4b2e1a3c5".
       01 G             REDEFINES Z.
         02 TBL         OCCURS 10 ASCENDING KEY K INDEXED BY I.
           03 K         PIC X.
       01 KK            PIC X.
       PROCEDURE        DIVISION.
           SORT TBL ASCENDING KEY K.
           SET KK TO "3"
           SEARCH ALL TBL
              AT END
                 DISPLAY KK " NOT FOUND"
              WHEN K (I) = KK
                 CONTINUE
           END-SEARCH
      >>IF   EXPECT-ORDER  =  'ASCII'
           IF I NOT = 3
      >>ELIF EXPECT-ORDER  =  'EBCDIC'
           IF I NOT = 8
      >>END-IF
              DISPLAY "ERROR" END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:3958: \$COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob" "run_misc.at:3958"
( $at_check_trace; $COMPILE -fdefault-colseq=ascii -DEXPECT-ORDER=ASCII -o ascii prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3958"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3959: \$COBCRUN_DIRECT ./ascii"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ascii" "run_misc.at:3959"
( $at_check_trace; $COBCRUN_DIRECT ./ascii
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3959"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:3961: \$COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob" "run_misc.at:3961"
( $at_check_trace; $COMPILE -fdefault-colseq=ebcdic -DEXPECT-ORDER=EBCDIC -o ebcdic prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3961"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:3962: \$COBCRUN_DIRECT ./ebcdic"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ebcdic" "run_misc.at:3962"
( $at_check_trace; $COBCRUN_DIRECT ./ebcdic
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:3962"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_757
#AT_START_758
at_fn_group_banner 758 'run_misc.at:3967' \
  "PIC ZZZ-, ZZZ+" "                                 " 4
at_xfail=no
(
  $as_echo "758. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X-ZZZN                    PIC ZZZ-.
       01  XZN-RED REDEFINES X-ZZZN  PIC X(4).
       01  X-ZZZP                    PIC ZZZ+.
       01  XZP-RED REDEFINES X-ZZZP  PIC X(4).
       PROCEDURE        DIVISION.
           MOVE -1 TO X-ZZZN.
           IF XZN-RED NOT = "  1-"
              DISPLAY "(" X-ZZZN ")".
           MOVE  0 TO X-ZZZN.
           IF XZN-RED NOT = "    "
              DISPLAY "(" X-ZZZN ")".
           MOVE +1 TO X-ZZZN.
           IF XZN-RED NOT = "  1 "
              DISPLAY "(" X-ZZZN ")".

           MOVE -1 TO X-ZZZP.
           IF XZP-RED NOT = "  1-"
              DISPLAY "(" X-ZZZP ")".
           MOVE  0 TO X-ZZZP.
           IF XZP-RED NOT = "    "
              DISPLAY "(" X-ZZZP ")".
           MOVE +1 TO X-ZZZP.
           IF XZP-RED NOT = "  1+"
              DISPLAY "(" X-ZZZP ")".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4002: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:4002"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4002"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4003: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4003"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4003"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_758
#AT_START_759
at_fn_group_banner 759 'run_misc.at:4008' \
  "PERFORM type OSVS" "                              " 4
at_xfail=no
(
  $as_echo "759. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYOCC        PIC 9(8) COMP VALUE 0.
       PROCEDURE        DIVISION.
       ASTART SECTION.
       A01.
           PERFORM BTEST.
           IF MYOCC NOT = 2
              DISPLAY MYOCC.
           STOP RUN.
       BTEST SECTION.
       B01.
           PERFORM B02 VARYING MYOCC FROM 1 BY 1
                   UNTIL MYOCC > 5.
           GO TO B99.
       B02.
           IF MYOCC > 1
              GO TO B99
           END-IF.
       B99.
           EXIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4037: \$COMPILE -fperform-osvs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fperform-osvs prog.cob" "run_misc.at:4037"
( $at_check_trace; $COMPILE -fperform-osvs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4037"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4038: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4038"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4038"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_759
#AT_START_760
at_fn_group_banner 760 'run_misc.at:4043' \
  "Sticky LINKAGE" "                                 " 4
at_xfail=no
(
  $as_echo "760. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 P2            PIC X(6).
       01 P3            PIC X(6).
       PROCEDURE        DIVISION USING P1 P2.
           IF P1 = "A"
              SET ADDRESS OF P3 TO ADDRESS OF P2
           ELSE
              IF P3 NOT = "OKOKOK"
                 DISPLAY P3.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P1            PIC X    VALUE "A".
       01 P2            PIC X(6) VALUE "NOT OK".
       PROCEDURE        DIVISION.
           CALL "callee" USING P1 P2.
           MOVE "B"      TO P1.
           MOVE "OKOKOK" TO P2.
           CALL "callee" USING P1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4078: \$COMPILE_MODULE -fsticky-linkage callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fsticky-linkage callee.cob" "run_misc.at:4078"
( $at_check_trace; $COMPILE_MODULE -fsticky-linkage callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4078"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4079: \$COMPILE -fsticky-linkage caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -fsticky-linkage caller.cob" "run_misc.at:4079"
( $at_check_trace; $COMPILE -fsticky-linkage caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4079"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4080: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:4080"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4080"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_760
#AT_START_761
at_fn_group_banner 761 'run_misc.at:4085' \
  "COB_PRE_LOAD" "                                   " 4
at_xfail=no
(
  $as_echo "761. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee2"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4104: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:4104"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4104"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4105: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:4105"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4105"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4106: COB_PRE_LOAD=callee \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "COB_PRE_LOAD=callee $COBCRUN_DIRECT ./caller" "run_misc.at:4106"
( $at_check_trace; COB_PRE_LOAD=callee $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4106"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_761
#AT_START_762
at_fn_group_banner 762 'run_misc.at:4111' \
  "COB_PRE_LOAD with entry points" "                 " 4
at_xfail=no
(
  $as_echo "762. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.

        DATA DIVISION.
        WORKING-STORAGE SECTION.

        01 VAR1 PIC X(5) VALUE '12abc'.
        01 VAR2 PIC X(2) VALUE '11'.

        PROCEDURE DIVISION.

        ENTRY 'ent1'.
        DISPLAY VAR1 END-DISPLAY
        GOBACK.

        ENTRY 'ent2'.
        DISPLAY VAR2 END-DISPLAY
        GOBACK.
_ATEOF


cat >prog1.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog1.

        DATA DIVISION.
        WORKING-STORAGE SECTION.

        01 VAR2 PIC X(2) VALUE '55'.
        01 VAR3 PIC X(5) VALUE 'xxxxx'.

        PROCEDURE DIVISION.

        ENTRY 'ent2'.
        DISPLAY VAR2 END-DISPLAY
        GOBACK.

        ENTRY 'ent3'.
        DISPLAY VAR3 END-DISPLAY
        GOBACK.
_ATEOF


cat >main-prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. main-prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE DIVISION.

        CALL 'ent1' END-CALL
        CALL 'ent2' END-CALL
        CALL 'ent3' END-CALL

        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4170: \$COMPILE_MODULE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog.cob" "run_misc.at:4170"
( $at_check_trace; $COMPILE_MODULE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4170"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4171: \$COMPILE_MODULE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog1.cob" "run_misc.at:4171"
( $at_check_trace; $COMPILE_MODULE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4171"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4172: \$COMPILE main-prog.cob"
at_fn_check_prepare_dynamic "$COMPILE main-prog.cob" "run_misc.at:4172"
( $at_check_trace; $COMPILE main-prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4172"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4173: COB_PRE_LOAD=\"prog\"\$PATHSEP\"prog1\" \$COBCRUN_DIRECT ./main-prog"
at_fn_check_prepare_dynamic "COB_PRE_LOAD=\"prog\"$PATHSEP\"prog1\" $COBCRUN_DIRECT ./main-prog" "run_misc.at:4173"
( $at_check_trace; COB_PRE_LOAD="prog"$PATHSEP"prog1" $COBCRUN_DIRECT ./main-prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12abc
11
xxxxx
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4173"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_762
#AT_START_763
at_fn_group_banner 763 'run_misc.at:4182' \
  "Lookup ENTRY from main executable" "              " 4
at_xfail=no
(
  $as_echo "763. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 PROGRAM-LINK         USAGE PROGRAM-POINTER.

       PROCEDURE DIVISION.
       SET PROGRAM-LINK TO ENTRY "subprogram"
       IF PROGRAM-LINK EQUAL NULL THEN
           DISPLAY "error: no subprogram linkage" UPON SYSERR
           END-DISPLAY
       ELSE
           CALL PROGRAM-LINK
               ON EXCEPTION
                   DISPLAY "hard error: unable to invoke subprogram"
                      UPON SYSERR
                   END-DISPLAY
           END-CALL
           DISPLAY RETURN-CODE WITH NO ADVANCING
           END-DISPLAY
       END-IF
       GOBACK.

       ENTRY "subprogram".
           DISPLAY "subprogram" WITH NO ADVANCING
           END-DISPLAY
           SET RETURN-CODE TO 42
       .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4217: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:4217"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4217"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4218: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4218"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "subprogram+000000042" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 42 $at_status "$at_srcdir/run_misc.at:4218"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_763
#AT_START_764
at_fn_group_banner 764 'run_misc.at:4223' \
  "COB_LOAD_CASE=UPPER" "                            " 4
at_xfail=no
(
  $as_echo "764. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >CALLEE.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4242: \$COMPILE_MODULE CALLEE.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE CALLEE.cob" "run_misc.at:4242"
( $at_check_trace; $COMPILE_MODULE CALLEE.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4242"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4243: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:4243"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4243"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4244: COB_LOAD_CASE=UPPER ./caller"
at_fn_check_prepare_trace "run_misc.at:4244"
( $at_check_trace; COB_LOAD_CASE=UPPER ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4244"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_764
#AT_START_765
at_fn_group_banner 765 'run_misc.at:4249' \
  "ALLOCATE / FREE with BASED item (1)" "            " 4
at_xfail=no
(
  $as_echo "765. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01  MYFLD        PIC X(6) BASED VALUE "ABCDEF".
       PROCEDURE        DIVISION.
       ASTART SECTION.
       A01.
           ALLOCATE MYFLD INITIALIZED
           IF MYFLD NOT = "ABCDEF"
              DISPLAY MYFLD
           END-IF
           FREE ADDRESS OF MYFLD
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4269: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:4269"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4269"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4270: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4270"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4270"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_765
#AT_START_766
at_fn_group_banner 766 'run_misc.at:4275' \
  "ALLOCATE / FREE with BASED item (2)" "            " 4
at_xfail=no
(
  $as_echo "766. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 MYFLD         BASED.
             03 MYFLDX  PIC X.
             03 MYFLD9  PIC 9.
       PROCEDURE        DIVISION.
           IF ADDRESS OF MYFLD NOT = NULL
              DISPLAY "BASED ITEM WITH ADDRESS ON START"
           END-IF
           FREE MYFLD
           ALLOCATE MYFLD
           IF ADDRESS OF MYFLD = NULL
              DISPLAY "BASED ITEM WITHOUT ADDRESS AFTER ALLOCATE"
           END-IF
           INITIALIZE MYFLD
           IF MYFLD NOT = " 0"
              DISPLAY "BASED ITEM INITIALIZED WRONG: "
                 WITH NO ADVANCING
              END-DISPLAY
              DISPLAY MYFLD
           END-IF

           FREE ADDRESS OF MYFLD
           IF ADDRESS OF MYFLD NOT = NULL
              DISPLAY "BASED ITEM WITH ADDRESS AFTER FREE"
           END-IF
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4310: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:4310"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4310"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4311: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4311"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4311"
$at_failed && at_fn_log_failure
$at_traceon; }

# Run both executable and module as we have a different code generation here
{ set +x
$as_echo "$at_srcdir/run_misc.at:4313: \$COMPILE_MODULE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog.cob" "run_misc.at:4313"
( $at_check_trace; $COMPILE_MODULE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4313"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4314: \$COBCRUN prog"
at_fn_check_prepare_dynamic "$COBCRUN prog" "run_misc.at:4314"
( $at_check_trace; $COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4314"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_766
#AT_START_767
at_fn_group_banner 767 'run_misc.at:4319' \
  "ALLOCATE CHARACTERS INITIALIZED (TO)" "           " 4
at_xfail=no
(
  $as_echo "767. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYPTR        USAGE POINTER.
       LINKAGE          SECTION.
       01  MYFLD        PIC X(4).
       PROCEDURE        DIVISION.
       ASTART SECTION.
       A01.
           ALLOCATE 4 CHARACTERS
                    INITIALIZED TO "ABCD"
                    RETURNING MYPTR
           SET ADDRESS OF MYFLD TO MYPTR
           IF MYFLD NOT = "ABCD"
              DISPLAY MYFLD
           END-IF
           FREE MYPTR
           ALLOCATE 4 CHARACTERS
                    INITIALIZED TO ALL "Z"
                    RETURNING MYPTR
           SET ADDRESS OF MYFLD TO MYPTR
           IF MYFLD NOT = "ZZZZ"
              DISPLAY MYFLD
           END-IF
           FREE MYPTR
           ALLOCATE 4 CHARACTERS
                    INITIALIZED
                    RETURNING MYPTR
           SET ADDRESS OF MYFLD TO MYPTR
           IF MYFLD NOT = LOW-VALUES
              DISPLAY MYFLD
           END-IF
           FREE MYPTR
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4360: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:4360"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4360"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4361: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4361"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4361"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_767
#AT_START_768
at_fn_group_banner 768 'run_misc.at:4366' \
  "Initialized value with defaultbyte" "             " 4
at_xfail=no
(
  $as_echo "768. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYFLD        PIC X(6).
       PROCEDURE        DIVISION.
       ASTART SECTION.
       A01.
           IF MYFLD NOT = "AAAAAA"
              DISPLAY MYFLD
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4384: \$COMPILE -fdefaultbyte=A prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefaultbyte=A prog.cob" "run_misc.at:4384"
( $at_check_trace; $COMPILE -fdefaultbyte=A prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4384"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4385: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4385"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4385"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_768
#AT_START_769
at_fn_group_banner 769 'run_misc.at:4390' \
  "CALL with OMITTED parameter" "                    " 4
at_xfail=no
(
  $as_echo "769. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 P2            PIC X(6).
       PROCEDURE        DIVISION USING P1 OPTIONAL P2.
           IF P2 NOT OMITTED
              DISPLAY P2
           END-IF
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P1            PIC X    VALUE "A".
       PROCEDURE        DIVISION.
           CALL "callee" USING P1
           CALL "callee" USING P1 OMITTED
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4419: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:4419"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4419"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4420: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:4420"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4420"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4421: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:4421"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4421"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_769
#AT_START_770
at_fn_group_banner 770 'run_misc.at:4426' \
  "direct CALL in from C w/wo error" "               " 4
at_xfail=no
(
  $as_echo "770. $at_setup_line: testing $at_desc ..."
  $at_traceon



# tests and showcases direct C calls, including:
# as long as the module comes back the caller has control
# and its return code; but not in the case for errors or STOP RUN

cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 P2            PIC X(6).
       PROCEDURE        DIVISION USING P1 OPTIONAL P2.
           IF P2 NOT OMITTED
              DISPLAY 'UNEXPECTED P2: ' P2
              END-DISPLAY
           END-IF
           DISPLAY 'P1: ' P1 WITH NO ADVANCING.
           GOBACK.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P             PIC 99.
       PROCEDURE        DIVISION USING P.
           DISPLAY 'P: ' P WITH NO ADVANCING.
           STOP RUN RETURNING P.
_ATEOF


cat >caller.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

#ifndef NULL
#define NULL (void*)0
#endif

int
main (int argc, char **argv)
{
   /* for storing COBOL return code */
   int cob_ret;

   /* initialize parameters */
   void *cob_argv[2];

   cob_argv[0] = argv[2];
   cob_argv[1] = NULL;

   /* initialize the COBOL run-time library */
   cob_init(argc, argv);

   /* call COBOL program */
   cob_ret = cob_call (argv[1], 2, cob_argv);

   cob_runtime_hint("program exited normally, "
       "without STOP RUN with status %d", cob_ret);

   /* Clean up and terminate - This does not return */
   cob_stop_run (cob_ret);
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4494: \$COMPILE caller.c"
at_fn_check_prepare_dynamic "$COMPILE caller.c" "run_misc.at:4494"
( $at_check_trace; $COMPILE caller.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4494"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4495: \$COMPILE_MODULE callee.cob callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob callee2.cob" "run_misc.at:4495"
( $at_check_trace; $COMPILE_MODULE callee.cob callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4495"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4496: \$COBCRUN_DIRECT ./caller callee A"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller callee A" "run_misc.at:4496"
( $at_check_trace; $COBCRUN_DIRECT ./caller callee A
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "note: program exited normally, without STOP RUN with status 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P1: A" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4496"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4499: \$COBCRUN_DIRECT ./caller callee2 42"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller callee2 42" "run_misc.at:4499"
( $at_check_trace; $COBCRUN_DIRECT ./caller callee2 42
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P: 42" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 42 $at_status "$at_srcdir/run_misc.at:4499"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4500: \$COBCRUN_DIRECT ./caller notthere"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller notthere" "run_misc.at:4500"
( $at_check_trace; $COBCRUN_DIRECT ./caller notthere
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: module 'notthere' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:4500"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_770
#AT_START_771
at_fn_group_banner 771 'run_misc.at:4507' \
  "direct CALL in from C w/wo error; no exit" "      " 4
at_xfail=no
(
  $as_echo "771. $at_setup_line: testing $at_desc ..."
  $at_traceon



# tests and showcases the "functional call" of GnuCOBOL modules;
# in every case (plain goback, STOP RUN, error) the caller gets control,
# but the actual return / error code has to be queried with an extra call

cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 RC            PIC 99.
       01 P2            PIC X(6).
       PROCEDURE        DIVISION USING P1 RC OPTIONAL P2.
           IF P2 NOT OMITTED
              DISPLAY 'UNEXPECTED P2: ' P2.
           DISPLAY 'P1: ' P1 WITH NO ADVANCING
           GOBACK RETURNING RC.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           DISPLAY 'STOP WITH 2' WITH NO ADVANCING
           STOP RUN RETURNING 2.
_ATEOF


cat >buggy.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      buggy.
       DATA             DIVISION.
       LOCAL-STORAGE    SECTION.
       77 VAR           PIC X.
       77 VPOS          PIC 9 VALUE 2.
       PROCEDURE        DIVISION.
           DISPLAY 'out of bounds - refmod following' WITH NO ADVANCING
           DISPLAY VAR (VPOS:)
           DISPLAY 'AFTER ERROR'
           GOBACK.
_ATEOF


cat >caller.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

#ifndef NULL
#define NULL (void*)0
#endif

int
main (int argc, char **argv)
{
   /* for storing libcob return state */
   int cob_ret;

   /* initialize parameters */
   void *cob_argv[3];

   char *p1 = "A";
   cob_argv[0] = p1;
   cob_argv[1] = argv[2];
   cob_argv[2] = NULL;

   /* initialize the COBOL run-time library */
   cob_init (argc, argv);

   /* call COBOL program */
   cob_ret = cob_call_with_exception_check (argv[1], 2, cob_argv);

   switch (cob_ret) {
   case 0:  /* program coming back */

      /* Clean up and terminate runtime */
      cob_runtime_hint ("program exited with return code %d",
         cob_last_exit_code ());
      cob_tidy ();
      break;

   case 1:  /* normal exit */
      cob_runtime_hint ("STOP RUN with return code %d",
         cob_last_exit_code ());
      break;

   case -1:  /* error exit */
      cob_runtime_hint ("error exit with return code %d and error \"%s\"",
         cob_last_exit_code (), cob_last_runtime_error ());
      break;

   case -2:  /* hard error exit */
      cob_runtime_hint ("hard error exit with return code %d and error \"%s\"",
         cob_last_exit_code (), cob_last_runtime_error ());
      break;

   case -3:  /* signal handler  exit */
      cob_runtime_hint ("signal handler exit with signal %d and error \"%s\"",
         cob_last_exit_code (), cob_last_runtime_error ());
      break;

   default:
      cob_runtime_hint ("unexpected return from cob_call_with_exception_check, "
         "last exit code %d, last error \"%s\"",
         cob_last_exit_code (), cob_last_runtime_error ());
      break;
   }
   return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4618: \$COMPILE caller.c"
at_fn_check_prepare_dynamic "$COMPILE caller.c" "run_misc.at:4618"
( $at_check_trace; $COMPILE caller.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4618"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4619: \$COMPILE_MODULE callee.cob callee2.cob buggy.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob callee2.cob buggy.cob" "run_misc.at:4619"
( $at_check_trace; $COMPILE_MODULE callee.cob callee2.cob buggy.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4619"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4620: \$COBCRUN_DIRECT ./caller callee 00"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller callee 00" "run_misc.at:4620"
( $at_check_trace; $COBCRUN_DIRECT ./caller callee 00
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "note: program exited with return code 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P1: A" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4620"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4623: \$COBCRUN_DIRECT ./caller callee 42"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller callee 42" "run_misc.at:4623"
( $at_check_trace; $COBCRUN_DIRECT ./caller callee 42
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "note: program exited with return code 42
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P1: A" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4623"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4626: \$COBCRUN_DIRECT ./caller callee2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller callee2" "run_misc.at:4626"
( $at_check_trace; $COBCRUN_DIRECT ./caller callee2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "note: STOP RUN with return code 2
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STOP WITH 2" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4626"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4629: \$COBCRUN_DIRECT ./caller notthere"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller notthere" "run_misc.at:4629"
( $at_check_trace; $COBCRUN_DIRECT ./caller notthere
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: module 'notthere' not found
note: error exit with return code -1 and error \"module 'notthere' not found\"
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4629"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4633: \$COBCRUN_DIRECT ./caller buggy"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller buggy" "run_misc.at:4633"
( $at_check_trace; $COBCRUN_DIRECT ./caller buggy
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: buggy.cob:10: error: offset of 'VAR' out of bounds: 2, maximum: 1
note: error exit with return code -1 and error \"buggy.cob:10: offset of 'VAR' out of bounds: 2, maximum: 1\"
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "out of bounds - refmod following" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4633"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_771
#AT_START_772
at_fn_group_banner 772 'run_misc.at:4641' \
  "CALL in from C, cob_call_params explicitly set" " " 4
at_xfail=no
(
  $as_echo "772. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 P2            PIC X(6).
       PROCEDURE        DIVISION USING P1 OPTIONAL P2.
           IF P2 NOT OMITTED
              DISPLAY 'UNEXPECTED P2: ' P2
           END-IF
           DISPLAY 'P1: ' P1 WITH NO ADVANCING
           EXIT PROGRAM.
_ATEOF


cat >caller.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

int callee (char *, char *);

#ifndef NULL
#define NULL (void*)0
#endif

int
main (int argc, char **argv)
{
   cob_global *cobol_global;
   /* for storing COBOL return code */
   int cob_ret;

   /* initialize parameters */
   char *p1 = "A";

   /* initialize the COBOL run-time library */
   cob_init(argc, argv);

   /* setup for COBOL parameter handling */
   cobol_global = cob_get_global_ptr ();
   cobol_global->cob_call_params = 1;

   /* call COBOL program */
   cob_ret = callee (p1, NULL);

   /* Clean up and terminate - This does not return */
   cob_stop_run (cob_ret);
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4694: \$COMPILE -o caller caller.c callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -o caller caller.c callee.cob" "run_misc.at:4694"
( $at_check_trace; $COMPILE -o caller caller.c callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4694"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4695: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:4695"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P1: A" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4695"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_772
#AT_START_773
at_fn_group_banner 773 'run_misc.at:4700' \
  "CALL in from C, cob_call_params unknown" "        " 4
at_xfail=no
(
  $as_echo "773. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 P2            PIC X(6).
       PROCEDURE        DIVISION USING P1 P2.
           IF P1 NOT EQUAL "A"
              DISPLAY P1.
           IF P2 NOT EQUAL "FROM C"
              DISPLAY P2
           ELSE
              DISPLAY "OK" WITH NO ADVANCING.
           EXIT PROGRAM.
_ATEOF


cat >caller.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

int callee (char *, char *);

int
main (int argc, char **argv)
{
   /* for storing COBOL return code */
   int cob_ret;

   /* initialize parameters */
   char *p1 = "A";
   char *p2 = "FROM C";

   /* initialize the COBOL run-time library */
   cob_init (argc, argv);

   /* call COBOL program */
   cob_ret = callee (p1, p2);

   /* Clean up and terminate - This does not return */
   cob_stop_run (cob_ret);
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4747: \$COMPILE -o caller caller.c callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -o caller caller.c callee.cob" "run_misc.at:4747"
( $at_check_trace; $COMPILE -o caller caller.c callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4747"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4748: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:4748"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4748"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_773
#AT_START_774
at_fn_group_banner 774 'run_misc.at:4753' \
  "CALL C with callback, PROCEDURE DIVISION EXTERN" "" 4
at_xfail=no
(
  $as_echo "774. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 CB            USAGE PROGRAM-POINTER.
       PROCEDURE        DIVISION.
           SET CB TO ENTRY "callback"
           CALL STATIC "cprog" USING BY VALUE CB
           END-CALL
           EXIT PROGRAM.
       END PROGRAM prog.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callback.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CALL-CONVENTION 0 IS EXTERN.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            USAGE POINTER.
       01 P2            USAGE BINARY-LONG.
       01 P3            PIC X(8).
       PROCEDURE        DIVISION EXTERN USING
                        BY VALUE P1 P2 BY REFERENCE P3.
           IF P1 NOT EQUAL ADDRESS OF P3
              DISPLAY "P1 != ADDRESS OF P3: " P1.
           IF P2 NOT EQUAL 42
              DISPLAY "P2 != 42: " P2.
           IF P3 NOT EQUAL "CALLBACK"
              DISPLAY "P3 != CALLBACK: " P3.
           EXIT PROGRAM.
_ATEOF


cat >cprog.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
cprog (void *cb)
{
   char *p1;
   int  p2 = 42;
   char *p3 = "CALLBACK";

   p1 = p3;
   ((int (*)(char *, int, char *))cb)(p1, p2, p3);
   return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4808: \$COMPILE -Wno-unfinished -o prog prog.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -o prog prog.cob cprog.c" "run_misc.at:4808"
( $at_check_trace; $COMPILE -Wno-unfinished -o prog prog.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4808"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4809: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4809"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4809"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:4811: \$COMPILE -Wno-unfinished -fsticky-linkage -o prog prog.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -fsticky-linkage -o prog prog.cob cprog.c" "run_misc.at:4811"
( $at_check_trace; $COMPILE -Wno-unfinished -fsticky-linkage -o prog prog.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4811"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4812: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4812"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4812"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:4814: \$COMPILE -Wno-unfinished -fusing-optional=skip -o prog prog.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -fusing-optional=skip -o prog prog.cob cprog.c" "run_misc.at:4814"
( $at_check_trace; $COMPILE -Wno-unfinished -fusing-optional=skip -o prog prog.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4814"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4815: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4815"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4815"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:4817: \$COMPILE -Wno-unfinished -fusing-optional=skip -fsticky-linkage -o prog prog.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -fusing-optional=skip -fsticky-linkage -o prog prog.cob cprog.c" "run_misc.at:4817"
( $at_check_trace; $COMPILE -Wno-unfinished -fusing-optional=skip -fsticky-linkage -o prog prog.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4817"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4818: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4818"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4818"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_774
#AT_START_775
at_fn_group_banner 775 'run_misc.at:4823' \
  "CALL C with callback, ENTRY-CONVENTION EXTERN" "  " 4
at_xfail=no
(
  $as_echo "775. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       OPTIONS.
           ENTRY-CONVENTION COBOL.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 CB            USAGE PROGRAM-POINTER.
       PROCEDURE        DIVISION.
           SET CB TO ENTRY "callback"
           CALL STATIC "cprog" USING BY VALUE CB
           END-CALL
           EXIT PROGRAM.
       END PROGRAM prog.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callback.
       OPTIONS.
           ENTRY-CONVENTION EXTERN.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            USAGE POINTER.
       01 P2            USAGE BINARY-LONG.
       01 P3            PIC X(8).
       PROCEDURE        DIVISION USING
                        BY VALUE P1 P2 BY REFERENCE P3.
           IF P1 NOT EQUAL ADDRESS OF P3
              DISPLAY P1
              END-DISPLAY
           END-IF
           IF P2 NOT EQUAL 42
              DISPLAY P2
              END-DISPLAY
           END-IF
           IF P3 NOT EQUAL "CALLBACK"
              DISPLAY P3
              END-DISPLAY
           END-IF
           EXIT PROGRAM.
_ATEOF


cat >cprog.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
cprog (void *cb)
{
   char *p1;
   int  p2 = 42;
   char *p3 = "CALLBACK";

   p1 = p3;
   ((int (*)(char *, int, char *))cb)(p1, p2, p3);
   return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4884: \$COMPILE -Wno-unfinished -o prog prog.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -o prog prog.cob cprog.c" "run_misc.at:4884"
( $at_check_trace; $COMPILE -Wno-unfinished -o prog prog.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4884"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4885: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4885"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4885"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 CB            USAGE PROGRAM-POINTER.
       PROCEDURE        DIVISION.
           SET CB TO ENTRY "callback"
           CALL STATIC "cprog" USING BY VALUE CB
           END-CALL
           EXIT PROGRAM.
       END PROGRAM prog.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callback.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            USAGE POINTER.
       01 P2            USAGE BINARY-LONG.
       01 P3            PIC X(8).
       PROCEDURE        DIVISION WITH C LINKAGE
                        USING BY VALUE P1 P2 BY REFERENCE P3.
           IF P1 NOT EQUAL ADDRESS OF P3
              DISPLAY P1
              END-DISPLAY
           END-IF
           IF P2 NOT EQUAL 42
              DISPLAY P2
              END-DISPLAY
           END-IF
           IF P3 NOT EQUAL "CALLBACK"
              DISPLAY P3
              END-DISPLAY
           END-IF
           EXIT PROGRAM.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 CB            USAGE PROGRAM-POINTER.
       PROCEDURE        DIVISION.
           SET CB TO ENTRY "callback"
           CALL STATIC "cprog" USING BY VALUE CB
           END-CALL
           EXIT PROGRAM.
       END PROGRAM prog.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callback.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           CALL-CONVENTION 0 IS EXTERN.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            USAGE POINTER.
       01 P2            USAGE BINARY-LONG.
       01 P3            PIC X(8).
       PROCEDURE        DIVISION EXTERN
                        USING BY VALUE P1 P2 BY REFERENCE P3.
           IF P1 NOT EQUAL ADDRESS OF P3
              DISPLAY P1
              END-DISPLAY
           END-IF
           IF P2 NOT EQUAL 42
              DISPLAY P2
              END-DISPLAY
           END-IF
           IF P3 NOT EQUAL "CALLBACK"
              DISPLAY P3
              END-DISPLAY
           END-IF
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:4965: \$COMPILE -Wno-unfinished -o prog prog2.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -o prog prog2.cob cprog.c" "run_misc.at:4965"
( $at_check_trace; $COMPILE -Wno-unfinished -o prog prog2.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4965"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4966: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4966"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4966"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:4968: \$COMPILE -Wno-unfinished -o prog prog3.cob cprog.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished -o prog prog3.cob cprog.c" "run_misc.at:4968"
( $at_check_trace; $COMPILE -Wno-unfinished -o prog prog3.cob cprog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4968"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:4969: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:4969"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:4969"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_775
#AT_START_776
at_fn_group_banner 776 'run_misc.at:4974' \
  "CALL in from C with init missing / implicit" "    " 4
at_xfail=no
(
  $as_echo "776. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 P1            PIC X.
       01 P2            PIC X(6).
       PROCEDURE        DIVISION USING P1 P2.
           IF P1 NOT EQUAL "A"
              DISPLAY P1.
           IF P2 NOT EQUAL "FROM C"
              DISPLAY P2
              END-DISPLAY
           ELSE
              DISPLAY "OK" WITH NO ADVANCING.
           STOP RUN.
_ATEOF


cat >caller.c <<'_ATEOF'

int callee (char *, char *);

int
main (int argc, char **argv)
{
   /* initialize parameters */
   char *p1 = "A";
   char *p2 = "FROM C";

   /* call COBOL program (initialization missing)
      note: COBOL program terminates the program by STOP RUN */
   (void)callee (p1, p2);
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5011: \$COMPILE -o caller caller.c callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -o caller caller.c callee.cob" "run_misc.at:5011"
( $at_check_trace; $COMPILE -o caller caller.c callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5011"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5012: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:5012"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: cob_init() has not been called
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:5012"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:5016: \$COMPILE -fimplicit-init -o caller caller.c callee.cob"
at_fn_check_prepare_dynamic "$COMPILE -fimplicit-init -o caller caller.c callee.cob" "run_misc.at:5016"
( $at_check_trace; $COMPILE -fimplicit-init -o caller caller.c callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5016"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5017: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:5017"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5017"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_776
#AT_START_777
at_fn_group_banner 777 'run_misc.at:5022' \
  "CALL STATIC C from COBOL" "                       " 4
at_xfail=no
(
  $as_echo "777. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P1            PIC X VALUE "A".
       01 P2            PIC X(7).
       77 P2-COB        PIC X(7).
       PROCEDURE        DIVISION.
           CALL STATIC 'callee' USING P1 P2
           IF P1 NOT EQUAL "B"
              DISPLAY 'NOT A: ' P1
              END-DISPLAY
           END-IF
           UNSTRING P2 DELIMITED BY LOW-VALUE
              INTO P2-COB
           END-UNSTRING
           EVALUATE TRUE
              WHEN P2-COB NOT EQUAL "FROM C"
                 DISPLAY P2-COB '-' P2
                 END-DISPLAY
              WHEN RETURN-CODE NOT = 3
                 DISPLAY RETURN-CODE
                 END-DISPLAY
              WHEN OTHER
                 DISPLAY 'OK'  WITH NO ADVANCING
                 END-DISPLAY
                 MOVE 0  TO RETURN-CODE
           END-EVALUATE
           EXIT PROGRAM.
_ATEOF


cat >callee.c <<'_ATEOF'

#include <string.h>

int
callee (char *p1, char *p2)
{
   if (p1[0] == 'A') {
      p1[0] = 'B';
   }
   memcpy (p2, "FROM C", 6);

   return 3;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5072: \$COMPILE -o caller caller.cob callee.c"
at_fn_check_prepare_dynamic "$COMPILE -o caller caller.cob callee.c" "run_misc.at:5072"
( $at_check_trace; $COMPILE -o caller caller.cob callee.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5072"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5073: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:5073"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5073"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_777
#AT_START_778
at_fn_group_banner 778 'run_misc.at:5078' \
  "ANY LENGTH (1)" "                                 " 4
at_xfail=no
(
  $as_echo "778. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P2            PIC 99.
       LINKAGE          SECTION.
       01 P1            PIC X ANY LENGTH.
       PROCEDURE        DIVISION USING P1.
           MOVE LENGTH OF P1 TO P2.
           IF P2 NOT = 6
              DISPLAY P2.
           IF P1 NOT = "OKOKOK"
              DISPLAY P1.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P1            PIC X(6) VALUE "OKOKOK".
       PROCEDURE        DIVISION.
           CALL "callee" USING P1
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5110: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:5110"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5110"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5111: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:5111"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5111"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5112: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:5112"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5112"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_778
#AT_START_779
at_fn_group_banner 779 'run_misc.at:5117' \
  "ANY LENGTH (2)" "                                 " 4
at_xfail=no
(
  $as_echo "779. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P2            PIC XXX.
       LINKAGE          SECTION.
       01 P1            PIC X ANY LENGTH.
       PROCEDURE        DIVISION USING P1.
           MOVE P1 TO P2.
           IF P2 NOT = "OK "
              DISPLAY P2.
           MOVE SPACE TO P1.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 P1            PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           CALL "callee" USING P1
           END-CALL.
           IF P1 NOT = SPACE
              DISPLAY P1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5150: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:5150"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5150"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5151: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:5151"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5151"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5152: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:5152"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5152"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_779
#AT_START_780
at_fn_group_banner 780 'run_misc.at:5157' \
  "ANY LENGTH (3)" "                                 " 4
at_xfail=no
(
  $as_echo "780. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 str PIC X(20) VALUE ALL "X".

       PROCEDURE DIVISION.
           CALL "subprog" USING str
           .
       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. subprog.

       DATA DIVISION.
       LINKAGE SECTION.
       01 str PIC X ANY LENGTH.

       PROCEDURE DIVISION USING str.
           MOVE "abcd" TO str
           DISPLAY FUNCTION TRIM (str)
           MOVE "abcd" TO str (5:)
           DISPLAY FUNCTION TRIM (str)
           MOVE ALL "a" TO str
           DISPLAY FUNCTION TRIM (str)
           .
       END PROGRAM subprog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5191: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5191"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5191"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5192: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5192"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "abcd
abcdabcd
aaaaaaaaaaaaaaaaaaaa
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5192"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_780
#AT_START_781
at_fn_group_banner 781 'run_misc.at:5200' \
  "ANY LENGTH (4)" "                                 " 4
at_xfail=no
(
  $as_echo "781. $at_setup_line: testing $at_desc ..."
  $at_traceon



# comparison of any length was done only for first character - see bug 511

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 str PIC X(20) VALUE ALL "X".

       PROCEDURE DIVISION.
           CALL "subprog" USING str
           move '   45'   to str
           CALL "subprog" USING str
           .
       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. subprog.

       DATA DIVISION.
       LINKAGE SECTION.
       01 str PIC X ANY LENGTH.

       PROCEDURE DIVISION USING str.
           IF str = 'X'
             DISPLAY 'X is X'
           END-IF
           IF str = space
             DISPLAY 'X is space'
           END-IF
           .
       END PROGRAM subprog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5238: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5238"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5238"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5239: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5239"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5239"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_781
#AT_START_782
at_fn_group_banner 782 'run_misc.at:5243' \
  "ANY LENGTH (5)" "                                 " 4
at_xfail=no
(
  $as_echo "782. $at_setup_line: testing $at_desc ..."
  $at_traceon



# any length variables resulted in SIGSEGV when module was first program called

cat >subprog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. subprog.

       DATA DIVISION.
       LINKAGE SECTION.
       01 str1 PIC X ANY LENGTH.
       01 str2 PIC X ANY LENGTH.

       PROCEDURE DIVISION USING OPTIONAL str1 OPTIONAL str2.
           DISPLAY 'IN' WITH NO ADVANCING
           .
       END PROGRAM subprog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5263: \$COMPILE_MODULE subprog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE subprog.cob" "run_misc.at:5263"
( $at_check_trace; $COMPILE_MODULE subprog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5263"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5264: \$COBCRUN subprog some test stuff"
at_fn_check_prepare_dynamic "$COBCRUN subprog some test stuff" "run_misc.at:5264"
( $at_check_trace; $COBCRUN subprog some test stuff
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "IN" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5264"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_782
#AT_START_783
at_fn_group_banner 783 'run_misc.at:5268' \
  "access to BASED item without allocation" "        " 4
at_xfail=no
(
  $as_echo "783. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) BASED.
       PROCEDURE        DIVISION.
           DISPLAY X NO ADVANCING
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             BASED.
          05 Y          PIC X(4).
       PROCEDURE        DIVISION.
           DISPLAY Y NO ADVANCING
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5294: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5294"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5294"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5295: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_misc.at:5295"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5295"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:5297: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5297"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:8: error: BASED/LINKAGE item 'X' has NULL address
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:5297"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5300: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:5300"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:9: error: BASED/LINKAGE item 'X' (accessed by 'Y') has NULL address
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:5300"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_783
#AT_START_784
at_fn_group_banner 784 'run_misc.at:5307' \
  "access to OPTIONAL LINKAGE item not passed" "     " 4
at_xfail=no
(
  $as_echo "784. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE '9876'.
       PROCEDURE        DIVISION.
           CALL 'callee' USING X.
           CALL 'callee' USING OMITTED.
           STOP RUN.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 X.
          05 Y          PIC X(4).
       PROCEDURE        DIVISION USING OPTIONAL X.
           IF Y NOT = '9876'
              DISPLAY Y.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5335: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:5335"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5335"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5336: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:5336"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5336"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:5338: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:5338"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: callee.cob:9: error: LINKAGE item 'X' (accessed by 'Y') not passed by caller
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:5338"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_784
#AT_START_785
at_fn_group_banner 785 'run_misc.at:5345' \
  "STOP RUN WITH NORMAL STATUS" "                    " 4
at_xfail=no
(
  $as_echo "785. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN WITH NORMAL STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5357: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5357"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5357"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5358: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5358"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5358"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_785
#AT_START_786
at_fn_group_banner 786 'run_misc.at:5363' \
  "STOP RUN WITH ERROR STATUS" "                     " 4
at_xfail=no
(
  $as_echo "786. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN WITH ERROR STATUS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5375: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5375"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5375"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5376: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5376"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:5376"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_786
#AT_START_787
at_fn_group_banner 787 'run_misc.at:5381' \
  "STOP ERROR" "                                     " 4
at_xfail=no
(
  $as_echo "787. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           CALL "prog2".
           DISPLAY "Whatever".
           STOP RUN.
       END PROGRAM      prog.
       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       PROCEDURE        DIVISION.
           STOP ERROR.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5398: \$COMPILE prog.cob -fstop-error-statement=ok"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fstop-error-statement=ok" "run_misc.at:5398"
( $at_check_trace; $COMPILE prog.cob -fstop-error-statement=ok
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5398"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5399: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5399"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:12: error: STOP ERROR
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:5399"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_787
#AT_START_788
at_fn_group_banner 788 'run_misc.at:5406' \
  "SYMBOLIC clause" "                                " 4
at_xfail=no
(
  $as_echo "788. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           ALPHABET A-EBC IS EBCDIC
           ALPHABET A-ASC IS ASCII
           SYMBOLIC Z-EBC IS 241 IN A-EBC
           SYMBOLIC Z-ASC IS  49 IN A-ASC
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC X.
       PROCEDURE        DIVISION.
           MOVE Z-ASC   TO Z.
           IF Z NOT = "0"
              DISPLAY Z.
           MOVE Z-EBC   TO Z.
           IF Z NOT = "0"
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5433: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5433"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5433"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5434: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5434"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5434"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_788
#AT_START_789
at_fn_group_banner 789 'run_misc.at:5439' \
  "OCCURS clause with 1 entry" "                     " 4
at_xfail=no
(
  $as_echo "789. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  D1.
           03  FILLER   OCCURS 1.
               05 D1-ENTRY   PIC X(03) value '123'.
       01  D2.
           03  D2-ENTRY   PIC X(03)  value 'ABC'  OCCURS 1.
       01  D1TOR.
           03  FILLER   PIC X(03) value '456'.
       01  D1-R         REDEFINES D1TOR.
           03  FILLER   OCCURS 1.
               05 D1-R-ENTRY   PIC X(03).
       01  D2TOR.
           03  FILLER   PIC X(03) value 'DEF'.
       01  D2-R         REDEFINES D2TOR.
           03  D2-R-ENTRY   PIC X(03)   OCCURS 1.

       PROCEDURE        DIVISION.
           IF D1-ENTRY (1) NOT = "123"
              DISPLAY D1-ENTRY (1).
           IF D2-ENTRY (1) NOT = "ABC"
              DISPLAY D2-ENTRY (1).
           IF D1-R-ENTRY (1) NOT = "456"
              DISPLAY D1-R-ENTRY (1).
           IF D2-R-ENTRY (1) NOT = "DEF"
              DISPLAY D2-R-ENTRY (1).
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5474: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5474"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5474"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5475: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5475"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5475"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_789
#AT_START_790
at_fn_group_banner 790 'run_misc.at:5480' \
  "Computing of different USAGEs w/o decimal point" "" 4
at_xfail=no
(
  $as_echo "790. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. 'prog'.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *
       77  BCL-A           BINARY-C-LONG    VALUE 1.
       77  BCL-B           BINARY-C-LONG    VALUE 10.
       77  BCL-RES         BINARY-C-LONG.
      *
       77  BC-A            BINARY-CHAR      VALUE 1.
       77  BC-B            BINARY-CHAR      VALUE 10.
       77  BC-RES          BINARY-CHAR.
      *
       77  BD-A            BINARY-DOUBLE    VALUE 1.
       77  BD-B            BINARY-DOUBLE    VALUE 10.
       77  BD-RES          BINARY-DOUBLE.
      *
       77  BL-A            BINARY-LONG      VALUE 1.
       77  BL-B            BINARY-LONG      VALUE 10.
       77  BL-RES          BINARY-LONG.
      *
       77  C-A     PIC S99 COMP             VALUE 1.
       77  C-B     PIC S99 COMP             VALUE 10.
       77  C-RES   PIC S99 COMP.
      *
       77  C1-A            COMP-1           VALUE 1.
       77  C1-B            COMP-1           VALUE 10.
       77  C1-RES          COMP-1.
      *
       77  C2-A            COMP-2           VALUE 1.
       77  C2-B            COMP-2           VALUE 10.
       77  C2-RES          COMP-2.
      *
       77  C3-A    PIC S99 COMP-3           VALUE 1.
       77  C3-B    PIC S99 COMP-3           VALUE 10.
       77  C3-RES  PIC S99 COMP-3.
      *
       77  C5-A    PIC S99 COMP-5           VALUE 1.
       77  C5-B    PIC S99 COMP-5           VALUE 10.
       77  C5-RES  PIC S99 COMP-5.
      *
       77  C6-A    PIC  99 COMP-6           VALUE 1.
       77  C6-B    PIC  99 COMP-6           VALUE 10.
       77  C6-RES  PIC  99 COMP-6.
      *
       77  CN9-A   PIC  99 COMP-N           VALUE 1.
       77  CN9-B   PIC  99 COMP-N           VALUE 10.
       77  CN9-RES PIC  99 COMP-N.
      *
       77  CNX-A   PIC  X  COMP-N           VALUE 1.
       77  CNX-B   PIC  X  COMP-N           VALUE 10.
       77  CNX-RES PIC  X  COMP-N.
      *
       77  CX9-A   PIC  99 COMP-X           VALUE 1.
       77  CX9-B   PIC  99 COMP-X           VALUE 10.
       77  CX9-RES PIC  99 COMP-X.
      *
       77  CXX-A   PIC  X  COMP-X           VALUE 1.
       77  CXX-B   PIC  X  COMP-X           VALUE 10.
       77  CXX-RES PIC  X  COMP-X.
      *
       77  D-A     PIC  S99                 VALUE 1.
       77  D-B     PIC  S99                 VALUE 10.
       77  D-RES   PIC  S99.
      *
       77  FD16-A          FLOAT-DECIMAL-16 VALUE 1.
       77  FD16-B          FLOAT-DECIMAL-16 VALUE 10.
       77  FD16-RES        FLOAT-DECIMAL-16.
      *
       77  FD34-A          FLOAT-DECIMAL-34 VALUE 1.
       77  FD34-B          FLOAT-DECIMAL-34 VALUE 10.
       77  FD34-RES        FLOAT-DECIMAL-34.
      *
       77  FL-A            FLOAT-LONG       VALUE 1.
       77  FL-B            FLOAT-LONG       VALUE 10.
       77  FL-RES          FLOAT-LONG.
      *
       77  FS-A            FLOAT-SHORT      VALUE 1.
       77  FS-B            FLOAT-SHORT      VALUE 10.
       77  FS-RES          FLOAT-SHORT.
      *
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
      *
       PROCEDURE DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *
           INITIALIZE
               BCL-A BCL-B
               BC-A BC-B
               BD-A BD-B
               BL-A BL-B
               C-A C-B
               C1-A C1-B
               C2-A C2-B
               C3-A C3-B
               C5-A C5-B
               C6-A C6-B
               CN9-A CN9-B
               CNX-A CNX-B
               CX9-A CX9-B
               CXX-A CXX-B
               D-A D-B
               FD16-A FD16-B
               FD34-A FD34-B
               FL-A FL-B
               FS-A FS-B
              ALL TO VALUE.
      *
           ADD  BCL-B  TO BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 11
              DISPLAY 'ERROR BINARY-C-LONG + BINARY-C-LONG'.
           MOVE 1     TO BCL-A.
           ADD  10    TO BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 11
              DISPLAY 'ERROR BINARY-C-LONG + NUM'.
           MOVE 11    TO BCL-A.
           SUBTRACT BCL-B FROM BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 1
              DISPLAY 'ERROR BINARY-C-LONG - BINARY-C-LONG'.
           MOVE 11    TO BCL-A.
           SUBTRACT 10   FROM BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 1
              DISPLAY 'ERROR BINARY-C-LONG - NUM'.
      *
           ADD  BC-B  TO BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 11
              DISPLAY 'ERROR BINARY-CHAR + BINARY-CHAR'.
           MOVE 1     TO BC-A.
           ADD  10    TO BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 11
              DISPLAY 'ERROR BINARY-CHAR + NUM'.
           MOVE 11    TO BC-A.
           SUBTRACT BC-B FROM BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 1
              DISPLAY 'ERROR BINARY-CHAR - BINARY-CHAR'.
           MOVE 11    TO BC-A.
           SUBTRACT 10   FROM BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 1
              DISPLAY 'ERROR BINARY-CHAR - NUM'.
      *
           ADD  BD-B  TO BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 11
              DISPLAY 'ERROR BINARY-DOUBLE + BINARY-DOUBLE'.
           MOVE 1     TO BD-A.
           ADD  10    TO BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 11
              DISPLAY 'ERROR BINARY-DOUBLE + NUM'.
           MOVE 11    TO BD-A.
           SUBTRACT BD-B FROM BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 1
              DISPLAY 'ERROR BINARY-DOUBLE - BINARY-DOUBLE'.
           MOVE 11    TO BD-A.
           SUBTRACT 10   FROM BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 1
              DISPLAY 'ERROR BINARY-DOUBLE - NUM'.
      *
           ADD  BL-B  TO BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 11
              DISPLAY 'ERROR BINARY-LONG + BINARY-LONG'.
           MOVE 1     TO BL-A.
           ADD  10    TO BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 11
              DISPLAY 'ERROR BINARY-LONG + NUM'.
           MOVE 11    TO BL-A.
           SUBTRACT BL-B FROM BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 1
              DISPLAY 'ERROR BINARY-LONG - BINARY-LONG'.
           MOVE 11    TO BL-A.
           SUBTRACT 10   FROM BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 1
              DISPLAY 'ERROR BINARY-LONG - NUM'.
      *
           ADD  C-B  TO C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 11
              DISPLAY 'ERROR COMP + COMP'.
           MOVE 1     TO C-A.
           ADD  10    TO C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 11
              DISPLAY 'ERROR COMP + NUM'.
           MOVE 11    TO C-A.
           SUBTRACT C-B FROM C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 1
              DISPLAY 'ERROR COMP - COMP'.
           MOVE 11    TO C-A.
           SUBTRACT 10   FROM C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 1
              DISPLAY 'ERROR COMP - NUM'.
      *
           ADD  C1-B  TO C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 11
              DISPLAY 'ERROR COMP-1 + COMP-1'.
           MOVE 1     TO C1-A.
           ADD  10    TO C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 11
              DISPLAY 'ERROR COMP-1 + NUM'.
           MOVE 11    TO C1-A.
           SUBTRACT C1-B FROM C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 1
              DISPLAY 'ERROR COMP-1 - COMP-1'.
           MOVE 11    TO C1-A.
           SUBTRACT 10   FROM C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 1
              DISPLAY 'ERROR COMP-1 - NUM'.
      *
           ADD  C2-B  TO C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 11
              DISPLAY 'ERROR COMP-2 + COMP-2'.
           MOVE 1     TO C2-A.
           ADD  10    TO C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 11
              DISPLAY 'ERROR COMP-2 + NUM'.
           MOVE 11    TO C2-A.
           SUBTRACT C2-B FROM C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 1
              DISPLAY 'ERROR COMP-2 - COMP-2'.
           MOVE 11    TO C2-A.
           SUBTRACT 10   FROM C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 1
              DISPLAY 'ERROR COMP-2 - NUM'.
      *
           ADD  C3-B  TO C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 11
              DISPLAY 'ERROR COMP-3 + COMP-3'.
           MOVE 1     TO C3-A.
           ADD  10    TO C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 11
              DISPLAY 'ERROR COMP-3 + NUM'.
           MOVE 11    TO C3-A.
           SUBTRACT C3-B FROM C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 1
              DISPLAY 'ERROR COMP-3 - COMP-3'.
           MOVE 11    TO C3-A.
           SUBTRACT 10   FROM C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 1
              DISPLAY 'ERROR COMP-3 - NUM'.
      *
           ADD  C5-B  TO C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 11
              DISPLAY 'ERROR COMP-5 + COMP-5'.
           MOVE 1     TO C5-A.
           ADD  10    TO C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 11
              DISPLAY 'ERROR COMP-5 + NUM'.
           MOVE 11    TO C5-A.
           SUBTRACT C5-B FROM C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 1
              DISPLAY 'ERROR COMP-5 - COMP-5'.
           MOVE 11    TO C5-A.
           SUBTRACT 10   FROM C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 1
              DISPLAY 'ERROR COMP-5 - NUM'.
      *
           ADD  C6-B  TO C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 11
              DISPLAY 'ERROR COMP-6 + COMP-6'.
           MOVE 1     TO C6-A.
           ADD  10    TO C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 11
              DISPLAY 'ERROR COMP-6 + NUM'.
           MOVE 11    TO C6-A.
           SUBTRACT C6-B FROM C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 1
              DISPLAY 'ERROR COMP-6 - COMP-6'.
           MOVE 11    TO C6-A.
           SUBTRACT 10   FROM C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 1
              DISPLAY 'ERROR COMP-6 - NUM'.
      *
           ADD  CN9-B  TO CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 11
              DISPLAY 'ERROR COMP-N + COMP-N'.
           MOVE 1     TO CN9-A.
           ADD  10    TO CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 11
              DISPLAY 'ERROR COMP-N + NUM'.
           MOVE 11    TO CN9-A.
           SUBTRACT CN9-B FROM CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 1
              DISPLAY 'ERROR COMP-N - COMP-N'.
           MOVE 11    TO CN9-A.
           SUBTRACT 10   FROM CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 1
              DISPLAY 'ERROR COMP-N - NUM'.
      *
           ADD  CNX-B  TO CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 11
              DISPLAY 'ERROR COMP-N + COMP-N'.
           MOVE 1     TO CNX-A.
           ADD  10    TO CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 11
              DISPLAY 'ERROR COMP-N + NUM'.
           MOVE 11    TO CNX-A.
           SUBTRACT CNX-B FROM CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 1
              DISPLAY 'ERROR COMP-N - COMP-N'.
           MOVE 11    TO CNX-A.
           SUBTRACT 10   FROM CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 1
              DISPLAY 'ERROR COMP-N - NUM'.
      *
           ADD  CX9-B  TO CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 11
              DISPLAY 'ERROR COMP-X + COMP-X'.
           MOVE 1     TO CX9-A.
           ADD  10    TO CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 11
              DISPLAY 'ERROR COMP-X + NUM'.
           MOVE 11    TO CX9-A.
           SUBTRACT CX9-B FROM CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 1
              DISPLAY 'ERROR COMP-X - COMP-X'.
           MOVE 11    TO CX9-A.
           SUBTRACT 10   FROM CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 1
              DISPLAY 'ERROR COMP-X - NUM'.
      *
           ADD  CXX-B  TO CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 11
              DISPLAY 'ERROR COMP-X + COMP-X'.
           MOVE 1     TO CXX-A.
           ADD  10    TO CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 11
              DISPLAY 'ERROR COMP-X + NUM'.
           MOVE 11    TO CXX-A.
           SUBTRACT CXX-B FROM CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 1
              DISPLAY 'ERROR COMP-X - COMP-X'.
           MOVE 11    TO CXX-A.
           SUBTRACT 10   FROM CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 1
              DISPLAY 'ERROR COMP-X - NUM'.
      *
           ADD  D-B  TO D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 11
              DISPLAY 'ERROR DISPLAY + DISPLAY'.
           MOVE 1     TO D-A.
           ADD  10    TO D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 11
              DISPLAY 'ERROR DISPLAY + NUM'.
           MOVE 11    TO D-A.
           SUBTRACT D-B FROM D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 1
              DISPLAY 'ERROR DISPLAY - DISPLAY'.
           MOVE 11    TO D-A.
           SUBTRACT 10   FROM D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 1
              DISPLAY 'ERROR DISPLAY - NUM'.
      *
           ADD  FD16-B  TO FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 11
              DISPLAY 'ERROR FLOAT-DECIMAL-16 + FLOAT-DECIMAL-16'.
           MOVE 1     TO FD16-A.
           ADD  10    TO FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 11
              DISPLAY 'ERROR FLOAT-DECIMAL-16 + NUM'.
           MOVE 11    TO FD16-A.
           SUBTRACT FD16-B FROM FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 1
              DISPLAY 'ERROR FLOAT-DECIMAL-16 - FLOAT-DECIMAL-16'.
           MOVE 11    TO FD16-A.
           SUBTRACT 10   FROM FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 1
              DISPLAY 'ERROR FLOAT-DECIMAL-16 - NUM'.
      *
           ADD  FD34-B  TO FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 11
              DISPLAY 'ERROR FLOAT-DECIMAL-34 + FLOAT-DECIMAL-34'.
           MOVE 1     TO FD34-A.
           ADD  10    TO FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 11
              DISPLAY 'ERROR FLOAT-DECIMAL-34 + NUM'.
           MOVE 11    TO FD34-A.
           SUBTRACT FD34-B FROM FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 1
              DISPLAY 'ERROR FLOAT-DECIMAL-34 - FLOAT-DECIMAL-34'.
           MOVE 11    TO FD34-A.
           SUBTRACT 10   FROM FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 1
              DISPLAY 'ERROR FLOAT-DECIMAL-34 - NUM'.
      *
           ADD  FL-B  TO FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 11
              DISPLAY 'ERROR FLOAT-LONG + FLOAT-LONG'.
           MOVE 1     TO FL-A.
           ADD  10    TO FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 11
              DISPLAY 'ERROR FLOAT-LONG + NUM'.
           MOVE 11    TO FL-A.
           SUBTRACT FL-B FROM FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 1
              DISPLAY 'ERROR FLOAT-LONG - FLOAT-LONG'.
           MOVE 11    TO FL-A.
           SUBTRACT 10   FROM FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 1
              DISPLAY 'ERROR FLOAT-LONG - NUM'.
      *
           ADD  FS-B  TO FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 11
              DISPLAY 'ERROR FLOAT-SHORT + FLOAT-SHORT'.
           MOVE 1     TO FS-A.
           ADD  10    TO FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 11
              DISPLAY 'ERROR FLOAT-SHORT + NUM'.
           MOVE 11    TO FS-A.
           SUBTRACT FS-B FROM FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 1
              DISPLAY 'ERROR FLOAT-SHORT - FLOAT-SHORT'.
           MOVE 11    TO FS-A.
           SUBTRACT 10   FROM FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 1
              DISPLAY 'ERROR FLOAT-SHORT - NUM'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:5990: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:5990"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5990"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5991: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5991"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5991"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:5993: \$COMPILE -fno-fast-compare prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare prog.cob" "run_misc.at:5993"
( $at_check_trace; $COMPILE -fno-fast-compare prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5993"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:5994: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:5994"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5994"
$at_failed && at_fn_log_failure
$at_traceon; }


#AT_CHECK([$COMPILE -fno-fast-math prog.cob], [0], [], [])
#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], [])

{ set +x
$as_echo "$at_srcdir/run_misc.at:5999: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_misc.at:5999"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:5999"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6000: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:6000"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6000"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_790
#AT_START_791
at_fn_group_banner 791 'run_misc.at:6005' \
  "Computing of different USAGEs w/- decimal point" "" 4
at_xfail=no
(
  $as_echo "791. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. 'prog'.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *
       77  BCL-A           BINARY-C-LONG    VALUE 1.0.
       77  BCL-B           BINARY-C-LONG    VALUE 10.0.
       77  BCL-RES         BINARY-C-LONG.
      *
       77  BC-A            BINARY-CHAR      VALUE 1.0.
       77  BC-B            BINARY-CHAR      VALUE 10.0.
       77  BC-RES          BINARY-CHAR.
      *
       77  BD-A            BINARY-DOUBLE    VALUE 1.0.
       77  BD-B            BINARY-DOUBLE    VALUE 10.0.
       77  BD-RES          BINARY-DOUBLE.
      *
       77  BL-A            BINARY-LONG      VALUE 1.0.
       77  BL-B            BINARY-LONG      VALUE 10.0.
       77  BL-RES          BINARY-LONG.
      *
       77  C-A     PIC S99 COMP             VALUE 1.0.
       77  C-B     PIC S99 COMP             VALUE 10.0.
       77  C-RES   PIC S99 COMP.
      *
       77  C1-A            COMP-1           VALUE 1.0.
       77  C1-B            COMP-1           VALUE 10.0.
       77  C1-RES          COMP-1.
      *
       77  C2-A            COMP-2           VALUE 1.0.
       77  C2-B            COMP-2           VALUE 10.0.
       77  C2-RES          COMP-2.
      *
       77  C3-A    PIC S99 COMP-3           VALUE 1.0.
       77  C3-B    PIC S99 COMP-3           VALUE 10.0.
       77  C3-RES  PIC S99 COMP-3.
      *
       77  C5-A    PIC S99 COMP-5           VALUE 1.0.
       77  C5-B    PIC S99 COMP-5           VALUE 10.0.
       77  C5-RES  PIC S99 COMP-5.
      *
       77  C6-A    PIC  99 COMP-6           VALUE 1.0.
       77  C6-B    PIC  99 COMP-6           VALUE 10.0.
       77  C6-RES  PIC  99 COMP-6.
      *
       77  CN9-A   PIC  99 COMP-N           VALUE 1.
       77  CN9-B   PIC  99 COMP-N           VALUE 10.
       77  CN9-RES PIC  99 COMP-N.
      *
       77  CNX-A   PIC  X  COMP-N           VALUE 1.
       77  CNX-B   PIC  X  COMP-N           VALUE 10.
       77  CNX-RES PIC  X  COMP-N.
      *
       77  CX9-A   PIC  99 COMP-X           VALUE 1.
       77  CX9-B   PIC  99 COMP-X           VALUE 10.
       77  CX9-RES PIC  99 COMP-X.
      *
       77  CXX-A   PIC  X  COMP-X           VALUE 1.
       77  CXX-B   PIC  X  COMP-X           VALUE 10.
       77  CXX-RES PIC  X  COMP-X.
      *
       77  D-A     PIC  S99                 VALUE 1.0.
       77  D-B     PIC  S99                 VALUE 10.0.
       77  D-RES   PIC  S99.
      *
       77  FD16-A          FLOAT-DECIMAL-16 VALUE 1.0.
       77  FD16-B          FLOAT-DECIMAL-16 VALUE 10.0.
       77  FD16-RES        FLOAT-DECIMAL-16.
      *
       77  FD34-A          FLOAT-DECIMAL-34 VALUE 1.0.
       77  FD34-B          FLOAT-DECIMAL-34 VALUE 10.0.
       77  FD34-RES        FLOAT-DECIMAL-34.
      *
       77  FL-A            FLOAT-LONG       VALUE 1.0.
       77  FL-B            FLOAT-LONG       VALUE 10.0.
       77  FL-RES          FLOAT-LONG.
      *
       77  FS-A            FLOAT-SHORT      VALUE 1.0.
       77  FS-B            FLOAT-SHORT      VALUE 10.0.
       77  FS-RES          FLOAT-SHORT.
      *
       PROCEDURE DIVISION.
      *
           ADD  BCL-B  TO BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-C-LONG + BINARY-C-LONG'.
           MOVE 1.0   TO BCL-A.
           ADD  10.0  TO BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-C-LONG + NUM'.
           MOVE 11.0  TO BCL-A.
           SUBTRACT BCL-B FROM BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-C-LONG - BINARY-C-LONG'.
           MOVE 11.0  TO BCL-A.
           SUBTRACT 10.0 FROM BCL-A.
           MOVE BCL-A  TO BCL-RES.
           IF BCL-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-C-LONG - NUM'.
      *
           ADD  BC-B  TO BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-CHAR + BINARY-CHAR'.
           MOVE 1.0   TO BC-A.
           ADD  10.0  TO BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-CHAR + NUM'.
           MOVE 11.0  TO BC-A.
           SUBTRACT BC-B FROM BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-CHAR - BINARY-CHAR'.
           MOVE 11.0  TO BC-A.
           SUBTRACT 10.0 FROM BC-A.
           MOVE BC-A  TO BC-RES.
           IF BC-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-CHAR - NUM'.
      *
           ADD  BD-B  TO BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-DOUBLE + BINARY-DOUBLE'.
           MOVE 1.0   TO BD-A.
           ADD  10.0  TO BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-DOUBLE + NUM'.
           MOVE 11.0  TO BD-A.
           SUBTRACT BD-B FROM BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-DOUBLE - BINARY-DOUBLE'.
           MOVE 11.0  TO BD-A.
           SUBTRACT 10.0 FROM BD-A.
           MOVE BD-A  TO BD-RES.
           IF BD-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-DOUBLE - NUM'.
      *
           ADD  BL-B  TO BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-LONG + BINARY-LONG'.
           MOVE 1.0   TO BL-A.
           ADD  10.0  TO BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 11.0
              DISPLAY 'ERROR BINARY-LONG + NUM'.
           MOVE 11.0  TO BL-A.
           SUBTRACT BL-B FROM BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-LONG - BINARY-LONG'.
           MOVE 11.0  TO BL-A.
           SUBTRACT 10.0 FROM BL-A.
           MOVE BL-A  TO BL-RES.
           IF BL-RES NOT = 1.0
              DISPLAY 'ERROR BINARY-LONG - NUM'.
      *
           ADD  C-B  TO C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 11.0
              DISPLAY 'ERROR COMP + COMP'.
           MOVE 1.0   TO C-A.
           ADD  10.0  TO C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 11.0
              DISPLAY 'ERROR COMP + NUM'.
           MOVE 11.0  TO C-A.
           SUBTRACT C-B FROM C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 1.0
              DISPLAY 'ERROR COMP - COMP'.
           MOVE 11.0  TO C-A.
           SUBTRACT 10.0 FROM C-A.
           MOVE C-A  TO C-RES.
           IF C-RES NOT = 1.0
              DISPLAY 'ERROR COMP - NUM'.
      *
           ADD  C1-B  TO C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 11.0
              DISPLAY 'ERROR COMP-1 + COMP-1'.
           MOVE 1.0   TO C1-A.
           ADD  10.0  TO C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 11.0
              DISPLAY 'ERROR COMP-1 + NUM'.
           MOVE 11.0  TO C1-A.
           SUBTRACT C1-B FROM C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 1.0
              DISPLAY 'ERROR COMP-1 - COMP-1'.
           MOVE 11.0  TO C1-A.
           SUBTRACT 10.0 FROM C1-A.
           MOVE C1-A  TO C1-RES.
           IF C1-RES NOT = 1.0
              DISPLAY 'ERROR COMP-1 - NUM'.
      *
           ADD  C2-B  TO C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 11.0
              DISPLAY 'ERROR COMP-2 + COMP-2'.
           MOVE 1.0   TO C2-A.
           ADD  10.0  TO C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 11.0
              DISPLAY 'ERROR COMP-2 + NUM'.
           MOVE 11.0  TO C2-A.
           SUBTRACT C2-B FROM C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 1.0
              DISPLAY 'ERROR COMP-2 - COMP-2'.
           MOVE 11.0  TO C2-A.
           SUBTRACT 10.0 FROM C2-A.
           MOVE C2-A  TO C2-RES.
           IF C2-RES NOT = 1.0
              DISPLAY 'ERROR COMP-2 - NUM'.
      *
           ADD  C3-B  TO C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 11.0
              DISPLAY 'ERROR COMP-3 + COMP-3'.
           MOVE 1.0   TO C3-A.
           ADD  10.0  TO C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 11.0
              DISPLAY 'ERROR COMP-3 + NUM'.
           MOVE 11.0  TO C3-A.
           SUBTRACT C3-B FROM C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 1.0
              DISPLAY 'ERROR COMP-3 - COMP-3'.
           MOVE 11.0  TO C3-A.
           SUBTRACT 10.0 FROM C3-A.
           MOVE C3-A  TO C3-RES.
           IF C3-RES NOT = 1.0
              DISPLAY 'ERROR COMP-3 - NUM'.
      *
           ADD  C5-B  TO C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 11.0
              DISPLAY 'ERROR COMP-5 + COMP-5'.
           MOVE 1.0   TO C5-A.
           ADD  10.0  TO C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 11.0
              DISPLAY 'ERROR COMP-5 + NUM'.
           MOVE 11.0  TO C5-A.
           SUBTRACT C5-B FROM C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 1.0
              DISPLAY 'ERROR COMP-5 - COMP-5'.
           MOVE 11.0  TO C5-A.
           SUBTRACT 10.0 FROM C5-A.
           MOVE C5-A  TO C5-RES.
           IF C5-RES NOT = 1.0
              DISPLAY 'ERROR COMP-5 - NUM'.
      *
           ADD  C6-B  TO C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 11.0
              DISPLAY 'ERROR COMP-6 + COMP-6'.
           MOVE 1.0   TO C6-A.
           ADD  10.0  TO C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 11.0
              DISPLAY 'ERROR COMP-6 + NUM'.
           MOVE 11.0  TO C6-A.
           SUBTRACT C6-B FROM C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 1.0
              DISPLAY 'ERROR COMP-6 - COMP-6'.
           MOVE 11.0  TO C6-A.
           SUBTRACT 10.0 FROM C6-A.
           MOVE C6-A  TO C6-RES.
           IF C6-RES NOT = 1.0
              DISPLAY 'ERROR COMP-6 - NUM'.
      *
           ADD  CN9-B  TO CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 11.0
              DISPLAY 'ERROR COMP-N + COMP-N'.
           MOVE 1.0    TO CN9-A.
           ADD  10.0   TO CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 11.0
              DISPLAY 'ERROR COMP-N + NUM'.
           MOVE 11.0   TO CN9-A.
           SUBTRACT CN9-B FROM CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 1.0
              DISPLAY 'ERROR COMP-N - COMP-N'.
           MOVE 11.0   TO CN9-A.
           SUBTRACT 10.0  FROM CN9-A.
           MOVE CN9-A  TO CN9-RES.
           IF CN9-RES NOT = 1.0
              DISPLAY 'ERROR COMP-N - NUM'.
      *
           ADD  CNX-B  TO CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 11.0
              DISPLAY 'ERROR COMP-N + COMP-N'.
           MOVE 1.0    TO CNX-A.
           ADD  10.0   TO CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 11.0
              DISPLAY 'ERROR COMP-N + NUM'.
           MOVE 11.0   TO CNX-A.
           SUBTRACT CNX-B FROM CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 1.0
              DISPLAY 'ERROR COMP-N - COMP-N'.
           MOVE 11.0   TO CNX-A.
           SUBTRACT 10.0 FROM CNX-A.
           MOVE CNX-A  TO CNX-RES.
           IF CNX-RES NOT = 1.0
              DISPLAY 'ERROR COMP-N - NUM'.
      *
           ADD  CX9-B  TO CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 11.0
              DISPLAY 'ERROR COMP-X + COMP-X'.
           MOVE 1.0    TO CX9-A.
           ADD  10.0   TO CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 11.0
              DISPLAY 'ERROR COMP-X + NUM'.
           MOVE 11.0   TO CX9-A.
           SUBTRACT CX9-B FROM CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 1.0
              DISPLAY 'ERROR COMP-X - COMP-X'.
           MOVE 11.0   TO CX9-A.
           SUBTRACT 10.0 FROM CX9-A.
           MOVE CX9-A  TO CX9-RES.
           IF CX9-RES NOT = 1.0
              DISPLAY 'ERROR COMP-X - NUM'.
      *
           ADD  CXX-B  TO CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 11.0
              DISPLAY 'ERROR COMP-X + COMP-X'.
           MOVE 1.0    TO CXX-A.
           ADD  10.0   TO CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 11.0
              DISPLAY 'ERROR COMP-X + NUM'.
           MOVE 11.0    TO CXX-A.
           SUBTRACT CXX-B FROM CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 1.0
              DISPLAY 'ERROR COMP-X - COMP-X'.
           MOVE 11.0   TO CXX-A.
           SUBTRACT 10.0 FROM CXX-A.
           MOVE CXX-A  TO CXX-RES.
           IF CXX-RES NOT = 1.0
              DISPLAY 'ERROR COMP-X - NUM'.
      *
           ADD  D-B  TO D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 11.0
              DISPLAY 'ERROR DISPLAY + DISPLAY'.
           MOVE 1.0  TO D-A.
           ADD  10.0 TO D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 11.0
              DISPLAY 'ERROR DISPLAY + NUM'.
           MOVE 11.0 TO D-A.
           SUBTRACT D-B FROM D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 1.0
              DISPLAY 'ERROR DISPLAY - DISPLAY'.
           MOVE 11.0 TO D-A.
           SUBTRACT 10.0 FROM D-A.
           MOVE D-A  TO D-RES.
           IF D-RES NOT = 1.0
              DISPLAY 'ERROR DISPLAY - NUM'.
      *
           ADD  FD16-B  TO FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-DECIMAL-16 + FLOAT-DECIMAL-16'.
           MOVE 1.0   TO FD16-A.
           ADD  10.0  TO FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-DECIMAL-16 + NUM'.
           MOVE 11.0  TO FD16-A.
           SUBTRACT FD16-B FROM FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-DECIMAL-16 - FLOAT-DECIMAL-16'.
           MOVE 11.0  TO FD16-A.
           SUBTRACT 10.0 FROM FD16-A.
           MOVE FD16-A  TO FD16-RES.
           IF FD16-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-DECIMAL-16 - NUM'.
      *
           ADD  FD34-B  TO FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-DECIMAL-34 + FLOAT-DECIMAL-34'.
           MOVE 1.0   TO FD34-A.
           ADD  10.0  TO FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-DECIMAL-34 + NUM'.
           MOVE 11.0  TO FD34-A.
           SUBTRACT FD34-B FROM FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-DECIMAL-34 - FLOAT-DECIMAL-34'.
           MOVE 11.0  TO FD34-A.
           SUBTRACT 10.0 FROM FD34-A.
           MOVE FD34-A  TO FD34-RES.
           IF FD34-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-DECIMAL-34 - NUM'.
      *
           ADD  FL-B  TO FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-LONG + FLOAT-LONG'.
           MOVE 1.0   TO FL-A.
           ADD  10.0  TO FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-LONG + NUM'.
           MOVE 11.0  TO FL-A.
           SUBTRACT FL-B FROM FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-LONG - FLOAT-LONG'.
           MOVE 11.0  TO FL-A.
           SUBTRACT 10.0 FROM FL-A.
           MOVE FL-A  TO FL-RES.
           IF FL-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-LONG - NUM'.
      *
           ADD  FS-B  TO FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-SHORT + FLOAT-SHORT'.
           MOVE 1.0   TO FS-A.
           ADD  10.0  TO FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 11.0
              DISPLAY 'ERROR FLOAT-SHORT + NUM'.
           MOVE 11.0  TO FS-A.
           SUBTRACT FS-B FROM FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-SHORT - FLOAT-SHORT'.
           MOVE 11.0  TO FS-A.
           SUBTRACT 10.0 FROM FS-A.
           MOVE FS-A  TO FS-RES.
           IF FS-RES NOT = 1.0
              DISPLAY 'ERROR FLOAT-SHORT - NUM'.
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:6479: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:6479"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6479"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6480: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:6480"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6480"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:6482: \$COMPILE -fno-fast-compare prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare prog.cob" "run_misc.at:6482"
( $at_check_trace; $COMPILE -fno-fast-compare prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6482"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6483: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:6483"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6483"
$at_failed && at_fn_log_failure
$at_traceon; }


#AT_CHECK([$COMPILE -fno-fast-math prog.cob], [0], [], [])
#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], [])

{ set +x
$as_echo "$at_srcdir/run_misc.at:6488: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_misc.at:6488"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6488"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6489: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:6489"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6489"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_791
#AT_START_792
at_fn_group_banner 792 'run_misc.at:6494' \
  "compilation-group with decimal" "                 " 4
at_xfail=no
(
  $as_echo "792. $at_setup_line: testing $at_desc ..."
  $at_traceon



# bug 708 - decimal codegen in generated header when only
# a later program (nested/contained) has decimals

cat >prog.cob <<'_ATEOF'

       identification division.
         program-id. cbug.
       procedure division.
         mainline.
           call 'bug'
           goback
           .
       end program cbug.
      *
       identification division.
         program-id. bug.
       data division.
         working-storage section.
           01  pw   pic 9(02).
           01  px   pic x value '3'.
       procedure division.
         mainline.
           compute pw = function numval(px).
           if pw <> 3
              display 'bad calc: ' pw.
           goback
           .
       end program bug.
_ATEOF


# we're mostly interested in the codegen, but as we have compiled
# that we can execute it, too
{ set +x
$as_echo "$at_srcdir/run_misc.at:6528: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:6528"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6528"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6529: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:6529"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6529"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_792
#AT_START_793
at_fn_group_banner 793 'run_misc.at:6534' \
  "C/C++ reserved words/predefined identifiers" "    " 4
at_xfail=no
(
  $as_echo "793. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *
      * Reserved Words in C (that aren't reserved in COBOL)
      * var names MUST BE IN LOWER CASE (!)
      *
       77  const                       PIC X VALUE "A".
       77  double                      PIC X VALUE "B".
       77  float                       PIC X VALUE "C".
       77  int                         PIC X VALUE "D".
       77  short                       PIC X VALUE "E".
       77  struct                      PIC X VALUE "F".
       77  break                       PIC X VALUE "G".
       77  long                        PIC X VALUE "H".
       77  switch                      PIC X VALUE "I".
       77  void                        PIC X VALUE "J".
       77  case                        PIC X VALUE "K".
       77  enum                        PIC X VALUE "L".
       77  goto                        PIC X VALUE "M".
       77  register                    PIC X VALUE "N".
       77  sizeof                      PIC X VALUE "O".
       77  volatile                    PIC X VALUE "P".
       77  char                        PIC X VALUE "Q".
       77  do                          PIC X VALUE "R".
       77  extern                      PIC X VALUE "S".
       77  static                      PIC X VALUE "T".
       77  union                       PIC X VALUE "U".
       77  while                       PIC X VALUE "V".
      *
      * More Reserved Words in C++
      * var names MUST BE IN LOWER CASE (!)
      *
       77  asm                         PIC X VALUE "W".
       77  dynamic_cast                PIC X VALUE "X".
       77  namespace                   PIC X VALUE "Y".
       77  reinterpret_cast            PIC X VALUE "Z".
       77  try                         PIC X VALUE "a".
       77  bool                        PIC X VALUE "b".
       77  explicit                    PIC X VALUE "c".
       77  new                         PIC X VALUE "d".
       77  static_cast                 PIC X VALUE "e".
       77  typeid                      PIC X VALUE "f".
       77  catch                       PIC X VALUE "g".
       77  operator                    PIC X VALUE "h".
       77  template                    PIC X VALUE "i".
       77  typename                    PIC X VALUE "j".
       77  friend                      PIC X VALUE "k".
       77  private                     PIC X VALUE "l".
       77  this                        PIC X VALUE "m".
       77  const_cast                  PIC X VALUE "n".
       77  inline                      PIC X VALUE "o".
       77  public                      PIC X VALUE "p".
       77  throw                       PIC X VALUE "q".
       77  virtual                     PIC X VALUE "r".
       77  mutable                     PIC X VALUE "s".
       77  protected                   PIC X VALUE "t".
       77  wchar_t                     PIC X VALUE "u".
      *
      * More Reserved Words in C++ (not essential)
      * var names MUST BE IN LOWER CASE (!)
      *
       77  bitand                      PIC X VALUE "v".
       77  compl                       PIC X VALUE "w".
       77  not_eq                      PIC X VALUE "x".
       77  or_eq                       PIC X VALUE "y".
       77  xor_eq                      PIC X VALUE "z".
       77  and_eq                      PIC X VALUE "0".
       77  bitor                       PIC X VALUE "1".
       77  xor                         PIC X VALUE "2".
      *
       PROCEDURE        DIVISION.
           CALL "callee" USING   const
                                 double
                                 float
                                 int
                                 short
                                 struct
                                 break
                                 long
                                 switch
                                 void
                                 case
                                 enum
                                 goto
                                 register
                                 sizeof
                                 volatile
                                 char
                                 do
                                 *>extern
                                 *>static
                                 union
                                 while
           END-CALL.
           CALL "callee2" USING  asm
                                 dynamic_cast
                                 namespace
                                 reinterpret_cast
                                 try
                                 bool
                                 explicit
                                 new
                                 static_cast
                                 typeid
                                 catch
                                 operator
                                 template
                                 typename
                                 friend
                                 private
                                 this
                                 const_cast
                                 inline
                                 public
                                 throw
                                 virtual
                                 mutable
                                 protected
                                 wchar_t
                                 bitand
                                 compl
                                 not_eq
                                 or_eq
                                 xor_eq
                                 and_eq
                                 bitor
                                 xor
           END-CALL.
           MOVE x'00' TO         const
                                 double
                                 float
                                 int
                                 short
                                 struct
                                 break
                                 long
                                 switch
                                 void
                                 case
                                 enum
                                 goto
                                 register
                                 sizeof
                                 volatile
                                 char
                                 do
                                 extern
                                 static
                                 union
                                 while
                                 asm
                                 dynamic_cast
                                 namespace
                                 reinterpret_cast
                                 try
                                 bool
                                 explicit
                                 new
                                 static_cast
                                 typeid
                                 catch
                                 operator
                                 template
                                 typename
                                 friend
                                 private
                                 this
                                 const_cast
                                 inline
                                 public
                                 throw
                                 virtual
                                 mutable
                                 protected
                                 wchar_t
                                 bitand
                                 compl
                                 not_eq
                                 or_eq
                                 xor_eq
                                 and_eq
                                 bitor
                                 xor
                                 .
           STOP RUN.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE SECTION.
      *
      * Reserved Words in C (that aren't reserved in COBOL)
      * var names MUST BE IN LOWER CASE (!)
      *
       77  const                       PIC X.
       77  double                      PIC X.
       77  float                       PIC X.
       77  int                         PIC X.
       77  short                       PIC X.
       77  struct                      PIC X.
       77  break                       PIC X.
       77  long                        PIC X.
       77  switch                      PIC X.
       77  void                        PIC X.
       77  case                        PIC X.
       77  enum                        PIC X.
       77  goto                        PIC X.
       77  register                    PIC X.
       77  sizeof                      PIC X.
       77  volatile                    PIC X.
       77  char                        PIC X.
       77  do                          PIC X.
      *77  extern                      PIC X.
      *77  static                      PIC X.
       77  union                       PIC X.
       77  while                       PIC X.
       PROCEDURE        DIVISION USING
                                 const
                                 double
                                 float
                                 int
                                 short
                                 struct
                                 break
                                 long
                                 switch
                                 void
                                 case
                                 enum
                                 goto
                                 register
                                 sizeof
                                 volatile
                                 char
                                 do
                                *>extern
                                *>static
                                 union
                                 while
                                 .
           IF (const                       NOT = "A") OR
              (double                      NOT = "B") OR
              (float                       NOT = "C") OR
              (int                         NOT = "D") OR
              (short                       NOT = "E") OR
              (struct                      NOT = "F") OR
              (break                       NOT = "G") OR
              (long                        NOT = "H") OR
              (switch                      NOT = "I") OR
              (void                        NOT = "J") OR
              (case                        NOT = "K") OR
              (enum                        NOT = "L") OR
              (goto                        NOT = "M") OR
              (register                    NOT = "N") OR
              (sizeof                      NOT = "O") OR
              (volatile                    NOT = "P") OR
              (char                        NOT = "Q") OR
              (do                          NOT = "R") OR
            *>(extern                      NOT = "S") OR
            *>(static                      NOT = "T") OR
              (union                       NOT = "U") OR
              (while                       NOT = "V")
              DISPLAY "At least one var has wrong content!".
           MOVE x'FF' TO         const
                                 double
                                 float
                                 int
                                 short
                                 struct
                                 break
                                 long
                                 switch
                                 void
                                 case
                                 enum
                                 goto
                                 register
                                 sizeof
                                 volatile
                                 char
                                 do
                               *>extern
                               *>static
                                 union
                                 while
                                 .
           EXIT PROGRAM.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       DATA             DIVISION.
       LINKAGE SECTION.
      *
      * More Reserved Words in C++
      * var names MUST BE IN LOWER CASE (!)
      *
       77  asm                         PIC X.
       77  dynamic_cast                PIC X.
       77  namespace                   PIC X.
       77  reinterpret_cast            PIC X.
       77  try                         PIC X.
       77  bool                        PIC X.
       77  explicit                    PIC X.
       77  new                         PIC X.
       77  static_cast                 PIC X.
       77  typeid                      PIC X.
       77  catch                       PIC X.
       77  operator                    PIC X.
       77  template                    PIC X.
       77  typename                    PIC X.
       77  friend                      PIC X.
       77  private                     PIC X.
       77  this                        PIC X.
       77  const_cast                  PIC X.
       77  inline                      PIC X.
       77  public                      PIC X.
       77  throw                       PIC X.
       77  virtual                     PIC X.
       77  mutable                     PIC X.
       77  protected                   PIC X.
       77  wchar_t                     PIC X.
      *
      * More Reserved Words in C++ (not essential)
      *
       77  bitand                      PIC X.
       77  compl                       PIC X.
       77  not_eq                      PIC X.
       77  or_eq                       PIC X.
       77  xor_eq                      PIC X.
       77  and_eq                      PIC X.
       77  bitor                       PIC X.
       77  xor                         PIC X.
       PROCEDURE        DIVISION USING
                                 asm
                                 dynamic_cast
                                 namespace
                                 reinterpret_cast
                                 try
                                 bool
                                 explicit
                                 new
                                 static_cast
                                 typeid
                                 catch
                                 operator
                                 template
                                 typename
                                 friend
                                 private
                                 this
                                 const_cast
                                 inline
                                 public
                                 throw
                                 virtual
                                 mutable
                                 protected
                                 wchar_t
                                 bitand
                                 compl
                                 not_eq
                                 or_eq
                                 xor_eq
                                 and_eq
                                 bitor
                                 xor
                                 .
           IF (asm                         NOT = "W") OR
              (dynamic_cast                NOT = "X") OR
              (namespace                   NOT = "Y") OR
              (reinterpret_cast            NOT = "Z") OR
              (try                         NOT = "a") OR
              (bool                        NOT = "b") OR
              (explicit                    NOT = "c") OR
              (new                         NOT = "d") OR
              (static_cast                 NOT = "e") OR
              (typeid                      NOT = "f") OR
              (catch                       NOT = "g") OR
              (operator                    NOT = "h") OR
              (template                    NOT = "i") OR
              (typename                    NOT = "j") OR
              (friend                      NOT = "k") OR
              (private                     NOT = "l") OR
              (this                        NOT = "m") OR
              (const_cast                  NOT = "n") OR
              (inline                      NOT = "o") OR
              (public                      NOT = "p") OR
              (throw                       NOT = "q") OR
              (virtual                     NOT = "r") OR
              (mutable                     NOT = "s") OR
              (protected                   NOT = "t") OR
              (wchar_t                     NOT = "u") OR
              (bitand                      NOT = "v") OR
              (compl                       NOT = "w") OR
              (not_eq                      NOT = "x") OR
              (or_eq                       NOT = "y") OR
              (xor_eq                      NOT = "z") OR
              (and_eq                      NOT = "0") OR
              (bitor                       NOT = "1") OR
              (xor                         NOT = "2")
              DISPLAY "At least one var has wrong content!".
           MOVE x'FF' TO         asm
                                 dynamic_cast
                                 namespace
                                 reinterpret_cast
                                 try
                                 bool
                                 explicit
                                 new
                                 static_cast
                                 typeid
                                 catch
                                 operator
                                 template
                                 typename
                                 friend
                                 private
                                 this
                                 const_cast
                                 inline
                                 public
                                 throw
                                 virtual
                                 mutable
                                 protected
                                 wchar_t
                                 bitand
                                 compl
                                 not_eq
                                 or_eq
                                 xor_eq
                                 and_eq
                                 bitor
                                 xor
                                 .
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:6982: \$COMPILE_MODULE -fnot-reserved=double,float,new,volatile,xor callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fnot-reserved=double,float,new,volatile,xor callee.cob" "run_misc.at:6982"
( $at_check_trace; $COMPILE_MODULE -fnot-reserved=double,float,new,volatile,xor callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6982"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6983: \$COMPILE_MODULE -fnot-reserved=double,float,new,volatile,xor callee2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fnot-reserved=double,float,new,volatile,xor callee2.cob" "run_misc.at:6983"
( $at_check_trace; $COMPILE_MODULE -fnot-reserved=double,float,new,volatile,xor callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6983"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6984: \$COMPILE -fnot-reserved=double,float,new,volatile,xor -o prog caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnot-reserved=double,float,new,volatile,xor -o prog caller.cob" "run_misc.at:6984"
( $at_check_trace; $COMPILE -fnot-reserved=double,float,new,volatile,xor -o prog caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6984"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:6985: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:6985"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:6985"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_793
#AT_START_794
at_fn_group_banner 794 'run_misc.at:6990' \
  "PICTURE with Edit mask" "                         " 4
at_xfail=no
(
  $as_echo "794. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  TST.
           05 DEPT-SUB        PIC 9(7)V999 VALUE 18536.232.
           05 DEPT-COST-YTD   PIC 9(5)V999 VALUE 18536.232.
           05 DL-PROD-COST    PIC $$$,$$9.99.
       77  WFLT  PIC $$$,$$9.99.

       PROCEDURE DIVISION.
           MOVE 18536.23 TO WFLT.
           DISPLAY "WFLT IS " WFLT.
           MULTIPLY DEPT-COST-YTD BY 1 GIVING DL-PROD-COST ROUNDED.
           DISPLAY "COST IS " DL-PROD-COST.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7012: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:7012"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7012"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:7014: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7014"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "WFLT IS \$18,536.23
COST IS \$18,536.23
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7014"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_794
#AT_START_795
at_fn_group_banner 795 'run_misc.at:7063' \
  "POINTER" "                                        " 4
at_xfail=no
(
  $as_echo "795. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 XX.
         02 XX-1           PIC X(4) VALUE "1234".
         02 XX-2           PIC X(4) VALUE "5678".
       01 P-XX-1        POINTER.
       01 P-XX-2        POINTER.
       LINKAGE          SECTION.
       01 Y2            PIC X(4).
       PROCEDURE        DIVISION.
         SET P-XX-1 TO ADDRESS OF XX-1
         SET P-XX-2 TO ADDRESS OF XX-2
         SET ADDRESS OF Y2 TO ADDRESS OF XX-1
         SET ADDRESS OF Y2 UP BY 4
         IF Y2 NOT = XX-2
            DISPLAY "Test 2 '" Y2 "'"
            END-DISPLAY
         END-IF
         IF ADDRESS OF Y2 NOT = P-XX-2
            DISPLAY "NOK"
         END-IF
         STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7093: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:7093"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7093"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7094: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7094"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7094"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_795
#AT_START_796
at_fn_group_banner 796 'run_misc.at:7099' \
  "CALL RETURNING POINTER" "                         " 4
at_xfail=no
(
  $as_echo "796. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.

       data division.
       working-storage section.

       01  c-text-pointer usage pointer.

       procedure division.

           call static "cob_getenv"
                       using "COB_UNIX_LF"
                       returning c-text-pointer
           end-call

           IF function content-of(c-text-pointer) <> "1"
              DISPLAY "unexpected value: "
                      function content-of(c-text-pointer).

          GOBACK.
_ATEOF


cat >calldyn.c <<'_ATEOF'

#include <libcob.h>

/* wrapper function as C functions are not
   accessible without explicit loading on all systems */
COB_EXT_EXPORT char *
calldyn (unsigned char *env_name)
{
  return cob_getenv (env_name);
}
_ATEOF


cat >progdyn.cob <<'_ATEOF'

       identification division.
       program-id. progdyn.

       data division.
       working-storage section.

       01  c-text-pointer usage pointer.

       procedure division.

           call        "calldyn"
                       using "COB_UNIX_LF"
                       returning c-text-pointer
           end-call

           IF function content-of(c-text-pointer) <> "1"
              DISPLAY "unexpected value: "
                      function content-of(c-text-pointer).

          GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7160: \$COMPILE -fno-gen-c-decl-static-call prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-gen-c-decl-static-call prog.cob" "run_misc.at:7160"
( $at_check_trace; $COMPILE -fno-gen-c-decl-static-call prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7160"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7161: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7161"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7161"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7162: \$COMPILE_MODULE calldyn.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE calldyn.c" "run_misc.at:7162"
( $at_check_trace; $COMPILE_MODULE calldyn.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7162"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7163: \$COMPILE progdyn.cob"
at_fn_check_prepare_dynamic "$COMPILE progdyn.cob" "run_misc.at:7163"
( $at_check_trace; $COMPILE progdyn.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7163"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7164: \$COBCRUN_DIRECT ./progdyn"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progdyn" "run_misc.at:7164"
( $at_check_trace; $COBCRUN_DIRECT ./progdyn
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7164"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_796
#AT_START_797
at_fn_group_banner 797 'run_misc.at:7169' \
  "ON EXCEPTION clause of DISPLAY" "                 " 4
at_xfail=no
(
  $as_echo "797. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/run_misc.at:7172: test \"\$COB_HAS_CURSES\" = \"yes\" || exit 77"
at_fn_check_prepare_dynamic "test \"$COB_HAS_CURSES\" = \"yes\" || exit 77" "run_misc.at:7172"
( $at_check_trace; test "$COB_HAS_CURSES" = "yes" || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7172"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       PROCEDURE DIVISION.
           DISPLAY "hello" AT COLUMN 500
               ON EXCEPTION
                   GOBACK RETURNING 0
               NOT ON EXCEPTION
                   GOBACK RETURNING 1
           END-DISPLAY
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7188: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:7188"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7188"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7189: COB_EXIT_WAIT=0 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_EXIT_WAIT=0 $COBCRUN_DIRECT ./prog" "run_misc.at:7189"
( $at_check_trace; COB_EXIT_WAIT=0 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7189"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_797
#AT_START_798
at_fn_group_banner 798 'run_misc.at:7194' \
  "EC-SCREEN-LINE-NUMBER and -STARTING-COLUMN" "     " 4
at_xfail=no
(
  $as_echo "798. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/run_misc.at:7197: test \"\$COB_HAS_CURSES\" = \"yes\" || exit 77"
at_fn_check_prepare_dynamic "test \"$COB_HAS_CURSES\" = \"yes\" || exit 77" "run_misc.at:7197"
( $at_check_trace; test "$COB_HAS_CURSES" = "yes" || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7197"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA           DIVISION.
       SCREEN         SECTION.
       01  invalid-line.
           03  a      VALUE "a" LINE 99999999.
       01  invalid-col.
           03  c      VALUE "c" COLUMN 99999999.

       PROCEDURE      DIVISION.
           DISPLAY invalid-line END-DISPLAY
           IF FUNCTION EXCEPTION-STATUS = "EC-SCREEN-LINE-NUMBER"
               CONTINUE
           ELSE
               GOBACK RETURNING 1
           END-IF

           DISPLAY invalid-col END-DISPLAY
           IF FUNCTION EXCEPTION-STATUS = "EC-SCREEN-STARTING-COLUMN"
               CONTINUE
           ELSE
               GOBACK RETURNING 2
           END-IF

           GOBACK RETURNING 0
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7229: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:7229"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7229"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7230: COB_EXIT_WAIT=0 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_EXIT_WAIT=0 $COBCRUN_DIRECT ./prog" "run_misc.at:7230"
( $at_check_trace; COB_EXIT_WAIT=0 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7230"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_798
#AT_START_799
at_fn_group_banner 799 'run_misc.at:7235' \
  "LINE/COLUMN 0 exceptions" "                       " 4
at_xfail=no
(
  $as_echo "799. $at_setup_line: testing $at_desc ..."
  $at_traceon



{ set +x
$as_echo "$at_srcdir/run_misc.at:7238: test \"\$COB_HAS_CURSES\" = \"yes\" || exit 77"
at_fn_check_prepare_dynamic "test \"$COB_HAS_CURSES\" = \"yes\" || exit 77" "run_misc.at:7238"
( $at_check_trace; test "$COB_HAS_CURSES" = "yes" || exit 77
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7238"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  zero-var PIC 9 VALUE 0.

       SCREEN SECTION.
       01  scr.
           03  VALUE "a".

       PROCEDURE DIVISION.
           DISPLAY scr AT LINE zero-var
           IF FUNCTION EXCEPTION-STATUS <> "EC-SCREEN-LINE-NUMBER"
               GOBACK RETURNING 1
           END-IF

           DISPLAY scr AT COLUMN zero-var
           IF FUNCTION EXCEPTION-STATUS <> "EC-SCREEN-STARTING-COLUMN"
               GOBACK RETURNING 2
           END-IF

           GOBACK RETURNING 0
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7267: \$COMPILE  -faccept-display-extensions=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE  -faccept-display-extensions=error prog.cob" "run_misc.at:7267"
( $at_check_trace; $COMPILE  -faccept-display-extensions=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7267"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7268: COB_EXIT_WAIT=0 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_EXIT_WAIT=0 $COBCRUN_DIRECT ./prog" "run_misc.at:7268"
( $at_check_trace; COB_EXIT_WAIT=0 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7268"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_799
#AT_START_800
at_fn_group_banner 800 'run_misc.at:7273' \
  "SET LAST EXCEPTION TO OFF" "                      " 4
at_xfail=no
(
  $as_echo "800. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9.

       PROCEDURE DIVISION.
           COMPUTE x = 10
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-LOCATION)
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-LOCATION)
           SET LAST EXCEPTION TO OFF
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-LOCATION)
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7296: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:7296"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7296"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7297: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7297"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "EC-SIZE-OVERFLOW
prog; ; 10
EC-SIZE-OVERFLOW
prog; ; 10


" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7297"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_800
#AT_START_801
at_fn_group_banner 801 'run_misc.at:7309' \
  "void PROCEDURE" "                                 " 4
at_xfail=no
(
  $as_echo "801. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       PROCEDURE        DIVISION RETURNING OMITTED.
           MOVE 42 TO RETURN-CODE
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "callee" RETURNING OMITTED
           END-CALL.
           DISPLAY RETURN-CODE WITH NO ADVANCING
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7331: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:7331"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7331"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7332: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:7332"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7332"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7333: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:7333"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+000000000" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7333"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_801
#AT_START_802
at_fn_group_banner 802 'run_misc.at:7338' \
  "Figurative constants to numeric field" "          " 4
at_xfail=no
(
  $as_echo "802. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  NUM9    PIC 9(6).
       PROCEDURE DIVISION.
           MOVE SPACES TO NUM9
           DISPLAY "NUM9 value SPACES is " NUM9 "." UPON SYSOUT
           MOVE LOW-VALUES TO NUM9
           IF NUM9 = LOW-VALUES
              DISPLAY "9(6) tests OK for LOW-VALUES" UPON SYSOUT
           ELSE
              DISPLAY "9(6) Does NOT test OK for LOW-VALUES"
                 UPON SYSOUT
              IF NUM9 = ZERO
                 DISPLAY "9(6) tests as ZERO instead of LOW-VALUES"
                    UPON SYSOUT
              END-IF
           END-IF.
           MOVE HIGH-VALUES TO NUM9
           IF NUM9 = HIGH-VALUES
              DISPLAY "9(6) tests OK for HIGH-VALUES" UPON SYSOUT
           ELSE
              DISPLAY "9(6) Does NOT test OK for HIGH-VALUES"
                 UPON SYSOUT
              IF NUM9 = ZERO
                 DISPLAY "9(6) tests as ZERO instead of HIGH-VALUES"
                    UPON SYSOUT
              END-IF
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7375: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_misc.at:7375"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: source is non-numeric - substituting zero
prog.cob:10: warning: source is non-numeric - substituting zero
prog.cob:21: warning: source is non-numeric - substituting zero
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7375"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:7381: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7381"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "NUM9 value SPACES is 000000.
9(6) Does NOT test OK for LOW-VALUES
9(6) tests as ZERO instead of LOW-VALUES
9(6) Does NOT test OK for HIGH-VALUES
9(6) tests as ZERO instead of HIGH-VALUES
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7381"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:7389: \$COMPILE -std=acu prog.cob -o aprog"
at_fn_check_prepare_dynamic "$COMPILE -std=acu prog.cob -o aprog" "run_misc.at:7389"
( $at_check_trace; $COMPILE -std=acu prog.cob -o aprog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7389"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:7391: \$COBCRUN_DIRECT ./aprog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./aprog" "run_misc.at:7391"
( $at_check_trace; $COBCRUN_DIRECT ./aprog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "NUM9 value SPACES is       .
9(6) tests OK for LOW-VALUES
9(6) tests OK for HIGH-VALUES
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7391"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_802
#AT_START_803
at_fn_group_banner 803 'run_misc.at:7400' \
  "MF FIGURATIVE to NUMERIC" "                       " 4
at_xfail=no
(
  $as_echo "803. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: This test will NOT work on EBCDIC machines,
#        either add it explicit here and split into two or add
#        a pre-test and check the expected "native" result

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  MYFLD        PIC 9(4) VALUE 96.
       01  BIGFLT       COMP-1 VALUE 543.12345E10.
       PROCEDURE        DIVISION.
       MAIN-1.
           DISPLAY "Initial value"
           PERFORM SHOW-IT.
           DISPLAY "MOVE BIGFLT"
           MOVE BIGFLT TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE SPACES"
           MOVE SPACES TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE LOW-VALUES"
           MOVE LOW-VALUES TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE HIGH-VALUES"
           MOVE HIGH-VALUES TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE QUOTE"
           MOVE QUOTE TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE ALL *"
           MOVE ALL '*' TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE ALL 0"
           MOVE ALL '0' TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE ALL 'A1'"
           MOVE ALL 'A1' TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE ALL '21'"
           MOVE ALL '21' TO MYFLD.
           PERFORM SHOW-IT.
           DISPLAY "MOVE HIGH-VALUES TO (1:)"
           MOVE HIGH-VALUES TO MYFLD (1:).
           PERFORM SHOW-IT.

           DISPLAY "MOVE HIGH-VALUES TO BIGFLT"
           MOVE HIGH-VALUES TO BIGFLT.
           PERFORM SHOW-BIG.
           CALL "dump" USING BIGFLT.
           DISPLAY "MOVE QUOTE TO BIGFLT"
           MOVE QUOTE TO BIGFLT.
           PERFORM SHOW-BIG.
           CALL "dump" USING BIGFLT.
           DISPLAY "MOVE ALL * TO BIGFLT"
           MOVE ALL '*' TO BIGFLT.
           PERFORM SHOW-BIG.
      *>   Note: the next results are dependant on endianess
      *>         therefore no dump here
           DISPLAY "MOVE ALL '21' TO BIGFLT"
           MOVE ALL '21' TO BIGFLT.
           PERFORM SHOW-BIG.
           STOP RUN.
       SHOW-IT.
           CALL "dump" USING MYFLD.
       SHOW-BIG.
           DISPLAY "BIGFLT is " BIGFLT.
_ATEOF


cat >cmod.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 4; i++)
    printf ("%02X", data[i]);
  puts (" .");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7487: \$COMPILE -std=mf -fno-move-non-numeric-lit-to-numeric-is-zero prog.cob cmod.c"
at_fn_check_prepare_dynamic "$COMPILE -std=mf -fno-move-non-numeric-lit-to-numeric-is-zero prog.cob cmod.c" "run_misc.at:7487"
( $at_check_trace; $COMPILE -std=mf -fno-move-non-numeric-lit-to-numeric-is-zero prog.cob cmod.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN-1':
prog.cob:28: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:34: warning: numeric value is expected
prog.cob:6: note: 'MYFLD' defined here as PIC 9(4)
prog.cob:52: warning: numeric value is expected
prog.cob:7: note: 'BIGFLT' defined here as USAGE FLOAT
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7487"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:7497: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7497"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Initial value
30303936 .
MOVE BIGFLT
38333034 .
MOVE SPACES
20202020 .
MOVE LOW-VALUES
00000000 .
MOVE HIGH-VALUES
FFFFFFFF .
MOVE QUOTE
22222222 .
MOVE ALL *
2A2A2A2A .
MOVE ALL 0
30303030 .
MOVE ALL 'A1'
41314131 .
MOVE ALL '21'
32313231 .
MOVE HIGH-VALUES TO (1:)
FFFFFFFF .
MOVE HIGH-VALUES TO BIGFLT
BIGFLT is NaN
FFFFFFFF .
MOVE QUOTE TO BIGFLT
BIGFLT is 2.1973164E-18
22222222 .
MOVE ALL * TO BIGFLT
BIGFLT is 5.4312347E+12
MOVE ALL '21' TO BIGFLT
BIGFLT is 2.1212121E+37
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7497"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_803
#AT_START_804
at_fn_group_banner 804 'run_misc.at:7535' \
  "CALL RETURNING" "                                 " 4
at_xfail=no
(
  $as_echo "804. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       PROCEDURE        DIVISION.
           MOVE 43 TO RETURN-CODE
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 my-display-return   PIC 99.
       77 my-binary-return    USAGE BINARY-LONG.
       PROCEDURE        DIVISION.
           CALL "callee" RETURNING my-display-return
           END-CALL
           IF RETURN-CODE NOT = 0
              DISPLAY '1 - unexpected RETURN-CODE: ' RETURN-CODE.
           IF my-display-return NOT = 43
              DISPLAY '1- unexpected RETURNING: ' my-display-return.
      *>
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7564: \$COMPILE -static caller.cob callee.cob -o prog"
at_fn_check_prepare_dynamic "$COMPILE -static caller.cob callee.cob -o prog" "run_misc.at:7564"
( $at_check_trace; $COMPILE -static caller.cob callee.cob -o prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7564"
$at_failed && at_fn_log_failure
$at_traceon; }

#AT_CHECK([$COBCRUN_DIRECT ./prog], [0], [], [])
{ set +x
$as_echo "$at_srcdir/run_misc.at:7566: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:7566"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7566"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7567: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:7567"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7567"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7568: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:7568"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7568"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_804
#AT_START_805
at_fn_group_banner 805 'run_misc.at:7574' \
  "void PROCEDURE, NOTHING return" "                 " 4
at_xfail=no
(
  $as_echo "805. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       PROCEDURE        DIVISION RETURNING OMITTED.
           MOVE 43 TO RETURN-CODE
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           MOVE 42 TO RETURN-CODE
           CALL "callee" RETURNING NOTHING
           END-CALL.
           IF RETURN-CODE NOT = 42
              DISPLAY 'unexpected RETURN-CODE: ' RETURN-CODE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7598: \$COMPILE -static caller.cob callee.cob -o prog"
at_fn_check_prepare_dynamic "$COMPILE -static caller.cob callee.cob -o prog" "run_misc.at:7598"
( $at_check_trace; $COMPILE -static caller.cob callee.cob -o prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7598"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7599: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:7599"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 42 $at_status "$at_srcdir/run_misc.at:7599"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7600: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_misc.at:7600"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7600"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7601: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:7601"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7601"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7602: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:7602"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 42 $at_status "$at_srcdir/run_misc.at:7602"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_805
#AT_START_806
at_fn_group_banner 806 'run_misc.at:7609' \
  "READY TRACE / RESET TRACE" "                      " 4
at_xfail=no
(
  $as_echo "806. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 ttab.
          03 tentries   PIC 9 VALUE 0.
          03 tentry     OCCURS 0 TO 5    DEPENDING ON tentries
                        ASCENDING KEY tkey INDEXED BY tidx.
             05 tkey    pic x(3).
       78 ZER  VALUE ZERO.
      *>
       PROCEDURE        DIVISION.
           READY TRACE
           MOVE 1 TO RETURN-CODE
           RESET TRACE
           CALL "callee1"
           END-CALL
           READY TRACE
           MOVE 2 TO RETURN-CODE
           CALL "callee1"
           END-CALL
           CALL "callee1"
           CANCEL "callee1"
           CALL "callrec"
           MOVE 0 TO RETURN-CODE
      *>
           SEARCH ALL tentry
              AT END
                 ADD  1    TO tentries
                 SET  tidx TO tentries
                 MOVE 'A'  TO tkey(tidx)
              WHEN tkey(tidx) = 'A'
                 DISPLAY '*Magic*'
           END-SEARCH
      *> tidx is still one, expect a direct find
           SEARCH tentry
              AT END
                 DISPLAY '*Dark Magic*'
              WHEN tkey(tidx) = 'A'
                 ADD  1    TO tentries
                 SET  tidx TO tentries
                 MOVE 'B'  TO tkey(tidx)
           END-SEARCH
      *> tidx is still two, expect end
           SEARCH tentry
              VARYING tidx
              AT END
                 ADD  1    TO tentries
                 SET  tidx TO tentries
                 MOVE 'C'  TO tkey(tidx)
              WHEN tkey(tidx) = ZER
                 DISPLAY '* Darker Magic *'
           END-SEARCH
           SEARCH ALL tentry
              AT END
                 DISPLAY 'NO COMMENT'
              WHEN tkey(tidx) = 'C'
                 CONTINUE
           END-SEARCH
           SEARCH ALL tentry
              WHEN tkey(tidx) = 'X'
                 CONTINUE
           END-SEARCH
      *>
           STOP RUN.
_ATEOF


cat >callee1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee1.
       PROCEDURE        DIVISION.
           ADD 1 TO RETURN-CODE
             NOT ON SIZE ERROR
               IF RETURN-CODE = 1
                 CONTINUE
               ELSE IF RETURN-CODE = 2
                 CONTINUE
               ELSE
                 CONTINUE
           .
           EVALUATE RETURN-CODE
           WHEN 1
             CONTINUE
           WHEN 2
           WHEN 3
             CONTINUE
           WHEN OTHER
             CONTINUE
           END-EVALUATE
           EVALUATE TRUE
           WHEN RETURN-CODE = 1
             CONTINUE
           WHEN RETURN-CODE = 2
           WHEN RETURN-CODE = 3
             CONTINUE
           WHEN OTHER
             CONTINUE
           END-EVALUATE
           CALL "callee2"  END-CALL
           CANCEL "callee2"  CALL "callee2b" END-CALL  CANCEL "callee2b"
           SUBTRACT 1 FROM RETURN-CODE
           EXIT PROGRAM.
_ATEOF


cat >callee2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2.
       PROCEDURE        DIVISION.
           COMPUTE RETURN-CODE
                 = 1 + 1
              ON SIZE ERROR
                 MOVE -1 TO RETURN-CODE
              NOT ON SIZE ERROR
                 COMPUTE RETURN-CODE
                       = 1 + 1
                 END-COMPUTE
           END-COMPUTE.
           CALL "callee2c" END-CALL
           CANCEL "callee2c"
           MOVE 0 TO RETURN-CODE.
           EXIT PROGRAM.
_ATEOF


cat >preload.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2b.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       DEC SECTION. USE EXCEPTION CONDITION EC-BOUNDS.
           DISPLAY "BADDY".
       END DECLARATIVES.
       SOME-SEC SECTION.
       SOME-PAR.
           PERFORM OTHER-SEC
           MOVE 0 TO RETURN-CODE.
       ENTRY "LEAVE-ME".
       END-PAR.
           EXIT PROGRAM.
       OTHER-SEC SECTION.
           COMPUTE RETURN-CODE = 1 + 2 END-COMPUTE.
       EX. EXIT.
_ATEOF


cat >preload2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callrec IS RECURSIVE.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 filler        PIC 9 VALUE 0.
          88 first-call VALUE 0.
          88 called     VALUE 1.
       PROCEDURE        DIVISION.
       SOME-SEC SECTION.
           IF first-call
              SET called TO TRUE
              CALL 'callrec'
           END-IF
           GOBACK.
_ATEOF


cat >callee2c.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee2c.
       PROCEDURE        DIVISION.
       SOME-SEC SECTION.
       SOME-PAR.
           PERFORM OTHER-SEC
           MOVE 0 TO RETURN-CODE.
       END-PAR.
           EXIT PROGRAM.
       OTHER-SEC SECTION.
           COMPUTE RETURN-CODE = 1 + 2.
       EX. EXIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:7790: COB_OLD_TRACE=y \\
\$COBC -ftraceall callee1.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:7790"
( $at_check_trace; COB_OLD_TRACE=y \
$COBC -ftraceall callee1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7790"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7792: COB_OLD_TRACE=y \\
\$COBC callee2.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:7792"
( $at_check_trace; COB_OLD_TRACE=y \
$COBC callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7792"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7794: COB_OLD_TRACE=y \\
\$COBC -ftrace -w preload.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:7794"
( $at_check_trace; COB_OLD_TRACE=y \
$COBC -ftrace -w preload.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7794"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7796: COB_OLD_TRACE=y \\
\$COBC -ftraceall preload2.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:7796"
( $at_check_trace; COB_OLD_TRACE=y \
$COBC -ftraceall preload2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7796"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7798: COB_OLD_TRACE=y \\
\$COBC -fsource-location callee2c.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:7798"
( $at_check_trace; COB_OLD_TRACE=y \
$COBC -fsource-location callee2c.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7798"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7800: COB_OLD_TRACE=y \\
\$COBC -x -o prog -ftraceall caller.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:7800"
( $at_check_trace; COB_OLD_TRACE=y \
$COBC -x -o prog -ftraceall caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7800"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7802: COB_PHYSICAL_CANCEL=1 COB_PRE_LOAD=\"preload\"\$PATHSEP\"preload2\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=1 COB_PRE_LOAD=\"preload\"$PATHSEP\"preload2\" $COBCRUN_DIRECT ./prog" "run_misc.at:7802"
( $at_check_trace; COB_PHYSICAL_CANCEL=1 COB_PRE_LOAD="preload"$PATHSEP"preload2" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "Source :    'caller.cob'
Program-Id: caller           Statement: MOVE                   Line: 15
Program-Id: caller           Statement: RESET TRACE            Line: 16
Program-Id: caller           Statement: MOVE                   Line: 20
Program-Id: caller           Statement: CALL                   Line: 21
Source:     'callee1.cob'
Program-Id: callee1          Entry:     callee1                Line: 5
Program-Id: callee1          Section:   (None)                 Line: 5
Program-Id: callee1          Paragraph: (None)                 Line: 5
Program-Id: callee1          Statement: ADD                    Line: 5
Program-Id: callee1          Statement: IF                     Line: 7
Program-Id: callee1          Statement: IF                     Line: 9
Program-Id: callee1          Statement: CONTINUE               Line: 12
Program-Id: callee1          Statement: EVALUATE               Line: 14
Program-Id: callee1          Statement: WHEN                   Line: 15
Program-Id: callee1          Statement: WHEN                   Line: 18
Program-Id: callee1          Statement: CONTINUE               Line: 21
Program-Id: callee1          Statement: EVALUATE               Line: 23
Program-Id: callee1          Statement: WHEN                   Line: 24
Program-Id: callee1          Statement: WHEN                   Line: 27
Program-Id: callee1          Statement: CONTINUE               Line: 30
Program-Id: callee1          Statement: CALL                   Line: 32
Source :    'callee2c.cob'
Program-Id: callee2c         Statement: PERFORM                Line: 7
Program-Id: callee2c         Statement: COMPUTE                Line: 12
Program-Id: callee2c         Statement: EXIT                   Line: 13
Program-Id: callee2c         Statement: MOVE                   Line: 8
Program-Id: callee2c         Statement: EXIT PROGRAM           Line: 10
Source :    'callee1.cob'
Program-Id: callee1          Statement: CANCEL                 Line: 33
Program-Id: callee1          Statement: CALL                   Line: 33
Source:     'preload.cob'
Program-Id: callee2b         Entry:     callee2b               Line: 8
Program-Id: callee2b         Section:   SOME-SEC               Line: 9
Program-Id: callee2b         Paragraph: SOME-PAR               Line: 10
Program-Id: callee2b         Section:   OTHER-SEC              Line: 16
Program-Id: callee2b         Paragraph: (None)                 Line: 16
Program-Id: callee2b         Paragraph: EX                     Line: 18
Program-Id: callee2b         Entry:     LEAVE-ME               Line: 13
Program-Id: callee2b         Paragraph: END-PAR                Line: 14
Program-Id: callee2b         Exit:      callee2b
Source :    'callee1.cob'
Program-Id: callee1          Statement: CANCEL                 Line: 33
Program-Id: callee1          Statement: SUBTRACT               Line: 34
Program-Id: callee1          Statement: EXIT PROGRAM           Line: 35
Program-Id: callee1          Exit:      callee1                Line: 35
Source :    'caller.cob'
Program-Id: caller           Statement: CALL                   Line: 23
Source:     'callee1.cob'
Program-Id: callee1          Entry:     callee1                Line: 5
Program-Id: callee1          Section:   (None)                 Line: 5
Program-Id: callee1          Paragraph: (None)                 Line: 5
Program-Id: callee1          Statement: ADD                    Line: 5
Program-Id: callee1          Statement: IF                     Line: 7
Program-Id: callee1          Statement: IF                     Line: 9
Program-Id: callee1          Statement: CONTINUE               Line: 12
Program-Id: callee1          Statement: EVALUATE               Line: 14
Program-Id: callee1          Statement: WHEN                   Line: 15
Program-Id: callee1          Statement: WHEN                   Line: 18
Program-Id: callee1          Statement: CONTINUE               Line: 21
Program-Id: callee1          Statement: EVALUATE               Line: 23
Program-Id: callee1          Statement: WHEN                   Line: 24
Program-Id: callee1          Statement: WHEN                   Line: 27
Program-Id: callee1          Statement: CONTINUE               Line: 30
Program-Id: callee1          Statement: CALL                   Line: 32
Source :    'callee2c.cob'
Program-Id: callee2c         Statement: PERFORM                Line: 7
Program-Id: callee2c         Statement: COMPUTE                Line: 12
Program-Id: callee2c         Statement: EXIT                   Line: 13
Program-Id: callee2c         Statement: MOVE                   Line: 8
Program-Id: callee2c         Statement: EXIT PROGRAM           Line: 10
Source :    'callee1.cob'
Program-Id: callee1          Statement: CANCEL                 Line: 33
Program-Id: callee1          Statement: CALL                   Line: 33
Source:     'preload.cob'
Program-Id: callee2b         Entry:     callee2b               Line: 8
Program-Id: callee2b         Section:   SOME-SEC               Line: 9
Program-Id: callee2b         Paragraph: SOME-PAR               Line: 10
Program-Id: callee2b         Section:   OTHER-SEC              Line: 16
Program-Id: callee2b         Paragraph: (None)                 Line: 16
Program-Id: callee2b         Paragraph: EX                     Line: 18
Program-Id: callee2b         Entry:     LEAVE-ME               Line: 13
Program-Id: callee2b         Paragraph: END-PAR                Line: 14
Program-Id: callee2b         Exit:      callee2b
Source :    'callee1.cob'
Program-Id: callee1          Statement: CANCEL                 Line: 33
Program-Id: callee1          Statement: SUBTRACT               Line: 34
Program-Id: callee1          Statement: EXIT PROGRAM           Line: 35
Program-Id: callee1          Exit:      callee1                Line: 35
Source :    'caller.cob'
Program-Id: caller           Statement: CANCEL                 Line: 24
Program-Id: caller           Statement: CALL                   Line: 25
Source:     'preload2.cob'
Program-Id: callrec          Entry:     callrec                Line: 10
Program-Id: callrec          Section:   SOME-SEC               Line: 10
Program-Id: callrec          Paragraph: (None)                 Line: 10
Program-Id: callrec          Statement: IF                     Line: 11
Program-Id: callrec          Statement: SET                    Line: 12
Program-Id: callrec          Statement: CALL                   Line: 13
Program-Id: callrec          Entry:     callrec                Line: 10
Program-Id: callrec          Section:   SOME-SEC               Line: 10
Program-Id: callrec          Paragraph: (None)                 Line: 10
Program-Id: callrec          Statement: IF                     Line: 11
Program-Id: callrec          Statement: GOBACK                 Line: 15
Program-Id: callrec          Exit:      callrec                Line: 15
Program-Id: callrec          Statement: GOBACK                 Line: 15
Program-Id: callrec          Exit:      callrec                Line: 15
Source :    'caller.cob'
Program-Id: caller           Statement: MOVE                   Line: 26
Program-Id: caller           Statement: SEARCH ALL             Line: 28
Program-Id: caller           Statement: AT END                 Line: 29
Program-Id: caller           Statement: ADD                    Line: 30
Program-Id: caller           Statement: SET                    Line: 31
Program-Id: caller           Statement: MOVE                   Line: 32
Program-Id: caller           Statement: SEARCH                 Line: 37
Program-Id: caller           Statement: WHEN                   Line: 40
Program-Id: caller           Statement: ADD                    Line: 41
Program-Id: caller           Statement: SET                    Line: 42
Program-Id: caller           Statement: MOVE                   Line: 43
Program-Id: caller           Statement: SEARCH                 Line: 46
Program-Id: caller           Statement: WHEN                   Line: 52
Program-Id: caller           Statement: SEARCH VARYING         Line: 47
Program-Id: caller           Statement: AT END                 Line: 48
Program-Id: caller           Statement: ADD                    Line: 49
Program-Id: caller           Statement: SET                    Line: 50
Program-Id: caller           Statement: MOVE                   Line: 51
Program-Id: caller           Statement: SEARCH ALL             Line: 55
Program-Id: caller           Statement: WHEN                   Line: 58
Program-Id: caller           Statement: CONTINUE               Line: 59
Program-Id: caller           Statement: SEARCH ALL             Line: 61
Program-Id: caller           Statement: AT END                 Line: 64
Program-Id: caller           Statement: STOP RUN               Line: 66
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7802"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:7937: \$COBC -ftraceall callee1.cob"
at_fn_check_prepare_dynamic "$COBC -ftraceall callee1.cob" "run_misc.at:7937"
( $at_check_trace; $COBC -ftraceall callee1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7937"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7938: \$COBC callee2.cob"
at_fn_check_prepare_dynamic "$COBC callee2.cob" "run_misc.at:7938"
( $at_check_trace; $COBC callee2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7938"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7939: \$COBC -ftrace -w preload.cob"
at_fn_check_prepare_dynamic "$COBC -ftrace -w preload.cob" "run_misc.at:7939"
( $at_check_trace; $COBC -ftrace -w preload.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7939"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7940: \$COBC -ftraceall preload2.cob"
at_fn_check_prepare_dynamic "$COBC -ftraceall preload2.cob" "run_misc.at:7940"
( $at_check_trace; $COBC -ftraceall preload2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7940"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7941: \$COBC -fsource-location -w callee2c.cob"
at_fn_check_prepare_dynamic "$COBC -fsource-location -w callee2c.cob" "run_misc.at:7941"
( $at_check_trace; $COBC -fsource-location -w callee2c.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7941"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7942: \$COBC -x -o prog -ftraceall caller.cob"
at_fn_check_prepare_dynamic "$COBC -x -o prog -ftraceall caller.cob" "run_misc.at:7942"
( $at_check_trace; $COBC -x -o prog -ftraceall caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7942"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:7943: COB_PHYSICAL_CANCEL=1 COB_PRE_LOAD=\"preload\"\$PATHSEP\"preload2\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=1 COB_PRE_LOAD=\"preload\"$PATHSEP\"preload2\" $COBCRUN_DIRECT ./prog" "run_misc.at:7943"
( $at_check_trace; COB_PHYSICAL_CANCEL=1 COB_PRE_LOAD="preload"$PATHSEP"preload2" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "Source: 'caller.cob'
Program-Id:  caller
Program-Id:  caller                      MOVE                            Line:     15
Program-Id:  caller                      RESET TRACE                     Line:     16
Program-Id:  caller                      MOVE                            Line:     20
Program-Id:  caller                      CALL                            Line:     21
Source: 'callee1.cob'
Program-Id:  callee1
Program-Id:  callee1              Entry: callee1                         Line:      5
Program-Id:  callee1                     ADD                             Line:      5
Program-Id:  callee1                     IF                              Line:      7
Program-Id:  callee1                     IF                              Line:      9
Program-Id:  callee1                     CONTINUE                        Line:     12
Program-Id:  callee1                     EVALUATE                        Line:     14
Program-Id:  callee1                     WHEN                            Line:     15
Program-Id:  callee1                     WHEN                            Line:     18
Program-Id:  callee1                     CONTINUE                        Line:     21
Program-Id:  callee1                     EVALUATE                        Line:     23
Program-Id:  callee1                     WHEN                            Line:     24
Program-Id:  callee1                     WHEN                            Line:     27
Program-Id:  callee1                     CONTINUE                        Line:     30
Program-Id:  callee1                     CALL                            Line:     32
Program-Id:  callee1                     CANCEL                          Line:     33
Program-Id:  callee1                     CALL                            Line:     33
Source: 'preload.cob'
Program-Id:  callee2b
Program-Id:  callee2b             Entry: callee2b                        Line:      8
Program-Id:  callee2b           Section: SOME-SEC                        Line:      9
Program-Id:  callee2b         Paragraph: SOME-PAR                        Line:     10
Program-Id:  callee2b           Section: OTHER-SEC                       Line:     16
Program-Id:  callee2b         Paragraph: EX                              Line:     18
Program-Id:  callee2b             Entry: LEAVE-ME                        Line:     18
Program-Id:  callee2b         Paragraph: END-PAR                         Line:     14
Program-Id:  callee2b              Exit: callee2b                        Line:     14
Source: 'callee1.cob'
Program-Id:  callee1
Program-Id:  callee1                     CANCEL                          Line:     33
Program-Id:  callee1                     SUBTRACT                        Line:     34
Program-Id:  callee1                     EXIT PROGRAM                    Line:     35
Program-Id:  callee1               Exit: callee1                         Line:     35
Source: 'caller.cob'
Program-Id:  caller
Program-Id:  caller                      CALL                            Line:     23
Source: 'callee1.cob'
Program-Id:  callee1
Program-Id:  callee1              Entry: callee1                         Line:      5
Program-Id:  callee1                     ADD                             Line:      5
Program-Id:  callee1                     IF                              Line:      7
Program-Id:  callee1                     IF                              Line:      9
Program-Id:  callee1                     CONTINUE                        Line:     12
Program-Id:  callee1                     EVALUATE                        Line:     14
Program-Id:  callee1                     WHEN                            Line:     15
Program-Id:  callee1                     WHEN                            Line:     18
Program-Id:  callee1                     CONTINUE                        Line:     21
Program-Id:  callee1                     EVALUATE                        Line:     23
Program-Id:  callee1                     WHEN                            Line:     24
Program-Id:  callee1                     WHEN                            Line:     27
Program-Id:  callee1                     CONTINUE                        Line:     30
Program-Id:  callee1                     CALL                            Line:     32
Program-Id:  callee1                     CANCEL                          Line:     33
Program-Id:  callee1                     CALL                            Line:     33
Source: 'preload.cob'
Program-Id:  callee2b
Program-Id:  callee2b             Entry: callee2b                        Line:      8
Program-Id:  callee2b           Section: SOME-SEC                        Line:      9
Program-Id:  callee2b         Paragraph: SOME-PAR                        Line:     10
Program-Id:  callee2b           Section: OTHER-SEC                       Line:     16
Program-Id:  callee2b         Paragraph: EX                              Line:     18
Program-Id:  callee2b             Entry: LEAVE-ME                        Line:     18
Program-Id:  callee2b         Paragraph: END-PAR                         Line:     14
Program-Id:  callee2b              Exit: callee2b                        Line:     14
Source: 'callee1.cob'
Program-Id:  callee1
Program-Id:  callee1                     CANCEL                          Line:     33
Program-Id:  callee1                     SUBTRACT                        Line:     34
Program-Id:  callee1                     EXIT PROGRAM                    Line:     35
Program-Id:  callee1               Exit: callee1                         Line:     35
Source: 'caller.cob'
Program-Id:  caller
Program-Id:  caller                      CANCEL                          Line:     24
Program-Id:  caller                      CALL                            Line:     25
Source: 'preload2.cob'
Program-Id:  callrec
Program-Id:  callrec              Entry: callrec                         Line:     10
Program-Id:  callrec            Section: SOME-SEC                        Line:     10
Program-Id:  callrec                     IF                              Line:     11
Program-Id:  callrec                     SET                             Line:     12
Program-Id:  callrec                     CALL                            Line:     13
Program-Id:  callrec              Entry: callrec                         Line:     10
Program-Id:  callrec            Section: SOME-SEC                        Line:     10
Program-Id:  callrec                     IF                              Line:     11
Program-Id:  callrec                     GOBACK                          Line:     15
Program-Id:  callrec               Exit: callrec                         Line:     15
Program-Id:  callrec                     GOBACK                          Line:     15
Program-Id:  callrec               Exit: callrec                         Line:     15
Source: 'caller.cob'
Program-Id:  caller
Program-Id:  caller                      MOVE                            Line:     26
Program-Id:  caller                      SEARCH ALL                      Line:     28
Program-Id:  caller                      AT END                          Line:     29
Program-Id:  caller                      ADD                             Line:     30
Program-Id:  caller                      SET                             Line:     31
Program-Id:  caller                      MOVE                            Line:     32
Program-Id:  caller                      SEARCH                          Line:     37
Program-Id:  caller                      WHEN                            Line:     40
Program-Id:  caller                      ADD                             Line:     41
Program-Id:  caller                      SET                             Line:     42
Program-Id:  caller                      MOVE                            Line:     43
Program-Id:  caller                      SEARCH                          Line:     46
Program-Id:  caller                      WHEN                            Line:     52
Program-Id:  caller                      SEARCH VARYING                  Line:     47
Program-Id:  caller                      AT END                          Line:     48
Program-Id:  caller                      ADD                             Line:     49
Program-Id:  caller                      SET                             Line:     50
Program-Id:  caller                      MOVE                            Line:     51
Program-Id:  caller                      SEARCH ALL                      Line:     55
Program-Id:  caller                      SEARCH VARYING                  Line:     55
Program-Id:  caller                      SEARCH VARYING                  Line:     55
Program-Id:  caller                      WHEN                            Line:     58
Program-Id:  caller                      CONTINUE                        Line:     59
Program-Id:  caller                      SEARCH ALL                      Line:     61
Program-Id:  caller                      SEARCH VARYING                  Line:     61
Program-Id:  caller                      SEARCH VARYING                  Line:     61
Program-Id:  caller                      AT END                          Line:     64
Program-Id:  caller                      STOP RUN                        Line:     66
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:7943"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_806
#AT_START_807
at_fn_group_banner 807 'run_misc.at:8074' \
  "Trace feature with subroutine" "                  " 4
at_xfail=no
(
  $as_echo "807. $at_setup_line: testing $at_desc ..."
  $at_traceon

#AT_KEYWORDS([Trace])

# FIXME: check if the one above is enough and either
#        remove this test or exchange by a non-IDX version
$as_echo "run_misc.at:8079" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_misc.at:8079"

cat >callsub.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. callsub.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 NUM-A     PIC 9(3) VALUE 399.
       01 NUM-B     PIC 9(3) VALUE 211.
       01 RSLT      PIC 9(5)V99.

       LINKAGE SECTION.
       01  n PIC 99.

       PROCEDURE DIVISION USING n.
       MAIN-10.
           ADD 1 TO n.
           COMPUTE RSLT = ((NUM-A / (100.55 + -0.550))
                         -  (NUM-B / (10.11 * 10 - 1.1)))
                             * (220 / 2.2) * n.
       END PROGRAM callsub.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:8103: \$COMPILE_MODULE callsub.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callsub.cob" "run_misc.at:8103"
( $at_check_trace; $COMPILE_MODULE callsub.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:8103"
$at_failed && at_fn_log_failure
$at_traceon; }



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL TSPFILE
           ASSIGN TO "testisam"
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS CM-CUST-NUM
           ALTERNATE RECORD KEY IS CM-TELEPHONE WITH DUPLICATES
           ALTERNATE RECORD KEY IS CM-DISK WITH DUPLICATES
           FILE STATUS IS CUST-STAT.

           SELECT TSTFILE
           ASSIGN TO "testisam"
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS TS-CUST-NUM
           ALTERNATE RECORD KEY IS TS-TELEPHONE WITH DUPLICATES
           ALTERNATE RECORD KEY IS TS-DISK WITH DUPLICATES
           FILE STATUS IS CUST-STAT.

           SELECT FLATFILE
           ASSIGN EXTERNAL RELFIX
           ORGANIZATION RELATIVE
           ACCESS IS RANDOM RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

       DATA  DIVISION.
       FILE SECTION.
       FD  TSPFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           05  TSPFL-REC.
           10  CM-CUST-NUM.
             15  CM-CUST-PRE                   PICTURE X(3).
             15  CM-CUST-NNN                   PICTURE X(5).
           10  CM-STATUS                       PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-ADDRESS-1                    PICTURE X(25).
           10  CM-ADDRESS-2                    PICTURE X(25).
           10  CM-ADDRESS-3                    PICTURE X(25).
           10  CM-TELEPHONE                    PICTURE 9(10).
           10  CM-DP-MGR                       PICTURE X(25).
           10  CM-MACHINE                      PICTURE X(8).
           10  CM-MEMORY                       PICTURE X(4).
           10  CM-DISK                         PICTURE X(8).
           10  CM-TAPE                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).

       FD  TSTFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSTFL-RECORD.
           05  TSTFL-REC.
           10  TS-CUST-NUM                     PICTURE X(8).
           10  TS-STATUS                       PICTURE X.
           10  TS-COMPANY                      PICTURE X(25).
           10  TS-ADDRESS-1                    PICTURE X(25).
           10  TS-ADDRESS-2                    PICTURE X(25).
           10  TS-ADDRESS-3                    PICTURE X(25).
           10  TS-TELEPHONE                    PICTURE 9(10).
           10  TS-DP-MGR                       PICTURE X(25).
           10  TS-MACHINE                      PICTURE X(8).
           10  TS-MEMORY                       PICTURE X(4).
           10  TS-DISK                         PICTURE X(8).
           10  TS-TAPE                         PICTURE X(8).

       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSP2-RECORD.
           10  C2-CUST-NUM                     PICTURE X(8).
           10  C2-COMPANY                      PICTURE X(25).
           10  C2-DISK                         PICTURE X(8).
           10  C2-NO-TERMINALS                 PICTURE 9(4) COMP-4.
           10  C2-PK-DATE                      PICTURE S9(14) COMP-3.

       WORKING-STORAGE SECTION.

       01  CUST-STAT.
           05  FILLER PICTURE XX.
       77  MAX-SUB           VALUE  16         PICTURE 9(5) COMP SYNC.
       77  CALL-NUM          VALUE  00         PICTURE 99.

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GIB00000".
           05  FILLER PIC X(8) VALUE "H&J00000".
           05  FILLER PIC X(8) VALUE "INC00000".
           05  FILLER PIC X(8) VALUE "JOH00000".
           05  FILLER PIC X(8) VALUE "KON00000".
           05  FILLER PIC X(8) VALUE "LEW00000".
           05  FILLER PIC X(8) VALUE "MOR00000".
           05  FILLER PIC X(8) VALUE "NEW00000".
           05  FILLER PIC X(8) VALUE "OLD00000".
           05  FILLER PIC X(8) VALUE "PRE00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS 16.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GIBRALTER LIFE INSURANCE ".
           05  FILLER PIC X(25) VALUE "H & J PLUMBING SUPPLIES  ".
           05  FILLER PIC X(25) VALUE "INCREMENTAL BACKUP CORP. ".
           05  FILLER PIC X(25) VALUE "JOHNSON BOATING SUPPLIES ".
           05  FILLER PIC X(25) VALUE "KONFLAB PLASTIC PRODUCTS.".
           05  FILLER PIC X(25) VALUE "LEWISTON GRAPHICS LTD.   ".
           05  FILLER PIC X(25) VALUE "MORNINGSIDE CARPENTRY.   ".
           05  FILLER PIC X(25) VALUE "NEW WAVE SURF SHOPS INC. ".
           05  FILLER PIC X(25) VALUE "OLD TYME PIZZA MFG. CO.  ".
           05  FILLER PIC X(25) VALUE "PRESTIGE OFFICE FURNITURE".

         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS 16.
         02  DATA-ADDRESS-1-TBL.

           05  FILLER PIC X(25) VALUE "123 MAIN STREET          ".
           05  FILLER PIC X(25) VALUE "1090 2ND AVE. WEST       ".
           05  FILLER PIC X(25) VALUE "1401 JEFFERSON BLVD.     ".
           05  FILLER PIC X(25) VALUE "1620 ARIZONA WAY         ".
           05  FILLER PIC X(25) VALUE "1184 EAST FIRST STREET   ".
           05  FILLER PIC X(25) VALUE "114 JOHN F. KENNEDY AVE. ".
           05  FILLER PIC X(25) VALUE "650 LIBERTY CRESCENT     ".
           05  FILLER PIC X(25) VALUE "77 SUNSET BLVD.          ".
           05  FILLER PIC X(25) VALUE "10908 SANTA MONICA BLVD. ".
           05  FILLER PIC X(25) VALUE "1134 PARIS ROAD          ".
           05  FILLER PIC X(25) VALUE "808 NORTHWEST MAIN ST.   ".
           05  FILLER PIC X(25) VALUE "9904 QUEEN STREET        ".
           05  FILLER PIC X(25) VALUE "1709 DUNDAS CRESCENT W.  ".
           05  FILLER PIC X(25) VALUE "3240 MARIS AVENUE        ".
           05  FILLER PIC X(25) VALUE "1705 WISCONSIN ROAD      ".
           05  FILLER PIC X(25) VALUE "114A MAPLE GROVE         ".

         02  DATA-ADDRESS-1 REDEFINES DATA-ADDRESS-1-TBL
                                       PIC X(25) OCCURS 16.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "SAN DIEGO ".
           05  FILLER PIC X(10) VALUE "LOS RIOS  ".
           05  FILLER PIC X(10) VALUE "MADISON   ".
           05  FILLER PIC X(10) VALUE "WILBUR    ".
           05  FILLER PIC X(10) VALUE "TOPEKA    ".
           05  FILLER PIC X(10) VALUE "SEATTLE   ".
           05  FILLER PIC X(10) VALUE "NEW JERSEY".
           05  FILLER PIC X(10) VALUE "FORT WAYNE".
           05  FILLER PIC X(10) VALUE "COLUMBUS  ".
           05  FILLER PIC X(10) VALUE "RICHMOND  ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS-2 REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS 16.
         02  DATA-ADDRESS-3-TBL.

           05  FILLER PIC X(10) VALUE "N.Y.      ".
           05  FILLER PIC X(10) VALUE "GEORGIA   ".
           05  FILLER PIC X(10) VALUE "D.C.      ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CALIFORNIA".
           05  FILLER PIC X(10) VALUE "NEW MEXICO".
           05  FILLER PIC X(10) VALUE "WISCONSIN ".
           05  FILLER PIC X(10) VALUE "DELAWARE  ".
           05  FILLER PIC X(10) VALUE "KANSAS    ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "N.J.      ".
           05  FILLER PIC X(10) VALUE "COLORADO  ".
           05  FILLER PIC X(10) VALUE "OHIO      ".
           05  FILLER PIC X(10) VALUE "VIRGINIA  ".
           05  FILLER PIC X(10) VALUE "N.Y.      ".

         02  DATA-ADDRESS-3 REDEFINES DATA-ADDRESS-3-TBL
                                       PIC X(10) OCCURS 16.
         02  DATA-TELEPHONE-TBL.

           05  FILLER PIC 9(10) VALUE 3131234432.
           05  FILLER PIC 9(10) VALUE 4082938498.
           05  FILLER PIC 9(10) VALUE 8372487274.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 5292398745.
           05  FILLER PIC 9(10) VALUE 8009329492.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 6546456333.
           05  FILLER PIC 9(10) VALUE 3455445444.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 7456434355.
           05  FILLER PIC 9(10) VALUE 6554456433.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 7534587453.
           05  FILLER PIC 9(10) VALUE 8787458374.
           05  FILLER PIC 9(10) VALUE 4169898509.

         02  DATA-TELEPHONE REDEFINES DATA-TELEPHONE-TBL
                                       PIC 9(10) OCCURS 16.
         02  DATA-DP-MGR-TBL.

           05  FILLER PIC X(20) VALUE "MR. DAVE HARRIS     ".
           05  FILLER PIC X(20) VALUE "MS. JANICE SILCOX   ".
           05  FILLER PIC X(20) VALUE "MR. ALLAN JONES     ".
           05  FILLER PIC X(20) VALUE "MR. PETER MACKAY    ".
           05  FILLER PIC X(20) VALUE "MRS. DONNA BREWER   ".
           05  FILLER PIC X(20) VALUE "MR. MICHAEL SMYTHE  ".
           05  FILLER PIC X(20) VALUE "MR. D.A. MORRISON   ".
           05  FILLER PIC X(20) VALUE "MR. BRIAN PATTERSON ".
           05  FILLER PIC X(20) VALUE "MR. DARRYL TOWNSEND ".
           05  FILLER PIC X(20) VALUE "MS. VALERIE HARPER  ".
           05  FILLER PIC X(20) VALUE "MR. FRED MILLER     ".
           05  FILLER PIC X(20) VALUE "MR. DONALD FISCHER  ".
           05  FILLER PIC X(20) VALUE "MR. STEVEN YOURDIN  ".
           05  FILLER PIC X(20) VALUE "MS. Goldie Hawn     ".
           05  FILLER PIC X(20) VALUE "MS. ALICE WINSTON   ".
           05  FILLER PIC X(20) VALUE "MR. THOMAS JEFFERSON".

         02  DATA-DP-MGR    REDEFINES DATA-DP-MGR-TBL
                                       PIC X(20) OCCURS 16.
         02  DATA-MACHINE-TBL.

           05  FILLER PIC X(8) VALUE "UNI-9030".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-80/3".
           05  FILLER PIC X(8) VALUE "UNI-80/5".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-9040".

         02  DATA-MACHINE   REDEFINES DATA-MACHINE-TBL
                                       PIC X(8) OCCURS 16.
         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 85.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 45.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 107.
           05  FILLER PIC 9(3) COMP-3 VALUE 67.
           05  FILLER PIC 9(3) COMP-3 VALUE 32.
           05  FILLER PIC 9(3) COMP-3 VALUE 16.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 128.
           05  FILLER PIC 9(3) COMP-3 VALUE 64.
           05  FILLER PIC 9(3) COMP-3 VALUE 110.
           05  FILLER PIC 9(3) COMP-3 VALUE 324.
           05  FILLER PIC 9(3) COMP-3 VALUE 124.
           05  FILLER PIC 9(3) COMP-3 VALUE 86.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS 16.

       01  WORK-AREA.
           05  REC-NUM                         PICTURE 9(6) VALUE 0.
           05  REC-MAX                         PICTURE 9(6) VALUE 10.
           05  SUB                             PICTURE 9(4) COMP SYNC.
               88  ODD-RECORD                  VALUE 1 3 5 7 9 10 11.

           05  TSPFL-KEY                       PICTURE X(8).

       PROCEDURE DIVISION.

       MAINFILE.
           OPEN OUTPUT TSPFILE
           CLOSE TSPFILE.

           OPEN I-O TSPFILE
           MOVE '99' TO CUST-STAT
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "10"
               DISPLAY "Error " CUST-STAT " on read of empty file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           MOVE LOW-VALUES                     TO TSPFL-RECORD.
           START TSPFILE KEY GREATER THAN CM-CUST-NUM
           IF CUST-STAT NOT = "23"
               DISPLAY "Error " CUST-STAT " starting empty file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "46"
               DISPLAY "Error " CUST-STAT " start/read of empty file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           DISPLAY "OK: Operations on empty file"
           CLOSE TSPFILE.

           PERFORM LOADFILE.
           PERFORM LISTFILE.



      *> check that multiple empty lines are handled correctly







           STOP RUN.

       LOADFILE.
           DISPLAY "Loading sample data file."
                            UPON CONSOLE.

           OPEN OUTPUT TSPFILE
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT
               " opening 'testisam' file" UPON CONSOLE
               STOP RUN
           END-IF.

           PERFORM 1000-LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample data file load complete."
                            UPON CONSOLE.
           CLOSE TSPFILE.

      *---------------------------------------------------------------*
      *         LOAD A RECORD FROM DATA TABLES                        *
      *---------------------------------------------------------------*

       1000-LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE CM-CUST-NUM                  TO TSPFL-KEY.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-ADDRESS-1     (SUB)     TO CM-ADDRESS-1.
           MOVE DATA-ADDRESS-2     (SUB)     TO CM-ADDRESS-2.
           MOVE DATA-ADDRESS-3     (SUB)     TO CM-ADDRESS-3.
           MOVE DATA-TELEPHONE     (SUB)     TO CM-TELEPHONE.
           MOVE DATA-DP-MGR        (SUB)     TO CM-DP-MGR.
           MOVE DATA-MACHINE       (SUB)     TO CM-MACHINE.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
               MOVE "1600 BPI"               TO CM-TAPE
               MOVE "1MEG"                   TO CM-MEMORY
           ELSE
               MOVE "8470"                   TO CM-DISK
               MOVE "6250 BPI"               TO CM-TAPE
               MOVE "3MEG"                   TO CM-MEMORY.

           WRITE TSPFL-RECORD.
           IF CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Load - Key: " TSPFL-KEY ", Status: " CUST-STAT
                                 UPON CONSOLE.

       LISTFILE.
           DISPLAY "LIST SAMPLE FILE" UPON CONSOLE.
           OPEN INPUT TSTFILE
           MOVE SPACES                       TO TSTFL-RECORD.
           MOVE "PRE00000" TO CM-CUST-NUM.
           START TSTFILE KEY GREATER THAN OR EQUAL TO TS-CUST-NUM
           READ  TSTFILE NEXT RECORD
           READ  TSTFILE NEXT RECORD
           CLOSE TSTFILE.

           MOVE ZERO TO REC-NUM
           OPEN INPUT TSPFILE
           IF CUST-STAT NOT = "00"
               DISPLAY "ERROR " CUST-STAT " OPENING INPUT FILE"
                                             UPON CONSOLE
               STOP RUN
           END-IF.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE "PRE00000" TO CM-CUST-NUM.
           START TSPFILE KEY GREATER THAN OR EQUAL TO CM-CUST-NUM
           READ  TSPFILE NEXT RECORD
           READ  TSPFILE NEXT RECORD

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE "DEL00000" TO CM-CUST-NUM.
           START TSPFILE KEY GREATER THAN CM-CUST-NUM
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"  *> no WITH AFTER for trace check
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               CALL "callsub" USING CALL-NUM
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
               END-READ
               ADD 1 TO REC-NUM
           END-PERFORM
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File: " CALL-NUM UPON CONSOLE
           ELSE
               DISPLAY "Stop read after: " CALL-NUM UPON CONSOLE
           END-IF.

           DISPLAY "LIST SAMPLE FILE DESCENDING" UPON CONSOLE.
           MOVE ZERO TO REC-NUM
           START TSPFILE KEY LESS THAN CM-CUST-NUM
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE PREVIOUS RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM  WITH TEST AFTER  UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               READ TSPFILE PREVIOUS RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
               END-READ
               ADD 1 TO REC-NUM
           END-PERFORM.

           CLOSE TSPFILE.

           OPEN I-O TSPFILE.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           MOVE 'X'                          TO CM-CUST-NUM (5:1).
           READ TSPFILE KEY IS CM-CUST-NUM
           IF  CUST-STAT NOT = "23"
               DISPLAY "Error " CUST-STAT " instead of 23."
                                UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (2)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on primary read ."
                                UPON CONSOLE
           ELSE
               DISPLAY "Got: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
           END-IF.
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on next read"
                                UPON CONSOLE
           ELSE
               DISPLAY "Nxt: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
           END-IF.
           MOVE DATA-TELEPHONE     (7)       TO CM-TELEPHONE.
           MOVE DATA-MACHINE       (7)       TO CM-MACHINE.
           READ TSPFILE KEY IS CM-TELEPHONE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 23"
                                UPON CONSOLE
           ELSE
               DISPLAY "Ky2: " CM-CUST-NUM " is " CM-COMPANY
                        " Mach=" CM-MACHINE "."
                         UPON CONSOLE
           END-IF.
           WRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "22"
               DISPLAY "Error " CUST-STAT " instead of 22"
                                UPON CONSOLE
           ELSE
               DISPLAY "  Write: " CM-CUST-NUM " got 22 as expected"
                         UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (3)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (3)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           DISPLAY "   Read: " CM-CUST-NUM " got "
                         CUST-STAT " as expected "
                         CM-NO-TERMINALS " terminals"
                         UPON CONSOLE.
           ADD 5 TO CM-NO-TERMINALS
           REWRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 00"
                                UPON CONSOLE
           ELSE

               DISPLAY "ReWrite: " CM-CUST-NUM " got "
                       CUST-STAT " as expected "
                       CM-NO-TERMINALS " terminals"
                       UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (2)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           DISPLAY "   Read: " CM-CUST-NUM " got "
                         CUST-STAT " as expected "
                         CM-NO-TERMINALS " terminals"
                         UPON CONSOLE.
           MOVE DATA-CUST-NUM      (3)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (3)       TO CM-COMPANY.
           REWRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "02"
           AND CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 00/02"
                                UPON CONSOLE
           ELSE
               DISPLAY "ReWrite: " CM-CUST-NUM " got "
                       "00/02 as expected"
                        UPON CONSOLE
           END-IF
           MOVE DATA-CUST-NUM      (6)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (6)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           MOVE DATA-TELEPHONE     (7)       TO CM-TELEPHONE.
           MOVE DATA-MACHINE       (7)       TO CM-MACHINE.
           REWRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "02"
           AND CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 00/02"
                                UPON CONSOLE
           ELSE
               DISPLAY "ReWrite: " CM-CUST-NUM " got "
                       "00/02 as expected"
                       UPON CONSOLE
           END-IF
           DELETE TSPFILE
           CLOSE TSPFILE.

       LOADFLAT.
           OPEN OUTPUT FLATFILE.
           PERFORM FLAT-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB
                             OR SUB > 5.
           CLOSE FLATFILE.
           OPEN INPUT FLATFILE.
           MOVE 3 TO REC-NUM
           READ FLATFILE
           MOVE 999 TO REC-NUM
           READ FLATFILE
           CLOSE FLATFILE.

       FLAT-RECORD.

           MOVE SPACES                       TO TSP2-RECORD.
           MOVE SUB                          TO REC-NUM.
           MOVE DATA-CUST-NUM      (SUB)     TO C2-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO C2-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO C2-NO-TERMINALS.
           MOVE 20070319                     TO C2-PK-DATE.
           IF  ODD-RECORD
               MOVE "8417"                   TO C2-DISK
           ELSE
               MOVE "8470"                   TO C2-DISK.
           WRITE TSP2-RECORD.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:8708: \$COMPILE -ftraceall prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -ftraceall prog.cob" "run_misc.at:8708"
( $at_check_trace; $COMPILE -ftraceall prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:8708"
$at_failed && at_fn_log_failure
$at_traceon; }


# first run without runtime tracing
{ set +x
$as_echo "$at_srcdir/run_misc.at:8711: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:8711"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK: Operations on empty file
Loading sample data file.
Sample data file load complete.
LIST SAMPLE FILE
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Stop read after: 11
LIST SAMPLE FILE DESCENDING
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Got: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Nxt: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=8470    .
Ky2: GIB00000 is GIBRALTER LIFE INSURANCE  Mach=UNI-80/6.
  Write: GIB00000 got 22 as expected
   Read: GAM00000 got 00 as expected 00075 terminals
ReWrite: GAM00000 got 00 as expected 00080 terminals
   Read: BET00000 got 00 as expected 00034 terminals
ReWrite: GAM00000 got 00/02 as expected
ReWrite: FOR00000 got 00/02 as expected
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:8711"
$at_failed && at_fn_log_failure
$at_traceon; }


# not merged yet:
#export COB_TRACE_IO=Y
#export IO_TSPFILE=trace
#export IO_TSTFILE=no-trace

{ set +x
$as_echo "$at_srcdir/run_misc.at:8756: COB_TRACE_FILE=trace.txt \\
COB_SET_TRACE=Y \\
COB_TRACE_FORMAT=\"Line: %L %S\" \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:8756"
( $at_check_trace; COB_TRACE_FILE=trace.txt \
COB_SET_TRACE=Y \
COB_TRACE_FORMAT="Line: %L %S" \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK: Operations on empty file
Loading sample data file.
Sample data file load complete.
LIST SAMPLE FILE
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Stop read after: 11
LIST SAMPLE FILE DESCENDING
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Got: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Nxt: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=8470    .
Ky2: GIB00000 is GIBRALTER LIFE INSURANCE  Mach=UNI-80/6.
  Write: GIB00000 got 22 as expected
   Read: GAM00000 got 00 as expected 00075 terminals
ReWrite: GAM00000 got 00 as expected 00080 terminals
   Read: BET00000 got 00 as expected 00034 terminals
ReWrite: GAM00000 got 00/02 as expected
ReWrite: FOR00000 got 00/02 as expected
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:8756"
$at_failed && at_fn_log_failure
$at_traceon; }





# variant with file trace:
#AT_DATA([reference],
#[Source: 'prog.cob'
#Program-Id:  prog
#Line:    292     Entry: prog
#Line:    292 Paragraph: MAINFILE
#Line:    293            OPEN
#           OPEN OUTPUT TSPFILE -> 'testisam' Status: 00
#Line:    294            CLOSE
#           CLOSE TSPFILE Status: 00
#Line:    296            OPEN
#           OPEN I_O TSPFILE -> 'testisam' Status: 00
#Line:    297            MOVE
#Line:    298            READ
#           READ Sequential TSPFILE Status: 10
#Line:    299            IF
#Line:    304            MOVE
#Line:    305            START
#           START TSPFILE Status: 23
#           Key : ALL LOW-VALUES
#Line:    306            IF
#Line:    311            READ
#           READ Sequential TSPFILE Status: 46
#Line:    312            IF
#Line:    317            DISPLAY
#Line:    318            CLOSE
#           CLOSE TSPFILE Status: 00
#Line:    320            PERFORM
#Line:    335 Paragraph: LOADFILE
#Line:    336            DISPLAY
#Line:    339            OPEN
#           OPEN OUTPUT TSPFILE -> 'testisam' Status: 00
#Line:    340            IF
#Line:    346            PERFORM
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 00
#        Record : 'ALP00000 ALPHA ELECTRICAL CO. LTD.123 MAIN STREET          NEW YORK             '
#                 '    N.Y.                     3131234432MR. DAVE HARRIS          UNI-90301MEG8417'
#                 '    1600 BPI00085'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 00
#        Record : 'BET00000 BETA SHOE MFG. INC.      1090 2ND AVE. WEST       ATLANTA              '
#                 '    GEORGIA                  4082938498MS. JANICE SILCOX        UNI-90403MEG8470'
#                 '    6250 BPI00034'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'GAM00000 GAMMA X-RAY TECHNOLOGY   1401 JEFFERSON BLVD.     WASHINGTON           '
#                 '    D.C.                     8372487274MR. ALLAN JONES          UNI-80/31MEG8417'
#                 '    1600 BPI00075'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'DEL00000 DELTA LUGGAGE REPAIRS    1620 ARIZONA WAY         TORONTO              '
#                 '    CANADA                   4169898509MR. PETER MACKAY         UNI-80/53MEG8470'
#                 '    6250 BPI00045'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'EPS00000 EPSILON EQUIPMENT SUPPLY 1184 EAST FIRST STREET   CALGARY              '
#                 '    CANADA                   5292398745MRS. DONNA BREWER        UNI-80/61MEG8417'
#                 '    1600 BPI00090'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'FOR00000 FORTUNE COOKIE COMPANY   114 JOHN F. KENNEDY AVE. SAN DIEGO            '
#                 '    CALIFORNIA               8009329492MR. MICHAEL SMYTHE       UNI-80/63MEG8470'
#                 '    6250 BPI00107'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'GIB00000 GIBRALTER LIFE INSURANCE 650 LIBERTY CRESCENT     LOS RIOS             '
#                 '    NEW MEXICO               6456445643MR. D.A. MORRISON        UNI-80/61MEG8417'
#                 '    1600 BPI00067'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'H&J00000 H & J PLUMBING SUPPLIES  77 SUNSET BLVD.          MADISON              '
#                 '    WISCONSIN                6546456333MR. BRIAN PATTERSON      UNI-80/83MEG8470'
#                 '    6250 BPI00032'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'INC00000 INCREMENTAL BACKUP CORP. 10908 SANTA MONICA BLVD. WILBUR               '
#                 '    DELAWARE                 3455445444MR. DARRYL TOWNSEND      UNI-80/81MEG8417'
#                 '    1600 BPI00016'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'JOH00000 JOHNSON BOATING SUPPLIES 1134 PARIS ROAD          TOPEKA               '
#                 '    KANSAS                   6456445643MS. VALERIE HARPER       UNI-80/81MEG8417'
#                 '    1600 BPI00034'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    373            MOVE
#Line:    374            MOVE
#Line:    375            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'KON00000 KONFLAB PLASTIC PRODUCTS.808 NORTHWEST MAIN ST.   SEATTLE              '
#                 '    WASHINGTON               7456434355MR. FRED MILLER          UNI-80/81MEG8417'
#                 '    1600 BPI00128'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'LEW00000 LEWISTON GRAPHICS LTD.   9904 QUEEN STREET        NEW JERSEY           '
#                 '    N.J.                     6554456433MR. DONALD FISCHER       UNI-80/83MEG8470'
#                 '    6250 BPI00064'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'MOR00000 MORNINGSIDE CARPENTRY.   1709 DUNDAS CRESCENT W.  FORT WAYNE           '
#                 '    COLORADO                 4169898509MR. STEVEN YOURDIN       UNI-80/83MEG8470'
#                 '    6250 BPI00110'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'NEW00000 NEW WAVE SURF SHOPS INC. 3240 MARIS AVENUE        COLUMBUS             '
#                 '    OHIO                     7534587453MS. Goldie Hawn          UNI-80/83MEG8470'
#                 '    6250 BPI00324'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'OLD00000 OLD TYME PIZZA MFG. CO.  1705 WISCONSIN ROAD      RICHMOND             '
#                 '    VIRGINIA                 8787458374MS. ALICE WINSTON        UNI-90403MEG8470'
#                 '    6250 BPI00124'
#Line:    382            IF
#Line:    358 Paragraph: 1000-LOAD-RECORD
#Line:    360            MOVE
#Line:    361            MOVE
#Line:    362            MOVE
#Line:    363            MOVE
#Line:    364            MOVE
#Line:    365            MOVE
#Line:    366            MOVE
#Line:    367            MOVE
#Line:    368            MOVE
#Line:    369            MOVE
#Line:    370            MOVE
#Line:    372            IF
#Line:    377            MOVE
#Line:    378            MOVE
#Line:    379            MOVE
#Line:    381            WRITE
#           WRITE TSPFILE Status: 02
#        Record : 'PRE00000 PRESTIGE OFFICE FURNITURE114A MAPLE GROVE         WHITEPLAIN           '
#                 '    N.Y.                     4169898509MR. THOMAS JEFFERSON     UNI-90403MEG8470'
#                 '    6250 BPI00086'
#Line:    382            IF
#Line:    350            DISPLAY
#Line:    352            CLOSE
#           CLOSE TSPFILE Status: 00
#Line:    321            PERFORM
#Line:    387 Paragraph: LISTFILE
#Line:    388            DISPLAY
#Line:    389            OPEN
#Line:    390            MOVE
#Line:    391            MOVE
#Line:    392            START
#Line:    393            READ
#Line:    394            READ
#Line:    395            CLOSE
#Line:    397            MOVE
#Line:    398            OPEN
#           OPEN INPUT TSPFILE -> 'testisam' Status: 00
#Line:    399            IF
#Line:    404            MOVE
#Line:    405            MOVE
#Line:    406            START
#           START TSPFILE Status: 00
#           Key : 'PRE00000'
#Line:    407            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'PRE00000 PRESTIGE OFFICE FURNITURE114A MAPLE GROVE         WHITEPLAIN           '
#                 '    N.Y.                     4169898509MR. THOMAS JEFFERSON     UNI-90403MEG8470'
#                 '    6250 BPI00086'
#Line:    408            READ
#           READ Sequential TSPFILE Status: 10
#Line:    410            MOVE
#Line:    411            MOVE
#Line:    412            START
#           START TSPFILE Status: 00
#           Key : 'DEL00000'
#Line:    413            IF
#Line:    418            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'EPS00000 EPSILON EQUIPMENT SUPPLY 1184 EAST FIRST STREET   CALGARY              '
#                 '    CANADA                   5292398745MRS. DONNA BREWER        UNI-80/61MEG8417'
#                 '    1600 BPI00090'
#Line:    419            IF
#Line:    424            PERFORM
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'FOR00000 FORTUNE COOKIE COMPANY   114 JOHN F. KENNEDY AVE. SAN DIEGO            '
#                 '    CALIFORNIA               8009329492MR. MICHAEL SMYTHE       UNI-80/63MEG8470'
#                 '    6250 BPI00107'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'GAM00000 GAMMA X-RAY TECHNOLOGY   1401 JEFFERSON BLVD.     WASHINGTON           '
#                 '    D.C.                     8372487274MR. ALLAN JONES          UNI-80/31MEG8417'
#                 '    1600 BPI00075'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'GIB00000 GIBRALTER LIFE INSURANCE 650 LIBERTY CRESCENT     LOS RIOS             '
#                 '    NEW MEXICO               6456445643MR. D.A. MORRISON        UNI-80/61MEG8417'
#                 '    1600 BPI00067'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'H&J00000 H & J PLUMBING SUPPLIES  77 SUNSET BLVD.          MADISON              '
#                 '    WISCONSIN                6546456333MR. BRIAN PATTERSON      UNI-80/83MEG8470'
#                 '    6250 BPI00032'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'INC00000 INCREMENTAL BACKUP CORP. 10908 SANTA MONICA BLVD. WILBUR               '
#                 '    DELAWARE                 3455445444MR. DARRYL TOWNSEND      UNI-80/81MEG8417'
#                 '    1600 BPI00016'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'JOH00000 JOHNSON BOATING SUPPLIES 1134 PARIS ROAD          TOPEKA               '
#                 '    KANSAS                   6456445643MS. VALERIE HARPER       UNI-80/81MEG8417'
#                 '    1600 BPI00034'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'KON00000 KONFLAB PLASTIC PRODUCTS.808 NORTHWEST MAIN ST.   SEATTLE              '
#                 '    WASHINGTON               7456434355MR. FRED MILLER          UNI-80/81MEG8417'
#                 '    1600 BPI00128'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'LEW00000 LEWISTON GRAPHICS LTD.   9904 QUEEN STREET        NEW JERSEY           '
#                 '    N.J.                     6554456433MR. DONALD FISCHER       UNI-80/83MEG8470'
#                 '    6250 BPI00064'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'MOR00000 MORNINGSIDE CARPENTRY.   1709 DUNDAS CRESCENT W.  FORT WAYNE           '
#                 '    COLORADO                 4169898509MR. STEVEN YOURDIN       UNI-80/83MEG8470'
#                 '    6250 BPI00110'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'NEW00000 NEW WAVE SURF SHOPS INC. 3240 MARIS AVENUE        COLUMBUS             '
#                 '    OHIO                     7534587453MS. Goldie Hawn          UNI-80/83MEG8470'
#                 '    6250 BPI00324'
#Line:    434            ADD
#Line:    426            DISPLAY
#Line:    429            CALL
#Line:    430            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'OLD00000 OLD TYME PIZZA MFG. CO.  1705 WISCONSIN ROAD      RICHMOND             '
#                 '    VIRGINIA                 8787458374MS. ALICE WINSTON        UNI-90403MEG8470'
#                 '    6250 BPI00124'
#Line:    434            ADD
#Line:    436            IF
#Line:    439            DISPLAY
#Line:    442            DISPLAY
#Line:    443            MOVE
#Line:    444            START
#           START TSPFILE Status: 00
#           Key : 'OLD00000'
#Line:    445            IF
#Line:    450            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'NEW00000 NEW WAVE SURF SHOPS INC. 3240 MARIS AVENUE        COLUMBUS             '
#                 '    OHIO                     7534587453MS. Goldie Hawn          UNI-80/83MEG8470'
#                 '    6250 BPI00324'
#Line:    451            IF
#Line:    456            PERFORM
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'MOR00000 MORNINGSIDE CARPENTRY.   1709 DUNDAS CRESCENT W.  FORT WAYNE           '
#                 '    COLORADO                 4169898509MR. STEVEN YOURDIN       UNI-80/83MEG8470'
#                 '    6250 BPI00110'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'LEW00000 LEWISTON GRAPHICS LTD.   9904 QUEEN STREET        NEW JERSEY           '
#                 '    N.J.                     6554456433MR. DONALD FISCHER       UNI-80/83MEG8470'
#                 '    6250 BPI00064'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'KON00000 KONFLAB PLASTIC PRODUCTS.808 NORTHWEST MAIN ST.   SEATTLE              '
#                 '    WASHINGTON               7456434355MR. FRED MILLER          UNI-80/81MEG8417'
#                 '    1600 BPI00128'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'JOH00000 JOHNSON BOATING SUPPLIES 1134 PARIS ROAD          TOPEKA               '
#                 '    KANSAS                   6456445643MS. VALERIE HARPER       UNI-80/81MEG8417'
#                 '    1600 BPI00034'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'INC00000 INCREMENTAL BACKUP CORP. 10908 SANTA MONICA BLVD. WILBUR               '
#                 '    DELAWARE                 3455445444MR. DARRYL TOWNSEND      UNI-80/81MEG8417'
#                 '    1600 BPI00016'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'H&J00000 H & J PLUMBING SUPPLIES  77 SUNSET BLVD.          MADISON              '
#                 '    WISCONSIN                6546456333MR. BRIAN PATTERSON      UNI-80/83MEG8470'
#                 '    6250 BPI00032'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'GIB00000 GIBRALTER LIFE INSURANCE 650 LIBERTY CRESCENT     LOS RIOS             '
#                 '    NEW MEXICO               6456445643MR. D.A. MORRISON        UNI-80/61MEG8417'
#                 '    1600 BPI00067'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'GAM00000 GAMMA X-RAY TECHNOLOGY   1401 JEFFERSON BLVD.     WASHINGTON           '
#                 '    D.C.                     8372487274MR. ALLAN JONES          UNI-80/31MEG8417'
#                 '    1600 BPI00075'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'FOR00000 FORTUNE COOKIE COMPANY   114 JOHN F. KENNEDY AVE. SAN DIEGO            '
#                 '    CALIFORNIA               8009329492MR. MICHAEL SMYTHE       UNI-80/63MEG8470'
#                 '    6250 BPI00107'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'EPS00000 EPSILON EQUIPMENT SUPPLY 1184 EAST FIRST STREET   CALGARY              '
#                 '    CANADA                   5292398745MRS. DONNA BREWER        UNI-80/61MEG8417'
#                 '    1600 BPI00090'
#Line:    465            ADD
#Line:    458            DISPLAY
#Line:    461            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'DEL00000 DELTA LUGGAGE REPAIRS    1620 ARIZONA WAY         TORONTO              '
#                 '    CANADA                   4169898509MR. PETER MACKAY         UNI-80/53MEG8470'
#                 '    6250 BPI00045'
#Line:    465            ADD
#Line:    468            CLOSE
#           CLOSE TSPFILE Status: 00
#Line:    470            OPEN
#           OPEN I_O TSPFILE -> 'testisam' Status: 00
#Line:    471            MOVE
#Line:    472            MOVE
#Line:    473            MOVE
#Line:    474            READ
#           READ TSPFILE Status: 23
#           Key : 'BET0X000'
#Line:    475            IF
#Line:    479            MOVE
#Line:    480            MOVE
#Line:    481            READ
#           READ TSPFILE Status: 00
#        Record : 'BET00000 BETA SHOE MFG. INC.      1090 2ND AVE. WEST       ATLANTA              '
#                 '    GEORGIA                  4082938498MS. JANICE SILCOX        UNI-90403MEG8470'
#                 '    6250 BPI00034'
#           Key : 'BET00000'
#Line:    482            IF
#Line:    486            DISPLAY
#Line:    490            READ
#           READ Sequential TSPFILE Status: 00
#        Record : 'DEL00000 DELTA LUGGAGE REPAIRS    1620 ARIZONA WAY         TORONTO              '
#                 '    CANADA                   4169898509MR. PETER MACKAY         UNI-80/53MEG8470'
#                 '    6250 BPI00045'
#Line:    491            IF
#Line:    495            DISPLAY
#Line:    499            MOVE
#Line:    500            MOVE
#Line:    501            READ
#           READ TSPFILE Status: 00
#        Record : 'GIB00000 GIBRALTER LIFE INSURANCE 650 LIBERTY CRESCENT     LOS RIOS             '
#                 '    NEW MEXICO               6456445643MR. D.A. MORRISON        UNI-80/61MEG8417'
#                 '    1600 BPI00067'
#           Key :  6456445643
#Line:    502            IF
#Line:    506            DISPLAY
#Line:    510            WRITE
#           WRITE TSPFILE Status: 22
#        Record : 'GIB00000 GIBRALTER LIFE INSURANCE 650 LIBERTY CRESCENT     LOS RIOS             '
#                 '    NEW MEXICO               6456445643MR. D.A. MORRISON        UNI-80/61MEG8417'
#                 '    1600 BPI00067'
#Line:    511            IF
#Line:    515            DISPLAY
#Line:    518            MOVE
#Line:    519            MOVE
#Line:    520            READ
#           READ TSPFILE Status: 00
#        Record : 'GAM00000 GAMMA X-RAY TECHNOLOGY   1401 JEFFERSON BLVD.     WASHINGTON           '
#                 '    D.C.                     8372487274MR. ALLAN JONES          UNI-80/31MEG8417'
#                 '    1600 BPI00075'
#           Key : 'GAM00000'
#Line:    521            DISPLAY
#Line:    525            ADD
#Line:    526            REWRITE
#           REWRITE TSPFILE Status: 00
#        Record : 'GAM00000 GAMMA X-RAY TECHNOLOGY   1401 JEFFERSON BLVD.     WASHINGTON           '
#                 '    D.C.                     8372487274MR. ALLAN JONES          UNI-80/31MEG8417'
#                 '    1600 BPI00080'
#Line:    527            IF
#Line:    532            DISPLAY
#Line:    537            MOVE
#Line:    538            MOVE
#Line:    539            READ
#           READ TSPFILE Status: 00
#        Record : 'BET00000 BETA SHOE MFG. INC.      1090 2ND AVE. WEST       ATLANTA              '
#                 '    GEORGIA                  4082938498MS. JANICE SILCOX        UNI-90403MEG8470'
#                 '    6250 BPI00034'
#           Key : 'BET00000'
#Line:    540            DISPLAY
#Line:    544            MOVE
#Line:    545            MOVE
#Line:    546            REWRITE
#           REWRITE TSPFILE Status: 02
#        Record : 'GAM00000 GAMMA X-RAY TECHNOLOGY   1090 2ND AVE. WEST       ATLANTA              '
#                 '    GEORGIA                  4082938498MS. JANICE SILCOX        UNI-90403MEG8470'
#                 '    6250 BPI00034'
#Line:    547            IF
#Line:    552            DISPLAY
#Line:    556            MOVE
#Line:    557            MOVE
#Line:    558            READ
#           READ TSPFILE Status: 00
#        Record : 'FOR00000 FORTUNE COOKIE COMPANY   114 JOHN F. KENNEDY AVE. SAN DIEGO            '
#                 '    CALIFORNIA               8009329492MR. MICHAEL SMYTHE       UNI-80/63MEG8470'
#                 '    6250 BPI00107'
#           Key : 'FOR00000'
#Line:    559            MOVE
#Line:    560            MOVE
#Line:    561            REWRITE
#           REWRITE TSPFILE Status: 02
#        Record : 'FOR00000 FORTUNE COOKIE COMPANY   114 JOHN F. KENNEDY AVE. SAN DIEGO            '
#                 '    CALIFORNIA               6456445643MR. MICHAEL SMYTHE       UNI-80/63MEG8470'
#                 '    6250 BPI00107'
#Line:    562            IF
#Line:    567            DISPLAY
#Line:    571            DELETE
#           DELETE TSPFILE Status: 00
#        Record : 'FOR00000 FORTUNE COOKIE COMPANY   114 JOHN F. KENNEDY AVE. SAN DIEGO            '
#                 '    CALIFORNIA               6456445643MR. MICHAEL SMYTHE       UNI-80/63MEG8470'
#                 '    6250 BPI00107'
#Line:    572            CLOSE
#           CLOSE TSPFILE Status: 00
#Line:    333            STOP RUN
#])

# variant without file trace


cat >reference <<'_ATEOF'
Source: 'prog.cob'
Program-Id:  prog
Line:    292     Entry: prog
Line:    292 Paragraph: MAINFILE
Line:    293            OPEN
Line:    294            CLOSE
Line:    296            OPEN
Line:    297            MOVE
Line:    298            READ
Line:    299            IF
Line:    304            MOVE
Line:    305            START
Line:    306            IF
Line:    311            READ
Line:    312            IF
Line:    317            DISPLAY
Line:    318            CLOSE
Line:    320            PERFORM
Line:    335 Paragraph: LOADFILE
Line:    336            DISPLAY
Line:    339            OPEN
Line:    340            IF
Line:    346            PERFORM
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    373            MOVE
Line:    374            MOVE
Line:    375            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    358 Paragraph: 1000-LOAD-RECORD
Line:    360            MOVE
Line:    361            MOVE
Line:    362            MOVE
Line:    363            MOVE
Line:    364            MOVE
Line:    365            MOVE
Line:    366            MOVE
Line:    367            MOVE
Line:    368            MOVE
Line:    369            MOVE
Line:    370            MOVE
Line:    372            IF
Line:    377            MOVE
Line:    378            MOVE
Line:    379            MOVE
Line:    381            WRITE
Line:    382            IF
Line:    347            VARYING
Line:    348            UNTIL
Line:    350            DISPLAY
Line:    352            CLOSE
Line:    321            PERFORM
Line:    387 Paragraph: LISTFILE
Line:    388            DISPLAY
Line:    389            OPEN
Line:    390            MOVE
Line:    391            MOVE
Line:    392            START
Line:    393            READ
Line:    394            READ
Line:    395            CLOSE
Line:    397            MOVE
Line:    398            OPEN
Line:    399            IF
Line:    404            MOVE
Line:    405            MOVE
Line:    406            START
Line:    407            READ
Line:    408            READ
Line:    410            MOVE
Line:    411            MOVE
Line:    412            START
Line:    413            IF
Line:    418            READ
Line:    419            IF
Line:    424            PERFORM
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    426            DISPLAY
Line:    429            CALL
Line:    430            READ
Line:    434            ADD
Line:    424            UNTIL
Line:    436            IF
Line:    439            DISPLAY
Line:    442            DISPLAY
Line:    443            MOVE
Line:    444            START
Line:    445            IF
Line:    450            READ
Line:    451            IF
Line:    456            PERFORM
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    458            DISPLAY
Line:    461            READ
Line:    465            ADD
Line:    456            UNTIL
Line:    468            CLOSE
Line:    470            OPEN
Line:    471            MOVE
Line:    472            MOVE
Line:    473            MOVE
Line:    474            READ
Line:    475            IF
Line:    479            MOVE
Line:    480            MOVE
Line:    481            READ
Line:    482            IF
Line:    486            DISPLAY
Line:    490            READ
Line:    491            IF
Line:    495            DISPLAY
Line:    499            MOVE
Line:    500            MOVE
Line:    501            READ
Line:    502            IF
Line:    506            DISPLAY
Line:    510            WRITE
Line:    511            IF
Line:    515            DISPLAY
Line:    518            MOVE
Line:    519            MOVE
Line:    520            READ
Line:    521            DISPLAY
Line:    525            ADD
Line:    526            REWRITE
Line:    527            IF
Line:    532            DISPLAY
Line:    537            MOVE
Line:    538            MOVE
Line:    539            READ
Line:    540            DISPLAY
Line:    544            MOVE
Line:    545            MOVE
Line:    546            REWRITE
Line:    547            IF
Line:    552            DISPLAY
Line:    556            MOVE
Line:    557            MOVE
Line:    558            READ
Line:    559            MOVE
Line:    560            MOVE
Line:    561            REWRITE
Line:    562            IF
Line:    567            DISPLAY
Line:    571            DELETE
Line:    572            CLOSE
Line:    333            STOP RUN
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:10054: diff reference trace.txt"
at_fn_check_prepare_trace "run_misc.at:10054"
( $at_check_trace; diff reference trace.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10054"
$at_failed && at_fn_log_failure  \
"trace.txt"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10056: \$COMPILE -ftrace prog.cob -o prog_s"
at_fn_check_prepare_dynamic "$COMPILE -ftrace prog.cob -o prog_s" "run_misc.at:10056"
( $at_check_trace; $COMPILE -ftrace prog.cob -o prog_s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10056"
$at_failed && at_fn_log_failure  \
"trace.txt"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10058: COB_TRACE_FILE=+trace_append.txt \\
COB_SET_TRACE=Y \\
COB_TRACE_FORMAT=\"%S and now ... %L\" \\
\$COBCRUN_DIRECT ./prog_s"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10058"
( $at_check_trace; COB_TRACE_FILE=+trace_append.txt \
COB_SET_TRACE=Y \
COB_TRACE_FORMAT="%S and now ... %L" \
$COBCRUN_DIRECT ./prog_s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK: Operations on empty file
Loading sample data file.
Sample data file load complete.
LIST SAMPLE FILE
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Stop read after: 11
LIST SAMPLE FILE DESCENDING
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Got: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Nxt: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=8470    .
Ky2: GIB00000 is GIBRALTER LIFE INSURANCE  Mach=UNI-80/6.
  Write: GIB00000 got 22 as expected
   Read: GAM00000 got 00 as expected 00075 terminals
ReWrite: GAM00000 got 00 as expected 00080 terminals
   Read: BET00000 got 00 as expected 00034 terminals
ReWrite: GAM00000 got 00/02 as expected
ReWrite: FOR00000 got 00/02 as expected
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10058"
$at_failed && at_fn_log_failure  \
"trace.txt"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10101: COB_TRACE_FILE=+trace_append.txt \\
COB_SET_TRACE=Y \\
COB_TRACE_FORMAT=\"%S - %L\" \\
\$COBCRUN_DIRECT ./prog_s"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10101"
( $at_check_trace; COB_TRACE_FILE=+trace_append.txt \
COB_SET_TRACE=Y \
COB_TRACE_FORMAT="%S - %L" \
$COBCRUN_DIRECT ./prog_s
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK: Operations on empty file
Loading sample data file.
Sample data file load complete.
LIST SAMPLE FILE
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Stop read after: 11
LIST SAMPLE FILE DESCENDING
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Got: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Nxt: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=8470    .
Ky2: GIB00000 is GIBRALTER LIFE INSURANCE  Mach=UNI-80/6.
  Write: GIB00000 got 22 as expected
   Read: GAM00000 got 00 as expected 00075 terminals
ReWrite: GAM00000 got 00 as expected 00080 terminals
   Read: BET00000 got 00 as expected 00034 terminals
ReWrite: GAM00000 got 00/02 as expected
ReWrite: FOR00000 got 00/02 as expected
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10101"
$at_failed && at_fn_log_failure  \
"trace.txt"
$at_traceon; }



cat >reference_append <<'_ATEOF'
Source: 'prog.cob'
Program-Id:  prog
    Entry: prog                            and now ...    292
Paragraph: MAINFILE                        and now ...    292
Paragraph: LOADFILE                        and now ...    335
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: 1000-LOAD-RECORD                and now ...    358
Paragraph: LISTFILE                        and now ...    387
Source: 'prog.cob'
Program-Id:  prog
    Entry: prog                            -    292
Paragraph: MAINFILE                        -    292
Paragraph: LOADFILE                        -    335
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: 1000-LOAD-RECORD                -    358
Paragraph: LISTFILE                        -    387
_ATEOF




{ set +x
$as_echo "$at_srcdir/run_misc.at:10194: diff reference_append trace_append.txt"
at_fn_check_prepare_trace "run_misc.at:10194"
( $at_check_trace; diff reference_append trace_append.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10194"
$at_failed && at_fn_log_failure  \
"trace.txt" \
"trace_append.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_807
#AT_START_808
at_fn_group_banner 808 'run_misc.at:10199' \
  "stack and dump feature" "                         " 4
at_xfail=no
(
  $as_echo "808. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >cpyabrt <<'_ATEOF'

            MOVE "Quick brown fox jumped over the dog"
              TO TSTTAILX (1:40).
            MOVE CM-COMPANY TO TSTTAILX (42:20).
      *     DISPLAY ':' X ':'.
      *     DISPLAY CM-COMPANY.
      *     DISPLAY '>' CM-COMPANY '<'.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE ASSIGN EXTERNAL RELFIX
           ORGANIZATION RELATIVE
           ACCESS IS SEQUENTIAL RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(4).

       WORKING-STORAGE SECTION.
       77  MAX-SUB           VALUE  6          PICTURE 9(4) COMP SYNC.
       77  CUST-STAT                           PICTURE X(2).
       77  REC-NUM           VALUE  1          PICTURE 9(4).
       01  BIN                      PIC 9(9) BINARY VALUE 0.

       01  TEST-DATA.
         02  DATA-CUST-NUM-TBL.
           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GAM00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS 6.
         02  DATA-COMPANY-TBL.
           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS 6.
         02  DATA-ADDRESS-2-TBL.
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".
         02  DATA-ADDRESS   REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS 6.

         02  DATA-NO-TERMINALS-TBL.
           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 13.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 254.
         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS 6.
       01  WORK-AREA IS EXTERNAL.
           05  SUB                             PICTURE 9(4) COMP SYNC.
               88  ODD-RECORD                  VALUE 1 3 5.
       01  SUMS-NON-STD-OCCURS PIC S9(15)V9(03) OCCURS 8 VALUE -42.345.

       PROCEDURE DIVISION.

           PERFORM LOADFILE.

           OPEN INPUT FLATFILE.
           READ FLATFILE.

       MAIN-100.
           PERFORM CALL-SUB-1.
           PERFORM CALL-SUB-2.
           PERFORM CALL-IT-OMIT.
           STOP RUN.

       LOADFILE.
           OPEN OUTPUT FLATFILE.

           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           CLOSE FLATFILE.

       LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.
           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
           ELSE
               MOVE "8470"                   TO CM-DISK.
           WRITE TSPFL-RECORD.

       CALL-SUB-1 SECTION.
           CALL "sub1" USING bin, TSPFL-RECORD.

       CALL-SUB-2 SECTION.
           MOVE 4096 TO bin, SUMS-NON-STD-OCCURS (2)
           CALL "sub2" USING bin, TSPFL-RECORD.

       CALL-IT-OMIT SECTION.
           MOVE 5440 TO bin, SUMS-NON-STD-OCCURS (3)
           CALL "sub2" USING bin, TSPFL-RECORD.

           END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. sub1.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  ZRO  PIC 9(9) BINARY VALUE 0.
       01  HEXV PIC X  COMP-X.
       01  HEXC REDEFINES HEXV PIC X.

       01 TEST-BASED BASED.
          05 TEST-BASED-SUB PIC X(00000100000).

       01 TEST-ALLOCED BASED.
          05 TEST-ALLOCED-SUB1 PIC X(010).
          05 TEST-ALLOCED-SUB2 PIC 9(006).

       01  IDX PIC 9(9) BINARY VALUE 0.
       01  TSTREC.
         05  TSTDEP  PIC XXX.
         05  TSTX OCCURS 4 TIMES.
           15  TSTG-1 PIC 99.
           15  TSTX-2 PIC XX OCCURS 4 TIMES.
         05  TSTTAIL1  PIC 99.
         05  TSTCOMP3  PIC 9(5) COMP-3.
         05  TSTLONG   PIC X(100).
         05  TSTHEX    PIC X(100).
         05  TSTHEX2   PIC X(60).
         05  TSTTAILX  PIC X(80).

       LINKAGE SECTION.
       01  X  PIC 9(9) BINARY.
       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(4).

       PROCEDURE DIVISION USING X, OPTIONAL TSPFL-RECORD.
       MAIN-1 SECTION.
            MOVE ALL "X" TO TSTREC.
            MOVE 1 TO TSTG-1 (1).
            MOVE 2 TO TSTG-1 (2).
            MOVE 3 TO TSTG-1 (3).
            MOVE 'A' TO TSTX-2 (1,1).
            MOVE 'B' TO TSTX-2 (2,1).
            MOVE 'C' TO TSTX-2 (3,1).
            MOVE 'xx' TO TSTX-2 (1,4).
            MOVE 'yy' TO TSTX-2 (2,4).
            MOVE 'zz' TO TSTX-2 (3,4).
            MOVE SPACES TO TSTX-2 (1,3).
            MOVE HIGH-VALUES TO TSTX (4).
            MOVE LOW-VALUES TO TSTX-2 (2,3).
            MOVE HIGH-VALUES TO TSTX-2 (3,3).
            MOVE "Quick brown fox jumped over the dog"
              TO TSTLONG, TSTLONG (50:36).
            MOVE "Quicker grey fox jumped the cougar"
              TO TSTHEX (1:35). PERFORM MAIN-2.
       MAIN-2.
            MOVE 17 TO HEXV.
            MOVE HEXC TO TSTHEX (39:1).
            MOVE HEXC TO TSTTAIL1 (2:1).
            MOVE 7 TO HEXV.
            MOVE HEXC TO TSTHEX (47:1).
            MOVE 13 TO HEXV.
            MOVE HEXC TO TSTHEX (59:1).
            MOVE 0 TO HEXV.
            MOVE HEXC TO TSTHEX2 (39:1), TSTHEX2 (10:1).
            MOVE 9 TO HEXV.
            MOVE HEXC TO TSTHEX2 (47:1).
            MOVE '\' TO TSTHEX2 (32:1).
            MOVE 13 TO HEXV.
            MOVE HEXC TO TSTHEX2 (59:1).
            MOVE 'A' TO TSTHEX2 (54:1).
            MOVE LOW-VALUES TO TSTTAILX
            ADD 1 TO X.
            DISPLAY "X is " X.
            ALLOCATE TEST-ALLOCED INITIALIZED.
            COPY cpyabrt.
            IF ADDRESS OF TEST-BASED NOT = NULL
              DISPLAY TEST-BASED-SUB
            END-IF.
            GOBACK.
       END PROGRAM sub1.
_ATEOF


cat >sub2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. sub2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  ZRO PIC 9(9) BINARY VALUE 0.
       01  HEXV PIC X  COMP-X.
       01  HEXC REDEFINES HEXV PIC X.

       01  IDX PIC 9(9) BINARY VALUE 0.
       01  TSTREC.
         05  TSTDEP  PIC XXX.
         05  TSTX OCCURS 4 TIMES.
           15  TSTG-1 PIC 99.
           15  TSTX-2 PIC XX OCCURS 4 TIMES.
         05  TSTTAIL1  PIC 99.
         05  TSTCOMP3  PIC 9(5) COMP-3.
         05  TSTLONG   PIC X(100).
         05  TSTHEX    PIC X(100).
         05  TSTHEX2   PIC X(60).
         05  TSTTAILX  PIC X(80).

       01  BASED-RECORD BASED.
           10  B-NUM              PICTURE 9(4) VALUE 123.
           10  B-DISK             PICTURE X(8) VALUE "marvdisc".
           10  B-NO-TERMINALS     PICTURE 9(4).
       77  BASED-NEVER-SET        PIC     X    BASED.

       LINKAGE SECTION.
       01  X  PIC 9(9) BINARY.
       01  TSPFL-RECORD.
           10  CM-CUST-NUM        PICTURE X(8).
           10  CM-COMPANY         PICTURE X(25).
           10  CM-DISK            PICTURE X(8).
           10  CM-NO-TERMINALS    PICTURE 9(4).
       77  DYNAMIC-NUM            PICTURE 9(4).

       PROCEDURE DIVISION USING X, TSPFL-RECORD.
       SubwaY SECTION.
           IF ADDRESS OF BASED-RECORD = NULL
              ALLOCATE BASED-RECORD INITIALIZED
           ELSE
              SET ADDRESS OF DYNAMIC-NUM TO ADDRESS OF BASED-RECORD
              ADD 1 TO B-NUM
           END-IF.
       DO-CALL.
           IF X = 5440
               CALL "sub1" USING X, OMITTED.
           MOVE ALL "X" TO TSTREC.
           MOVE 1 TO TSTG-1 (1).
           MOVE 2 TO TSTG-1 (2).
           MOVE 3 TO TSTG-1 (3).
           MOVE 'A' TO TSTX-2 (1,1).
           MOVE 'B' TO TSTX-2 (2,1).
           MOVE 'C' TO TSTX-2 (3,1).
           MOVE 'xx' TO TSTX-2 (1,4).
           MOVE 'yy' TO TSTX-2 (2,4).
           MOVE 'zz' TO TSTX-2 (3,4).
           MOVE SPACES TO TSTX-2 (1,3).
           MOVE HIGH-VALUES TO TSTX (4).
           MOVE LOW-VALUES TO TSTX-2 (2,3).
           MOVE HIGH-VALUES TO TSTX-2 (3,3).
           MOVE "Quick brown fox jumped over the dog"
             TO TSTLONG, TSTLONG (50:36).
           MOVE "Quicker grey fox jumped the cougar"
             TO TSTHEX (1:35).
           MOVE 17 TO HEXV.
           MOVE HEXC TO TSTHEX (39:1).
           MOVE HEXC TO TSTTAIL1 (2:1).
           MOVE 7 TO HEXV.
           MOVE HEXC TO TSTHEX (47:1).
           MOVE 13 TO HEXV.
           MOVE HEXC TO TSTHEX (59:1).
           MOVE 0 TO HEXV.
           MOVE HEXC TO TSTHEX2 (39:1), TSTHEX2 (10:1).
           MOVE 9 TO HEXV.
           MOVE HEXC TO TSTHEX2 (47:1).
           MOVE '\' TO TSTHEX2 (32:1).
           MOVE 13 TO HEXV.
           MOVE HEXC TO TSTHEX2 (59:1).
           MOVE 'A' TO TSTHEX2 (54:1).
           MOVE LOW-VALUES TO TSTTAILX.
      *
           COPY cpyabrt.
       END PROGRAM sub2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:10503: \$COMPILE_MODULE -fdump=ALL prog.cob sub2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fdump=ALL prog.cob sub2.cob" "run_misc.at:10503"
( $at_check_trace; $COMPILE_MODULE -fdump=ALL prog.cob sub2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10503"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10505: COB_DUMP_FILE=NONE \\
\$COBCRUN prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10505"
( $at_check_trace; COB_DUMP_FILE=NONE \
$COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10505"
$at_failed && at_fn_log_failure
$at_traceon; }




{ set +x
$as_echo "$at_srcdir/run_misc.at:10516: COB_DUMP_FILE=tstdump.dump \\
\$COBCRUN prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10516"
( $at_check_trace; COB_DUMP_FILE=tstdump.dump \
$COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

dump written to tstdump.dump
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10516"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


cat >reference_tmpl <<'_ATEOF'

Module dump due to LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller

 Last statement of "sub1" was MOVE
	MAIN-2 OF MAIN-1 at cpyabrt:4
	MAIN-1 at prog.cob:177
	ENTRY sub1 at prog.cob:159
 Last statement of "sub2" was CALL
	DO-CALL OF SubwaY at sub2.cob:48
	ENTRY sub2 at sub2.cob:39
 Last statement of "prog" was CALL
	CALL-IT-OMIT at prog.cob:118
	MAIN-100 at prog.cob:85
	ENTRY prog at prog.cob:77
 Started by prog

Dump Program-Id sub1 from prog.cob compiled MMM DD YYYY HH:MM:SS

WORKING-STORAGE
**********************
77        RETURN-CODE                     +000000000
01        ZRO                             000000000
01        HEXV                            13
01        TEST-BASED.                    <NULL> address
01        TEST-ALLOCED.
  05      TEST-ALLOCED-SUB1              ALL SPACES
  05      TEST-ALLOCED-SUB2               000000
01        IDX                             000000000
01        TSTREC.
  05      TSTDEP                         'XXX'
  05      TSTX (1).
       15 TSTG-1 (1)                      01
       15 TSTX-2 (1,1)                   'A'
       15 TSTX-2 (1,2)                   'XX'
       15 TSTX-2 (1,3)                   ALL SPACES
       15 TSTX-2 (1,4)                   'xx'
  05      TSTX (2).
       15 TSTG-1 (2)                      02
       15 TSTX-2 (2,1)                   'B'
       15 TSTX-2 (2,2)                   'XX'
       15 TSTX-2 (2,3)                   ALL LOW-VALUES
       15 TSTX-2 (2,4)                   'yy'
  05      TSTX (3).
       15 TSTG-1 (3)                      03
       15 TSTX-2 (3,1)                   'C'
       15 TSTX-2 (3,2)                   'XX'
       15 TSTX-2 (3,3)                   ALL HIGH-VALUES
       15 TSTX-2 (3,4)                   'zz'
  05      TSTX (4).
       15 TSTG-1 (4)                     ALL HIGH-VALUES
       15 TSTX-2 (4,1)                   ALL HIGH-VALUES
       15 TSTX-2 (4,2..4) same as (1)
  05      TSTTAIL1                        X  _
                                     1 x 5811
  05      TSTCOMP3                        58585
  05      TSTLONG                        'Quick brown fox jumped over the dog              Quick br'
                                      57:'own fox jumped over the dog'
  05      TSTHEX                          Q u i c  k e r    g r e y    f o x    j u m  p e d  _
                                     1 x 51756963 6B657220 67726579 20666F78 206A756D 70656420
                                          t h e    c o u g  a r   X  X X   X  X X X X  X X   X
                                    25 x 74686520 636F7567 61722058 58581158 58585858 58580758
                                          X X X X  X X X X  X X   X  X X X X  X X X X  X X X X
                                    49 x 58585858 58585858 58580D58 58585858 58585858 58585858
                                          X X X X  X X X X  X X X X  X X X X  X X X X  X X X X
                                    73 x 58585858 58585858 58585858 58585858 58585858 58585858
                                          X X X X
                                    97 x 58585858
  05      TSTHEX2                        XXXXXXXXX\0XXXXXXXXXXXXXXXXXXXXX\\XXXXXX\0XXXXXXX\tXXXXXX
                                    54 : AXXXX\rX
  05      TSTTAILX                       'Quick brown fox jumped over the dog     '
                                  trailing LOW-VALUES

LINKAGE
**********************
01        X                               000005441
01        TSPFL-RECORD.                  <NULL> address

END OF DUMP - sub1
**********************

Dump Program-Id sub2 from sub2.cob compiled MMM DD YYYY HH:MM:SS

WORKING-STORAGE
**********************
77        RETURN-CODE                     +000000000
01        ZRO                             000000000
01        HEXV                            13
01        IDX                             000000000
01        TSTREC.
  05      TSTDEP                         'XXX'
  05      TSTX (1).
       15 TSTG-1 (1)                      01
       15 TSTX-2 (1,1)                   'A'
       15 TSTX-2 (1,2)                   'XX'
       15 TSTX-2 (1,3)                   ALL SPACES
       15 TSTX-2 (1,4)                   'xx'
  05      TSTX (2).
       15 TSTG-1 (2)                      02
       15 TSTX-2 (2,1)                   'B'
       15 TSTX-2 (2,2)                   'XX'
       15 TSTX-2 (2,3)                   ALL LOW-VALUES
       15 TSTX-2 (2,4)                   'yy'
  05      TSTX (3).
       15 TSTG-1 (3)                      03
       15 TSTX-2 (3,1)                   'C'
       15 TSTX-2 (3,2)                   'XX'
       15 TSTX-2 (3,3)                   ALL HIGH-VALUES
       15 TSTX-2 (3,4)                   'zz'
  05      TSTX (4).
       15 TSTG-1 (4)                     ALL HIGH-VALUES
       15 TSTX-2 (4,1)                   ALL HIGH-VALUES
       15 TSTX-2 (4,2..4) same as (1)
  05      TSTTAIL1                        X  _
                                     1 x 5811
  05      TSTCOMP3                        58585
  05      TSTLONG                        'Quick brown fox jumped over the dog              Quick br'
                                      57:'own fox jumped over the dog'
  05      TSTHEX                          Q u i c  k e r    g r e y    f o x    j u m  p e d  _
                                     1 x 51756963 6B657220 67726579 20666F78 206A756D 70656420
                                          t h e    c o u g  a r   X  X X   X  X X X X  X X   X
                                    25 x 74686520 636F7567 61722058 58581158 58585858 58580758
                                          X X X X  X X X X  X X   X  X X X X  X X X X  X X X X
                                    49 x 58585858 58585858 58580D58 58585858 58585858 58585858
                                          X X X X  X X X X  X X X X  X X X X  X X X X  X X X X
                                    73 x 58585858 58585858 58585858 58585858 58585858 58585858
                                          X X X X
                                    97 x 58585858
  05      TSTHEX2                        XXXXXXXXX\0XXXXXXXXXXXXXXXXXXXXX\\XXXXXX\0XXXXXXX\tXXXXXX
                                    54 : AXXXX\rX
  05      TSTTAILX                       Quick brown fox jumped over the dog     \0ALPHA ELECTRICA
                                    57 : L CO.\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0
01        BASED-RECORD.
     10   B-NUM                           0124
     10   B-DISK                         'marvdisc'
     10   B-NO-TERMINALS                  0000
77        BASED-NEVER-SET                <NULL> address

LINKAGE
**********************
01        X                               000005441
01        TSPFL-RECORD.
     10   CM-CUST-NUM                    'ALP00000'
     10   CM-COMPANY                     'ALPHA ELECTRICAL CO. LTD.'
     10   CM-DISK                        '8417'
     10   CM-NO-TERMINALS                 0010
77        DYNAMIC-NUM                     0124

END OF DUMP - sub2
**********************

Dump Program-Id prog from prog.cob compiled MMM DD YYYY HH:MM:SS

FD FLATFILE
**********************
   File is OPEN
   FILE STATUS  '00'
01        TSPFL-RECORD.
     10   CM-CUST-NUM                    'ALP00000'
     10   CM-COMPANY                     'ALPHA ELECTRICAL CO. LTD.'
     10   CM-DISK                        '8417'
     10   CM-NO-TERMINALS                 0010

WORKING-STORAGE
**********************
77        RETURN-CODE                     +000000000
77        MAX-SUB                         0006
77        CUST-STAT                      ALL ZEROES
77        REC-NUM                         0001
01        BIN                             000005441
01        TEST-DATA.
 02       DATA-CUST-NUM-TBL.
  05      FILLER                         'ALP00000'
  05      FILLER                         'BET00000'
  05      FILLER                         'DEL00000'
  05      FILLER                         'EPS00000'
  05      FILLER                         'FOR00000'
  05      FILLER                         'GAM00000'
 02       DATA-COMPANY-TBL.
  05      FILLER                         'ALPHA ELECTRICAL CO. LTD.'
  05      FILLER                         'BETA SHOE MFG. INC.'
  05      FILLER                         'DELTA LUGGAGE REPAIRS'
  05      FILLER                         'EPSILON EQUIPMENT SUPPLY'
  05      FILLER                         'FORTUNE COOKIE COMPANY'
  05      FILLER                         'GAMMA X-RAY TECHNOLOGY'
 02       DATA-ADDRESS-2-TBL.
  05      FILLER                         'ATLANTA'
  05      FILLER                         'CALGARY'
  05      FILLER                         'NEW YORK'
  05      FILLER                         'TORONTO'
  05      FILLER                         'WASHINGTON'
  05      FILLER                         'WHITEPLAIN'
 02       DATA-NO-TERMINALS-TBL.
  05      FILLER                          010
  05      FILLER                          013
  05      FILLER                          075
  05      FILLER                          010
  05      FILLER                          090
  05      FILLER                          254
01        WORK-AREA.
  05      SUB                             0007
01        SUMS-NON-STD-OCCURS (1)         -000000000000042.345
01        SUMS-NON-STD-OCCURS (2)         +000000000004096.000
01        SUMS-NON-STD-OCCURS (3)         +000000000005440.000
01        SUMS-NON-STD-OCCURS (4)         -000000000000042.345
01        SUMS-NON-STD-OCCURS (5..8) same as (4)

END OF DUMP - prog
**********************

_ATEOF


# AT_DATA workaround via sed:
{ set +x
$as_echo "$at_srcdir/run_misc.at:10739: \$SED -e 's/_\$//' reference_tmpl > reference"
at_fn_check_prepare_dynamic "$SED -e 's/_$//' reference_tmpl > reference" "run_misc.at:10739"
( $at_check_trace; $SED -e 's/_$//' reference_tmpl > reference
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10739"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:10740: \$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \\
tstdump.dump > tstdump.sed"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10740"
( $at_check_trace; $SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
tstdump.dump > tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10740"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10743: diff reference tstdump.sed"
at_fn_check_prepare_trace "run_misc.at:10743"
( $at_check_trace; diff reference tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10743"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


# recheck with COBC_GEN_DUMP_COMMENTS, which may not change the output
{ set +x
$as_echo "$at_srcdir/run_misc.at:10746: COBC_GEN_DUMP_COMMENTS=1 \\
\$COMPILE_MODULE -fdump=ALL prog.cob sub2.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10746"
( $at_check_trace; COBC_GEN_DUMP_COMMENTS=1 \
$COMPILE_MODULE -fdump=ALL prog.cob sub2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10746"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10749: COB_DUMP_FILE=tstdump.dump \\
\$COBCRUN prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10749"
( $at_check_trace; COB_DUMP_FILE=tstdump.dump \
$COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

dump written to tstdump.dump
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10749"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10760: \$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \\
tstdump.dump > tstdump.sed"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10760"
( $at_check_trace; $SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
tstdump.dump > tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10760"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10763: diff reference tstdump.sed"
at_fn_check_prepare_trace "run_misc.at:10763"
( $at_check_trace; diff reference tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10763"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }



# using both
{ set +x
$as_echo "$at_srcdir/run_misc.at:10767: COB_STACKTRACE=1 COB_DUMP_FILE=tstdump.dump \\
\$COBCRUN prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10767"
( $at_check_trace; COB_STACKTRACE=1 COB_DUMP_FILE=tstdump.dump \
$COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

 Last statement of \"sub1\" was MOVE
	MAIN-2 OF MAIN-1 at cpyabrt:4
	MAIN-1 at prog.cob:177
	ENTRY sub1 at prog.cob:159
 Last statement of \"sub2\" was CALL
	DO-CALL OF SubwaY at sub2.cob:48
	ENTRY sub2 at sub2.cob:39
 Last statement of \"prog\" was CALL
	CALL-IT-OMIT at prog.cob:118
	MAIN-100 at prog.cob:85
	ENTRY prog at prog.cob:77
 Started by prog

dump written to tstdump.dump
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10767"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10791: \$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \\
tstdump.dump > tstdump.sed"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10791"
( $at_check_trace; $SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
tstdump.dump > tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10791"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10794: diff reference tstdump.sed"
at_fn_check_prepare_trace "run_misc.at:10794"
( $at_check_trace; diff reference tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10794"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }




{ set +x
$as_echo "$at_srcdir/run_misc.at:10798: \$COMPILE prog.cob sub2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob sub2.cob" "run_misc.at:10798"
( $at_check_trace; $COMPILE prog.cob sub2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10798"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


# also checking that a dump file without anything to dump does not do anything
{ set +x
$as_echo "$at_srcdir/run_misc.at:10801: COB_STACKTRACE=1 COB_DUMP_FILE=tstdump.dump \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10801"
( $at_check_trace; COB_STACKTRACE=1 COB_DUMP_FILE=tstdump.dump \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

 Last statement of \"sub1\" was MOVE
	MAIN-2 OF MAIN-1 at cpyabrt:4
	MAIN-1 at prog.cob:177
	ENTRY sub1 at prog.cob:159
 Last statement of \"sub2\" was CALL
	DO-CALL OF SubwaY at sub2.cob:48
	ENTRY sub2 at sub2.cob:39
 Last statement of \"prog\" was CALL
	CALL-IT-OMIT at prog.cob:118
	MAIN-100 at prog.cob:85
	ENTRY prog at prog.cob:77
 Started by ./prog
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10801"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10823: \$COMPILE -fdump=ALL -fno-dump prog.cob sub2.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdump=ALL -fno-dump prog.cob sub2.cob" "run_misc.at:10823"
( $at_check_trace; $COMPILE -fdump=ALL -fno-dump prog.cob sub2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10823"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


# also checking that a dump file without anything to dump does not do anything
{ set +x
$as_echo "$at_srcdir/run_misc.at:10826: COB_STACKTRACE=1 COB_DUMP_FILE=tstdump.dump \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10826"
( $at_check_trace; COB_STACKTRACE=1 COB_DUMP_FILE=tstdump.dump \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

 Last statement of \"sub1\" was MOVE
	MAIN-2 OF MAIN-1 at cpyabrt:4
	MAIN-1 at prog.cob:177
	ENTRY sub1 at prog.cob:159
 Last statement of \"sub2\" was CALL
	DO-CALL OF SubwaY at sub2.cob:48
	ENTRY sub2 at sub2.cob:39
 Last statement of \"prog\" was CALL
	CALL-IT-OMIT at prog.cob:118
	MAIN-100 at prog.cob:85
	ENTRY prog at prog.cob:77
 Started by ./prog
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10826"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10848: \$COMPILE -fdump=FD,LS prog.cob sub2.cob -o prog_fdls"
at_fn_check_prepare_dynamic "$COMPILE -fdump=FD,LS prog.cob sub2.cob -o prog_fdls" "run_misc.at:10848"
( $at_check_trace; $COMPILE -fdump=FD,LS prog.cob sub2.cob -o prog_fdls
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10848"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10850: COB_DUMP_FILE=tstdump_fdls.dump \\
\$COBCRUN_DIRECT ./prog_fdls"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10850"
( $at_check_trace; COB_DUMP_FILE=tstdump_fdls.dump \
$COBCRUN_DIRECT ./prog_fdls
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

dump written to tstdump_fdls.dump
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10850"
$at_failed && at_fn_log_failure  \
"tstdump.dump"
$at_traceon; }





cat >reference_fdls_tmpl <<'_ATEOF'

Module dump due to LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller

 Last statement of "sub1" was MOVE
	MAIN-2 OF MAIN-1 at cpyabrt:4
	MAIN-1 at prog.cob:177
	ENTRY sub1 at prog.cob:159
 Last statement of "sub2" was CALL
	DO-CALL OF SubwaY at sub2.cob:48
	ENTRY sub2 at sub2.cob:39
 Last statement of "prog" was CALL
	CALL-IT-OMIT at prog.cob:118
	MAIN-100 at prog.cob:85
	ENTRY prog at prog.cob:77
 Started by ./prog_fdls

Dump Program-Id sub1 from prog.cob compiled MMM DD YYYY HH:MM:SS

LINKAGE
**********************
01        X                               000005441
01        TSPFL-RECORD.                  <NULL> address

END OF DUMP - sub1
**********************

Dump Program-Id sub2 from sub2.cob compiled MMM DD YYYY HH:MM:SS

LINKAGE
**********************
01        X                               000005441
01        TSPFL-RECORD.
     10   CM-CUST-NUM                    'ALP00000'
     10   CM-COMPANY                     'ALPHA ELECTRICAL CO. LTD.'
     10   CM-DISK                        '8417'
     10   CM-NO-TERMINALS                 0010
77        DYNAMIC-NUM                     0124

END OF DUMP - sub2
**********************

Dump Program-Id prog from prog.cob compiled MMM DD YYYY HH:MM:SS

FD FLATFILE
**********************
   File is OPEN
   FILE STATUS  '00'
01        TSPFL-RECORD.
     10   CM-CUST-NUM                    'ALP00000'
     10   CM-COMPANY                     'ALPHA ELECTRICAL CO. LTD.'
     10   CM-DISK                        '8417'
     10   CM-NO-TERMINALS                 0010

END OF DUMP - prog
**********************

_ATEOF


# AT_DATA workaround via sed:
{ set +x
$as_echo "$at_srcdir/run_misc.at:10923: \$SED -e 's/_\$//' reference_fdls_tmpl > reference"
at_fn_check_prepare_dynamic "$SED -e 's/_$//' reference_fdls_tmpl > reference" "run_misc.at:10923"
( $at_check_trace; $SED -e 's/_$//' reference_fdls_tmpl > reference
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10923"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:10924: \$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \\
tstdump_fdls.dump > tstdump.sed"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10924"
( $at_check_trace; $SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
tstdump_fdls.dump > tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10924"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10927: diff reference tstdump.sed"
at_fn_check_prepare_trace "run_misc.at:10927"
( $at_check_trace; diff reference tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10927"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10929: \$COMPILE -fdump=ALL -fno-dump=LO,WS,SC prog.cob sub2.cob -o prog_allfdls"
at_fn_check_prepare_dynamic "$COMPILE -fdump=ALL -fno-dump=LO,WS,SC prog.cob sub2.cob -o prog_allfdls" "run_misc.at:10929"
( $at_check_trace; $COMPILE -fdump=ALL -fno-dump=LO,WS,SC prog.cob sub2.cob -o prog_allfdls
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10929"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10931: COB_DUMP_FILE=tstdump_allfdls.dump \\
\$COBCRUN_DIRECT ./prog_allfdls"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10931"
( $at_check_trace; COB_DUMP_FILE=tstdump_allfdls.dump \
$COBCRUN_DIRECT ./prog_allfdls
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')

dump written to tstdump_allfdls.dump
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "X is 000000001
X is 000005441
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:10931"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10942: \$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \\
tstdump_allfdls.dump > tstdump.sed"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10942"
( $at_check_trace; $SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
tstdump_allfdls.dump > tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10942"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10945: \$SED -e 's/prog_fdls/prog_allfdls/' \\
reference > reference_all"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:10945"
( $at_check_trace; $SED -e 's/prog_fdls/prog_allfdls/' \
reference > reference_all
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10945"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:10948: diff reference_all tstdump.sed"
at_fn_check_prepare_trace "run_misc.at:10948"
( $at_check_trace; diff reference_all tstdump.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:10948"
$at_failed && at_fn_log_failure  \
"tstdump.dump" \
"tstdump_fdls.dump"
$at_traceon; }


# CHECKME @ Ron: The result is likely wrong, please verify later
#AT_CHECK([$COMPILE -fdump=LS prog.cob sub2.cob -fsticky-linkage -o prog_ls_sticky], [0], [], [])
#
#AT_CHECK([COB_DUMP_FILE=tstdump_ls_sticky.dump \
#$COBCRUN_DIRECT ./prog_ls_sticky], [1],
#[X is 000000001
#X is 000005441
#],
#[libcob: cpyabrt:4: error: LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
#libcob: cpyabrt:4: warning: implicit CLOSE of FLATFILE ('RELFIX')
#
#dump written to tstdump_ls_sticky.dump
#])
#
#
#AT_CAPTURE_FILE([tstdump_ls_sticky.dump])
#
#AT_DATA([reference_ls_sticky_tmpl], [
#Module dump due to LINKAGE item 'TSPFL-RECORD' (accessed by 'CM-COMPANY') not passed by caller
#
# Last statement of "sub1" was MOVE
#	MAIN-2 OF MAIN-1 at cpyabrt:4
#	MAIN-1 at prog.cob:177
#	ENTRY sub1 at prog.cob:159
# Last statement of "sub2" was CALL
#	DO-CALL OF SubwaY at sub2.cob:48
#	ENTRY sub2 at sub2.cob:39
# Last statement of "prog" was CALL
#	CALL-IT-OMIT at prog.cob:118
#	MAIN-100 at prog.cob:85
#	ENTRY prog at prog.cob:77
# Started by ./prog_ls_sticky
#
#Dump Program-Id sub1 from prog.cob compiled MMM DD YYYY HH:MM:SS
#
#LINKAGE
#**********************
#01        X                               000005441
#01        TSPFL-RECORD.                  <NULL> address
#
#Dump Program-Id sub2 from sub2.cob compiled MMM DD YYYY HH:MM:SS
#
#LINKAGE
#**********************
#01        X                               000005441
#01        TSPFL-RECORD.
#     10   CM-CUST-NUM                    'ALP00000'
#     10   CM-COMPANY                     'ALPHA ELECTRICAL CO. LTD.'
#     10   CM-DISK                        '8417'
#     10   CM-NO-TERMINALS                 0010
#77        DYNAMIC-NUM                     0124
#
#Dump Program-Id prog from prog.cob compiled MMM DD YYYY HH:MM:SS
#
#])
#
## AT_DATA workaround via sed:
#AT_CHECK([$SED -e 's/_$//' reference_ls_sticky_tmpl > reference], [0], [], [])
#AT_CHECK([$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
#tstdump_ls_sticky.dump > tstdump.sed], [0], [], [])
#
#AT_CHECK([diff reference tstdump.sed], [0], [], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_808
#AT_START_809
at_fn_group_banner 809 'run_misc.at:11016' \
  "dump feature with NULL address" "                 " 4
at_xfail=no
(
  $as_echo "809. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  P2           USAGE POINTER.

       01 TAB-ADR-COUNT            PIC S9(4)      VALUE 8.

       01 TAB-ADR OCCURS 0 TO 1000 TIMES
            DEPENDING ON TAB-ADR-COUNT
            INDEXED BY TAB-ADR-IND.
          05 TAB-ADR-ELEMENT.
              10 TAB-ADR-PRGM         PIC X(8).
              10 TAB-ADR-ID           PIC X(2).
              10 TAB-ADR-ADR-64       PIC S9(16) COMP-5.
              10 TAB-ADR-LAST-ADR-64  PIC S9(16) COMP-5.

       01  GRP-X BASED.
           05   FILLER  PIC X(3).
           05   FLD-X   OCCURS 10 TIMES.
             10 FLD-X-Y   PIC 9999 VALUE 2020.
             10 FLD-X-M   PIC 99 VALUE 11.
             10 FLD-X-X   PIC X(128) VALUE "This is something ".
           05   FILLER  PIC X(3).

       01  GRP-1.
           05   FILLER  PIC X(3).
           05   FLD-1   OCCURS 10 TIMES.
             10 FLD-1-Y   PIC 9999 VALUE 2020.
             10 FLD-1-M   PIC 99 VALUE 11.
             10 FLD-1-X   PIC X(128) VALUE "This is something ".
           05   FILLER  PIC X(3).

       01  GRP-2.
           05   FILLER  PIC X(3).
           05   FLD-2   PIC X(42) VALUE ALL "ABCD ".
           05   FILLER  PIC X(3).
       01  GRP-2A.
           05   FILLER  PIC X(2).
           05   FLD-2A  PIC X(8) VALUE ALL "ABC".
           05   FILLER  PIC X(1200) VALUE "X".
       01  GRP-3.
           05   FILLER  PIC X(3).
           05   FLD-3   OCCURS 3 TIMES.
                15   FLD-3-2 PIC XXX VALUE "ABC".
                15   FLD-3-3 PIC 99  VALUE ZERO.
                15           OCCURS 4 VALUE ALL "D99".
                     25   FLD-3O-1 PIC X.
                     25   FLD-3O-2 PIC 99.
                15   FLD-3-4 PIC XX  VALUE ALL "X".
           05   FILLER  PIC X(3).

       77  C5    PIC 9(03)  VALUE 6.
       01  GRP-5.
           05   FILLER  PIC X(3).
           05   FLD-5.
              10   FLD-5-1 OCCURS 0 TO 9 TIMES
                        DEPENDING ON C5.
                15   FLD-5-2 PIC XXX VALUE "Mon".
                15   FLD-5-3 PIC 99  VALUE 49.
                15   FLD-5-4 PIC XX  VALUE "ey".

       LINKAGE SECTION.
       01  A-TABLE.
           03  prefix.
               05  n    PIC 9(03)  VALUE 123.
           03  table-data value all "ABCDE".
            04  rows    OCCURS 0 TO UNBOUNDED TIMES
                        DEPENDING ON n.
               05 col1  PIC X.
               05 col2  PIC X(02).

       PROCEDURE DIVISION.
           MOVE ALL "*" TO GRP-2
           INITIALIZE FLD-2 ALL TO VALUE
           DISPLAY "GRP-2:" GRP-2.
      *
           MOVE ALL "*" TO GRP-3
           INITIALIZE GRP-3 NUMERIC TO VALUE
           INITIALIZE FLD-3 (1) ALL TO VALUE
           INITIALIZE FLD-3 (2) ALL TO VALUE
           INITIALIZE FLD-3 (3) ALL TO VALUE
           INITIALIZE FLD-3O-1 (3,2), FLD-3O-2 (3,2)
           DISPLAY "GRP-3:" GRP-3.
      *
           MOVE 7       TO c5
           MOVE ALL "*" TO GRP-5
           INITIALIZE FLD-5 ALL TO VALUE
           DISPLAY "GRP-5:" GRP-5.
      *
           MOVE SPACES  TO GRP-2A
           MOVE "Peek"  TO GRP-2A (510:4)
           MOVE "Boo"   TO GRP-2A (910:3)
           MOVE X"FE99" TO GRP-2A (910:2)
           MOVE "You"   TO GRP-2A (1010:3)
           MOVE "$$"    TO FLD-5-4 (5)
           MOVE "Something else!" TO FLD-1-X (5).
      *
      *    "the initial value of an index-name at runtime is undefined"
      *    Old OpenCOBOL/GnuCOBOL did that as "1"
           SET TAB-ADR-IND           TO 1.
      *
           SET P2 TO NULL
           SET ADDRESS OF A-TABLE TO NULL
           MOVE ALL ZEROES TO A-TABLE (1: (LENGTH OF A-TABLE)).
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11129: \$COMPILE -fdump=ALL prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdump=ALL prog.cob" "run_misc.at:11129"
( $at_check_trace; $COMPILE -fdump=ALL prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11129"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11131: COB_DUMP_FILE=dumpall.txt \\
\$COBCRUN_DIRECT ./prog \"param 1\" param 'param 3'"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:11131"
( $at_check_trace; COB_DUMP_FILE=dumpall.txt \
$COBCRUN_DIRECT ./prog "param 1" param 'param 3'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:106: error: BASED/LINKAGE item 'A-TABLE' has NULL address

dump written to dumpall.txt
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GRP-2:***ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD AB***
GRP-3:***ABC00D99D99D99D99XXABC00D99D99D99D99XXABC00D99 00D99D99XX***
GRP-5:***Mon49eyMon49eyMon49eyMon49eyMon49eyMon49eyMon49ey
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:11131"
$at_failed && at_fn_log_failure
$at_traceon; }




cat >reference_tmpl <<'_ATEOF'

Module dump due to BASED/LINKAGE item 'A-TABLE' has NULL address

 Last statement of "prog" was MOVE at line 106 of prog.cob
	ENTRY prog at prog.cob:75
 Started by ./prog
	param 1
	param
	param 3

Dump Program-Id prog from prog.cob compiled MMM DD YYYY HH:MM:SS

WORKING-STORAGE
**********************
77        RETURN-CODE                     +000000000
01        P2                              0x0000000000000000
01        TAB-ADR-COUNT                   +0008
   INDEX  TAB-ADR-IND                     +000000001
01        TAB-ADR (1).
  05      TAB-ADR-ELEMENT (1).
     10   TAB-ADR-PRGM (1)               ALL SPACES
     10   TAB-ADR-ID (1)                 ALL SPACES
     10   TAB-ADR-ADR-64 (1)              +00000000000000000000
     10   TAB-ADR-LAST-ADR-64 (1)         +00000000000000000000
01        TAB-ADR (2..8) same as (1)
01        GRP-X.                         <NULL> address
01        GRP-1.
  05      FILLER                         ALL SPACES
  05      FLD-1 (1).
     10   FLD-1-Y (1)                     2020
     10   FLD-1-M (1)                     11
     10   FLD-1-X (1)                    'This is something'
  05      FLD-1 (2..4) same as (1)
  05      FLD-1 (5).
     10   FLD-1-Y (5)                     2020
     10   FLD-1-M (5)                     11
     10   FLD-1-X (5)                    'Something else!'
  05      FLD-1 (6).
     10   FLD-1-Y (6)                     2020
     10   FLD-1-M (6)                     11
     10   FLD-1-X (6)                    'This is something'
  05      FLD-1 (7..10) same as (6)
  05      FILLER                         ALL SPACES
01        GRP-2.
  05      FILLER                         '***'
  05      FLD-2                          'ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD AB'
  05      FILLER                         '***'
01        GRP-2A.
  05      FILLER                         ALL SPACES
  05      FLD-2A                         ALL SPACES
  05      FILLER                                                                              _
                                     1 x 20202020 20202020 20202020 20202020 20202020 20202020
                                         --- 25 thru 492 same as above ---
                                                         P  e e k                             _
                                   493 x 20202020 20202050 65656B20 20202020 20202020 20202020
                                                                                              _
                                   517 x 20202020 20202020 20202020 20202020 20202020 20202020
                                         --- 541 thru 878 same as above ---
                                                                                             _
                                   879 x 2020 20202020 20202020 20202020 20202020 202020FE 99
                                          o                                                  _
                                   902 x 6F2020 20202020 20202020 20202020 20202020 20202020 _
                                                                                              _
                                   925 x 20202020 20202020 20202020 20202020 20202020 20202020_
                                         --- 949 thru 974 same as above ---
                                                                                             _
                                   975 x 2020 20202020 20202020 20202020 20202020 20202020 20
                                              Y  o u                                         _
                                   998 x 202059 6F752020 20202020 20202020 20202020 20202020 _
                                                                                              _
                                  1021 x 20202020 20202020 20202020 20202020 20202020 20202020
                                         --- 1045 thru 1174 same as above ---
                                                                                             _
                                  1175 x 2020 20202020 20202020 20202020 20202020 20202020 20
                                               _
                                  1198 x 202020
01        GRP-3.
  05      FILLER                         '***'
  05      FLD-3 (1).
       15 FLD-3-2 (1)                    'ABC'
       15 FLD-3-3 (1)                     00
       15 FILLER (1,1).
       25 FLD-3O-1 (1,1)                 'D'
       25 FLD-3O-2 (1,1)                  99
       15 FILLER (1,2..4) same as (1)
       15 FLD-3-4 (1)                    'XX'
  05      FLD-3 (2) same as (1)
  05      FLD-3 (3).
       15 FLD-3-2 (3)                    'ABC'
       15 FLD-3-3 (3)                     00
       15 FILLER (3,1).
       25 FLD-3O-1 (3,1)                 'D'
       25 FLD-3O-2 (3,1)                  99
       15 FILLER (3,2).
       25 FLD-3O-1 (3,2)                 ALL SPACES
       25 FLD-3O-2 (3,2)                  00
       15 FILLER (3,3).
       25 FLD-3O-1 (3,3)                 'D'
       25 FLD-3O-2 (3,3)                  99
       15 FILLER (3,4) same as (3)
       15 FLD-3-4 (3)                    'XX'
  05      FILLER                         '***'
77        C5                              007
01        GRP-5.
  05      FILLER                         '***'
  05      FLD-5.
     10   FLD-5-1 (1).
       15 FLD-5-2 (1)                    'Mon'
       15 FLD-5-3 (1)                     49
       15 FLD-5-4 (1)                    'ey'
     10   FLD-5-1 (2..4) same as (1)
     10   FLD-5-1 (5).
       15 FLD-5-2 (5)                    'Mon'
       15 FLD-5-3 (5)                     49
       15 FLD-5-4 (5)                    '$$'
     10   FLD-5-1 (6).
       15 FLD-5-2 (6)                    'Mon'
       15 FLD-5-3 (6)                     49
       15 FLD-5-4 (6)                    'ey'
     10   FLD-5-1 (7) same as (6)

LINKAGE
**********************
01        A-TABLE.                       <NULL> address

END OF DUMP - prog
**********************

_ATEOF


# AT_DATA workaround via sed:
{ set +x
$as_echo "$at_srcdir/run_misc.at:11275: \$SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \\
dumpall.txt > dumpall.sed"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:11275"
( $at_check_trace; $SED -e 's/compiled ... .. .... ..:..:../compiled MMM DD YYYY HH:MM:SS/g' \
dumpall.txt > dumpall.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11275"
$at_failed && at_fn_log_failure  \
"dumpall.txt"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11278: test \"\$COB_HAS_64_BIT_POINTER\" = \"yes\""
at_fn_check_prepare_dynamic "test \"$COB_HAS_64_BIT_POINTER\" = \"yes\"" "run_misc.at:11278"
( $at_check_trace; test "$COB_HAS_64_BIT_POINTER" = "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11278"
if $at_failed; then :
  # Previous test "failed" --> 32 bit
  { set +x
$as_echo "$at_srcdir/run_misc.at:11280: \$SED -e 's/_\$//; s/0x0000000000000000/0x00000000/' reference_tmpl > reference"
at_fn_check_prepare_dynamic "$SED -e 's/_$//; s/0x0000000000000000/0x00000000/' reference_tmpl > reference" "run_misc.at:11280"
( $at_check_trace; $SED -e 's/_$//; s/0x0000000000000000/0x00000000/' reference_tmpl > reference
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11280"
$at_failed && at_fn_log_failure  \
"dumpall.txt"
$at_traceon; }


else
  # Previous test "passed" --> 64 bit
  { set +x
$as_echo "$at_srcdir/run_misc.at:11283: \$SED -e 's/_\$//' reference_tmpl > reference"
at_fn_check_prepare_dynamic "$SED -e 's/_$//' reference_tmpl > reference" "run_misc.at:11283"
( $at_check_trace; $SED -e 's/_$//' reference_tmpl > reference
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11283"
$at_failed && at_fn_log_failure  \
"dumpall.txt"
$at_traceon; }


fi
$at_failed && at_fn_log_failure  \
"dumpall.txt"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11286: diff reference dumpall.sed"
at_fn_check_prepare_trace "run_misc.at:11286"
( $at_check_trace; diff reference dumpall.sed
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11286"
$at_failed && at_fn_log_failure  \
"dumpall.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_809
#AT_START_810
at_fn_group_banner 810 'run_misc.at:11291' \
  "CALL with program prototypes" "                   " 4
at_xfail=no
(
  $as_echo "810. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       PROCEDURE DIVISION.
           CALL "c"
           .
       END PROGRAM prog.


       IDENTIFICATION DIVISION.
       PROGRAM-ID. a AS "blah?Sdk".

       PROCEDURE DIVISION.
           DISPLAY "Hello!"
           .
       END PROGRAM a.


       IDENTIFICATION DIVISION.
       PROGRAM-ID. b.

       PROCEDURE DIVISION.
           DISPLAY "Hello again!"
           .
       END PROGRAM b.


       IDENTIFICATION DIVISION.
       PROGRAM-ID. c.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           PROGRAM d AS "blah?Sdk"
           PROGRAM b
           .

       PROCEDURE DIVISION.
           CALL d
           CALL b
           .
       END PROGRAM c.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11339: \$COMPILE_MODULE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog.cob" "run_misc.at:11339"
( $at_check_trace; $COMPILE_MODULE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11339"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11340: \$COBCRUN prog"
at_fn_check_prepare_dynamic "$COBCRUN prog" "run_misc.at:11340"
( $at_check_trace; $COBCRUN prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello!
Hello again!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11340"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. caller.

       PROCEDURE DIVISION.
       MAIN-LINE.

           PERFORM DO-CHECK
       >> IF CHECK-PERF IS DEFINED
      *>   minimal side-test for performance comparisons
           PERFORM DO-CHECK 10000 TIMES
       >> END-IF
           DISPLAY 'DONE' UPON SYSERR WITH NO ADVANCING
           GOBACK.

       DO-CHECK.
           CALL "prog"
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11365: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_misc.at:11365"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11365"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11366: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:11366"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "DONE" | \
  $at_diff - "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11366"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_810
#AT_START_811
at_fn_group_banner 811 'run_misc.at:11370' \
  "REDEFINES values on FILLER and INITIALIZE" "      " 4
at_xfail=no
(
  $as_echo "811. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  TSRDF.
           05  WS-ASK-ID-DATE                PIC X(10) VALUE ALL '*'.
           05  WS-ASK-ID-DATE-R              REDEFINES WS-ASK-ID-DATE.
               10  WS-ASK-ID-DATE-YYYY       PIC 9(4) VALUE 2017.
               10  FILLER                    PIC X VALUE '-'.
               10  WS-ASK-ID-DATE-MM         PIC 9(2).
               10  FILLER                    PIC X VALUE '-'.
               10  WS-ASK-ID-DATE-DD         PIC 9(2).
       PROCEDURE DIVISION.
           MOVE 2015 TO WS-ASK-ID-DATE-YYYY
           MOVE 08 TO WS-ASK-ID-DATE-MM
           MOVE 21 TO WS-ASK-ID-DATE-DD
           DISPLAY "The date is " WS-ASK-ID-DATE " Compiled".

           INITIALIZE WS-ASK-ID-DATE-R.
           MOVE 08 TO WS-ASK-ID-DATE-MM
           MOVE 21 TO WS-ASK-ID-DATE-DD
           DISPLAY "The date is " WS-ASK-ID-DATE " INITIALIZE".

           INITIALIZE WS-ASK-ID-DATE-R WITH FILLER.
           MOVE 08 TO WS-ASK-ID-DATE-MM
           MOVE 21 TO WS-ASK-ID-DATE-DD
           DISPLAY "The date is " WS-ASK-ID-DATE " WITH FILLER".

           INITIALIZE WS-ASK-ID-DATE-R WITH FILLER ALL TO VALUE.
           MOVE 08 TO WS-ASK-ID-DATE-MM
           MOVE 21 TO WS-ASK-ID-DATE-DD
           DISPLAY "The date is " WS-ASK-ID-DATE " ALL TO VALUE".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11409: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:11409"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: initial VALUE clause ignored for REDEFINES item 'WS-ASK-ID-DATE-YYYY'
prog.cob:10: warning: initial VALUE clause ignored for REDEFINES item 'FILLER'
prog.cob:12: warning: initial VALUE clause ignored for REDEFINES item 'FILLER'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11409"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11415: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11415"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "The date is 2015*08*21 Compiled
The date is 0000*08*21 INITIALIZE
The date is 0000 08 21 WITH FILLER
The date is 2017-08-21 ALL TO VALUE
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11415"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_811
#AT_START_812
at_fn_group_banner 812 'run_misc.at:11425' \
  "PICTURE with constant-name" "                     " 4
at_xfail=no
(
  $as_echo "812. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  foo-bar     CONSTANT 8.
       01  x           PIC 9(foo-bar)9(foo-bar).

       PROCEDURE DIVISION.
           IF FUNCTION LENGTH (x) <> 16
               DISPLAY FUNCTION LENGTH (x)
           END-IF
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11445: \$COMPILE_ONLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY prog.cob" "run_misc.at:11445"
( $at_check_trace; $COMPILE_ONLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: expression '16' NOT EQUAL '16' is always FALSE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11445"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11448: \$COMPILE -fno-constant-folding prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-constant-folding prog.cob" "run_misc.at:11448"
( $at_check_trace; $COMPILE -fno-constant-folding prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11448"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11449: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11449"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11449"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_812
#AT_START_813
at_fn_group_banner 813 'run_misc.at:11453' \
  "Quote marks in comment paragraphs" "              " 4
at_xfail=no
(
  $as_echo "813. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.
       DATE-written.  hello'".
      *> Written is intentionally lowercase.
      *> extra " to fix syntax highlighting
       PROCEDURE      DIVISION.
           DISPLAY "Hello, world!"
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11467: \$COMPILE -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog prog.cob" "run_misc.at:11467"
( $at_check_trace; $COMPILE -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:4: warning: DATE-WRITTEN is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11467"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11470: \$COMPILE -free -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -free -o prog prog.cob" "run_misc.at:11470"
( $at_check_trace; $COMPILE -free -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:3: warning: DATE-WRITTEN is obsolete in GnuCOBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11470"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11473: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11473"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello, world!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11473"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_813
#AT_START_814
at_fn_group_banner 814 'run_misc.at:11479' \
  "Numeric MOVE with/without -fbinary-truncate" "    " 4
at_xfail=no
(
  $as_echo "814. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9(4)  COMP.

       PROCEDURE       DIVISION.
           MOVE 30000 TO x
           PERFORM check-x-val

           COMPUTE x = 30000
           PERFORM check-x-val

           MOVE ZERO TO x
           ADD 30000 TO x
           PERFORM check-x-val

           GOBACK
           .
       check-x-val     SECTION.
           EVALUATE x
               WHEN 30000
                   DISPLAY "x IS 30000"

               WHEN >= 10000
                   DISPLAY "x >= 10000"

               WHEN ZERO
                   DISPLAY "x IS ZERO"

               WHEN OTHER
                   CONTINUE
           END-EVALUATE
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11521: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:11521"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: value size exceeds data size
prog.cob:10: note: value is 30000
prog.cob:7: note: 'x' defined here as PIC 9(4)
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11521"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11526: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11526"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "x IS ZERO
x IS ZERO
x IS ZERO
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11526"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11532: \$COMPILE -fno-binary-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-binary-truncate prog.cob" "run_misc.at:11532"
( $at_check_trace; $COMPILE -fno-binary-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11532"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11533: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11533"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "x IS 30000
x IS 30000
x IS 30000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11533"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11539: \$COMPILE -fno-binary-truncate -fno-fast-compare prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-binary-truncate -fno-fast-compare prog.cob" "run_misc.at:11539"
( $at_check_trace; $COMPILE -fno-binary-truncate -fno-fast-compare prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11539"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11540: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11540"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "x IS 30000
x IS 30000
x IS 30000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11540"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_814
#AT_START_815
at_fn_group_banner 815 'run_misc.at:11549' \
  "Alphanumeric MOVE with truncation" "              " 4
at_xfail=no
(
  $as_echo "815. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x-left  PIC X(03).
       01  x-right PIC X(03) JUSTIFIED RIGHT.

       PROCEDURE DIVISION.
           MOVE '1234' TO x-left, x-right
           IF x-left  not = '123'
           OR x-right not = '234'
              DISPLAY 'error with "1234":'
              END-DISPLAY
              DISPLAY x-left
              END-DISPLAY
              DISPLAY x-right
              END-DISPLAY
           END-IF
           MOVE '   3' TO x-left, x-right
           IF x-left  not = spaces
           OR x-right not = '  3'
              DISPLAY 'error with "   3":'
              END-DISPLAY
              DISPLAY x-left
              END-DISPLAY
              DISPLAY x-right
              END-DISPLAY
           END-IF
           MOVE '3   ' TO x-left, x-right
           IF x-left  not = '3'
           OR x-right not = spaces
              DISPLAY 'error with "3   ":'
              END-DISPLAY
              DISPLAY x-left
              END-DISPLAY
              DISPLAY x-right
              END-DISPLAY
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11595: \$COMPILE -Wno-truncate prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-truncate prog.cob" "run_misc.at:11595"
( $at_check_trace; $COMPILE -Wno-truncate prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11595"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11596: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11596"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11596"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_815
#AT_START_816
at_fn_group_banner 816 'run_misc.at:11600' \
  "PROGRAM-ID / CALL literal/variable with spaces" " " 4
at_xfail=no
(
  $as_echo "816. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  MYRTN  PIC X(9) VALUE " SUB  ".

       PROCEDURE DIVISION.
           CALL " SUB " USING 'X'.
           MOVE x'00' TO MYRTN (6:1).
           CALL MYRTN   USING 'Y'.
           CALL "SUB"   USING 'Z'.
           CALL "S U B" USING 'A'.
           MOVE " S U B" TO MYRTN.
           CALL MYRTN   USING 'B'.
           STOP RUN.
       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. "SUB ".

       DATA DIVISION.
       LINKAGE SECTION.
       01  x  PIC X.

       PROCEDURE DIVISION USING x.
            DISPLAY "SUB GOT " X
            END-DISPLAY.
       END PROGRAM " SUB".

       IDENTIFICATION DIVISION.
       PROGRAM-ID. "S U B".

       DATA DIVISION.
       LINKAGE SECTION.
       01  x  PIC X.

       PROCEDURE DIVISION USING x.
            DISPLAY "S U B  GOT " X
            END-DISPLAY.
       END PROGRAM "S U B".
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11647: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:11647"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: ' SUB ' literal includes leading spaces which are omitted
prog.cob:10: warning: ' SUB ' literal includes trailing spaces which are omitted
prog.cob:21: warning: 'SUB ' literal includes trailing spaces which are omitted
prog.cob:30: warning: ' SUB' literal includes leading spaces which are omitted
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11647"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11654: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11654"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:12: warning: ' SUB' literal includes leading spaces which are omitted
libcob: prog.cob:16: warning: ' S U B' literal includes leading spaces which are omitted
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SUB GOT X
SUB GOT Y
SUB GOT Z
S U B  GOT A
S U B  GOT B
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11654"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_816
#AT_START_817
at_fn_group_banner 817 'run_misc.at:11668' \
  "PROGRAM-ID / CALL with hyphen and underscore" "   " 4
at_xfail=no
(
  $as_echo "817. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       PROCEDURE DIVISION.
       MAIN.
           CALL "_SUB-PROG_NOW" USING 'X'.
           STOP RUN.
_ATEOF


cat >sub.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. "_SUB-PROG_NOW".

       DATA DIVISION.
       LINKAGE SECTION.
       01  x  PIC X.

       PROCEDURE DIVISION USING x.
       MAIN.
            DISPLAY "SUB GOT " X.
            GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11695: \$COMPILE_MODULE sub.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE sub.cob" "run_misc.at:11695"
( $at_check_trace; $COMPILE_MODULE sub.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11695"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11696: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:11696"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11696"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11698: COB_PRE_LOAD=sub \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PRE_LOAD=sub $COBCRUN_DIRECT ./prog" "run_misc.at:11698"
( $at_check_trace; COB_PRE_LOAD=sub $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SUB GOT X
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11698"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_817
#AT_START_818
at_fn_group_banner 818 'run_misc.at:11705' \
  "CALL with directory" "                            " 4
at_xfail=no
(
  $as_echo "818. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  MYRTN  PIC X(9) VALUE "DIR/SUB".

       PROCEDURE DIVISION.
      *> doesn't exist there...
           CALL "SUB" USING '0'
              ON EXCEPTION CONTINUE.
      *> go by variable
           CALL MYRTN     USING 'X'.
           CALL "DIR/SUB" USING 'Y'.
      *> as it is already loaded - should work as-is
           CALL "SUB" USING 'Z'.
           CANCEL "SUB"
      *> the following will only show if physical cancel is not off...
           CALL "SUB" USING '0'
              ON EXCEPTION CONTINUE.
           STOP RUN.
_ATEOF


cat >sub.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. "SUB".

       DATA DIVISION.
       LINKAGE SECTION.
       01  x  PIC X.

       PROCEDURE DIVISION USING x.
           DISPLAY "SUB GOT " X.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11745: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:11745"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11745"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11746: mkdir DIR"
at_fn_check_prepare_trace "run_misc.at:11746"
( $at_check_trace; mkdir DIR
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11746"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11747: \$COMPILE_MODULE sub.cob -o DIR/SUB.\$COB_MODULE_EXT"
at_fn_check_prepare_dynamic "$COMPILE_MODULE sub.cob -o DIR/SUB.$COB_MODULE_EXT" "run_misc.at:11747"
( $at_check_trace; $COMPILE_MODULE sub.cob -o DIR/SUB.$COB_MODULE_EXT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11747"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11748: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11748"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SUB GOT X
SUB GOT Y
SUB GOT Z
SUB GOT 0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11748"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:11754: COB_PHYSICAL_CANCEL=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog" "run_misc.at:11754"
( $at_check_trace; COB_PHYSICAL_CANCEL=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SUB GOT X
SUB GOT Y
SUB GOT Z
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11754"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_818
#AT_START_819
at_fn_group_banner 819 'run_misc.at:11763' \
  "C-API (param based)" "                            " 4
at_xfail=no
(
  $as_echo "819. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  BINFLD5     PIC  9(5) COMP-5  VALUE  1280.
       01  BINFLD5S    PIC S9(5) BINARY  VALUE  1024.
       01  BINFLD9     PIC  9(9) BINARY  VALUE  2560.
       01  COMP3       PIC  9(8) COMP-3  VALUE  4096.
       01  COMP3V99    PIC S9(7)V99 COMP-3  VALUE  12.50.
       01  PIC9        PIC S9(8) DISPLAY VALUE  8192.
       01  NE          PIC Z(4)9.99-.
       01  CHRX        PIC  X(9)         VALUE 'Hello'.
      *01  CHRN        PIC  N(9)         VALUE N'Hello'.
       01  GRPX.
           05  FILLER  PIC  X(9)         VALUE 'Hello'.
           05  FILLER  PIC  X(9)         VALUE 'World'.
       PROCEDURE DIVISION.
           MOVE -512.77 TO NE.
           CALL "CAPI" USING 2560 BY VALUE 16.
           CALL "CAPI" USING BINFLD5, NE.
           CALL "CAPI" USING BINFLD5S.
           CALL "CAPI" USING BINFLD9.
           MOVE  512.77 TO NE.
           CALL "CAPI" USING COMP3, NE.
           CALL "CAPI" USING PIC9 BINFLD5S CHRX GRPX.
           CALL "CAPI" USING COMP3, NE, CHRX.
           CALL "CAPI" USING BINFLD5, NE.
           MOVE "Hello!" TO CHRX.
           CALL "CAPI" USING BY VALUE BINFLD5, CHRX.
           CALL "CAPI" USING BY VALUE BINFLD5, CHRX.
           CALL "CAPI" USING LENGTH OF GRPX.
           CALL "CAPI" USING BY VALUE GRPX LENGTH OF GRPX.
           CALL "CAPI" USING "Fred Fish", COMP3.
           CALL "CAPI" USING COMP3V99.
      *    CALL "CAPI" USING CHRN.
           CALL "CAPI" .
           DISPLAY "COMP3    is now " COMP3 ";".
           DISPLAY "COMP4    is now " BINFLD5 ";".
           DISPLAY "BINFLD5S is now " BINFLD5S ";".
           DISPLAY "CHRX     is now " CHRX ";".
           DISPLAY "NE       is now " NE ";".
           STOP RUN.
_ATEOF


cat >cmod.c <<'_ATEOF'

#include <stdio.h>
#include <string.h>
#include <libcob.h>

static char *
getType (int type, int byvalue)
{
   static char wrk[24];
   switch (type) {
#if 1
   case COB_TYPE_GROUP:           return "Group";
   case COB_TYPE_NUMERIC_COMP5:
       /* fall through as the test will have different results
          on big endian systems otherwise
        return "COMP-5"; */
        COB_UNUSED (byvalue);
   case COB_TYPE_NUMERIC_BINARY:  return "BINARY";
   case COB_TYPE_NUMERIC_PACKED:  return "COMP-3";
   case COB_TYPE_NUMERIC_FLOAT:   return "COMP-1";
   case COB_TYPE_NUMERIC_DOUBLE:  return "COMP-2";
   case COB_TYPE_NUMERIC_DISPLAY: return "DISPLAY";
   case COB_TYPE_ALPHANUMERIC:    return "X";
   case COB_TYPE_NUMERIC_EDITED:  return "EDITED";
   case COB_TYPE_NATIONAL:        return "N";
#else
   case COB_TYPE_GROUP:           return "Group";
   case COB_TYPE_NUMERIC_COMP5:
        return byvalue == 2 ? "COMP-4" : "COMP-5";
   case COB_TYPE_NUMERIC_BINARY:  return "COMP-4";
   case COB_TYPE_NUMERIC_PACKED:  return "COMP-3";
   case COB_TYPE_NUMERIC_FLOAT:   return "COMP-1";
   case COB_TYPE_NUMERIC_DOUBLE:  return "COMP-2";
   case COB_TYPE_NUMERIC_DISPLAY: return "DISPLAY";
   case COB_TYPE_ALPHANUMERIC:    return "X";
   case COB_TYPE_NUMERIC_EDITED:  return "EDITED";
   case COB_TYPE_NATIONAL:        return "N";
#endif
   }
   sprintf (wrk,"Type %04X",type);
   return wrk;
}

COB_EXT_EXPORT int
CAPI (void *p1, ...)
{
   int      k,nargs,type,digits,scale,size,sign,byvalue;
   cob_s64_t   val = 0;
   char     *str;
   char     wrk[80],pic[30];	/* note: maximum _theoretical_ size */

   nargs = cob_get_num_params();
   printf ("CAPI called with %d parameters\n",nargs);
   for (k=1; k <= nargs; k++) {
      type   = cob_get_param_type (k);
      digits = cob_get_param_digits (k);
      scale  = cob_get_param_scale (k);
      size   = cob_get_param_size (k);
      sign   = cob_get_param_sign (k);
      byvalue = cob_get_param_constant(k);
      printf (" %d: %-8s ", k, getType (type, byvalue));
      if (byvalue) {
         printf ("BY VALUE     ");
      } else {
         printf ("BY REFERENCE ");
      }
      if (type == COB_TYPE_ALPHANUMERIC) {
         sprintf (pic, "X(%d)", size);
         str = cob_get_picx_param (k, NULL, 0);
         printf ("%-11s '%s'", pic, str);
         cob_free ((void*)str);
         cob_put_picx_param (k, "Bye!");
      } else if (type == COB_TYPE_NATIONAL) {
         sprintf (pic, "N(%d)", size); /* FIXME */
         printf ("exchange of national data is not supported yet");
      } else if (type == COB_TYPE_GROUP) {
         sprintf (pic, "(%d)", size);
         str = cob_get_grp_param (k, NULL, 0);
         printf ("%-11s '%.*s'", pic, size, str);
         cob_free ((void*)str);
         memset (wrk,' ',sizeof(wrk));
         memcpy (wrk,"Bye-Bye Birdie!",15);
         cob_put_grp_param (k, wrk, sizeof(wrk));
      } else if (type == COB_TYPE_NUMERIC_EDITED) {
         if (scale > 0) {
            sprintf (pic,"%s9(%d)V9(%d)",sign?"S":"",digits-scale,scale);
         } else {
            sprintf (pic,"%s9(%d)",sign?"S":"",digits-scale);
         }
         val = cob_get_s64_param (k);
         printf ("%-11s %lld ",pic,val);
         val = val + 130;
         val = -val;
         cob_put_s64_param (k, val);
         cob_get_grp_param (k, wrk, sizeof(wrk));
         printf (" to %.*s",size,wrk);
      } else {
         if(scale > 0) {
            sprintf (pic,"%s9(%d)V9(%d)",sign?"S":"",digits-scale,scale);
         } else {
            sprintf (pic,"%s9(%d)",sign?"S":"",digits-scale);
         }
         val = cob_get_s64_param (k);
         printf ("%-11s %lld", pic, val);
         cob_put_s64_param (k, val + 3);
      }
      printf (";\n");
      fflush (stdout);
   }
   if (nargs > 2) {
      cob_put_s64_param (7, val + 3);
   }
   return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:11928: \$COMPILE -Wno-unfinished prog.cob cmod.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob cmod.c" "run_misc.at:11928"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob cmod.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:31: warning: BY CONTENT assumed for alphanumeric item 'CHRX'
prog.cob:32: warning: BY CONTENT assumed for alphanumeric item 'CHRX'
prog.cob:34: warning: BY CONTENT assumed for alphanumeric item 'GRPX'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11928"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:11934: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:11934"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:21: warning: cob_put_s64_param: attempt to over-write constant parameter 1 with '2563'
libcob: prog.cob:21: warning: cob_put_s64_param: attempt to over-write constant parameter 2 with '19'
libcob: prog.cob:27: warning: cob_put_s64_param: parameter 7 is not within range of 4
libcob: prog.cob:28: warning: cob_put_s64_param: parameter 7 is not within range of 3
libcob: prog.cob:31: warning: cob_put_picx_param: attempt to over-write constant parameter 2 with 'Bye!'
libcob: prog.cob:32: warning: cob_put_picx_param: attempt to over-write constant parameter 2 with 'Bye!'
libcob: prog.cob:33: warning: cob_put_s64_param: attempt to over-write constant parameter 1 with '21'
libcob: prog.cob:34: warning: cob_put_grp_param: attempt to over-write constant parameter 1
libcob: prog.cob:34: warning: cob_put_s64_param: attempt to over-write constant parameter 2 with '21'
libcob: prog.cob:35: warning: cob_put_picx_param: attempt to over-write constant parameter 1 with 'Bye!'
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "CAPI called with 2 parameters
 1: BINARY   BY VALUE     S9(9)       2560;
 2: DISPLAY  BY VALUE     9(2)        16;
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        1280;
 2: EDITED   BY REFERENCE S9(5)V9(2)  -51277  to   511.47 ;
CAPI called with 1 parameters
 1: BINARY   BY REFERENCE S9(5)       1024;
CAPI called with 1 parameters
 1: BINARY   BY REFERENCE 9(9)        2560;
CAPI called with 2 parameters
 1: COMP-3   BY REFERENCE 9(8)        4096;
 2: EDITED   BY REFERENCE S9(5)V9(2)  51277  to   514.07-;
CAPI called with 4 parameters
 1: DISPLAY  BY REFERENCE S9(8)       8192;
 2: BINARY   BY REFERENCE S9(5)       1027;
 3: X        BY REFERENCE X(9)        'Hello';
 4: Group    BY REFERENCE (18)        'Hello    World    ';
CAPI called with 3 parameters
 1: COMP-3   BY REFERENCE 9(8)        4099;
 2: EDITED   BY REFERENCE S9(5)V9(2)  -51407  to   512.77 ;
 3: X        BY REFERENCE X(9)        'Bye!';
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        1283;
 2: EDITED   BY REFERENCE S9(5)V9(2)  51277  to   514.07-;
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        1286;
 2: X        BY VALUE     X(9)        'Hello!';
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        1289;
 2: X        BY VALUE     X(9)        'Hello!';
CAPI called with 1 parameters
 1: BINARY   BY VALUE     S9(9)       18;
CAPI called with 2 parameters
 1: Group    BY VALUE     (18)        'Bye-Bye Birdie!   ';
 2: DISPLAY  BY VALUE     9(2)        18;
CAPI called with 2 parameters
 1: X        BY VALUE     X(9)        'Fred Fish';
 2: COMP-3   BY REFERENCE 9(8)        4102;
CAPI called with 1 parameters
 1: COMP-3   BY REFERENCE S9(7)V9(2)  1250;
CAPI called with 0 parameters
COMP3    is now 00004105;
COMP4    is now 0000001292;
BINFLD5S is now +01030;
CHRX     is now Hello!   ;
NE       is now   514.07-;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:11934"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_819
#AT_START_820
at_fn_group_banner 820 'run_misc.at:11998' \
  "C-API (field based)" "                            " 4
at_xfail=no
(
  $as_echo "820. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  BINFLD5     PIC  9(5) COMP-5  VALUE  1280.
       01  BINFLD5S    PIC S9(5) BINARY  VALUE  1024.
       01  BINFLD9     PIC  9(9) BINARY  VALUE  2560.
       01  COMP3       PIC  9(8) COMP-3  VALUE  4096.
       01  COMP3V99    PIC S9(7)V99 COMP-3  VALUE  12.50.
       01  PIC9        PIC S9(8) DISPLAY VALUE  8192.
       01  NE          PIC Z(4)9.99-.
       01  CHRX        PIC  X(9)         VALUE 'Hello'.
      *01  CHRN        PIC  N(9)         VALUE N'Hello'.
       01  GRPX.
           05  FILLER  PIC  X(9)         VALUE 'Hello'.
           05  FILLER  PIC  X(9)         VALUE 'World'.
       PROCEDURE DIVISION.
           MOVE -512.77 TO NE.
           CALL "CAPI" USING 2560 BY VALUE 16.
           CALL "CAPI" USING BINFLD5, NE.
           CALL "CAPI" USING BINFLD5S.
           CALL "CAPI" USING BINFLD9.
           MOVE  512.77 TO NE.
           CALL "CAPI" USING COMP3, NE.
           CALL "CAPI" USING PIC9 BINFLD5S CHRX GRPX.
           CALL "CAPI" USING COMP3, NE, CHRX.
           CALL "CAPI" USING BINFLD5, NE.
           MOVE "Hello!" TO CHRX.
           CALL "CAPI" USING BY VALUE BINFLD5, CHRX.
           CALL "CAPI" USING BY VALUE BINFLD5, CHRX.
           CALL "CAPI" USING LENGTH OF GRPX.
           CALL "CAPI" USING BY VALUE GRPX LENGTH OF GRPX.
           CALL "CAPI" USING "Fred Fish", COMP3.
           CALL "CAPI" USING COMP3V99.
      *    CALL "CAPI" USING CHRN.
           CALL "CAPI" .
           DISPLAY "COMP3    is now " COMP3 ";".
           DISPLAY "COMP4    is now " BINFLD5 ";".
           DISPLAY "BINFLD5S is now " BINFLD5S ";".
           DISPLAY "CHRX     is now " CHRX ";".
           DISPLAY "NE       is now " NE ";".
           STOP RUN.
_ATEOF


cat >cmod.c <<'_ATEOF'

#include <stdio.h>
#include <string.h>
#include <libcob.h>

static char *
getType (int type, int byvalue)
{
   static char wrk[24];
   switch (type) {
#if 1
   case COB_TYPE_GROUP:           return "Group";
   case COB_TYPE_NUMERIC_COMP5:
       /* fall through as the test will have different results
          on big endian systems otherwise
        return "COMP-5"; */
        COB_UNUSED (byvalue);
   case COB_TYPE_NUMERIC_BINARY:  return "BINARY";
   case COB_TYPE_NUMERIC_PACKED:  return "COMP-3";
   case COB_TYPE_NUMERIC_FLOAT:   return "COMP-1";
   case COB_TYPE_NUMERIC_DOUBLE:  return "COMP-2";
   case COB_TYPE_NUMERIC_DISPLAY: return "DISPLAY";
   case COB_TYPE_ALPHANUMERIC:    return "X";
   case COB_TYPE_NUMERIC_EDITED:  return "EDITED";
   case COB_TYPE_NATIONAL:        return "N";
#else
   case COB_TYPE_GROUP:           return "Group";
   case COB_TYPE_NUMERIC_COMP5:
        return byvalue == 2 ? "COMP-4" : "COMP-5";
   case COB_TYPE_NUMERIC_BINARY:  return "COMP-4";
   case COB_TYPE_NUMERIC_PACKED:  return "COMP-3";
   case COB_TYPE_NUMERIC_FLOAT:   return "COMP-1";
   case COB_TYPE_NUMERIC_DOUBLE:  return "COMP-2";
   case COB_TYPE_NUMERIC_DISPLAY: return "DISPLAY";
   case COB_TYPE_ALPHANUMERIC:    return "X";
   case COB_TYPE_NUMERIC_EDITED:  return "EDITED";
   case COB_TYPE_NATIONAL:        return "N";
#endif
   }
   sprintf (wrk,"Type %04X",type);
   return wrk;
}

COB_EXT_EXPORT int
CAPI (void *p1, ...)
{
   int      k,nargs,type,digits,scale,size,sign,byvalue;
   cob_s64_t   val;
   char     *str;
   char     wrk[80],pic[30];	/* note: maximum _theoretical_ size */

   nargs = cob_get_num_params();
   printf ("CAPI called with %d parameters\n",nargs);
   for (k=1; k <= nargs; k++) {
      cob_field *fld = cob_get_param_field (k, "CAPI");
      type   = cob_get_field_type (fld);
      digits = cob_get_field_digits (fld);
      scale  = cob_get_field_scale (fld);
      size   = cob_get_field_size (fld);
      sign   = cob_get_field_sign (fld);
      byvalue = cob_get_field_constant (fld);
      printf (" %d: %-8s ", k, getType (type, byvalue));
      if (byvalue) {
         printf ("BY VALUE     ");
      } else {
         printf ("BY REFERENCE ");
      }
      str = (char *) cob_get_field_str_buffered (fld);
      if (type == COB_TYPE_ALPHANUMERIC) {
         sprintf (pic, "X(%d)", size);
         printf ("%-11s '%s'", pic, str);
         cob_put_field_str (fld, "Bye!");
      } else if (type == COB_TYPE_NATIONAL) {
         sprintf (pic,"N(%d)",size); /* FIXME */
         printf ("exchange of national data is not supported yet");
      } else if (type == COB_TYPE_GROUP) {
         sprintf (pic,"(%d)",size);
         printf ("%-11s '%.*s'",pic,size,str);
         cob_put_field_str (fld, "Bye-Bye Birdie!");
      } else if (type == COB_TYPE_NUMERIC_EDITED) {
         if (scale > 0) {
            sprintf (pic,"%s9(%d)V9(%d)",sign?"S":"",digits-scale,scale);
         } else {
            sprintf (pic,"%s9(%d)",sign?"S":"",digits-scale);
         }
         printf ("%-11s %s ",pic,str);
         val = cob_get_s64_param (k);
         val = val + 130;
         val = -val;
         cob_put_s64_param (k, val);
         str = (char *) cob_get_field_str (fld, wrk, 78);
         printf (" to %.*s",size,wrk);
      } else {
         if(scale > 0) {
            sprintf (pic,"%s9(%d)V9(%d)",sign?"S":"",digits-scale,scale);
         } else {
            sprintf (pic,"%s9(%d)",sign?"S":"",digits-scale);
         }
         printf ("%-11s %s", pic, str);
         val = cob_get_s64_param (k);
         sprintf (wrk, "%lld", val + 3);
         cob_put_field_str (fld, wrk);
      }
      printf (";\n");
      fflush(stdout);
   }
   return 0;
}
_ATEOF


# unfinished because of national
{ set +x
$as_echo "$at_srcdir/run_misc.at:12158: \$COMPILE -Wno-unfinished prog.cob cmod.c"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob cmod.c" "run_misc.at:12158"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob cmod.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:31: warning: BY CONTENT assumed for alphanumeric item 'CHRX'
prog.cob:32: warning: BY CONTENT assumed for alphanumeric item 'CHRX'
prog.cob:34: warning: BY CONTENT assumed for alphanumeric item 'GRPX'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12158"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12164: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12164"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: warning: cob_put_field_str: attempt to over-write constant field with '2563'
libcob: warning: cob_put_field_str: attempt to over-write constant field with '19'
libcob: warning: cob_put_field_str: attempt to over-write constant field with 'Bye!'
libcob: warning: cob_put_field_str: attempt to over-write constant field with 'Bye!'
libcob: warning: cob_put_field_str: attempt to over-write constant field with '21'
libcob: warning: cob_put_field_str: attempt to over-write constant field with 'Bye-Bye Birdie!'
libcob: warning: cob_put_field_str: attempt to over-write constant field with '21'
libcob: warning: cob_put_field_str: attempt to over-write constant field with 'Bye!'
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "CAPI called with 2 parameters
 1: BINARY   BY VALUE     S9(9)       +000002560;
 2: DISPLAY  BY VALUE     9(2)        16;
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        0000001280;
 2: EDITED   BY REFERENCE S9(5)V9(2)    512.77-  to   511.47 ;
CAPI called with 1 parameters
 1: BINARY   BY REFERENCE S9(5)       +01024;
CAPI called with 1 parameters
 1: BINARY   BY REFERENCE 9(9)        000002560;
CAPI called with 2 parameters
 1: COMP-3   BY REFERENCE 9(8)        00004096;
 2: EDITED   BY REFERENCE S9(5)V9(2)    512.77   to   514.07-;
CAPI called with 4 parameters
 1: DISPLAY  BY REFERENCE S9(8)       +00008192;
 2: BINARY   BY REFERENCE S9(5)       +01027;
 3: X        BY REFERENCE X(9)        'Hello    ';
 4: Group    BY REFERENCE (18)        'Hello    World    ';
CAPI called with 3 parameters
 1: COMP-3   BY REFERENCE 9(8)        00004099;
 2: EDITED   BY REFERENCE S9(5)V9(2)    514.07-  to   512.77 ;
 3: X        BY REFERENCE X(9)        'Bye!     ';
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        0000001283;
 2: EDITED   BY REFERENCE S9(5)V9(2)    512.77   to   514.07-;
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        0000001286;
 2: X        BY VALUE     X(9)        'Hello!   ';
CAPI called with 2 parameters
 1: BINARY   BY REFERENCE 9(5)        0000001289;
 2: X        BY VALUE     X(9)        'Hello!   ';
CAPI called with 1 parameters
 1: BINARY   BY VALUE     S9(9)       +000000018;
CAPI called with 2 parameters
 1: Group    BY VALUE     (18)        'Bye-Bye Birdie!   ';
 2: DISPLAY  BY VALUE     9(2)        18;
CAPI called with 2 parameters
 1: X        BY VALUE     X(9)        'Fred Fish';
 2: COMP-3   BY REFERENCE 9(8)        00004102;
CAPI called with 1 parameters
 1: COMP-3   BY REFERENCE S9(7)V9(2)  +0000012.50;
CAPI called with 0 parameters
COMP3    is now 00004105;
COMP4    is now 0000001292;
BINFLD5S is now +01030;
CHRX     is now Hello!   ;
NE       is now   514.07-;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12164"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_820
#AT_START_821
at_fn_group_banner 821 'run_misc.at:12226' \
  "OPTIONS paragraph, DEFAULT ROUNDED MODE" "        " 4
at_xfail=no
(
  $as_echo "821. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       OPTIONS.
           DEFAULT ROUNDED NEAREST-EVEN.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  x           PIC 9.

       PROCEDURE       DIVISION.
           COMPUTE x ROUNDED = 1.5
           DISPLAY x
           COMPUTE x ROUNDED = 2.5
           DISPLAY x
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12247: \$COMPILE -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog prog.cob" "run_misc.at:12247"
( $at_check_trace; $COMPILE -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12247"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:12248: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12248"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "2
2
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12248"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_821
#AT_START_822
at_fn_group_banner 822 'run_misc.at:12256' \
  "OCCURS INDEXED ASCENDING" "                       " 4
at_xfail=no
(
  $as_echo "822. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  DBI-RECORD-NAMEST.
           05  FILLER.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ACM            0315 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-MGL            0303 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZBL            0304 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZCC            0308 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZGL            0305 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZOO            0306 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZTR            0307 '.
       01  DBI-RECORD-NAMESR REDEFINES DBI-RECORD-NAMEST.
           05  DBI-RECORD-NAMES
                  OCCURS 7 TIMES
                  INDEXED BY REC-NAME-IDX
                  ASCENDING KEY IS DBI-RECORD-NAME
                  .
             10  DBI-RECORD-NAME PIC X(30).
             10  DBI-RECORD-CODE PIC 9(4).
             10  DBI-RECORD-DIR  PIC X.
       01  REC-NAME   PIC X(30).
       01  DBX-RECORD-NAMEST.
           05  FILLER.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ACM            0315 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-MGL            0303 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZBL            0304 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZCC            0308 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZGL            0305 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZOO            0306 '.
             10 FILLER PIC X(35)
                VALUE 'A-F-GEN-LEDGER-ZTR            0307 '.
       01  DBX-RECORD-NAMESR REDEFINES DBX-RECORD-NAMEST.
           05  DBX-RECORD-NAMES
                  OCCURS 7 TIMES
                  ASCENDING KEY IS DBX-RECORD-NAME
                  INDEXED BY REC-NAME-DBX
                  .
             10  DBX-RECORD-NAME PIC X(30).
             10  DBX-RECORD-CODE PIC 9(4).
             10  DBX-RECORD-DIR  PIC X.

       PROCEDURE DIVISION.
       MAIN.
      *>   "the initial value of an index-name at runtime is undefined"
      *>   Old OpenCOBOL/GnuCOBOL did that as "1"
           SET REC-NAME-IDX          TO 1.
           MOVE 'A-F-GEN-LEDGER-ZGL' TO REC-NAME.
           PERFORM FINDIT.
           MOVE 'JUNK' TO REC-NAME.
           PERFORM FINDIT.
           STOP RUN.

       FINDIT.
           SEARCH DBI-RECORD-NAMES
           AT END
               DISPLAY 'A ' REC-NAME ' is invalid.'
           WHEN REC-NAME = DBI-RECORD-NAME (REC-NAME-IDX)
               DISPLAY 'A ' REC-NAME ' is code '
                         DBI-RECORD-CODE (REC-NAME-IDX) '.'.

           SEARCH DBX-RECORD-NAMES
           AT END
               DISPLAY 'B ' REC-NAME ' is invalid.'
           WHEN REC-NAME = DBX-RECORD-NAME (REC-NAME-DBX)
               DISPLAY 'B ' REC-NAME ' is code '
                         DBX-RECORD-CODE (REC-NAME-DBX) '.'.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12343: \$COMPILE -frelax-syntax-checks prog.cob "
at_fn_check_prepare_dynamic "$COMPILE -frelax-syntax-checks prog.cob " "run_misc.at:12343"
( $at_check_trace; $COMPILE -frelax-syntax-checks prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:26: warning: INDEXED should follow ASCENDING/DESCENDING
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12343"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12347: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12347"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A A-F-GEN-LEDGER-ZGL             is code 0305.
B A-F-GEN-LEDGER-ZGL             is code 0305.
A JUNK                           is invalid.
B JUNK                           is invalid.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12347"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_822
#AT_START_823
at_fn_group_banner 823 'run_misc.at:12357' \
  "ZERO unsigned and negative binary subscript" "    " 4
at_xfail=no
(
  $as_echo "823. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       77  UBIN        PIC  9(8) BINARY.
       77  SBIN        PIC S9(8) BINARY.
       77  UNUP        PIC  9(8).
       77  SNUP        PIC S9(8).
       77  UCHR        BINARY-CHAR UNSIGNED.
       77  SCHR        BINARY-CHAR SIGNED.

       01  TSTREC.
           05       PIC X(4) OCCURS 300 TIMES VALUE ZERO.
           05  TSTX PIC X(4) OCCURS   3 TIMES.
           05  TSTY PIC X(4) OCCURS 300 TIMES.

       PROCEDURE DIVISION.
           MOVE ALL 'A' TO TSTX(1).
           MOVE ALL 'B' TO TSTX(2).
           MOVE ALL 'C' TO TSTX(3).
           MOVE ALL '1' TO TSTY(1).
           MOVE ALL '2' TO TSTY(2).
           MOVE ALL '3' TO TSTY(3).
           MOVE 0  TO UNUP.
           DISPLAY "UNUP: " UNUP " is :" TSTY(UNUP) ":" UPON CONSOLE.
           MOVE 0  TO SNUP.
           DISPLAY "SNUP: " SNUP " is :" TSTY(SNUP) ":" UPON CONSOLE.
           MOVE 0  TO SBIN.
           DISPLAY "SBIN: " SBIN " is :" TSTY(SBIN) ":" UPON CONSOLE.
           MOVE -1 TO SBIN.
           DISPLAY "SBIN: " SBIN " is :" TSTY(SBIN) ":" UPON CONSOLE.
           MOVE 'xxx'   TO TSTY(SBIN).
           DISPLAY "SBIN: " SBIN " is :" TSTY(SBIN) ":" UPON CONSOLE.
      * The following would often core dump
           MOVE 0 TO UBIN.
           DISPLAY "UBIN: " UBIN " is :" TSTY(UBIN) ":" UPON CONSOLE.
           MOVE 'yyy'   TO TSTY(UBIN).
           MOVE 1 TO UBIN.
           DISPLAY "UBIN: " UBIN " is :" TSTY(UBIN) ":" UPON CONSOLE.
           MOVE 0 TO UCHR.
           DISPLAY "UCHR: " UCHR " is :" TSTY(UCHR) ":" UPON CONSOLE.
           MOVE -1 TO SCHR.
           DISPLAY "SCHR: " SCHR " is :" TSTY(SCHR) ":" UPON CONSOLE.
           MOVE 'zzz' TO TSTY (129).
           MOVE 129 TO UCHR.
           DISPLAY "UCHR: " UCHR " is :" TSTY(UCHR) ":" UPON CONSOLE.
           STOP RUN.
_ATEOF


# Safe run with runtime checks
{ set +x
$as_echo "$at_srcdir/run_misc.at:12411: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:12411"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12411"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:12412: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12412"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:26: error: subscript of 'TSTY' out of bounds: 0
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:12412"
$at_failed && at_fn_log_failure
$at_traceon; }


# Runtime checks disable, subscript may be zero or even negative
{ set +x
$as_echo "$at_srcdir/run_misc.at:12417: \$COBC -x -g -fsource-location prog.cob -o prog_unsafe"
at_fn_check_prepare_dynamic "$COBC -x -g -fsource-location prog.cob -o prog_unsafe" "run_misc.at:12417"
( $at_check_trace; $COBC -x -g -fsource-location prog.cob -o prog_unsafe
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12417"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:12418: \$COBCRUN_DIRECT ./prog_unsafe"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog_unsafe" "run_misc.at:12418"
( $at_check_trace; $COBCRUN_DIRECT ./prog_unsafe
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "UNUP: 00000000 is :CCCC:
SNUP: +00000000 is :CCCC:
SBIN: +00000000 is :CCCC:
SBIN: -00000001 is :BBBB:
SBIN: -00000001 is :xxx :
UBIN: 00000000 is :CCCC:
UBIN: 00000001 is :1111:
UCHR: 000 is :yyy :
SCHR: -001 is :xxx :
UCHR: 129 is :zzz :
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12418"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_823
#AT_START_824
at_fn_group_banner 824 'run_misc.at:12434' \
  "Default Arithmetic (1)" "                         " 4
at_xfail=no
(
  $as_echo "824. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 NUM-A   PIC 9(3) VALUE 399.
       01 NUM-B   PIC 9(3) VALUE 211.
       01 NUM-C   PIC 9(3)V99 VALUE 212.34.
       01 NUMV1   PIC 9(3)V9.
       01 PICX    PIC X VALUE 'A'.
       01 RSLT    PIC 9(3).
       01 RSLTV1  PIC 9(3).9.
       01 RSLTV2  PIC 9(3).99.
      *
       PROCEDURE DIVISION.
       MAIN.
           COMPUTE RSLT = NUM-A + 1.1.
           DISPLAY 'Simple Compute  RSLT IS ' RSLT
           COMPUTE RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Single Variable RSLT IS ' RSLT
           COMPUTE RSLTV2, RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Compute  RSLT    IS ' RSLT
           DISPLAY 'Compute  RSLTv99 IS ' RSLTV2
           COMPUTE RSLTV1, RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Compute  RSLT    IS ' RSLT
           DISPLAY 'Compute  RSLTv9  IS ' RSLTV1
           MOVE 0 TO RSLT
           ADD NUM-C TO RSLT.
           DISPLAY 'Add      RSLT    IS ' RSLT.
           MOVE 0 TO RSLT
           ADD NUM-A NUM-C 10 TO RSLT.
           DISPLAY 'Add      RSLT    IS ' RSLT.
           SUBTRACT NUM-C FROM RSLT.
           DISPLAY 'Subtract RSLT    IS ' RSLT.
           SUBTRACT NUM-A -10 FROM RSLT.
           DISPLAY 'Subtract RSLT    IS ' RSLT.
           MOVE 0 TO RSLT
           ADD NUM-A NUM-C TO RSLT GIVING RSLTV1.
           DISPLAY 'Add      RSLTv9  IS ' RSLTV1
           MULTIPLY NUM-A BY NUM-C GIVING RSLT.
           DISPLAY 'Multiply RSLT    IS ' RSLT.
           MULTIPLY RSLT BY NUM-C.
           DISPLAY 'Multiply RSLT    IS ' RSLT.
           DIVIDE NUM-A BY 10 GIVING RSLT.
           DISPLAY 'Divide   RSLT    IS ' RSLT.
           DIVIDE RSLT BY 4 GIVING RSLTV1.
           DISPLAY 'Divide   RSLTv9  IS ' RSLTV1.
           DIVIDE RSLT BY 4 GIVING RSLT.
           DISPLAY 'Divide   RSLT    IS ' RSLT.

           COMPUTE RSLTV1, RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Simple   RSLT    IS ' RSLT
                           ' RSLTv9  IS ' RSLTV1.

           COMPUTE RSLTV1, RSLT = ((NUM-A / (100.55 + -0.550))
                                -  (NUM-B / (10.11 * 10 - 1.1)))
                                  * (220 / 2.2)
           DISPLAY 'Complex  RSLT    IS ' RSLT
                           ' RSLTv9  IS ' RSLTV1.

           COMPUTE RSLTV1, RSLT = ((NUM-A / (101 - 1))
                                -  (NUM-B / (10 * 10))) * (200 / 2)
           DISPLAY 'Reduced  RSLT    IS ' RSLT
                           ' RSLTv9  IS ' RSLTV1.
           MOVE NUM-A TO NUMV1.
           IF ((NUMV1 / (101 - 1))
              -  (NUM-B / (10 * 10))) * (200 / 2) EQUAL 188
              DISPLAY "Not Using ARITHMETIC-OSVS"
           ELSE
              DISPLAY "Using ARITHMETIC-OSVS"
           END-IF.
           STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:12510: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:12510"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12510"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12512: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12512"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Simple Compute  RSLT IS 400
Single Variable RSLT IS 188
Compute  RSLT    IS 188
Compute  RSLTv99 IS 188.00
Compute  RSLT    IS 188
Compute  RSLTv9  IS 188.0
Add      RSLT    IS 212
Add      RSLT    IS 621
Subtract RSLT    IS 408
Subtract RSLT    IS 019
Add      RSLTv9  IS 611.3
Multiply RSLT    IS 723
Multiply RSLT    IS 723
Divide   RSLT    IS 039
Divide   RSLTv9  IS 009.7
Divide   RSLT    IS 009
Simple   RSLT    IS 188 RSLTv9  IS 188.0
Complex  RSLT    IS 188 RSLTv9  IS 188.0
Reduced  RSLT    IS 188 RSLTv9  IS 188.0
Not Using ARITHMETIC-OSVS
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12512"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_824
#AT_START_825
at_fn_group_banner 825 'run_misc.at:12538' \
  "Default Arithmetic Test (2)" "                    " 4
at_xfail=no
(
  $as_echo "825. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  VAL                 PIC S9(7)V99 COMP-3 VALUE 20500.
       01  DIV1                PIC S9(7)V99 COMP-3 VALUE 0.9.
       01  DIV2                PIC S9(7)V99 COMP-3 VALUE 33.45.
       01  DIV3                PIC S9(7)V99 COMP-3 VALUE 9.
       01  MUL1                PIC S9(7)V99 COMP-3 VALUE 10.
       01  MUL2                PIC S9(7)V99 COMP-3 VALUE 5.
       01  MUL3                PIC S9(7)V99 COMP-3 VALUE 2.
       01  RES                 PIC S9(7)V99 COMP-3.
       PROCEDURE        DIVISION.
           COMPUTE RES = VAL / DIV1 / DIV2.
           DISPLAY 'RES = ' RES.
           COMPUTE RES ROUNDED = VAL / DIV1 / DIV2.
           DISPLAY 'RES ROUNDED = ' RES.
           COMPUTE RES = VAL * MUL1 / DIV3 / DIV2.
           DISPLAY 'RES MULT1 = ' RES.
           COMPUTE RES = VAL * MUL2 * MUL3 / DIV3 / DIV2.
           DISPLAY 'RES MULT2 = ' RES.
           COMPUTE RES = VAL / DIV1.
           DISPLAY 'RES 1 = ' RES.
           COMPUTE RES = RES / DIV2.
           DISPLAY 'RES F = ' RES.
           COMPUTE RES ROUNDED MODE AWAY-FROM-ZERO =
                VAL / DIV1 / DIV2.
           DISPLAY 'RES ROUNDED AWAY = ' RES.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12574: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:12574"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12574"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12576: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12576"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RES = +0000680.95
RES ROUNDED = +0000680.95
RES MULT1 = +0000680.95
RES MULT2 = +0000680.95
RES 1 = +0022777.77
RES F = +0000680.94
RES ROUNDED AWAY = +0000680.96
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12576"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_825
#AT_START_826
at_fn_group_banner 826 'run_misc.at:12589' \
  "OSVS Arithmetic (1)" "                            " 4
at_xfail=no
(
  $as_echo "826. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 NUM-A   PIC 9(3) VALUE 399.
       01 NUM-B   PIC 9(3) VALUE 211.
       01 NUM-C   PIC 9(3)V99 VALUE 212.34.
       01 NUMV1   PIC 9(3)V9.
       01 PICX    PIC X VALUE 'A'.
       01 RSLT    PIC 9(3).
       01 RSLTV1  PIC 9(3).9.
       01 RSLTV2  PIC 9(3).99.
      *
       PROCEDURE DIVISION.
       MAIN.
           COMPUTE RSLT = NUM-A + 1.1.
           DISPLAY 'Simple Compute  RSLT IS ' RSLT
           COMPUTE RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Single Variable RSLT IS ' RSLT
           COMPUTE RSLTV2, RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Compute  RSLT    IS ' RSLT
           DISPLAY 'Compute  RSLTv99 IS ' RSLTV2
           COMPUTE RSLTV1, RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Compute  RSLT    IS ' RSLT
           DISPLAY 'Compute  RSLTv9  IS ' RSLTV1
           MOVE 0 TO RSLT
           ADD NUM-C TO RSLT.
           DISPLAY 'Add      RSLT    IS ' RSLT.
           MOVE 0 TO RSLT
           ADD NUM-A NUM-C 10 TO RSLT.
           DISPLAY 'Add      RSLT    IS ' RSLT.
           SUBTRACT NUM-C FROM RSLT.
           DISPLAY 'Subtract RSLT    IS ' RSLT.
           SUBTRACT NUM-A -10 FROM RSLT.
           DISPLAY 'Subtract RSLT    IS ' RSLT.
           MOVE 0 TO RSLT
           ADD NUM-A NUM-C TO RSLT GIVING RSLTV1.
           DISPLAY 'Add      RSLTv9  IS ' RSLTV1
           MULTIPLY NUM-A BY NUM-C GIVING RSLT.
           DISPLAY 'Multiply RSLT    IS ' RSLT.
           MULTIPLY RSLT BY NUM-C.
           DISPLAY 'Multiply RSLT    IS ' RSLT.
           DIVIDE NUM-A BY 10 GIVING RSLT.
           DISPLAY 'Divide   RSLT    IS ' RSLT.
           DIVIDE RSLT BY 4 GIVING RSLTV1.
           DISPLAY 'Divide   RSLTv9  IS ' RSLTV1.
           DIVIDE RSLT BY 4 GIVING RSLT.
           DISPLAY 'Divide   RSLT    IS ' RSLT.

           COMPUTE RSLTV1, RSLT = ((NUM-A / 100) - (NUM-B / 100)) * 100
           DISPLAY 'Simple   RSLT    IS ' RSLT
                           ' RSLTv9  IS ' RSLTV1.

           COMPUTE RSLTV1, RSLT = ((NUM-A / (100.55 + -0.550))
                                -  (NUM-B / (10.11 * 10 - 1.1)))
                                  * (220 / 2.2)
           DISPLAY 'Complex  RSLT    IS ' RSLT
                           ' RSLTv9  IS ' RSLTV1.

           COMPUTE RSLTV1, RSLT = ((NUM-A / (101 - 1))
                                -  (NUM-B / (10 * 10))) * (200 / 2)
           DISPLAY 'Reduced  RSLT    IS ' RSLT
                           ' RSLTv9  IS ' RSLTV1.
           MOVE NUM-A TO NUMV1.
           IF ((NUMV1 / (101 - 1))
              -  (NUM-B / (10 * 10))) * (200 / 2) EQUAL 188
              DISPLAY "Not Using ARITHMETIC-OSVS"
           ELSE
              DISPLAY "Using ARITHMETIC-OSVS"
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12666: \$COMPILE -farithmetic-osvs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -farithmetic-osvs prog.cob" "run_misc.at:12666"
( $at_check_trace; $COMPILE -farithmetic-osvs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'MAIN':
prog.cob:19: warning: precision of result may change with arithmetic-osvs
prog.cob:21: warning: precision of result may change with arithmetic-osvs
prog.cob:24: warning: precision of result may change with arithmetic-osvs
prog.cob:31: warning: precision of result may change with arithmetic-osvs
prog.cob:35: warning: precision of result may change with arithmetic-osvs
prog.cob:38: warning: precision of result may change with arithmetic-osvs
prog.cob:51: warning: precision of result may change with arithmetic-osvs
prog.cob:55: warning: precision of result may change with arithmetic-osvs
prog.cob:61: warning: precision of result may change with arithmetic-osvs
prog.cob:66: warning: precision of result may change with arithmetic-osvs
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12666"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12680: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12680"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Simple Compute  RSLT IS 400
Single Variable RSLT IS 100
Compute  RSLT    IS 188
Compute  RSLTv99 IS 188.00
Compute  RSLT    IS 180
Compute  RSLTv9  IS 180.0
Add      RSLT    IS 212
Add      RSLT    IS 621
Subtract RSLT    IS 408
Subtract RSLT    IS 019
Add      RSLTv9  IS 611.3
Multiply RSLT    IS 723
Multiply RSLT    IS 723
Divide   RSLT    IS 039
Divide   RSLTv9  IS 009.7
Divide   RSLT    IS 009
Simple   RSLT    IS 180 RSLTv9  IS 180.0
Complex  RSLT    IS 188 RSLTv9  IS 188.0
Reduced  RSLT    IS 180 RSLTv9  IS 180.0
Using ARITHMETIC-OSVS
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12680"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_826
#AT_START_827
at_fn_group_banner 827 'run_misc.at:12706' \
  "OSVS Arithmetic Test (2)" "                       " 4
at_xfail=no
(
  $as_echo "827. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  VAL                 PIC S9(7)V99 COMP-3 VALUE 20500.
       01  DIV1                PIC S9(7)V99 COMP-3 VALUE 0.9.
       01  DIV2                PIC S9(7)V99 COMP-3 VALUE 33.45.
       01  DIV3                PIC S9(7)V99 COMP-3 VALUE 9.
       01  MUL1                PIC S9(7)V99 COMP-3 VALUE 10.
       01  MUL2                PIC S9(7)V99 COMP-3 VALUE 5.
       01  MUL3                PIC S9(7)V99 COMP-3 VALUE 2.
       01  RES                 PIC S9(7)V99 COMP-3.
       PROCEDURE        DIVISION.
           COMPUTE RES = VAL / DIV1 / DIV2.
           DISPLAY 'RES = ' RES.
           COMPUTE RES ROUNDED = VAL / DIV1 / DIV2.
           DISPLAY 'RES ROUNDED = ' RES.
           COMPUTE RES = VAL * MUL1 / DIV3 / DIV2.
           DISPLAY 'RES MULT1 = ' RES.
           COMPUTE RES = VAL * MUL2 * MUL3 / DIV3 / DIV2.
           DISPLAY 'RES MULT2 = ' RES.
           COMPUTE RES = VAL / DIV1.
           DISPLAY 'RES 1 = ' RES.
           COMPUTE RES = RES / DIV2.
           DISPLAY 'RES F = ' RES.
           COMPUTE RES ROUNDED MODE AWAY-FROM-ZERO =
                VAL / DIV1 / DIV2.
           DISPLAY 'RES ROUNDED AWAY = ' RES.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12742: \$COMPILE -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm prog.cob" "run_misc.at:12742"
( $at_check_trace; $COMPILE -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:16: warning: precision of result may change with arithmetic-osvs
prog.cob:18: warning: precision of result may change with arithmetic-osvs
prog.cob:20: warning: precision of result may change with arithmetic-osvs
prog.cob:22: warning: precision of result may change with arithmetic-osvs
prog.cob:28: warning: precision of result may change with arithmetic-osvs
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12742"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12750: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12750"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RES = +000068094
RES ROUNDED = +000068095
RES MULT1 = +000068094
RES MULT2 = +000068095
RES 1 = +002277777
RES F = +000068094
RES ROUNDED AWAY = +000068095
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12750"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_827
#AT_START_828
at_fn_group_banner 828 'run_misc.at:12763' \
  "SET CONSTANT directive" "                         " 4
at_xfail=no
(
  $as_echo "828. $at_setup_line: testing $at_desc ..."
  $at_traceon



# The SET CONSTANT directive defines a level78 variable
# for the current compilation unit

# original MF extension: $SET CONSTANT
cat >prog.cob <<'_ATEOF'

       $SET CONSTANT DOGGY "Barky"
       $SET CONSTANT PONY "Blacky"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       77  MYHORSE   PIC X(7) VALUE PONY.
       $SET CONSTANT PONY "White"
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           DISPLAY "My Horse is " MYHORSE ";".
           DISPLAY "My little pony is " PONY ".".
           STOP RUN.
_ATEOF


# OpenCOBOL/GnuCOBOL extension: >>SET CONSTANT
cat >prog2.cob <<'_ATEOF'

       >>SET CONSTANT DOGGY "Barky"
       >>SET CONSTANT PONY "Blacky"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       77  MYHORSE   PIC X(7) VALUE PONY.
       >>SET CONSTANT PONY "White"
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           DISPLAY "My Horse is " MYHORSE ";".
           DISPLAY "My little pony is " PONY ".".
           STOP RUN.
_ATEOF


# OpenCOBOL/GnuCOBOL extension: >>DEFINE CONSTANT
cat >prog3.cob <<'_ATEOF'

       >>DEFINE CONSTANT DOGGY "Barky"
       >>DEFINE CONSTANT PONY "Blacky"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       77  MYHORSE   PIC X(7) VALUE PONY.
       >>DEFINE CONSTANT PONY "White" OVERRIDE
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           DISPLAY "My Horse is " MYHORSE ";".
           DISPLAY "My little pony is " PONY ".".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12832: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_misc.at:12832"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12832"
$at_failed && at_fn_log_failure
$at_traceon; }


# Note: MF does not redefine a value via SET CONSTANT
# the first definitions wins (warning check: syn_misc.at)
{ set +x
$as_echo "$at_srcdir/run_misc.at:12836: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12836"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Your Dog's name is Barky;
The Dog's name is Barky ;
My Horse is Blacky ;
My little pony is Blacky.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12836"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12843: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_misc.at:12843"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12843"
$at_failed && at_fn_log_failure
$at_traceon; }


# Note: MF does not redefine a value via SET CONSTANT
# the first definitions wins (warning check: syn_misc.at)
{ set +x
$as_echo "$at_srcdir/run_misc.at:12847: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:12847"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Your Dog's name is Barky;
The Dog's name is Barky ;
My Horse is Blacky ;
My little pony is Blacky.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12847"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12854: \$COMPILE -fdefine-constant-directive=ok prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdefine-constant-directive=ok prog3.cob" "run_misc.at:12854"
( $at_check_trace; $COMPILE -fdefine-constant-directive=ok prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12854"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12856: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_misc.at:12856"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Your Dog's name is Barky;
The Dog's name is Barky ;
My Horse is Blacky ;
My little pony is White.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12856"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_828
#AT_START_829
at_fn_group_banner 829 'run_misc.at:12866' \
  "DEFINE OVERRIDE" "                                " 4
at_xfail=no
(
  $as_echo "829. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       >>SET CONSTANT DOGGY "Pluto"
       >>SET CONSTANT PONY "Piper"
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.

       >>DEFINE DPONY  AS PARAMETER OVERRIDE
       >>IF DPONY IS NOT DEFINED
       >>DEFINE DPONY AS "No Dpony"
       >>END-IF
       01  CNSPONY     CONSTANT FROM DPONY.

       >>DEFINE ENVPONY AS PARAMETER OVERRIDE
       >>IF ENVPONY IS NOT DEFINED
       >>DEFINE ENVPONY AS "No EnvPony"
       >>END-IF
       01  HORSE       CONSTANT FROM ENVPONY.
       77  MYHORSE    PIC X(12) VALUE HORSE  .
       77  MYPONYENV  PIC X(12).
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "ENVPONY" UPON ENVIRONMENT-NAME
           ACCEPT  MYPONYENV FROM ENVIRONMENT-VALUE.
           DISPLAY "ENVPONY env var set to " MYPONYENV ";".
           DISPLAY "1st Dog's name is " DOGGY ";".
           DISPLAY "2nd Dog's name is " PONY ";".
       >>IF ENVPONY IS DEFINED
           DISPLAY "ENVPONY is DEFINED as " HORSE ";".
       >>ELSE
           DISPLAY "ENVPONY was NOT DEFINED;".
       >>END-IF
           DISPLAY "DPONY set to " CNSPONY ";".
       >>IF ENVPONY = "WHITE"
       >>DEFINE CONSTANT PONY AS "White Horse" OVERRIDE
       >>ELSE
       >>DEFINE CONSTANT PONY AS "default Dirty" OVERRIDE
       >>END-IF
           DISPLAY "My pony is " PONY ";".
       >>IF DPONY IS DEFINED
           DISPLAY "DPONY is DEFINED as " CNSPONY ";".
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12917: ENVPONY=WHITE \$COMPILE prog.cob -fdefine-constant-directive=ok -DDPONY=Stallone"
at_fn_check_prepare_dynamic "ENVPONY=WHITE $COMPILE prog.cob -fdefine-constant-directive=ok -DDPONY=Stallone" "run_misc.at:12917"
( $at_check_trace; ENVPONY=WHITE $COMPILE prog.cob -fdefine-constant-directive=ok -DDPONY=Stallone
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12917"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12919: ENVPONY=WHITE ./prog"
at_fn_check_prepare_trace "run_misc.at:12919"
( $at_check_trace; ENVPONY=WHITE ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ENVPONY env var set to WHITE       ;
1st Dog's name is Pluto;
2nd Dog's name is Piper;
ENVPONY is DEFINED as WHITE;
DPONY set to Stallone;
My pony is White Horse;
DPONY is DEFINED as Stallone;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12919"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_829
#AT_START_830
at_fn_group_banner 830 'run_misc.at:12932' \
  "DEFINE Defaults" "                                " 4
at_xfail=no
(
  $as_echo "830. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       >>SET CONSTANT DOGGY "Pluto"
       >>SET CONSTANT PONY "Piper"
       WORKING-STORAGE SECTION.
       01  THEDOG    PIC X(6) VALUE DOGGY.

       >>DEFINE DPONY  AS PARAMETER OVERRIDE
       >>IF DPONY IS NOT DEFINED
       >>DEFINE DPONY AS "No Dpony"
       >>END-IF
       01  CNSPONY     CONSTANT FROM DPONY.

       >>DEFINE ENVPONY AS PARAMETER OVERRIDE
       >>IF ENVPONY IS NOT DEFINED
       >>DEFINE ENVPONY AS "No EnvPony"
       >>END-IF
       01  HORSE       CONSTANT FROM ENVPONY.
       77  MYHORSE    PIC X(12) VALUE HORSE  .
       77  MYPONYENV  PIC X(12).
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "ENVPONY" UPON ENVIRONMENT-NAME
           ACCEPT  MYPONYENV FROM ENVIRONMENT-VALUE.
           DISPLAY "ENVPONY env var set to " MYPONYENV ";".
           DISPLAY "1st Dog's name is " DOGGY ";".
           DISPLAY "2nd Dog's name is " PONY ";".
       >>IF ENVPONY IS DEFINED
           DISPLAY "ENVPONY is DEFINED as " HORSE ";".
       >>ELSE
           DISPLAY "ENVPONY was NOT DEFINED;".
       >>END-IF
           DISPLAY "DPONY set to " CNSPONY ";".
       >>IF ENVPONY = "WHITE"
       >>DEFINE CONSTANT PONY AS "White Horse" OVERRIDE
       >>ELSE
       >>DEFINE CONSTANT PONY AS "default Dirty" OVERRIDE
       >>END-IF
           DISPLAY "My pony is " PONY ";".
       >>IF DPONY IS DEFINED
           DISPLAY "DPONY is DEFINED as " CNSPONY ";".
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:12983: \$COMPILE prog.cob -fdefine-constant-directive=ok"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fdefine-constant-directive=ok" "run_misc.at:12983"
( $at_check_trace; $COMPILE prog.cob -fdefine-constant-directive=ok
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12983"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:12985: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:12985"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ENVPONY env var set to             ;
1st Dog's name is Pluto;
2nd Dog's name is Piper;
ENVPONY is DEFINED as No EnvPony;
DPONY set to No Dpony;
My pony is default Dirty;
DPONY is DEFINED as No Dpony;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:12985"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_830
#AT_START_831
at_fn_group_banner 831 'run_misc.at:12998' \
  "78 VALUE" "                                       " 4
at_xfail=no
(
  $as_echo "831. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       78  DOGGY     VALUE "Barky".
       01  MYREC.
          05  FLD1   PIC 9(2).
          05  FLD2   PIC X(7).
          05  FLD3   PIC X(2) OCCURS 5 TIMES.
          05  FLD4   PIC X(4).
          05  FLD5   PIC X(4).
       01  PICX      PIC XXX VALUE 'Abc'.
       78  HUN       VALUE 10 * (10 + LENGTH OF PICX) + 12.35-2+3.
       78  HUN2      VALUE HUN * (10 + LENGTH OF PICX) -4.
       01  THEDOG    PIC X(6) VALUE DOGGY.
       78  DIV1      VALUE 100 / 3.
       78  NUM2      VALUE 1 + 2 * 3.
       LINKAGE SECTION.
       01  XMYREC.
          05  XFLD1   PIC 9(2).
          05  XFLD2   PIC X(7).
             78  XPOS3    VALUE NEXT.
          05  XFLD3   PIC X(2) OCCURS 5 TIMES.
             78  XPOS4    VALUE NEXT.
          05  XFLD4   PIC X(4).
          05  XFLD5   PIC X(4).
       78  XSTRT4     VALUE START OF XFLD4.
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "DIV1 is " DIV1.
           DISPLAY "HUN  is " HUN.
           DISPLAY "HUN2 is " HUN2.
           MOVE NUM2 TO FLD1
           IF FLD1 = 9
             DISPLAY "NUM2 is " NUM2 " left to right precedence."
           ELSE
             DISPLAY "NUM2 is " NUM2 " normal precedence."
           END-IF.
           DISPLAY "XFLD3 starts at " XPOS3.
           DISPLAY "XFLD4 starts at " XSTRT4.
           DISPLAY "XFLD4 starts at " XPOS4.
           DISPLAY "Your Dog's name is " DOGGY ";".
           DISPLAY "The Dog's name is " THEDOG ";".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13049: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13049"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13049"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13051: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13051"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "DIV1 is 33
HUN  is 143
HUN2 is 1855
NUM2 is 9 left to right precedence.
XFLD3 starts at 9
XFLD4 starts at 19
XFLD4 starts at 11
Your Dog's name is Barky;
The Dog's name is Barky ;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13051"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_831
#AT_START_832
at_fn_group_banner 832 'run_misc.at:13066' \
  "01 CONSTANT" "                                    " 4
at_xfail=no
(
  $as_echo "832. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       >>DEFINE MYDOG AS "Piper"
       >>DEFINE MYNUM1 AS 11
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  MYREC.
          05  FLD1   PIC 9(2).
          05  FLD2   PIC X(7).
          05  FLD3   PIC X(2) OCCURS 5 TIMES.
          05  FLD4   PIC X(4).
          05  FLD5   PIC X(4).
       01  PICX      PIC XXX VALUE 'Abc'.
       01  CAT       CONSTANT  'Cat '.
       01  DOG       CONSTANT  'Dog '.
       01  YARD      CONSTANT  CAT & "& " & DOG.
       78  HUN       VALUE 10 * (10 + LENGTH OF PICX) + 12.35-2+3.
       78  HUN2      VALUE HUN * (10 + LENGTH OF PICX) -4.
       78  DIV1      VALUE 100 / 3.
       78  NUM2      VALUE 1 + 2 * 3.
       01  CON3      CONSTANT (((1 + 2) * NUM2) - 4).
       01  CON4      CONSTANT AS 3.1416 + CON3.
       01  CON5      CONSTANT 1 + 2 * 3.
       01  DOGNAME   CONSTANT FROM MYDOG.
       01  NUM1      CONSTANT FROM MYNUM1.
       01  CON6      CONSTANT AS CON5 + NUM1.
       >> IF NUM2 DEFINED  *> optional passed from command line
       01  NUM2      CONSTANT FROM MYNUM2.
       >> END-IF
      *
       PROCEDURE DIVISION.
       MAIN.
           DISPLAY "CAT  is '" CAT "'".
           DISPLAY "Yard is '" YARD "'".
           DISPLAY "DIV1 is " DIV1.
           DISPLAY "HUN  is " HUN.
           DISPLAY "HUN2 is " HUN2.
           MOVE NUM2 TO FLD1
           IF FLD1 = 9
             DISPLAY "78 VALUE has simple left to right precedence."
           ELSE
             DISPLAY "78 VALUE is " NUM2 " normal precedence."
           END-IF.
           MOVE CON5 TO FLD1
           IF FLD1 = 7
             DISPLAY "01 CONSTANT has normal operator precedence."
           ELSE
             DISPLAY "01 CONSTANT is " CON5 " left to right precedence."
           END-IF.
           DISPLAY "CON3 is " CON3.
           DISPLAY "CON4 is " CON4 " vs " 3.141596
                   " & " -2.189 " & " +12.
           DISPLAY "CON6 is " CON6 "."
           DISPLAY "My Dog's name is " DOGNAME ";".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13127: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13127"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13127"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13129: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13129"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "CAT  is 'Cat '
Yard is 'Cat & Dog '
DIV1 is 33
HUN  is 143
HUN2 is 1855
78 VALUE has simple left to right precedence.
01 CONSTANT has normal operator precedence.
CON3 is 23
CON4 is 26 vs 3.141596 & -2.189 & +12
CON6 is 18.
My Dog's name is Piper;
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13129"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_832
#AT_START_833
at_fn_group_banner 833 'run_misc.at:13146' \
  "DISPLAY UPON" "                                   " 4
at_xfail=no
(
  $as_echo "833. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           PRINTER IS PRINTER.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77 note PIC X(05).
       PROCEDURE DIVISION CHAINING note.
       DISPLAY "This is sent to CONSOLE " note UPON CONSOLE.
       DISPLAY "This is sent to SYSERR  " note UPON SYSERR.
       DISPLAY "This is sent to PRINTER " note UPON PRINTER.
       DISPLAY "This is also sent to CONSOLE " note UPON CONSOLE.
       DISPLAY "This is also sent to SYSERR  " note UPON SYSERR.
       DISPLAY "This is also sent to PRINTER " note UPON PRINTER.
       DISPLAY "This is sent to SYSPUNCH " note UPON SYSPUNCH
            ON EXCEPTION DISPLAY 'NO ...'        UPON SYSERR.
       DISPLAY "This is also sent to SYSPUNCH " note UPON SYSPCH
            ON EXCEPTION DISPLAY ' ... SYSPUNCH' UPON SYSERR.
       STOP RUN RETURNING 0.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13174: \$COMPILE -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm prog.cob" "run_misc.at:13174"
( $at_check_trace; $COMPILE -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:12: warning: start of statement in Area A
prog.cob:13: warning: start of statement in Area A
prog.cob:14: warning: start of statement in Area A
prog.cob:15: warning: start of statement in Area A
prog.cob:16: warning: start of statement in Area A
prog.cob:17: warning: start of statement in Area A
prog.cob:18: warning: start of statement in Area A
prog.cob:20: warning: start of statement in Area A
prog.cob:22: warning: start of statement in Area A
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13174"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13186: \$COBCRUN_DIRECT ./prog PLAIN"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog PLAIN" "run_misc.at:13186"
( $at_check_trace; $COBCRUN_DIRECT ./prog PLAIN
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "This is sent to SYSERR  PLAIN
This is also sent to SYSERR  PLAIN
libcob: prog.cob:18: warning: COB_DISPLAY_PUNCH_FILE is invalid, output to SYSPUNCH skipped
NO ...
 ... SYSPUNCH
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "This is sent to CONSOLE PLAIN
This is sent to PRINTER PLAIN
This is also sent to CONSOLE PLAIN
This is also sent to PRINTER PLAIN
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13186"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13199: COB_DISPLAY_PRINT_PIPE='cat >>prt.log' \\
COB_DISPLAY_PUNCH_FILE='punch.out' \\
\$COBCRUN_DIRECT ./prog PIPE."
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:13199"
( $at_check_trace; COB_DISPLAY_PRINT_PIPE='cat >>prt.log' \
COB_DISPLAY_PUNCH_FILE='punch.out' \
$COBCRUN_DIRECT ./prog PIPE.
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "This is sent to SYSERR  PIPE.
This is also sent to SYSERR  PIPE.
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "This is sent to CONSOLE PIPE.
This is also sent to CONSOLE PIPE.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13199"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13209: COB_DISPLAY_PRINT_FILE='prt.log' \\
COB_DISPLAY_PUNCH_FILE='punch.out' \\
\$COBCRUN_DIRECT ./prog PRINT"
at_fn_check_prepare_notrace 'an embedded newline' "run_misc.at:13209"
( $at_check_trace; COB_DISPLAY_PRINT_FILE='prt.log' \
COB_DISPLAY_PUNCH_FILE='punch.out' \
$COBCRUN_DIRECT ./prog PRINT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "This is sent to SYSERR  PRINT
This is also sent to SYSERR  PRINT
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "This is sent to CONSOLE PRINT
This is also sent to CONSOLE PRINT
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13209"
$at_failed && at_fn_log_failure
$at_traceon; }




cat >reference <<'_ATEOF'
This is sent to PRINTER PIPE.
This is also sent to PRINTER PIPE.
This is sent to PRINTER PRINT
This is also sent to PRINTER PRINT
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13228: diff reference prt.log"
at_fn_check_prepare_trace "run_misc.at:13228"
( $at_check_trace; diff reference prt.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13228"
if $at_failed; then :
  # Previous test "failed" --> check if EOL of PIPE is the issue

{ set +x
$as_echo "$at_srcdir/run_misc.at:13232: \$SED -e 's/PIPE.\\r/PIPE./g' prt.log > prt2.log"
at_fn_check_prepare_dynamic "$SED -e 's/PIPE.\\r/PIPE./g' prt.log > prt2.log" "run_misc.at:13232"
( $at_check_trace; $SED -e 's/PIPE.\r/PIPE./g' prt.log > prt2.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13232"
$at_failed && at_fn_log_failure  \
"prt.log"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:13233: diff reference prt2.log"
at_fn_check_prepare_trace "run_misc.at:13233"
( $at_check_trace; diff reference prt2.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13233"
$at_failed && at_fn_log_failure  \
"prt.log"
$at_traceon; }


fi
$at_failed && at_fn_log_failure  \
"prt.log"
$at_traceon; }




cat >reference <<'_ATEOF'
This is sent to SYSPUNCH PRINT
This is also sent to SYSPUNCH PRINT
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13243: diff reference punch.out"
at_fn_check_prepare_trace "run_misc.at:13243"
( $at_check_trace; diff reference punch.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13243"
$at_failed && at_fn_log_failure  \
"prt.log" \
"punch.out"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_833
#AT_START_834
at_fn_group_banner 834 'run_misc.at:13248' \
  "FLOAT-DECIMAL w/o SIZE ERROR" "                   " 4
at_xfail=no
(
  $as_echo "834. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  FD16                        USAGE FLOAT-DECIMAL-16.
       01  SV16                        USAGE FLOAT-DECIMAL-16.
       01  FD34                        USAGE FLOAT-DECIMAL-34.
       01  SV34                        USAGE FLOAT-DECIMAL-34.

       PROCEDURE DIVISION.
       CND-000.
           DISPLAY "--- FLOAT-DECIMAL-34 ---"
           COMPUTE FD34 = (((1.0E7 / 2.1E0) / 3.1E0) - 5.0E-1) * 6.0E0
           DISPLAY "A: " FD34

           COMPUTE FD34 = (((1.0E7 / 2.9E0) / 3.9E0) - 5.0E-1) * 6.0E0
           DISPLAY "B: " FD34
           MOVE ZERO TO FD34.
           COMPUTE FD34 = 1.0E3 / 2.1E0
                   ON SIZE ERROR DISPLAY "Z: " FD34 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "Z: " FD34 " IS OK"
           END-COMPUTE.

           DISPLAY "    ..."
           DISPLAY "--- FLOAT-DECIMAL-16 ---"
           COMPUTE FD16 = (((1.0E7 / 2.1E0) / 3.1E0) - 5.0E-1) * 6.0E0
           DISPLAY "A: " FD16

           COMPUTE FD16 = (((1.0E7 / 2.9E0) / 3.9E0) - 5.0E-1) * 6.0E0
           DISPLAY "B: " FD16
           MOVE ZERO TO FD16.
           COMPUTE FD16 = 1.0E3 / 2.1E0
                   ON SIZE ERROR DISPLAY "Z: " FD16 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "Z: " FD16 " IS OK"
           END-COMPUTE.

           DISPLAY "    ..."
           DISPLAY "--- 99 + 1 / 3 ---"
           MOVE -1 TO FD16, FD34.
           COMPUTE FD34 = 99 + 1 / 3
                   ON SIZE ERROR DISPLAY "FD34: " FD34 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "FD34: " FD34 " IS OK"
           END-COMPUTE.
           COMPUTE FD16 = 99 + 1 / 3
                   ON SIZE ERROR DISPLAY "FD16: " FD16 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "FD16: " FD16 " IS OK"
           END-COMPUTE.

           DISPLAY "    ..."
           DISPLAY "--- 99 ---"
           MOVE -1 TO FD16, FD34.
           COMPUTE FD34 = 99
                   ON SIZE ERROR DISPLAY "FD34: " FD34 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "FD34: " FD34 " IS OK"
           END-COMPUTE.
           COMPUTE FD16 = 99
                   ON SIZE ERROR DISPLAY "FD16: " FD16 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "FD16: " FD16 " IS OK"
           END-COMPUTE.

       CND-100-OK.
           DISPLAY "    ..."
           DISPLAY "--- Test overflow ---"
           MOVE 9900000000000 TO FD16, FD34.
           PERFORM 390 TIMES
             MOVE FD16 TO SV16
             COMPUTE FD16 = FD16 * 10
                    ON SIZE ERROR GO TO CND-100-ERR
             END-COMPUTE
             IF FD16 < 9.0
               DISPLAY "FD16: " FD16 " IS Wrong"
               GO TO CND-100-ERR
             END-IF
           END-PERFORM.
           DISPLAY "FD16: " FD16 " IS OK".
           GO TO CND-200-OK.
       CND-100-ERR.
           DISPLAY "FD16: after " SV16 " SIZE ERROR".

       CND-200-OK.
           MOVE 9900000000000 TO FD16, FD34.
           PERFORM 6500 TIMES
             MOVE FD34 TO SV34
             COMPUTE FD34 = FD34 * 10
                    ON SIZE ERROR GO TO CND-200-ERR
             END-COMPUTE
             IF FD34 < 9.0
               GO TO CND-200-ERR
             END-IF
           END-PERFORM.
           DISPLAY "FD34: " FD34 " IS OK".
           GO TO CND-380-OK.
       CND-200-ERR.
           DISPLAY "FD34: after " SV34 " SIZE ERROR".

       CND-380-OK.
           DISPLAY "    ..."
           DISPLAY "--- Test underflow ---"
           MOVE 0.000000099 TO FD16, FD34.
           PERFORM 400 TIMES
             MOVE FD16 TO SV16
             COMPUTE FD16 = FD16 / 10
                    ON SIZE ERROR GO TO CND-300-ERR
             END-COMPUTE
             IF FD16 = 0.0
               GO TO CND-300-ERR
             END-IF
           END-PERFORM.
           DISPLAY "FD16: " FD16 " IS OK".
           GO TO CND-400-OK.
       CND-300-ERR.
           DISPLAY "FD16: after " SV16 " SIZE ERROR".

       CND-400-OK.
           MOVE 0.000000099 TO FD16, FD34.
           PERFORM 6600 TIMES
             MOVE FD34 TO SV34
             COMPUTE FD34 = FD34 / 10.0
                    ON SIZE ERROR GO TO CND-400-ERR
             END-COMPUTE
             IF FD34 = 0.0
               GO TO CND-400-ERR
             END-IF
           END-PERFORM.
           DISPLAY "FD34: " FD34 " IS OK".
           GO TO CND-999.
       CND-400-ERR.
           DISPLAY "FD34: after " SV34 " SIZE ERROR".

       CND-999.
           STOP RUN.
           END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13389: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13389"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13389"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13391: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13391"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "--- FLOAT-DECIMAL-34 ---
A: 9216586.861751152073732718894009216
B: 5305036.78779840848806366047745358
Z: 476.1904761904761904761904761904761 IS OK
    ...
--- FLOAT-DECIMAL-16 ---
A: 9216586.861751152
B: 5305036.787798408
Z: 476.1904761904761 IS OK
    ...
--- 99 + 1 / 3 ---
FD34: 99.33333333333333333333333333333333 IS OK
FD16: 99.33333333333333 IS OK
    ...
--- 99 ---
FD34: 99 IS OK
FD16: 99 IS OK
    ...
--- Test overflow ---
FD16: after 99E369 SIZE ERROR
FD34: after 99E6111 SIZE ERROR
    ...
--- Test underflow ---
FD16: after 99E-398 SIZE ERROR
FD34: after 99E-6176 SIZE ERROR
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13391"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_834
#AT_START_835
at_fn_group_banner 835 'run_misc.at:13422' \
  "FLOAT-SHORT / FLOAT-LONG w/o SIZE ERROR" "        " 4
at_xfail=no
(
  $as_echo "835. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  CMP1                        COMP-1.
       01  SV1                         COMP-1.
       01  CMP2                        COMP-2.
       01  SV2                         COMP-2.

       PROCEDURE DIVISION.
       CND-000.

           DISPLAY "--- COMP-1 ---"
           COMPUTE CMP1 = (((1.0E7 / 2.1E0) / 3.1E0) - 5.0E-1) * 6.0E0
           DISPLAY "A: " CMP1
           COMPUTE CMP1 = (((1.0E7 / 2.9E0) / 3.9E0) - 5.0E-1) * 6.0E0
           DISPLAY "B: " CMP1
           MOVE ZERO TO CMP1.
           COMPUTE CMP1 = 1.0E3 / 2.1E0
                   ON SIZE ERROR DISPLAY "Z: " CMP1 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "Z: " CMP1 " IS OK"
           END-COMPUTE.

           DISPLAY "    ..."
           DISPLAY "--- COMP-2 ---"
           COMPUTE CMP2 = (((1.0E7 / 2.1E0) / 3.1E0) - 5.0E-1) * 6.0E0
      *>   because of possible rounding of intermediates and different
      *>   precision depending on math library / version: plain DISPLAY
           IF CMP2 >= 9216586.86175114 AND <= 9216586.86175116
             DISPLAY "A ~ 9216586.86175115"
           ELSE
             DISPLAY "A: " CMP2
           END-IF
           COMPUTE CMP2 = (((1.0E7 / 2.9E0) / 3.9E0) - 5.0E-1) * 6.0E0
           IF CMP2 >= 5305036.7877983 AND <= 5305036.7877985
             DISPLAY "B ~ 5305036.787798408"
           ELSE
             DISPLAY "B: " CMP2
           END-IF
           MOVE ZERO TO CMP2.
           COMPUTE CMP2 = 1.0E3 / 2.1E0
                   ON SIZE ERROR DISPLAY "Z: " CMP2 " SIZE ERROR"
               NOT ON SIZE ERROR
      *>        see note above
                IF CMP2 >= 476.1904761904760 AND <= 476.1904761904763
                  DISPLAY "Z ~ 476.1904761904761 IS OK"
                ELSE
                  DISPLAY "Z: " CMP2 " IS OK"
                END-IF
           END-COMPUTE.

           DISPLAY "    ..."
           DISPLAY "--- 99 + 1 / 3 ---"
           MOVE -1 TO CMP1, CMP2.
           COMPUTE CMP1 = 99 + 1 / 3
                   ON SIZE ERROR DISPLAY "CMP1: " CMP1 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "CMP1: " CMP1 " IS OK"
           END-COMPUTE.
           COMPUTE CMP2 = 99 + 1 / 3
                   ON SIZE ERROR DISPLAY "CMP2: " CMP2 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "CMP2: " CMP2 " IS OK"
           END-COMPUTE.

           DISPLAY "    ..."
           DISPLAY "--- 99 ---"
           MOVE -1 TO CMP1, CMP2.
           COMPUTE CMP1 = 99
                   ON SIZE ERROR DISPLAY "CMP1: " CMP1 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "CMP1: " CMP1 " IS OK"
           END-COMPUTE.
           COMPUTE CMP2 = 99
                   ON SIZE ERROR DISPLAY "CMP2: " CMP2 " SIZE ERROR"
               NOT ON SIZE ERROR DISPLAY "CMP2: " CMP2 " IS OK"
           END-COMPUTE.

       CND-100-OK.
           DISPLAY "    ..."
           DISPLAY "--- Test overflow ---"

           MOVE 990000 TO CMP1.
           PERFORM 6500 TIMES
             MOVE CMP1 TO SV1
             COMPUTE CMP1 = CMP1 * 10
                    ON SIZE ERROR GO TO CND-350-ERR
             END-COMPUTE
             IF CMP1 < 9.0
               GO TO CND-350-ERR
             END-IF
           END-PERFORM.
           DISPLAY "CMP1: " CMP1 " IS OK".
           GO TO CND-350-OK.
       CND-350-ERR.
           DISPLAY "CMP1: after " SV1 " SIZE ERROR".

       CND-350-OK.
           MOVE 9900000000 TO CMP2.
           PERFORM 6500 TIMES
             MOVE CMP2 TO SV2
             COMPUTE CMP2 = CMP2 * 10
                    ON SIZE ERROR GO TO CND-380-ERR
             END-COMPUTE
             IF CMP2 < 9.0
               GO TO CND-380-ERR
             END-IF
           END-PERFORM.
           DISPLAY "CMP2: " CMP2 " IS OK".
           GO TO CND-500-OK.
       CND-380-ERR.
      *>   because of possible rounding of intermediates and different
      *>   precision depending on math library / version: plain DISPLAY
           IF SV2 >= 9.899999999999E+307 AND
                  <= 9.900000000001E+307
             DISPLAY "CMP2: after ~ 9.899999999999781E+307 SIZE ERROR"
           ELSE
             DISPLAY "CMP2: after " SV2 " SIZE ERROR"
           END-IF
           .

       CND-500-OK.
           MOVE 0.000000099 TO CMP1.
           PERFORM 350 TIMES
             MOVE CMP1 TO SV1
             COMPUTE CMP1 = CMP1 / 10.0
                    ON SIZE ERROR GO TO CND-500-ERR
             END-COMPUTE
             IF CMP1 = 0.0
               GO TO CND-500-ERR
             END-IF
           END-PERFORM.
           DISPLAY "CMP1: " CMP1 " IS OK".
           GO TO CND-600-OK.
       CND-500-ERR.
           DISPLAY "CMP1: after " SV1 " SIZE ERROR".

       CND-600-OK.
           MOVE 0.000000099 TO CMP2.
           PERFORM 350 TIMES
             MOVE CMP2 TO SV2
             COMPUTE CMP2 = CMP2 / 10.0
                    ON SIZE ERROR GO TO CND-600-ERR
             END-COMPUTE
             IF CMP2 = 0.0
               GO TO CND-600-ERR
             END-IF
           END-PERFORM.
           DISPLAY "CMP2: " CMP2 " IS OK".
           GO TO CND-600-XIT.
       CND-600-ERR.
           IF SV2 >= 9.8813129168249E-324 AND <= 9.881312916825E-324
             DISPLAY "CMP2: after ~ 9.881312916824931E-324 SIZE ERROR"
           ELSE
             DISPLAY "CMP2: after " SV2 " SIZE ERROR"
           END-IF
           .
       CND-600-XIT.

       CND-999.
           STOP RUN.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13590: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13590"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13590"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13592: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13592"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "--- COMP-1 ---
A: 9216587
B: 5305037
Z: 476.19049 IS OK
    ...
--- COMP-2 ---
A ~ 9216586.86175115
B ~ 5305036.787798408
Z ~ 476.1904761904761 IS OK
    ...
--- 99 + 1 / 3 ---
CMP1: 99.333336 IS OK
CMP2: 99.33333333333333 IS OK
    ...
--- 99 ---
CMP1: 99 IS OK
CMP2: 99 IS OK
    ...
--- Test overflow ---
CMP1: after 9.8999983E+37 SIZE ERROR
CMP2: after ~ 9.899999999999781E+307 SIZE ERROR
CMP1: after 1.4012985E-45 SIZE ERROR
CMP2: after ~ 9.881312916824931E-324 SIZE ERROR
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13592"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_835
#AT_START_836
at_fn_group_banner 836 'run_misc.at:13621' \
  "FLOAT-SHORT with SIZE ERROR" "                    " 4
at_xfail=no
(
  $as_echo "836. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.

       data division.
       working-storage section.
      *------------------------
       77 counter             pic s9(4) binary value zero.
      * FLOAT-SHORT (if binary-comp-1 is not active)
       77 floatValue          COMP-1  value 2.
       77 lastFloatValue      COMP-1.

      ******************************************************************
       procedure division.
       main section.
           perform varying counter from 1 by 1 until
                           counter > 130
      *>      display 'counter: ' counter ', value: ' floatValue
              compute floatValue = floatValue * 2
                   ON SIZE ERROR
                      display 'SIZE ERROR, last value = ' floatValue
                      exit perform
               not ON SIZE ERROR
                      if floatValue > lastFloatValue
                         move floatValue to lastFloatValue
                      else
                         display 'math ERROR, last value > current: '
                                 lastFloatValue ' > ' floatValue
                         exit perform
                      end-if
              end-compute
           end-perform
           if counter not = 127
              display 'counter is ' counter
           end-if

           goback.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13663: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13663"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13663"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13665: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13665"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SIZE ERROR, last value = 1.7014118E+38
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13665"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_836
#AT_START_837
at_fn_group_banner 837 'run_misc.at:13672' \
  "FLOAT-LONG with SIZE ERROR" "                     " 4
at_xfail=no
(
  $as_echo "837. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.

       data division.
       working-storage section.
      *------------------------
       77 counter             pic s9(4) binary value zero.
      * FLOAT-LONG
       77 doubleValue         COMP-2 value 2.
       77 lastDoubleValue     COMP-2.

      ******************************************************************
       procedure division.
       main section.
           perform varying counter from 1 by 1 until
                           counter > 1060
      *>      display 'counter: ' counter ', value: ' doubleValue
              compute doubleValue = doubleValue * 2
                   ON SIZE ERROR
                      display 'SIZE ERROR raised'
                              with no advancing upon syserr
                      end-display
                      display 'SIZE ERROR, last value = ' doubleValue
                              upon sysout
                      end-display
                      exit perform
               not ON SIZE ERROR
                      if doubleValue > lastdoubleValue
                         move doubleValue to lastdoubleValue
                      else
                         display 'math ERROR, last value > current: '
                                 lastdoubleValue ' > ' doubleValue
                                 upon syserr
                         end-display
                         exit perform
                      end-if
              end-compute
           end-perform
           if not (counter >= 1023 and <=1025)
              display ' '                   upon syserr
              display 'counter is ' counter upon syserr
           end-if

           goback.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13722: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13722"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13722"
$at_failed && at_fn_log_failure
$at_traceon; }

# note: the actual value is not checked as it depends on non-portable
#       intermediate rounding
{ set +x
$as_echo "$at_srcdir/run_misc.at:13725: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13725"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "SIZE ERROR raised" | \
  $at_diff - "$at_stderr" || at_failed=:
echo stdout:; cat "$at_stdout"
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13725"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_837
#AT_START_838
at_fn_group_banner 838 'run_misc.at:13730' \
  "EC-SIZE-ZERO-DIVIDE" "                            " 4
at_xfail=no
(
  $as_echo "838. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9 VALUE 0.
       01  y PIC 9 VALUE 0.

       PROCEDURE DIVISION.
           DIVIDE x BY y GIVING y
           IF FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           NOT = 'EC-SIZE-ZERO-DIVIDE'
              DISPLAY 'Wrong/missing exception: '
                      FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           SET LAST EXCEPTION TO OFF
           IF FUNCTION EXCEPTION-STATUS NOT = SPACES
              DISPLAY 'Exception is not empty after reset: '
                      FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           MOVE 0 TO y
           COMPUTE y = x - 1 / y + 6.5
           IF FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           NOT = 'EC-SIZE-ZERO-DIVIDE'
              DISPLAY 'Wrong/missing exception: '
                      FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13768: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13768"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13768"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:13769: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13769"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13769"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_838
#AT_START_839
at_fn_group_banner 839 'run_misc.at:13773' \
  "EC-SIZE-OVERFLOW" "                               " 4
at_xfail=no
(
  $as_echo "839. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 9 VALUE 1.
       01  y PIC 9.

       PROCEDURE DIVISION.
      *    raise exception checked in previous test
      *    as it may interfere with the expected exception
           DIVIDE x BY y GIVING y
           DIVIDE x BY 0.1 GIVING y
           IF FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           NOT = 'EC-SIZE-OVERFLOW'
              DISPLAY 'Wrong/missing exception: '
                      FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:13799: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13799"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13799"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:13800: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13800"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13800"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_839
#AT_START_840
at_fn_group_banner 840 'run_misc.at:13804' \
  "Constant Expressions" "                           " 4
at_xfail=no
(
  $as_echo "840. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  VAR       PIC X(200).
       01  OTHERVAR  PIC X(115).
       78  VAR-LEN   VALUE 115.

       PROCEDURE DIVISION.
       MAIN-10.
           MOVE "Peek a boo" TO VAR.
           EVALUATE TRUE
               ALSO FALSE
               ALSO TRUE
            WHEN    TRUE
               ALSO VAR-LEN > 16 AND VAR-LEN < 200
               ALSO TRUE
                  MOVE OTHERVAR (1 : VAR-LEN - 9)
                    TO VAR (16 - VAR-LEN : VAR-LEN - 9)
                  DISPLAY "A: Should NOT be executed"
            WHEN  TRUE
               ALSO VAR-LEN < 16
               ALSO TRUE
                  MOVE OTHERVAR TO VAR
                  DISPLAY "A: OK VAR-LEN > 16 AND VAR-LEN < 200"
            WHEN  TRUE
               ALSO VAR = SPACES
               ALSO TRUE
                  MOVE OTHERVAR TO VAR
                  DISPLAY "A: OK VAR IS SPACES"
           END-EVALUATE.

           MOVE "Peek a boo" TO VAR.
           EVALUATE 3 EQUALS 7
           WHEN  VAR = SPACES
               DISPLAY "B: OK VAR IS NOT SPACES"
           WHEN  VAR NOT = SPACES
               DISPLAY "B: FALSE VAR IS SPACES"
           END-EVALUATE.

           MOVE SPACES       TO VAR.
           EVALUATE FALSE
           WHEN  VAR = SPACES
               DISPLAY "C: FALSE VAR IS SPACES"
           WHEN  VAR NOT = SPACES
               DISPLAY "C: OK VAR IS SPACES"
           END-EVALUATE.

           MOVE "Peek a boo" TO VAR.
           EVALUATE TRUE
           WHEN  VAR = SPACES
               DISPLAY "D: BAD VAR IS SPACES"
           WHEN  VAR NOT = SPACES
               DISPLAY "D: OK VAR IS NOT SPACES"
           END-EVALUATE.

           MOVE SPACES       TO VAR.
           EVALUATE VAR-LEN ALSO VAR
           WHEN  < 32 ALSO SPACES
               DISPLAY "E: OK VAR IS SPACES"
           WHEN  > 16 ALSO NOT SPACES
               DISPLAY "E: BAD VAR IS NOT SPACES"
           WHEN OTHER
               DISPLAY "E: OK OTHER option taken"
           END-EVALUATE.

           STOP RUN.
_ATEOF


# Note: this program errors without constant folding, but that is
#       checked in syn_misc.at already; we explicit specify the remove
#       of folded constants option allowing to run with COBOL_FLAGS=-g
{ set +x
$as_echo "$at_srcdir/run_misc.at:13880: \$COMPILE prog.cob -fconstant-folding -fremove-unreachable -w"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fconstant-folding -fremove-unreachable -w" "run_misc.at:13880"
( $at_check_trace; $COMPILE prog.cob -fconstant-folding -fremove-unreachable -w
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13880"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13882: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13882"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A: OK VAR-LEN > 16 AND VAR-LEN < 200
B: OK VAR IS NOT SPACES
C: OK VAR IS SPACES
D: OK VAR IS NOT SPACES
E: OK OTHER option taken
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13882"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_840
#AT_START_841
at_fn_group_banner 841 'run_misc.at:13893' \
  "ENTRY FOR GO TO / GO TO ENTRY" "                  " 4
at_xfail=no
(
  $as_echo "841. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 JUMP-ENTRY    PIC 9  VALUE 6.
          88 EXT-MODUS  VALUES 3, 4.
       LINKAGE SECTION.
       PROCEDURE DIVISION.
           GO TO ENTRY 'STMT05'.
       MAIN.
           GO TO ENTRY 'STMT01'
                       'STMT02'
                       'STMT03'
                       'STMT04'
                       'STMT05'
           DEPENDING ON JUMP-ENTRY
           DISPLAY 'NOT JUMPED'
           GOBACK.
       ENTRY FOR GO TO 'STMT01'
           DISPLAY 'STMT01'
       ENTRY FOR GO TO 'STMT02'
           PERFORM 3 TIMES
       ENTRY FOR GO TO 'STMT03'
              DISPLAY 'STMT03'
       ENTRY FOR GO TO 'STMT04'  DISPLAY 'STMT04'
              IF EXT-MODUS EXIT PERFORM END-IF
           END-PERFORM
       ENTRY FOR GO TO 'STMT05'
           DISPLAY 'STMT05'
           SUBTRACT 1 FROM JUMP-ENTRY
           GO TO MAIN.

_ATEOF


# TODO: move to syntax checks, together with all expected error messages
{ set +x
$as_echo "$at_srcdir/run_misc.at:13932: \$COMPILE -std=mf-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf-strict prog.cob" "run_misc.at:13932"
( $at_check_trace; $COMPILE -std=mf-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
prog.cob: in paragraph 'MAIN':
prog.cob:18: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
prog.cob:20: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
prog.cob:22: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
prog.cob:24: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
prog.cob:26: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
prog.cob:29: error: ENTRY FOR GO TO does not conform to Micro Focus COBOL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:13932"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13943: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:13943"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:10: warning: ENTRY FOR GO TO used
prog.cob: in paragraph 'MAIN':
prog.cob:18: warning: ENTRY FOR GO TO used
prog.cob:20: warning: ENTRY FOR GO TO used
prog.cob:22: warning: ENTRY FOR GO TO used
prog.cob:24: warning: ENTRY FOR GO TO used
prog.cob:26: warning: ENTRY FOR GO TO used
prog.cob:29: warning: ENTRY FOR GO TO used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13943"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:13954: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:13954"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STMT05
STMT05
STMT04
STMT05
STMT03
STMT04
STMT05
STMT03
STMT04
STMT03
STMT04
STMT03
STMT04
STMT05
STMT01
STMT03
STMT04
STMT03
STMT04
STMT03
STMT04
STMT05
NOT JUMPED
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:13954"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_841
#AT_START_842
at_fn_group_banner 842 'run_misc.at:13983' \
  "runtime checks within conditions" "               " 4
at_xfail=no
(
  $as_echo "842. $at_setup_line: testing $at_desc ..."
  $at_traceon



# this serves as a sample what was broken in the initial
# 3.1 release

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 mytab.
          03  VAR                   PIC  9(02) value 1.
          03  VAR2                  PIC  9(02) value 2.
          03                        OCCURS 2.
           05 T15-PRGM              PIC  X(08).
           05 T16-PRGM              PIC  X(08).
          03                        OCCURS 2.
           05 T15-NRGM              PIC  9(04).
           05 T16-NRGM              USAGE BINARY-INT.

       PROCEDURE DIVISION.
      *
           MOVE 'TESTME' TO T16-PRGM (VAR) (VAR2:)
           MOVE T16-PRGM (VAR) (1:VAR2) TO T15-PRGM (VAR)
           IF  T16-PRGM(VAR)
             = T15-PRGM(VAR2)
              DISPLAY 'WRONG RESULT OCCURS'.

           IF  MYTAB(VAR:VAR2)
             = MYTAB(VAR2:VAR)
              DISPLAY 'WRONG RESULT REFMOD'.

           INITIALIZE mytab

           GOBACK.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14022: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:14022"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14022"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14023: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14023"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14023"
$at_failed && at_fn_log_failure
$at_traceon; }

# note: we mostly are interested in a good codegen here...


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 mytab.
          03  VAR                   PIC  9(02) value 1.
          03  VAR2                  PIC  9(02) value 3.
          03                        OCCURS 2.
           05 T15-PRGM              PIC  X(08).
           05 T16-PRGM              PIC  X(08).
          03                        OCCURS 2.
           05 T15-NRGM              PIC  9(04).
           05 T16-NRGM              USAGE BINARY-INT.
          05 buffer                 PIC X(500).

       PROCEDURE DIVISION.
      *
           IF  T16-PRGM(VAR)
             = T15-PRGM(VAR2)
              DISPLAY 'WRONG RESULT OCCURS'.

           GOBACK.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14053: \$COBC -x prog2.cob"
at_fn_check_prepare_dynamic "$COBC -x prog2.cob" "run_misc.at:14053"
( $at_check_trace; $COBC -x prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14053"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14054: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_misc.at:14054"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14054"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14055: \$COBC -x --debug -o prog2b prog2.cob"
at_fn_check_prepare_dynamic "$COBC -x --debug -o prog2b prog2.cob" "run_misc.at:14055"
( $at_check_trace; $COBC -x --debug -o prog2b prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14055"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14056: \$COBCRUN_DIRECT ./prog2b"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2b" "run_misc.at:14056"
( $at_check_trace; $COBCRUN_DIRECT ./prog2b
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:21: error: subscript of 'T15-PRGM' out of bounds: 3
note: maximum subscript for 'T15-PRGM': 2
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14056"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog3.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 mytab.
          03  VAR                   PIC  9(02) value 1.
          03  VAR2                  PIC  9(02) value 99.
          03                        OCCURS 2.
           05 T15-PRGM              PIC  X(08).
           05 T16-PRGM              PIC  X(08).
          03                        OCCURS 2.
           05 T15-NRGM              PIC  9(04).
           05 T16-NRGM              USAGE BINARY-INT.

       PROCEDURE DIVISION.

           IF  MYTAB(VAR:VAR2)
      *>     = MYTAB(VAR2:VAR)   that _should_ work but on x86_64
      *>                         the second line is evaluated first
             = MYTAB(VAR:VAR )
              DISPLAY 'WRONG RESULT REFMOD'.

           GOBACK.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14087: \$COBC -x prog3.cob"
at_fn_check_prepare_dynamic "$COBC -x prog3.cob" "run_misc.at:14087"
( $at_check_trace; $COBC -x prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14087"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14088: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14088"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14088"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14089: \$COBC -x --debug -o prog3b prog3.cob"
at_fn_check_prepare_dynamic "$COBC -x --debug -o prog3b prog3.cob" "run_misc.at:14089"
( $at_check_trace; $COBC -x --debug -o prog3b prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14089"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14090: \$COBCRUN_DIRECT ./prog3b"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3b" "run_misc.at:14090"
( $at_check_trace; $COBCRUN_DIRECT ./prog3b
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog3.cob:20: error: length of 'mytab' out of bounds: 99, maximum: 52
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14090"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_842
#AT_START_843
at_fn_group_banner 843 'run_misc.at:14097' \
  "runtime check: write to internal storage (1)" "   " 4
at_xfail=no
(
  $as_echo "843. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: this check is likely unportable and therefore will likely be adjusted/skipped,
#       mainly because the memory layout of consecutive variables is not guaranteed;
#       it is expected to raise a crash if C bound checking is enabled

cat >caller.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    caller.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 var                   PIC  X.
       01 vars.
          03 filler             PIC  X.
          03 vars-field         PIC  X.

       01 varg                  GLOBAL.
          03 filler             PIC  X.
          03 varg-field         PIC  X.
       01 vare                  EXTERNAL.
          03 filler             PIC  X.
          03 vare-field         PIC  X.
       01 varb                  BASED.
          03 filler             PIC  X.
          03 varb-field         PIC  X.
       LINKAGE SECTION.
       01 varl                  PIC  X.
       01 varls.
          03 filler             PIC  X.
          03 varls-field        PIC  X.

       PROCEDURE DIVISION.
      *
           CALL "callee" USING var
      *    without the check this second call would SIGSEGV
           CALL "callee" USING var

      *    the following are mostly in to co-test the codegen
           CALL "callee" USING vars
           CALL "callee" USING varg
           CALL "callee" USING vare
           CALL "callee" USING varb
           CALL "callee" USING varl
           CALL "callee" USING varls
           CALL "callee" USING vars-field
           CALL "callee" USING varg-field
           CALL "callee" USING vare-field
           CALL "callee" USING varb-field
           CALL "callee" USING varls-field

           GOBACK.
_ATEOF


cat >callee.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    callee.

       DATA DIVISION.
       LINKAGE SECTION.

       77 var                   PIC  X.
       01 lrec.
          03  lvar                  PIC  X(32).
          03  lvar2                 PIC  X(32).

       PROCEDURE DIVISION USING var.
      *
           SET ADDRESS OF lrec TO ADDRESS OF var
           SET ADDRESS OF lrec DOWN BY 32
           MOVE SPACES TO lrec
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:14173: \$COMPILE -fno-ec=program-arg-mismatch -fmemory-check=pointer caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=program-arg-mismatch -fmemory-check=pointer caller.cob" "run_misc.at:14173"
( $at_check_trace; $COMPILE -fno-ec=program-arg-mismatch -fmemory-check=pointer caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14173"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14174: \$COMPILE_MODULE -fno-ec=program-arg-mismatch callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fno-ec=program-arg-mismatch callee.cob" "run_misc.at:14174"
( $at_check_trace; $COMPILE_MODULE -fno-ec=program-arg-mismatch callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14174"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14175: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:14175"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: caller.cob:30: error: memory violation detected after CALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14175"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:14179: \$COMPILE -fno-ec=program-arg-mismatch -fmemory-check=using caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=program-arg-mismatch -fmemory-check=using caller.cob" "run_misc.at:14179"
( $at_check_trace; $COMPILE -fno-ec=program-arg-mismatch -fmemory-check=using caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14179"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14180: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:14180"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: caller.cob:30: error: memory violation detected for 'var' after CALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14180"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:14184: \$COMPILE -fno-ec=program-arg-mismatch -fmemory-check caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=program-arg-mismatch -fmemory-check caller.cob" "run_misc.at:14184"
( $at_check_trace; $COMPILE -fno-ec=program-arg-mismatch -fmemory-check caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14184"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14185: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:14185"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: caller.cob:30: error: memory violation detected for 'var' after CALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14185"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_misc.at:14189: \$COMPILE -fno-ec=program-arg-mismatch -fmemory-check=all caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-ec=program-arg-mismatch -fmemory-check=all caller.cob" "run_misc.at:14189"
( $at_check_trace; $COMPILE -fno-ec=program-arg-mismatch -fmemory-check=all caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14189"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14190: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_misc.at:14190"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: caller.cob:30: error: memory violation detected for 'var' after CALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14190"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_843
#AT_START_844
at_fn_group_banner 844 'run_misc.at:14197' \
  "runtime check: write to internal storage (2)" "   " 4
at_xfail=no
(
  $as_echo "844. $at_setup_line: testing $at_desc ..."
  $at_traceon



# PROG A (WS 16 bytes) has its WS overwritten and calls PROG B
# because of the write outside of WS the internal storage is broken
# and the call pointer contains an invalid address
# note: this check is possibly unportable and therefore will likely be adjusted/skipped
#       it is expected to raise a crash if C bound checking is enabled

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 DUMMY-STORAGE             PIC  X(128).

       PROCEDURE DIVISION.
      *    using the var so cobc cannot easily optimize that out
           IF DUMMY-STORAGE (1:1) <> SPACE  INITIALIZE DUMMY-STORAGE.

      *    We use a simple wrapper to make it _less_ likely that the
      *    following "real test" SIGSEGVs during MOVE
           CALL STATIC "progt".

      *    we don't expect to ever get here - but this creates more
      *    memory space to decrease the likelyness of a SIGSEGV more
           CALL STATIC "dummy".

           GOBACK.
       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    progt.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       77 PNT USAGE POINTER EXTERNAL.

       01 REC.
          03  VAR                   PIC  X.
          03  VAR2                  PIC  X.

       LINKAGE SECTION.
       01 LREC.
          03  LVAR                  PIC  X(64).
          03  LVAR2                 PIC  X(64).

       PROCEDURE DIVISION.
      *    using a (not working) call prevents the C compiler
      *    to know that we (do not) change the pointer variable
      *    and therefore disallows it to check
      *    "that points to VAR2, you only have 2 bytes" (done with gcc -O)
           SET PNT TO ADDRESS OF VAR2.
           CALL "notthere" USING PNT ON EXCEPTION CONTINUE.
           SET ADDRESS OF LREC TO PNT.
           MOVE SPACES TO LREC.

           CALL "broken".

           GOBACK.
       END PROGRAM progt.

       IDENTIFICATION DIVISION.
       PROGRAM-ID.    dummy.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       01 DUMMY-STORAGE             PIC  X(128).

       PROCEDURE DIVISION.
      *    using the var so cobc cannot easily optimize that out
           IF DUMMY-STORAGE (1:1) <> SPACE  INITIALIZE DUMMY-STORAGE.

           GOBACK.
       END PROGRAM dummy.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:14278: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:14278"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14278"
$at_failed && at_fn_log_failure
$at_traceon; }


# skipping the (nonportable) test - hardened GCC SIGSEGVs on the bad MOVE,
# clang use a different memory layout so we never actually break
# the call-pointers
$as_echo "run_misc.at:14283" >"$at_check_line_file"
at_fn_check_skip 77 "$at_srcdir/run_misc.at:14283"

{ set +x
$as_echo "$at_srcdir/run_misc.at:14285: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14285"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:52: error: memory violation detected after INIT CALL
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14285"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_844
#AT_START_845
at_fn_group_banner 845 'run_misc.at:14292' \
  "libcob version check" "                           " 4
at_xfail=no
(
  $as_echo "845. $at_setup_line: testing $at_desc ..."
  $at_traceon



# using a C program here, normally this would be called from old or newer modules
cat >prog.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

#define COUNT_OF(x) (sizeof(x)/sizeof(x[0]))

struct verify_t {
  char *prog, *packver_prog;
  int patchlev_prog;
} verify[] = {
#include "testdata.h"
};

int
main(int argc, char *argv[])
{
  struct verify_t *p;
  for( p=verify; p < verify + COUNT_OF(verify); p++ ) {
    cob_check_version(p->prog, p->packver_prog, p->patchlev_prog);
  }
  return 0;
}
_ATEOF


# good cases
cat >testdata.h <<'_ATEOF'

#define TST_STRINGIFY(s)			#s
#define TST_XSTRINGIFY(s)		TST_STRINGIFY (s)
  { "test22", "2.2",    0 },
/*  { "TestMatch1",
		TST_XSTRINGIFY (__LIBCOB_VERSION) "."
		TST_XSTRINGIFY (__LIBCOB_VERSION_MINOR) "."
		TST_XSTRINGIFY (__LIBCOB_VERSION_PATCHLEVEL),
    0}, */
  { "TestMatch2",
		TST_XSTRINGIFY (__LIBCOB_VERSION) "."
		TST_XSTRINGIFY (__LIBCOB_VERSION_MINOR) "."
      "0",
    0},
  { "TestMatch3",
		TST_XSTRINGIFY (__LIBCOB_VERSION) "."
		TST_XSTRINGIFY (__LIBCOB_VERSION_MINOR),
    0 }
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:14341: \$COMPILE prog.c"
at_fn_check_prepare_dynamic "$COMPILE prog.c" "run_misc.at:14341"
( $at_check_trace; $COMPILE prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14341"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14342: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14342"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14342"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >testdata.h <<'_ATEOF'

  { "TooSmall1", "1.1",    0 }
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14347: \$COMPILE -o small1 prog.c"
at_fn_check_prepare_dynamic "$COMPILE -o small1 prog.c" "run_misc.at:14347"
( $at_check_trace; $COMPILE -o small1 prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14347"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14348: \$COBCRUN_DIRECT ./small1 2>small1.log"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./small1 2>small1.log" "run_misc.at:14348"
( $at_check_trace; $COBCRUN_DIRECT ./small1 2>small1.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14348"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14349: \$GREP -v \"libcob has\" small1.log"
at_fn_check_prepare_dynamic "$GREP -v \"libcob has\" small1.log" "run_misc.at:14349"
( $at_check_trace; $GREP -v "libcob has" small1.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "libcob: error: version mismatch
note: TooSmall1 has version 1.1.0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14349"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >testdata.h <<'_ATEOF'

  { "TooSmall2", "2.0",    0 }
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14357: \$COMPILE -o small2 prog.c"
at_fn_check_prepare_dynamic "$COMPILE -o small2 prog.c" "run_misc.at:14357"
( $at_check_trace; $COMPILE -o small2 prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14357"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14358: \$COBCRUN_DIRECT ./small2 2>small2.log"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./small2 2>small2.log" "run_misc.at:14358"
( $at_check_trace; $COBCRUN_DIRECT ./small2 2>small2.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14358"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14359: \$GREP -v \"libcob has\" small2.log"
at_fn_check_prepare_dynamic "$GREP -v \"libcob has\" small2.log" "run_misc.at:14359"
( $at_check_trace; $GREP -v "libcob has" small2.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "libcob: error: version mismatch
note: TooSmall2 has version 2.0.0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14359"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >testdata.h <<'_ATEOF'

  { "TooHigh1", "3.3",    0 },
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14367: \$COMPILE -o high1 prog.c"
at_fn_check_prepare_dynamic "$COMPILE -o high1 prog.c" "run_misc.at:14367"
( $at_check_trace; $COMPILE -o high1 prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14367"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14368: \$COBCRUN_DIRECT ./high1 2>high1.log"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./high1 2>high1.log" "run_misc.at:14368"
( $at_check_trace; $COBCRUN_DIRECT ./high1 2>high1.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14368"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14369: \$GREP -v \"libcob has\" high1.log"
at_fn_check_prepare_dynamic "$GREP -v \"libcob has\" high1.log" "run_misc.at:14369"
( $at_check_trace; $GREP -v "libcob has" high1.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "libcob: error: version mismatch
note: TooHigh1 has version 3.3.0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14369"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >testdata.h <<'_ATEOF'

  { "TooHigh2", "4.0",  0 }
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14377: \$COMPILE -o high2 prog.c"
at_fn_check_prepare_dynamic "$COMPILE -o high2 prog.c" "run_misc.at:14377"
( $at_check_trace; $COMPILE -o high2 prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14377"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14378: \$COBCRUN_DIRECT ./high2 2>high2.log"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./high2 2>high2.log" "run_misc.at:14378"
( $at_check_trace; $COBCRUN_DIRECT ./high2 2>high2.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14378"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14379: \$GREP -v \"libcob has\" high2.log"
at_fn_check_prepare_dynamic "$GREP -v \"libcob has\" high2.log" "run_misc.at:14379"
( $at_check_trace; $GREP -v "libcob has" high2.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "libcob: error: version mismatch
note: TooHigh2 has version 4.0.0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14379"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >testdata.h <<'_ATEOF'

  { "TooHigh3", "4.0.1",  2 }
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_misc.at:14387: \$COMPILE -o high3 prog.c"
at_fn_check_prepare_dynamic "$COMPILE -o high3 prog.c" "run_misc.at:14387"
( $at_check_trace; $COMPILE -o high3 prog.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14387"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14388: \$COBCRUN_DIRECT ./high3 2>high3.log"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./high3 2>high3.log" "run_misc.at:14388"
( $at_check_trace; $COBCRUN_DIRECT ./high3 2>high3.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_misc.at:14388"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14389: \$GREP -v \"libcob has\" high3.log"
at_fn_check_prepare_dynamic "$GREP -v \"libcob has\" high3.log" "run_misc.at:14389"
( $at_check_trace; $GREP -v "libcob has" high3.log
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "libcob: error: version mismatch
note: TooHigh3 has version 4.0.1.2
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14389"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_845
#AT_START_846
at_fn_group_banner 846 'run_misc.at:14397' \
  "assorted math" "                                  " 4
at_xfail=no
(
  $as_echo "846. $at_setup_line: testing $at_desc ..."
  $at_traceon



# this is a test containing different small reproducers from
# bug reports

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 n pic 99 value 89.
       01 m pic 99 value 0.
       01 variable usage signed-int value 0.
          88 a-one value 1.
          88 a-two value 2.
       PROCEDURE DIVISION.
      *> bug #702, "pow"-call in generated program
           display n(n**0+ 1:) with no advancing.
           display "-"         with no advancing.
           display n(n**m+ 1:) with no advancing.
      *> bug #631 arithmetic handling (optimize code)
           if not a-one and not a-two
              display 'succeeded'
           else
              display 'failed'.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_misc.at:14426: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_misc.at:14426"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14426"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14427: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14427"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "9-9succeeded
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14427"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_846
#AT_START_847
at_fn_group_banner 847 'run_misc.at:14434' \
  "compare numeric DISPLAY SPACE with ZERO" "        " 4
at_xfail=no
(
  $as_echo "847. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  TST-VARS.
           03 TST-NUMBER         PIC  9(6).
           03 TST-NUMBER-SIGNED  PIC S9(6).
           03 TST-DECIMAL        PIC  9(2)V9(4).
           03 TST-DECIMAL-SIGNED PIC S9(2)V9(4).
       77     ZERO-DECIMAL       PIC  9(2)V9(4) VALUE ZERO.
       77     ZERO-NUMBER        PIC  9(6)      VALUE ZERO.

       PROCEDURE DIVISION.
           MOVE SPACES TO TST-VARS

           IF TST-NUMBER > 0
              DISPLAY "TST-NUMBER IS > 0".
           IF TST-NUMBER NOT = 0
              DISPLAY "TST-NUMBER IS NOT 0".
           IF TST-NUMBER < 0
              DISPLAY "TST-NUMBER IS < 0".

           IF TST-NUMBER-SIGNED > 0
              DISPLAY "TST-NUMBER-SIGNED IS > 0".
           IF TST-NUMBER-SIGNED NOT = 0
              DISPLAY "TST-NUMBER-SIGNED IS NOT 0".
           IF TST-NUMBER-SIGNED < 0
              DISPLAY "TST-NUMBER-SIGNED IS < 0".

           IF TST-DECIMAL > 0
              DISPLAY "TST-DECIMAL IS > 0".
           IF TST-DECIMAL NOT = 0
              DISPLAY "TST-DECIMAL IS NOT 0".
           IF TST-DECIMAL < 0
              DISPLAY "TST-DECIMAL IS < 0".

           IF TST-DECIMAL-SIGNED > 0
              DISPLAY "TST-DECIMAL-SIGNED IS > 0".
           IF TST-DECIMAL-SIGNED NOT = 0
              DISPLAY "TST-DECIMAL-SIGNED IS NOT 0".
           IF TST-DECIMAL-SIGNED < 0
              DISPLAY "TST-DECIMAL-SIGNED IS < 0".

           IF TST-NUMBER > ZERO-NUMBER
              DISPLAY "TST-NUMBER IS > ZERO-NUMBER".
           IF TST-NUMBER NOT = ZERO-NUMBER
              DISPLAY "TST-NUMBER IS NOT ZERO-NUMBER".
           IF TST-NUMBER < ZERO-NUMBER
              DISPLAY "TST-NUMBER IS < ZERO-NUMBER".

           IF TST-NUMBER-SIGNED > ZERO-NUMBER
              DISPLAY "TST-NUMBER-SIGNED IS > ZERO-NUMBER".
           IF TST-NUMBER-SIGNED NOT = ZERO-NUMBER
              DISPLAY "TST-NUMBER-SIGNED IS NOT ZERO-NUMBER".
           IF TST-NUMBER-SIGNED < ZERO-NUMBER
              DISPLAY "TST-NUMBER-SIGNED IS < ZERO-NUMBER".

           IF TST-DECIMAL > ZERO-NUMBER
              DISPLAY "TST-DECIMAL IS > ZERO-NUMBER".
           IF TST-DECIMAL NOT = ZERO-NUMBER
              DISPLAY "TST-DECIMAL IS NOT ZERO-NUMBER".
           IF TST-DECIMAL < ZERO-NUMBER
              DISPLAY "TST-DECIMAL IS < ZERO-NUMBER".

           IF TST-DECIMAL-SIGNED > ZERO-NUMBER
              DISPLAY "TST-DECIMAL-SIGNED IS > ZERO-NUMBER".
           IF TST-DECIMAL-SIGNED NOT = ZERO-NUMBER
              DISPLAY "TST-DECIMAL-SIGNED IS NOT ZERO-NUMBER".
           IF TST-DECIMAL-SIGNED < ZERO-NUMBER
              DISPLAY "TST-DECIMAL-SIGNED IS < ZERO-NUMBER".

           IF TST-NUMBER > ZERO-DECIMAL
              DISPLAY "TST-NUMBER IS > ZERO-DECIMAL".
           IF TST-NUMBER NOT = ZERO-DECIMAL
              DISPLAY "TST-NUMBER IS NOT ZERO-DECIMAL".
           IF TST-NUMBER < ZERO-DECIMAL
              DISPLAY "TST-NUMBER IS < ZERO-DECIMAL".

           IF TST-NUMBER-SIGNED > ZERO-DECIMAL
              DISPLAY "TST-NUMBER-SIGNED IS > ZERO-DECIMAL".
           IF TST-NUMBER-SIGNED NOT = ZERO-DECIMAL
              DISPLAY "TST-NUMBER-SIGNED IS NOT ZERO-DECIMAL".
           IF TST-NUMBER-SIGNED < ZERO-DECIMAL
              DISPLAY "TST-NUMBER-SIGNED IS < ZERO-DECIMAL".

           IF TST-DECIMAL > ZERO-DECIMAL
              DISPLAY "TST-DECIMAL IS > ZERO-DECIMAL".
           IF TST-DECIMAL NOT = ZERO-DECIMAL
              DISPLAY "TST-DECIMAL IS NOT ZERO-DECIMAL".
           IF TST-DECIMAL < ZERO-DECIMAL
              DISPLAY "TST-DECIMAL IS < ZERO-DECIMAL".

           IF TST-DECIMAL-SIGNED > ZERO-DECIMAL
              DISPLAY "TST-DECIMAL-SIGNED IS > ZERO-DECIMAL".
           IF TST-DECIMAL-SIGNED NOT = ZERO-DECIMAL
              DISPLAY "TST-DECIMAL-SIGNED IS NOT ZERO-DECIMAL".
           IF TST-DECIMAL-SIGNED < ZERO-DECIMAL
              DISPLAY "TST-DECIMAL-SIGNED IS < ZERO-DECIMAL".

           GOBACK.
_ATEOF


# dropping "fast compare" does an internal numeric compare, where invalid data
# in USAGE DISPLAY is converted (onlysecond half-byte used) and leading SPACE
# is skipped in general
{ set +x
$as_echo "$at_srcdir/run_misc.at:14543: \$COMPILE -Wno-constant-expression -fno-fast-compare prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-constant-expression -fno-fast-compare prog.cob" "run_misc.at:14543"
( $at_check_trace; $COMPILE -Wno-constant-expression -fno-fast-compare prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14543"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14544: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14544"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14544"
$at_failed && at_fn_log_failure
$at_traceon; }


# with "fast compare" enabled, the same PIC+USAGE leads to memcmp, therefore the
# result differs with invalid data; note: the exact "difference" is unportable
{ set +x
$as_echo "$at_srcdir/run_misc.at:14548: \$COMPILE -Wno-constant-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-constant-expression prog.cob" "run_misc.at:14548"
( $at_check_trace; $COMPILE -Wno-constant-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14548"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_misc.at:14549: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_misc.at:14549"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "TST-NUMBER IS NOT ZERO-NUMBER
TST-NUMBER IS < ZERO-NUMBER
TST-DECIMAL IS NOT ZERO-DECIMAL
TST-DECIMAL IS < ZERO-DECIMAL
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_misc.at:14549"
$at_failed && at_fn_log_failure
$at_traceon; }


# result with MF would be:
# TST-NUMBER IS NOT 0
# TST-NUMBER IS < 0
# TST-NUMBER-SIGNED IS NOT 0
# TST-NUMBER-SIGNED IS < 0
# TST-NUMBER IS NOT ZERO-NUMBER
# TST-NUMBER IS < ZERO-NUMBER
# TST-NUMBER-SIGNED IS NOT ZERO-NUMBER
# TST-NUMBER-SIGNED IS < ZERO-NUMBER
# TST-DECIMAL IS NOT ZERO-DECIMAL
# TST-DECIMAL IS < ZERO-DECIMAL
# TST-DECIMAL-SIGNED IS NOT ZERO-DECIMAL
# TST-DECIMAL-SIGNED IS < ZERO-DECIMAL
# CHECKME: Do we want to mimic that with -std=mf?


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_847
#AT_START_848
at_fn_group_banner 848 'run_file.at:23' \
  "OPEN EXTEND and CLOSE, SEQUENTIAL" "              " 4
at_xfail=no
(
  $as_echo "848. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  OPTIONAL      FILE-OPT
                   ASSIGN        TO "testfile"
                   ORGANIZATION  IS SEQUENTIAL
                   FILE STATUS   IS WSFS.
           SELECT  FILE0         ASSIGN TO "testfile"
                   ORGANIZATION  IS SEQUENTIAL
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE0.
       01  F0REC             PIC X(80).
       FD  FILE-OPT.
       01  FOREC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
           OPEN EXTEND FILE-OPT
           IF WSFS NOT = "05"
              DISPLAY "STATUS EXTEND, missing optional file:" WSFS.
           MOVE ALL "A" TO FOREC
           WRITE FOREC
           IF WSFS NOT = "00"
              DISPLAY "STATUS WRITE A:" WSFS.
           CLOSE FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS CLOSE:" WSFS.
           OPEN EXTEND FILE0
           IF WSFS NOT = "00"
              DISPLAY "STATUS EXTEND, empty file:" WSFS.
           MOVE ALL "B" TO F0REC
           WRITE F0REC
           IF WSFS NOT = "00"
              DISPLAY "STATUS WRITE B:" WSFS.
           CLOSE FILE0
      *
           OPEN INPUT FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS INPUT:" WSFS.
           READ FILE-OPT NEXT
           IF WSFS NOT = "00"
              DISPLAY "STATUS READ A:" WSFS.
           READ FILE-OPT NEXT
           IF WSFS NOT = "00"
              DISPLAY "STATUS READ B:" WSFS.
           CLOSE FILE-OPT
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:83: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:83"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:83"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:84: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:84"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_848
#AT_START_849
at_fn_group_banner 849 'run_file.at:89' \
  "variable-length SEQUENTIAL data integrity" "      " 4
at_xfail=no
(
  $as_echo "849. $at_setup_line: testing $at_desc ..."
  $at_traceon



# LINE SEQUENTIAL testfile, read as variable RECORD
cat >TEST1 <<'_ATEOF'
<?xml version="1.0" encoding="ISO-8859-1"?>
<SampleTag Test="v0.1" Date="2022-02-16" Heure="10:56:11">
    <ListeAccuse>
        <Accuse Type="type1" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type1" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type1" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type2" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type2" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type2" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type2" tag1="123" tag2="456" tag3="789"/>
        <Accuse Type="type2" tag1="123" tag2="456" tag3="789"/>
    </ListeAccuse>
</SampleTag>
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
          SELECT TEST-XML00 ASSIGN TO 'DATA' FILE STATUS ST-TEST.
       DATA DIVISION.
       FILE SECTION.
       FD TEST-XML00 RECORD VARYING FROM 5 TO 500 CHARACTERS.
       01 E-ENR                          PIC X(500).
       WORKING-STORAGE SECTION.
       01 ST-TEST  PIC X(2).
       01 W-TYPE   PIC 9(03) VALUE ZERO.
       01 EOF-TEST-XML   PIC 9(03) VALUE ZERO.
       01 COUNT-PASS   PIC 9(02) VALUE ZERO.
       PROCEDURE DIVISION.
       DEBUT.
           OPEN INPUT  TEST-XML00
           IF ST-TEST (1:) NOT = "00"
              DISPLAY "OPEN ERROR: " ST-TEST WITH NO ADVANCING
              GOBACK.
           INITIALIZE W-TYPE E-ENR
           PERFORM UNTIL (EOF-TEST-XML = 1 OR (W-TYPE = 1 OR 2))
               READ TEST-XML00 NEXT
                   AT END
                       MOVE 1 TO EOF-TEST-XML
                   NOT AT END
                   ADD 1 TO COUNT-PASS
               END-READ
           END-PERFORM
           CLOSE TEST-XML00
           DISPLAY COUNT-PASS
       STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:144: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:144"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:144"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:145: DD_DATA=TEST1 \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATA=TEST1 $COBCRUN_DIRECT ./prog" "run_file.at:145"
( $at_check_trace; DD_DATA=TEST1 $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OPEN ERROR: 39" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:145"
$at_failed && at_fn_log_failure
$at_traceon; }


# TODO: add testcase that has a valid length first to check for later
#       status 04 on read - both with "record too long" and "record too small"

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_849
#AT_START_850
at_fn_group_banner 850 'run_file.at:154' \
  "DELETE FILE, SEQUENTIAL" "                        " 4
at_xfail=no
(
  $as_echo "850. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  OPTIONAL      FILE-OPT
                   ASSIGN        TO "testfile"
                   ORGANIZATION  IS SEQUENTIAL
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE-OPT.
       01  FOREC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
      *>   DELETE FILE FILE-OPT
      *>    ON EXCEPTION
      *>     DISPLAY "STATUS DELETE FILE (missing) - EXCEPTION:" WSFS
      *>     END-DISPLAY
      *>    NOT ON EXCEPTION
      *>      IF WSFS NOT = "05"
      *>         DISPLAY "STATUS DELETE FILE (missing):" WSFS
      *>      END-IF
      *>   END-DELETE
           OPEN I-O FILE-OPT
           IF WSFS NOT = "05"
              DISPLAY "STATUS I-O, missing optional file:" WSFS.
           CLOSE FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS CLOSE:" WSFS.
           OPEN I-O FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS I-O, empty file:" WSFS.
           DELETE FILE FILE-OPT
      *>     ON EXCEPTION
              IF WSFS NOT = "41"
                 DISPLAY "STATUS DELETE FILE (OPENED):" WSFS
              END-IF
      *>    NOT ON EXCEPTION
      *>     DISPLAY "STATUS DELETE FILE (OPENED) - NO EXCEPTION:" WSFS
      *>   END-DELETE
           CLOSE FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS CLOSE #2:" WSFS.
           DELETE FILE FILE-OPT
      *>     ON EXCEPTION
      *>      DISPLAY "STATUS DELETE FILE (closed) - EXCEPTION:" WSFS
      *>      END-DISPLAY
      *>     NOT ON EXCEPTION
              IF WSFS NOT = "00"
                 DISPLAY "STATUS DELETE FILE (closed):" WSFS
              END-IF
      *>   END-DELETE
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:218: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:218"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:218"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:219: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:219"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:219"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_850
#AT_START_851
at_fn_group_banner 851 'run_file.at:224' \
  "OUTPUT on SEQUENTIAL file to missing directory" " " 4
at_xfail=no
(
  $as_echo "851. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  FILE0 ASSIGN  TO "./nosubhere/MYFILE0"
                   ORGANIZATION  IS SEQUENTIAL
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE0.
       01  F0REC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
           OPEN OUTPUT FILE0
           IF WSFS NOT = "30"
              DISPLAY "STATUS OPENO " WSFS.
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:252: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:252"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:252"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:253: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:253"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:253"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >nosubhere <<'_ATEOF'
Test
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_file.at:256: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:256"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:256"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_851
#AT_START_852
at_fn_group_banner 852 'run_file.at:261' \
  "OPEN EXTEND and CLOSE, INDEXED" "                 " 4
at_xfail=no
(
  $as_echo "852. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:264" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:264"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  OPTIONAL      FILE-OPT
                   ASSIGN        TO "testfile"
                   ORGANIZATION  IS INDEXED
                   RECORD KEY    IS FOREC
                   FILE STATUS   IS WSFS.
           SELECT  FILE0         ASSIGN TO "testfile"
                   ORGANIZATION  IS INDEXED
                   RECORD KEY    IS F0REC
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE0.
       01  F0REC             PIC X(80).
       FD  FILE-OPT.
       01  FOREC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
           OPEN EXTEND FILE-OPT
           IF WSFS NOT = "05"
              DISPLAY "STATUS EXTEND, missing optional file:" WSFS.
           MOVE ALL "A" TO FOREC
           WRITE FOREC
           IF WSFS NOT = "00"
              DISPLAY "STATUS WRITE A:" WSFS.
           CLOSE FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS CLOSE:" WSFS.
           OPEN EXTEND FILE0
           IF WSFS NOT = "00"
              DISPLAY "STATUS EXTEND, empty file:" WSFS.
           MOVE ALL "B" TO F0REC
           WRITE F0REC
           IF WSFS NOT = "00"
              DISPLAY "STATUS WRITE B:" WSFS.
           CLOSE FILE0
      *
           OPEN INPUT FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS INPUT:" WSFS.
           MOVE ALL "A" TO FOREC
           READ FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS READ A:" WSFS.
           MOVE ALL "B" TO FOREC
           READ FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS READ B:" WSFS.
           CLOSE FILE-OPT
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:327: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:327"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:327"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:328: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:328"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:328"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_852
#AT_START_853
at_fn_group_banner 853 'run_file.at:333' \
  "DELETE FILE, INDEXED" "                           " 4
at_xfail=no
(
  $as_echo "853. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:336" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:336"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  OPTIONAL      FILE-OPT
                   ASSIGN        TO "testfile"
                   ORGANIZATION  IS INDEXED
                   RECORD KEY    IS FOREC
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE-OPT.
       01  FOREC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
      *>   DELETE FILE FILE-OPT
      *>    ON EXCEPTION
      *>     DISPLAY "STATUS DELETE FILE (missing) - EXCEPTION: " WSFS
      *>     END-DISPLAY
      *>    NOT ON EXCEPTION
      *>      IF WSFS NOT = "05"
      *>         DISPLAY "STATUS DELETE FILE (missing): " WSFS
      *>      END-IF
      *>   END-DELETE
           OPEN I-O FILE-OPT
           IF WSFS NOT = "05"
              DISPLAY "STATUS I-O, missing optional file: " WSFS.
           CLOSE FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS CLOSE: " WSFS.
           OPEN I-O FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS I-O, empty file: " WSFS.
           DELETE FILE FILE-OPT
      *>     ON EXCEPTION
              IF WSFS NOT = "41"
                 DISPLAY "STATUS DELETE FILE (opened): " WSFS
              END-IF
      *>    NOT ON EXCEPTION
      *>     DISPLAY "STATUS DELETE FILE (opened) - NO EXCEPTION: " WSFS
      *>   END-DELETE
           CLOSE FILE-OPT
           IF WSFS NOT = "00"
              DISPLAY "STATUS CLOSE #2: " WSFS.
           DELETE FILE FILE-OPT
      *>     ON EXCEPTION
      *>      DISPLAY "STATUS DELETE FILE (closed) - EXCEPTION: " WSFS
      *>      END-DISPLAY
      *>     NOT ON EXCEPTION
              IF WSFS NOT = "00"
                 DISPLAY "STATUS DELETE FILE (closed): " WSFS
              END-IF
      *>   END-DELETE
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:400: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:400"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:400"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:401: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:401"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:401"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_853
#AT_START_854
at_fn_group_banner 854 'run_file.at:406' \
  "OUTPUT on INDEXED file to missing directory" "    " 4
at_xfail=no
(
  $as_echo "854. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:409" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:409"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  FILE0 ASSIGN  TO "./nosubhere/MYFILE0"
                   ORGANIZATION  IS INDEXED
                   RECORD KEY    IS F0REC
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE0.
       01  F0REC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
           OPEN OUTPUT FILE0
           IF WSFS NOT = "30"
              DISPLAY "STATUS OPENO " WSFS.
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:437: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:437"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:437"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:438: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:438"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:438"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >nosubhere <<'_ATEOF'
Test
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_file.at:441: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:441"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:441"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_854
#AT_START_855
at_fn_group_banner 855 'run_file.at:446' \
  "READ INTO data item AT-END sequence" "            " 4
at_xfail=no
(
  $as_echo "855. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "./TEST-FILE".
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC     PIC X(10).
       WORKING-STORAGE  SECTION.
       01  X            PIC X(10).
       PROCEDURE        DIVISION.
           OPEN  OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           OPEN  INPUT  TEST-FILE.
           READ  TEST-FILE INTO X
               AT END MOVE ALL ZERO TO X
           END-READ.
           CLOSE TEST-FILE.
           IF X NOT = "0000000000"
              DISPLAY "Expected zeros - Got " X
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:477: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:477"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:477"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:478: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:478"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:478"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_855
#AT_START_856
at_fn_group_banner 856 'run_file.at:483' \
  "First READ on empty SEQUENTIAL INDEXED file" "    " 4
at_xfail=no
(
  $as_echo "856. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:486" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:486"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS  INDEXED
                        ACCESS MODE  IS  SEQUENTIAL
                        RECORD KEY   IS  TEST-KEY.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-KEY      PIC X(10).
       PROCEDURE        DIVISION.
           OPEN  OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           OPEN  INPUT  TEST-FILE.
           READ  TEST-FILE
                 AT END
                   CONTINUE
                 NOT AT END
                   DISPLAY "NOT OK"
                   END-DISPLAY
           END-READ.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:517: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:517"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:517"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:518: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:518"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:518"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_856
#AT_START_857
at_fn_group_banner 857 'run_file.at:523' \
  "READ NEXT without previous START" "               " 4
at_xfail=no
(
  $as_echo "857. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:526" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:526"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS  INDEXED
                        ACCESS MODE  IS  SEQUENTIAL
                        RECORD KEY   IS  TEST-KEY.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC.
          05 TEST-KEY      PIC X(10).
          05 TEST-DATA     PIC X.
       PROCEDURE        DIVISION.
           OPEN  OUTPUT TEST-FILE
           MOVE  '1'    TO TEST-KEY
           MOVE  'A'    TO TEST-DATA
           WRITE TEST-REC
           MOVE  '3'    TO TEST-KEY
           MOVE  'B'    TO TEST-DATA
           WRITE TEST-REC
           CLOSE TEST-FILE
           OPEN  INPUT  TEST-FILE
           READ  TEST-FILE NEXT
                 AT END
                   DISPLAY "AT END FOR REC1"
                   END-DISPLAY
                   CLOSE TEST-FILE
                   STOP RUN
                 NOT AT END
                   CONTINUE
           END-READ
           IF TEST-DATA NOT = 'A'
              DISPLAY "WRONG REC1: '" TEST-REC "'"
              END-DISPLAY
           END-IF
           READ  TEST-FILE NEXT
                 AT END
                   DISPLAY "AT END FOR REC2"
                   END-DISPLAY
                   CLOSE TEST-FILE
                   STOP RUN
                 NOT AT END
                   CONTINUE
           END-READ.
           IF TEST-DATA NOT = 'B'
              DISPLAY "WRONG REC2: '" TEST-REC "'"
              END-DISPLAY
           END-IF
           READ  TEST-FILE NEXT
                 AT END
                   CONTINUE
                 NOT AT END
                   DISPLAY "NOT AT END AFTER REC2"
                   END-DISPLAY
           END-READ
           IF TEST-DATA NOT = 'B'
              DISPLAY "DATE CHANGED ON EOF: '" TEST-REC "'"
              END-DISPLAY
           END-IF
           CLOSE TEST-FILE
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:595: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:595"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:595"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:596: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:596"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:596"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_857
#AT_START_858
at_fn_group_banner 858 'run_file.at:601' \
  "REWRITE a RELATIVE file with RANDOM access" "     " 4
at_xfail=no
(
  $as_echo "858. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS RELATIVE
                        ACCESS MODE  IS RANDOM
                        RELATIVE KEY IS TEST-KEY.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X.
       WORKING-STORAGE  SECTION.
       01 TEST-KEY      PIC 9.
       PROCEDURE        DIVISION.
      *
           OPEN OUTPUT TEST-FILE.
           MOVE 1 TO TEST-KEY.
           MOVE "A" TO TEST-REC.
           WRITE TEST-REC
           END-WRITE.
           MOVE 2 TO TEST-KEY.
           MOVE "B" TO TEST-REC.
           WRITE TEST-REC
           END-WRITE.
           CLOSE TEST-FILE.
      *
           OPEN I-O TEST-FILE.
           MOVE 1 TO TEST-KEY.
           READ TEST-FILE
           END-READ.
           MOVE 2 TO TEST-KEY.
           MOVE "C" TO TEST-REC.
           REWRITE TEST-REC
           END-REWRITE.
           CLOSE TEST-FILE.
      *
           OPEN INPUT TEST-FILE.
           MOVE 1 TO TEST-KEY.
           READ TEST-FILE
           END-READ.
           IF TEST-REC NOT = "A"
              DISPLAY "Expected 'A' - Got " TEST-REC
              END-DISPLAY
           END-IF.
           MOVE 2 TO TEST-KEY.
           READ TEST-FILE
           END-READ.
           IF TEST-REC NOT = "C"
              DISPLAY "Expected 'C' - Got " TEST-REC
              END-DISPLAY
           END-IF.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:662: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:662"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:662"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:663: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:663"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:663"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_858
#AT_START_859
at_fn_group_banner 859 'run_file.at:671' \
  "ASSIGN DYNAMIC and EXTERNAL" "                    " 4
at_xfail=no
(
  $as_echo "859. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN whatever
               ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-rec PIC XXX.

       WORKING-STORAGE SECTION.
       01  whatever PIC X(10) VALUE "out.txt".

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           WRITE f-rec FROM "hi"
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:699: \$COMPILE -fassign-clause=external prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fassign-clause=external prog.cob" "run_file.at:699"
( $at_check_trace; $COMPILE -fassign-clause=external prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:699"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:701: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:701"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:701"
$at_failed && at_fn_log_failure  \
"whatever"
$at_traceon; }

cat >reference <<'_ATEOF'
hi
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_file.at:705: diff reference whatever"
at_fn_check_prepare_trace "run_file.at:705"
( $at_check_trace; diff reference whatever
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:705"
$at_failed && at_fn_log_failure  \
"whatever"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:707: \$COMPILE -fassign-clause=dynamic -fno-implicit-assign-dynamic-var prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fassign-clause=dynamic -fno-implicit-assign-dynamic-var prog.cob" "run_file.at:707"
( $at_check_trace; $COMPILE -fassign-clause=dynamic -fno-implicit-assign-dynamic-var prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:707"
$at_failed && at_fn_log_failure  \
"whatever"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:708: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:708"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:708"
$at_failed && at_fn_log_failure  \
"whatever"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:709: diff reference whatever"
at_fn_check_prepare_trace "run_file.at:709"
( $at_check_trace; diff reference whatever
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:709"
$at_failed && at_fn_log_failure  \
"whatever"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:711: \$COMPILE -fassign-clause=dynamic prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fassign-clause=dynamic prog.cob" "run_file.at:711"
( $at_check_trace; $COMPILE -fassign-clause=dynamic prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:711"
$at_failed && at_fn_log_failure  \
"whatever"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:713: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:713"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:713"
$at_failed && at_fn_log_failure  \
"whatever" \
"out.txt"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:714: diff reference out.txt"
at_fn_check_prepare_trace "run_file.at:714"
( $at_check_trace; diff reference out.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:714"
$at_failed && at_fn_log_failure  \
"whatever" \
"out.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_859
#AT_START_860
at_fn_group_banner 860 'run_file.at:719' \
  "ASSIGN EXTERNAL parsing" "                        " 4
at_xfail=no
(
  $as_echo "860. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           *> Labels should be removed from EXTERNAL name.
           SELECT TEST-FILE   ASSIGN DA-S-FILENAME.
           *> EXTERNAL name allowed to duplicate FD name.
           SELECT TESTFILE2 ASSIGN TESTFILE2.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       FD TESTFILE2.
       01 TESTREC2      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:744: \$COMPILE -fassign-clause=external prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fassign-clause=external prog.cob" "run_file.at:744"
( $at_check_trace; $COMPILE -fassign-clause=external prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: ASSIGN DA-S-FILENAME interpreted as 'FILENAME'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:744"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:747: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:747"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:747"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:748: test -f FILENAME"
at_fn_check_prepare_trace "run_file.at:748"
( $at_check_trace; test -f FILENAME
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:748"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_860
#AT_START_861
at_fn_group_banner 861 'run_file.at:753' \
  "ASSIGN directive" "                               " 4
at_xfail=no
(
  $as_echo "861. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN whatever
               ORGANIZATION LINE SEQUENTIAL.
      $SET ASSIGN "EXTERNAL"
           SELECT g ASSIGN whatever
               ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-rec PIC XXX.
       FD  g.
       01  g-rec PIC XXX.

       PROCEDURE DIVISION.
           MOVE "out.txt" TO whatever

           OPEN OUTPUT f
           WRITE f-rec FROM "hi"
           CLOSE f

           OPEN OUTPUT g
           WRITE g-rec FROM "hi"
           CLOSE g
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:790: \$COMPILE -fassign-clause=dynamic prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fassign-clause=dynamic prog.cob" "run_file.at:790"
( $at_check_trace; $COMPILE -fassign-clause=dynamic prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:790"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:791: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:791"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:791"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_861
#AT_START_862
at_fn_group_banner 862 'run_file.at:796' \
  "ASSIGN filename expansion" "                      " 4
at_xfail=no
(
  $as_echo "862. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "$DIR/FILENAME".
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:816: \$COMPILE -ffilename-mapping prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -ffilename-mapping prog.cob" "run_file.at:816"
( $at_check_trace; $COMPILE -ffilename-mapping prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:816"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:817: DIR=\".\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DIR=\".\" $COBCRUN_DIRECT ./prog" "run_file.at:817"
( $at_check_trace; DIR="." $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:817"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:818: test -f \"./FILENAME\" && rm -f \"./FILENAME\""
at_fn_check_prepare_trace "run_file.at:818"
( $at_check_trace; test -f "./FILENAME" && rm -f "./FILENAME"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:818"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_862
#AT_START_863
at_fn_group_banner 863 'run_file.at:823' \
  "ASSIGN filename mapping" "                        " 4
at_xfail=no
(
  $as_echo "863. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "FILENAME".
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "FILENAME2".
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:860: \$COMPILE -fno-filename-mapping prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-filename-mapping prog.cob" "run_file.at:860"
( $at_check_trace; $COMPILE -fno-filename-mapping prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:860"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:861: DD_FILENAME=\"x\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_FILENAME=\"x\" $COBCRUN_DIRECT ./prog" "run_file.at:861"
( $at_check_trace; DD_FILENAME="x" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:861"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:862: test -f \"x\""
at_fn_check_prepare_trace "run_file.at:862"
( $at_check_trace; test -f "x"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:862"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:863: test -f \"FILENAME\""
at_fn_check_prepare_trace "run_file.at:863"
( $at_check_trace; test -f "FILENAME"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:863"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:865: \$COMPILE -ffilename-mapping prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -ffilename-mapping prog2.cob" "run_file.at:865"
( $at_check_trace; $COMPILE -ffilename-mapping prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:865"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:866: DD_FILENAME2=\"x\" \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "DD_FILENAME2=\"x\" $COBCRUN_DIRECT ./prog2" "run_file.at:866"
( $at_check_trace; DD_FILENAME2="x" $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:866"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:867: test -f \"FILENAME2\""
at_fn_check_prepare_trace "run_file.at:867"
( $at_check_trace; test -f "FILENAME2"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:867"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:868: test -f \"x\""
at_fn_check_prepare_trace "run_file.at:868"
( $at_check_trace; test -f "x"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:868"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:869: dd_FILENAME2=\"y\" \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "dd_FILENAME2=\"y\" $COBCRUN_DIRECT ./prog2" "run_file.at:869"
( $at_check_trace; dd_FILENAME2="y" $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:869"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:870: test -f \"y\""
at_fn_check_prepare_trace "run_file.at:870"
( $at_check_trace; test -f "y"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:870"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:871: FILENAME2=\"z\" \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "FILENAME2=\"z\" $COBCRUN_DIRECT ./prog2" "run_file.at:871"
( $at_check_trace; FILENAME2="z" $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:871"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:872: test -f \"z\""
at_fn_check_prepare_trace "run_file.at:872"
( $at_check_trace; test -f "z"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:872"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:873: FILENAME2=\"\\\"QUOTE\\\"\" \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "FILENAME2=\"\\\"QUOTE\\\"\" $COBCRUN_DIRECT ./prog2" "run_file.at:873"
( $at_check_trace; FILENAME2="\"QUOTE\"" $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:873"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:874: test -f \"QUOTE\""
at_fn_check_prepare_trace "run_file.at:874"
( $at_check_trace; test -f "QUOTE"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:874"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:875: FILENAME2=\\'APOST\\' \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "FILENAME2=\\'APOST\\' $COBCRUN_DIRECT ./prog2" "run_file.at:875"
( $at_check_trace; FILENAME2=\'APOST\' $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:875"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:876: test -f \"APOST\""
at_fn_check_prepare_trace "run_file.at:876"
( $at_check_trace; test -f "APOST"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:876"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:877: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:877"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:877"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:878: test -f \"FILENAME2\""
at_fn_check_prepare_trace "run_file.at:878"
( $at_check_trace; test -f "FILENAME2"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:878"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog3.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL INFILE ASSIGN TO "MYFILE"
                ORGANIZATION IS RELATIVE
                ACCESS IS SEQUENTIAL
                FILE STATUS IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  INFILE.
       01  INREC             PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
      *    open missing file
           OPEN INPUT INFILE
           DISPLAY "STATUS OPENI " WSFS
           CLOSE INFILE
      *
      *    create missing file
           OPEN OUTPUT INFILE
           DISPLAY "STATUS OPENO " WSFS
           CLOSE INFILE
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:912: \$COMPILE prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE prog3.cob" "run_file.at:912"
( $at_check_trace; $COMPILE prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:912"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:914: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_file.at:914"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENI 05
STATUS OPENO 00
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:914"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:918: test -f \"MYFILE\""
at_fn_check_prepare_trace "run_file.at:918"
( $at_check_trace; test -f "MYFILE"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:918"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:920: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_file.at:920"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENI 00
STATUS OPENO 00
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:920"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:925: MYFILE=\"TSTFILE\" \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "MYFILE=\"TSTFILE\" $COBCRUN_DIRECT ./prog3" "run_file.at:925"
( $at_check_trace; MYFILE="TSTFILE" $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENI 05
STATUS OPENO 00
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:925"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:929: test -f \"TSTFILE\""
at_fn_check_prepare_trace "run_file.at:929"
( $at_check_trace; test -f "TSTFILE"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:929"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:931: dd_MYFILE=\"TSTFILE2\" \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "dd_MYFILE=\"TSTFILE2\" $COBCRUN_DIRECT ./prog3" "run_file.at:931"
( $at_check_trace; dd_MYFILE="TSTFILE2" $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENI 05
STATUS OPENO 00
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:931"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:935: test -f \"TSTFILE2\""
at_fn_check_prepare_trace "run_file.at:935"
( $at_check_trace; test -f "TSTFILE2"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:935"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:937: DD_MYFILE=\"TSTFILE3\" \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "DD_MYFILE=\"TSTFILE3\" $COBCRUN_DIRECT ./prog3" "run_file.at:937"
( $at_check_trace; DD_MYFILE="TSTFILE3" $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENI 05
STATUS OPENO 00
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:937"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:941: test -f \"TSTFILE3\""
at_fn_check_prepare_trace "run_file.at:941"
( $at_check_trace; test -f "TSTFILE3"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:941"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:943: DD_MYFILE=\"./nosubhere/TSTFILE\" \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "DD_MYFILE=\"./nosubhere/TSTFILE\" $COBCRUN_DIRECT ./prog3" "run_file.at:943"
( $at_check_trace; DD_MYFILE="./nosubhere/TSTFILE" $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENI 05
STATUS OPENO 30
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:943"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog4.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT  FILE0 ASSIGN  TO "./nosubhere/MYFILE0"
                   ORGANIZATION  IS LINE SEQUENTIAL
                   FILE STATUS   IS WSFS.
           SELECT  FILE1 ASSIGN  TO "MYFILE1"
                   ORGANIZATION  IS LINE SEQUENTIAL
                   FILE STATUS   IS WSFS.
           SELECT  FILE2 ASSIGN  TO FILENAME
                   ORGANIZATION  IS LINE SEQUENTIAL
                   FILE STATUS   IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  FILE0.
       01  F0REC             PIC X(80).
       FD  FILE1.
       01  F1REC             PIC X(80).
       FD  FILE2.
       01  F2REC             PIC X(80).
       WORKING-STORAGE SECTION.
       77  FILENAME          PIC X(80) VALUE "MYFILE2".
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
      *
           OPEN OUTPUT FILE0
           DISPLAY "STATUS OPENO 0 " WSFS
           OPEN OUTPUT FILE1
           DISPLAY "STATUS OPENO 1 " WSFS
           OPEN OUTPUT FILE2
           DISPLAY "STATUS OPENO 2 " WSFS
      *
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:987: \$COMPILE prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE prog4.cob" "run_file.at:987"
( $at_check_trace; $COMPILE prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:987"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:989: DD_MYFILE1=\"./nosubhere/NOFILE1\" DD_MYFILE2=\"./nosubhere/NOFILE2\" \\
\$COBCRUN_DIRECT ./prog4"
at_fn_check_prepare_notrace 'an embedded newline' "run_file.at:989"
( $at_check_trace; DD_MYFILE1="./nosubhere/NOFILE1" DD_MYFILE2="./nosubhere/NOFILE2" \
$COBCRUN_DIRECT ./prog4
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "STATUS OPENO 0 30
STATUS OPENO 1 30
STATUS OPENO 2 30
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:989"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_863
#AT_START_864
at_fn_group_banner 864 'run_file.at:999' \
  "ASSIGN with COB_FILE_PATH" "                      " 4
at_xfail=no
(
  $as_echo "864. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "FILENAMEX".
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1019: \$COMPILE -ffilename-mapping prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -ffilename-mapping prog.cob" "run_file.at:1019"
( $at_check_trace; $COMPILE -ffilename-mapping prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1019"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1020: rm -rf \"tstdir\" && mkdir \"tstdir\""
at_fn_check_prepare_trace "run_file.at:1020"
( $at_check_trace; rm -rf "tstdir" && mkdir "tstdir"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1020"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1021: COB_FILE_PATH=\"tstdir\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_FILE_PATH=\"tstdir\" $COBCRUN_DIRECT ./prog" "run_file.at:1021"
( $at_check_trace; COB_FILE_PATH="tstdir" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1021"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1022: test -f \"tstdir/FILENAMEX\" && rm -f \"tstdir/FILENAMEX\""
at_fn_check_prepare_trace "run_file.at:1022"
( $at_check_trace; test -f "tstdir/FILENAMEX" && rm -f "tstdir/FILENAMEX"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1022"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1023: COB_FILE_PATH=\"tstdir/\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_FILE_PATH=\"tstdir/\" $COBCRUN_DIRECT ./prog" "run_file.at:1023"
( $at_check_trace; COB_FILE_PATH="tstdir/" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1023"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1024: test -f \"tstdir/FILENAMEX\""
at_fn_check_prepare_trace "run_file.at:1024"
( $at_check_trace; test -f "tstdir/FILENAMEX"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1024"
$at_failed && at_fn_log_failure
$at_traceon; }


# FIXME: on OPEN we should also output the full filename (if any) leading to the error
{ set +x
$as_echo "$at_srcdir/run_file.at:1027: COB_FILE_PATH=\"./nosubhere\" \$COBCRUN_DIRECT ./prog 2>prog.err"
at_fn_check_prepare_dynamic "COB_FILE_PATH=\"./nosubhere\" $COBCRUN_DIRECT ./prog 2>prog.err" "run_file.at:1027"
( $at_check_trace; COB_FILE_PATH="./nosubhere" $COBCRUN_DIRECT ./prog 2>prog.err
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1027"
$at_failed && at_fn_log_failure
$at_traceon; }

# workaround for testing windows-builds...
{ set +x
$as_echo "$at_srcdir/run_file.at:1029: cat prog.err | tr '\\\\' '/'"
at_fn_check_prepare_notrace 'a shell pipeline' "run_file.at:1029"
( $at_check_trace; cat prog.err | tr '\\' '/'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "libcob: prog.cob:13: error: permanent file error (status = 30) for file TEST-FILE ('FILENAMEX' => ./nosubhere/FILENAMEX) on OPEN
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1029"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_864
#AT_START_865
at_fn_group_banner 865 'run_file.at:1036' \
  "ASSIGN DYNAMIC with LOCAL-STORAGE item" "         " 4
at_xfail=no
(
  $as_echo "865. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.txt <<'_ATEOF'
hello
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT test-file ASSIGN path
                        ORGANIZATION LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE	            SECTION.
       FD  test-file.
       01  test-rec     PIC X(5).
       LOCAL-STORAGE    SECTION.
       01  path         PIC X(10) VALUE "test.txt".
       PROCEDURE        DIVISION.
           OPEN INPUT test-file
           READ test-file   END-READ
           IF test-rec NOT = "hello"
              DISPLAY test-rec END-DISPLAY
           END-IF
           CLOSE test-file
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1067: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1067"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1067"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1068: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1068"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1068"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_865
#AT_START_866
at_fn_group_banner 866 'run_file.at:1073' \
  "ASSIGN DYNAMIC with LOCAL-STORAGE item, INITIAL" "" 4
at_xfail=no
(
  $as_echo "866. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Files are initialised in a different location in INITIAL program, hence the
# need for a separate test.

cat >test.txt <<'_ATEOF'
hello
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog INITIAL.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT test-file ASSIGN path
                        ORGANIZATION LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE	            SECTION.
       FD  test-file.
       01  test-rec     PIC X(5).
       LOCAL-STORAGE    SECTION.
       01  path         PIC X(10) VALUE "test.txt".
       PROCEDURE        DIVISION.
           OPEN INPUT test-file
           READ test-file   END-READ
           IF test-rec NOT = "hello"
              DISPLAY test-rec END-DISPLAY
           END-IF
           CLOSE test-file
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1107: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1107"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1107"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1108: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1108"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1108"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_866
#AT_START_867
at_fn_group_banner 867 'run_file.at:1113' \
  "ASSIGN DYNAMIC with BASED data item" "            " 4
at_xfail=no
(
  $as_echo "867. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >TEST-FILE <<'_ATEOF'
hello
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT test-file ASSIGN path
                        ORGANIZATION LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE	            SECTION.
       FD  test-file.
       01  test-rec     PIC X(5).
       WORKING-STORAGE  SECTION.
       01  path         BASED PIC X(10).
       01  x            PIC X.
       PROCEDURE        DIVISION CHAINING x.
           IF x NOT = SPACES
              ALLOCATE path
              MOVE "TEST-FILE" TO path
              OPEN INPUT test-file
              FREE path
           ELSE
              OPEN INPUT test-file
           END-IF
           READ test-file   END-READ
           IF test-rec NOT = "hello"
              DISPLAY test-rec END-DISPLAY
           END-IF
           CLOSE test-file
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT test-file ASSIGN path
                        ORGANIZATION LINE SEQUENTIAL
                        FILE STATUS TEST-STAT.
       DATA             DIVISION.
       FILE	            SECTION.
       FD  test-file.
       01  test-rec     PIC X(5).
       WORKING-STORAGE  SECTION.
       01  path         BASED PIC X(10).
       01  test-stat    PIC X(2) VALUE "XX".
       PROCEDURE        DIVISION.
           OPEN INPUT test-file
           IF TEST-STAT NOT = '31'
              DISPLAY 'BAD OPEN, STATUS "' test-stat '"' END-DISPLAY
           END-IF
           READ test-file   END-READ
           IF TEST-STAT NOT = '47'
              DISPLAY 'BAD READ, STATUS "' test-stat '"' END-DISPLAY
           END-IF
           CLOSE test-file
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1181: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1181"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1181"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1182: \$COBCRUN_DIRECT ./prog X"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog X" "run_file.at:1182"
( $at_check_trace; $COBCRUN_DIRECT ./prog X
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1182"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1183: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1183"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:23: error: inconsistent file name (status = 31) for file test-file ('field with NULL address') on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1183"
$at_failed && at_fn_log_failure
$at_traceon; }

# Tested again without source location and checks
{ set +x
$as_echo "$at_srcdir/run_file.at:1187: \$COBC -x prog.cob"
at_fn_check_prepare_dynamic "$COBC -x prog.cob" "run_file.at:1187"
( $at_check_trace; $COBC -x prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1187"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1188: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1188"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: inconsistent file name (status = 31) for file test-file ('field with NULL address')
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1188"
$at_failed && at_fn_log_failure
$at_traceon; }



{ set +x
$as_echo "$at_srcdir/run_file.at:1193: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:1193"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1193"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1194: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:1194"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1194"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_867
#AT_START_868
at_fn_group_banner 868 'run_file.at:1199' \
  "ASSIGN DYNAMIC with data item in LINKAGE" "       " 4
at_xfail=no
(
  $as_echo "868. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  f-path     PIC X(80) VALUE "fooasg.txt".
       01  x-path     PIC X(80) VALUE "foxasg.txt".
       01  y-path     PIC X(80) VALUE "foyasg.txt".
       01  REC1       PIC 9(4) VALUE 1.
       01  REC2       PIC 9(4) VALUE 2.
       01  CUST-STAT  PIC X(2) VALUE "XX".

       PROCEDURE DIVISION.
           CALL "TSTOPN"  USING OMITTED.
           CALL "TSTOPN"  USING y-path.
           CALL "TSTOPEN" USING f-path  REC1 CUST-STAT.
           CALL "TSTOPEN" USING x-path  REC1 CUST-STAT.
           CALL "TSTOPEN" USING OMITTED REC1 CUST-STAT.
           CALL "TSTOPEN" USING f-path  REC2 CUST-STAT.
           CALL "TSTOPEN" USING x-path  REC2 CUST-STAT.
           STOP RUN.
           END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. TSTOPEN.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN s-path
           ORGANIZATION RELATIVE
           ACCESS IS RANDOM
           RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-line PIC X(79).

       WORKING-STORAGE SECTION.
       01  z-path   PIC X(80) VALUE "foozzz.txt".

       LINKAGE SECTION.
       01  s-path     PIC X(80).
       01  REC-NUM    PIC 9(4).
       01  CUST-STAT  PIC X(2).

       PROCEDURE DIVISION USING OPTIONAL s-path, REC-NUM, CUST-STAT.
           IF ADDRESS OF s-path = NULL
              SET ADDRESS OF s-path TO ADDRESS OF z-path
           END-IF.
           IF REC-NUM > 1
              OPEN I-O f
              DISPLAY "Extend file: " s-path(1:10)
                   " - " CUST-STAT " #" REC-NUM "."
           ELSE
              OPEN OUTPUT f
              DISPLAY "Output file: " s-path(1:10)
                   " - " CUST-STAT " #" REC-NUM "."
           END-IF.
           IF CUST-STAT NOT = "00"
               DISPLAY "Opened error: " CUST-STAT "."
               GOBACK
           END-IF.
           MOVE "Hello World" TO f-line.
           MOVE REC-NUM       TO f-line (20:4).
           WRITE f-line.
           IF CUST-STAT NOT = "00"
               DISPLAY "WRITE error: " CUST-STAT "."
           END-IF.
           CLOSE f.
           GOBACK.
       END PROGRAM TSTOPEN.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. TSTOPN.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN s-path
           ORGANIZATION LINE SEQUENTIAL
           FILE STATUS IS IO-STS.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-line PIC X(80).

       WORKING-STORAGE SECTION.
       01  IO-STS   PIC X(2) VALUE "00".

       LINKAGE SECTION.
       01  s-path   PIC X(80).

       PROCEDURE DIVISION USING OPTIONAL s-path.
           OPEN OUTPUT f
           IF IO-STS NOT = "00"
               DISPLAY "Opened error: " IO-STS "."
               GOBACK
           END-IF.
           DISPLAY "Opened file: " s-path(1:10) ".".
           MOVE "Hello World" TO f-line.
           WRITE f-line.
           CLOSE f.
           GOBACK.
       END PROGRAM TSTOPN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.

       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.

       PROCEDURE DIVISION.
           CALL "TSTOPEN" USING OMITTED.
           STOP RUN.
           END PROGRAM prog2.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. TSTOPEN.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN s-path
           ORGANIZATION SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-line PIC X(79).

       LINKAGE SECTION.
       01  s-path     PIC X(80).

       PROCEDURE DIVISION USING OPTIONAL s-path.
           OPEN OUTPUT f
           GOBACK.
       END PROGRAM TSTOPEN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1350: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1350"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1350"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:1352: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1352"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Opened error: 31.
Opened file: foyasg.txt.
Output file: fooasg.txt - 00 #0001.
Output file: foxasg.txt - 00 #0001.
Output file: foozzz.txt - 00 #0001.
Extend file: fooasg.txt - 00 #0002.
Extend file: foxasg.txt - 00 #0002.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1352"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:1362: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:1362"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1362"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:1364: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:1364"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog2.cob:32: error: inconsistent file name (status = 31) for file f ('field with NULL address') on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1364"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_868
#AT_START_869
at_fn_group_banner 869 'run_file.at:1371' \
  "ASSIGN DYNAMIC with empty data item" "            " 4
at_xfail=no
(
  $as_echo "869. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT test-file ASSIGN path
                        ORGANIZATION LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE	            SECTION.
       FD  test-file.
       01  test-rec     PIC X(5).
       WORKING-STORAGE  SECTION.
       01  path         PIC X(10).
       01  x            PIC X.
       PROCEDURE        DIVISION CHAINING x.
           IF X = SPACE
              MOVE SPACES     TO path
           ELSE
              MOVE LOW-VALUES TO path
           END-IF
           OPEN INPUT test-file
           DISPLAY "Hello"
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1400: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1400"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1400"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1401: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1401"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:22: error: inconsistent file name (status = 31) for file test-file ('') on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1401"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1404: \$COBCRUN_DIRECT ./prog X"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog X" "run_file.at:1404"
( $at_check_trace; $COBCRUN_DIRECT ./prog X
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:22: error: inconsistent file name (status = 31) for file test-file ('') on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1404"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_869
#AT_START_870
at_fn_group_banner 870 'run_file.at:1411' \
  "ASSIGN DYNAMIC with unset implicit data item" "   " 4
at_xfail=no
(
  $as_echo "870. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT test-file ASSIGN fpath
                        ORGANIZATION LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE	            SECTION.
       FD  test-file.
       01  test-rec     PIC X(5).
       PROCEDURE        DIVISION.
           OPEN INPUT test-file
           DISPLAY "Hello"
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1432: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1432"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1432"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1433: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1433"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:14: error: file does not exist (status = 35) for file test-file ('fpath') on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1433"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:1436: fpath=\"not.there\" \$COBCRUN_DIRECT ./prog X"
at_fn_check_prepare_dynamic "fpath=\"not.there\" $COBCRUN_DIRECT ./prog X" "run_file.at:1436"
( $at_check_trace; fpath="not.there" $COBCRUN_DIRECT ./prog X
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:14: error: file does not exist (status = 35) for file test-file ('fpath' => not.there) on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:1436"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_870
#AT_START_871
at_fn_group_banner 871 'run_file.at:1443' \
  "INDEXED file key-name" "                          " 4
at_xfail=no
(
  $as_echo "871. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: separate both test parts

$as_echo "run_file.at:1448" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:1448"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. "test".
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT TEST-FILE ASSIGN "FILE"
               ORGANIZATION IS INDEXED
               ACCESS IS DYNAMIC
               RECORD KEY IS KEY01 = QQINDEX.
       DATA DIVISION.
       FILE SECTION.
       FD TEST-FILE.
       01 TEST-REC.
          03 QQDATA     PIC X(80).
          03 QQINDEX    PIC XXX9999.
          03 QQSEQUENCE PIC 9999.
       PROCEDURE DIVISION.
           OPEN OUTPUT TEST-FILE
           MOVE 'TEST DATA 1' TO QQDATA
           MOVE 'ABC0001'     TO QQINDEX
           WRITE TEST-REC
           MOVE 'TEST DATA 2' TO QQDATA
           MOVE 'ABC0002'     TO QQINDEX
           WRITE TEST-REC
           CLOSE TEST-FILE
           DISPLAY 'FINE' WITH NO ADVANCING
           GOBACK.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_file.at:1479: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1479"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1479"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:1481: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1481"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "FINE" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1481"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_871
#AT_START_872
at_fn_group_banner 872 'run_file.at:1485' \
  "INDEXED file sparse/split keys" "                 " 4
at_xfail=no
(
  $as_echo "872. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: separate both test parts

$as_echo "run_file.at:1490" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:1490"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.

       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT TSPFILE
           ASSIGN TO "testisam"
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS PRIME-KEY
           SOURCE IS CM-CUST-NUM, CM-COMPANY

           ALTERNATE RECORD KEY IS SPLIT-KEY2
           SOURCE IS CM-TELEPHONE,CM-MACHINE WITH DUPLICATES

           ALTERNATE RECORD KEY IS SPLIT-KEY3
           SOURCE IS CM-DISK,CM-TAPE WITH DUPLICATES
                SUPPRESS WHEN ALL "*"
           FILE STATUS IS CUST-STAT
           .

       DATA  DIVISION.
       FILE SECTION.
       FD  TSPFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           05  TSPFL-REC.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-STATUS                       PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-ADDRESS-1                    PICTURE X(25).
           10  CM-ADDRESS-2                    PICTURE X(25).
           10  CM-ADDRESS-3                    PICTURE X(25).
           10  CM-TELEPHONE                    PICTURE 9(10).
           10  CM-DP-MGR                       PICTURE X(25).
           10  CM-MACHINE                      PICTURE X(8).
           10  CM-MEMORY                       PICTURE X(4).
           10  CM-DISK                         PICTURE X(8).
           10  CM-TAPE                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).

       WORKING-STORAGE SECTION.

       01  CUST-STAT.
           05  STAT-1 PICTURE 9(4) COMP SYNC.
           05  FILLER REDEFINES STAT-1.
               10  STAT-X1 PIC X COMP-X.
               10  STAT-X2 PIC X COMP-X.
       77  BYTE-1  PICTURE 9(3).
       77  BYTE-2  PICTURE 9(3).
       78  MAX-SUB           VALUE  16.

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GIB00000".
           05  FILLER PIC X(8) VALUE "H&J00000".
           05  FILLER PIC X(8) VALUE "INC00000".
           05  FILLER PIC X(8) VALUE "JOH00000".
           05  FILLER PIC X(8) VALUE "KON00000".
           05  FILLER PIC X(8) VALUE "LEW00000".
           05  FILLER PIC X(8) VALUE "MOR00000".
           05  FILLER PIC X(8) VALUE "NEW00000".
           05  FILLER PIC X(8) VALUE "OLD00000".
           05  FILLER PIC X(8) VALUE "PRE00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GIBRALTER LIFE INSURANCE ".
           05  FILLER PIC X(25) VALUE "H & J PLUMBING SUPPLIES  ".
           05  FILLER PIC X(25) VALUE "INCREMENTAL BACKUP CORP. ".
           05  FILLER PIC X(25) VALUE "JOHNSON BOATING SUPPLIES ".
           05  FILLER PIC X(25) VALUE "KONFLAB PLASTIC PRODUCTS.".
           05  FILLER PIC X(25) VALUE "LEWISTON GRAPHICS LTD.   ".
           05  FILLER PIC X(25) VALUE "MORNINGSIDE CARPENTRY.   ".
           05  FILLER PIC X(25) VALUE "NEW WAVE SURF SHOPS INC. ".
           05  FILLER PIC X(25) VALUE "OLD TYME PIZZA MFG. CO.  ".
           05  FILLER PIC X(25) VALUE "PRESTIGE OFFICE FURNITURE".

         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-1-TBL.

           05  FILLER PIC X(25) VALUE "123 MAIN STREET          ".
           05  FILLER PIC X(25) VALUE "1090 2ND AVE. WEST       ".
           05  FILLER PIC X(25) VALUE "1401 JEFFERSON BLVD.     ".
           05  FILLER PIC X(25) VALUE "1620 ARIZONA WAY         ".
           05  FILLER PIC X(25) VALUE "1184 EAST FIRST STREET   ".
           05  FILLER PIC X(25) VALUE "114 JOHN F. KENNEDY AVE. ".
           05  FILLER PIC X(25) VALUE "650 LIBERTY CRESCENT     ".
           05  FILLER PIC X(25) VALUE "77 SUNSET BLVD.          ".
           05  FILLER PIC X(25) VALUE "10908 SANTA MONICA BLVD. ".
           05  FILLER PIC X(25) VALUE "1134 PARIS ROAD          ".
           05  FILLER PIC X(25) VALUE "808 NORTHWEST MAIN ST.   ".
           05  FILLER PIC X(25) VALUE "9904 QUEEN STREET        ".
           05  FILLER PIC X(25) VALUE "1709 DUNDAS CRESCENT W.  ".
           05  FILLER PIC X(25) VALUE "3240 MARIS AVENUE        ".
           05  FILLER PIC X(25) VALUE "1705 WISCONSIN ROAD      ".
           05  FILLER PIC X(25) VALUE "114A MAPLE GROVE         ".

         02  DATA-ADDRESS-1 REDEFINES DATA-ADDRESS-1-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "SAN DIEGO ".
           05  FILLER PIC X(10) VALUE "LOS RIOS  ".
           05  FILLER PIC X(10) VALUE "MADISON   ".
           05  FILLER PIC X(10) VALUE "WILBUR    ".
           05  FILLER PIC X(10) VALUE "TOPEKA    ".
           05  FILLER PIC X(10) VALUE "SEATTLE   ".
           05  FILLER PIC X(10) VALUE "NEW JERSEY".
           05  FILLER PIC X(10) VALUE "FORT WAYNE".
           05  FILLER PIC X(10) VALUE "COLUMBUS  ".
           05  FILLER PIC X(10) VALUE "RICHMOND  ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS-2 REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-ADDRESS-3-TBL.

           05  FILLER PIC X(10) VALUE "N.Y.      ".
           05  FILLER PIC X(10) VALUE "GEORGIA   ".
           05  FILLER PIC X(10) VALUE "D.C.      ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CALIFORNIA".
           05  FILLER PIC X(10) VALUE "NEW MEXICO".
           05  FILLER PIC X(10) VALUE "WISCONSIN ".
           05  FILLER PIC X(10) VALUE "DELAWARE  ".
           05  FILLER PIC X(10) VALUE "KANSAS    ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "N.J.      ".
           05  FILLER PIC X(10) VALUE "COLORADO  ".
           05  FILLER PIC X(10) VALUE "OHIO      ".
           05  FILLER PIC X(10) VALUE "VIRGINIA  ".
           05  FILLER PIC X(10) VALUE "N.Y.      ".

         02  DATA-ADDRESS-3 REDEFINES DATA-ADDRESS-3-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-TELEPHONE-TBL.

           05  FILLER PIC 9(10) VALUE 3131234432.
           05  FILLER PIC 9(10) VALUE 4082938498.
           05  FILLER PIC 9(10) VALUE 8372487274.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 5292398745.
           05  FILLER PIC 9(10) VALUE 8009329492.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 6546456333.
           05  FILLER PIC 9(10) VALUE 3455445444.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 7456434355.
           05  FILLER PIC 9(10) VALUE 6554456433.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 7534587453.
           05  FILLER PIC 9(10) VALUE 8787458374.
           05  FILLER PIC 9(10) VALUE 4169898509.

         02  DATA-TELEPHONE REDEFINES DATA-TELEPHONE-TBL
                                       PIC 9(10) OCCURS MAX-SUB.
         02  DATA-DP-MGR-TBL.

           05  FILLER PIC X(20) VALUE "MR. DAVE HARRIS     ".
           05  FILLER PIC X(20) VALUE "MS. JANICE SILCOX   ".
           05  FILLER PIC X(20) VALUE "MR. ALLAN JONES     ".
           05  FILLER PIC X(20) VALUE "MR. PETER MACKAY    ".
           05  FILLER PIC X(20) VALUE "MRS. DONNA BREWER   ".
           05  FILLER PIC X(20) VALUE "MR. MICHAEL SMYTHE  ".
           05  FILLER PIC X(20) VALUE "MR. D.A. MORRISON   ".
           05  FILLER PIC X(20) VALUE "MR. BRIAN PATTERSON ".
           05  FILLER PIC X(20) VALUE "MR. DARRYL TOWNSEND ".
           05  FILLER PIC X(20) VALUE "MS. VALERIE HARPER  ".
           05  FILLER PIC X(20) VALUE "MR. FRED MILLER     ".
           05  FILLER PIC X(20) VALUE "MR. DONALD FISCHER  ".
           05  FILLER PIC X(20) VALUE "MR. STEVEN YOURDIN  ".
           05  FILLER PIC X(20) VALUE "MS. Goldie Hawn     ".
           05  FILLER PIC X(20) VALUE "MS. ALICE WINSTON   ".
           05  FILLER PIC X(20) VALUE "MR. THOMAS JEFFERSON".

         02  DATA-DP-MGR    REDEFINES DATA-DP-MGR-TBL
                                       PIC X(20) OCCURS MAX-SUB.
         02  DATA-MACHINE-TBL.

           05  FILLER PIC X(8) VALUE "UNI-9030".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-80/3".
           05  FILLER PIC X(8) VALUE "UNI-80/5".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-9040".

         02  DATA-MACHINE   REDEFINES DATA-MACHINE-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 85.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 45.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 107.
           05  FILLER PIC 9(3) COMP-3 VALUE 67.
           05  FILLER PIC 9(3) COMP-3 VALUE 32.
           05  FILLER PIC 9(3) COMP-3 VALUE 16.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 128.
           05  FILLER PIC 9(3) COMP-3 VALUE 64.
           05  FILLER PIC 9(3) COMP-3 VALUE 110.
           05  FILLER PIC 9(3) COMP-3 VALUE 324.
           05  FILLER PIC 9(3) COMP-3 VALUE 124.
           05  FILLER PIC 9(3) COMP-3 VALUE 86.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.

       78  REC-MAX                     VALUE 10.
       01  WORK-AREA.
           05  REC-NUM                 BINARY-SHORT UNSIGNED VALUE 0.
           05  SUB                     BINARY-SHORT UNSIGNED.
               88  ODD-RECORD          VALUE 1 3 5 7 9 10 11.
               88  NULL-KEY            VALUE 4 5 8 12 14.

           05  TSPFL-KEY               PICTURE X(8).

       PROCEDURE DIVISION.

       MAINFILE.
           PERFORM LOADFILE.
           PERFORM LISTFILE.
           STOP RUN.

       LOADFILE.
           DISPLAY "Loading sample data file."
                            UPON CONSOLE.

           OPEN OUTPUT TSPFILE
           IF CUST-STAT NOT = "00"
               DIVIDE STAT-1 BY 256 GIVING BYTE-1 REMAINDER BYTE-2
               DISPLAY "Error " CUST-STAT " " BYTE-1 " " BYTE-2
               " opening 'testisam' file"
                                UPON CONSOLE
               STOP RUN
           END-IF.

           PERFORM 1000-LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample data file load complete."
                            UPON CONSOLE.
           CLOSE TSPFILE.

      *---------------------------------------------------------------*
      *         LOAD A RECORD FROM DATA TABLES                        *
      *---------------------------------------------------------------*

       1000-LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE CM-CUST-NUM                  TO TSPFL-KEY.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-ADDRESS-1     (SUB)     TO CM-ADDRESS-1.
           MOVE DATA-ADDRESS-2     (SUB)     TO CM-ADDRESS-2.
           MOVE DATA-ADDRESS-3     (SUB)     TO CM-ADDRESS-3.
           MOVE DATA-TELEPHONE     (SUB)     TO CM-TELEPHONE.
           MOVE DATA-DP-MGR        (SUB)     TO CM-DP-MGR.
           MOVE DATA-MACHINE       (SUB)     TO CM-MACHINE.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
               MOVE "1600 BPI"               TO CM-TAPE
               MOVE "1MEG"                   TO CM-MEMORY
           ELSE
               MOVE "8470"                   TO CM-DISK
               MOVE "6250 BPI"               TO CM-TAPE
               MOVE "3MEG"                   TO CM-MEMORY.
           IF  NULL-KEY
               MOVE ALL "*"                  TO CM-DISK
               MOVE ALL "*"                  TO CM-TAPE.

           WRITE TSPFL-RECORD.
           IF CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Key: " TSPFL-KEY ", Status: " CUST-STAT
                                 UPON CONSOLE.

       LISTFILE.
           DISPLAY "LIST SAMPLE FILE" UPON CONSOLE.
           MOVE ZERO TO REC-NUM
           OPEN INPUT TSPFILE
           IF CUST-STAT NOT = "00"
               DISPLAY "ERROR " CUST-STAT " OPENING INPUT FILE "
                                             UPON CONSOLE
               IF CUST-STAT (1:1) = "9"
                   DISPLAY "Sub Error " STAT-X2 UPON CONSOLE
               END-IF
               STOP RUN
           END-IF.
           MOVE SPACES                       TO TSPFL-RECORD.
           START TSPFILE KEY GREATER THAN PRIME-KEY
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               IF CUST-STAT (1:1) = "9"
                   DISPLAY "Sub Error " STAT-X2 UPON CONSOLE
               END-IF
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               IF CUST-STAT (1:1) = "9"
                   DISPLAY "Sub Error " STAT-X2 UPON CONSOLE
               END-IF
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK ":"
                         UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File" UPON CONSOLE
           END-IF.

           DISPLAY "LIST SAMPLE FILE DESCENDING" UPON CONSOLE.
           MOVE ZERO TO REC-NUM
           START TSPFILE KEY LESS THAN PRIME-KEY
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE PREVIOUS RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK ":"
                         UPON CONSOLE
               READ TSPFILE PREVIOUS RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM.

           DISPLAY "LIST SAMPLE FILE BY KEY3" UPON CONSOLE.
           MOVE ZERO                         TO REC-NUM
           MOVE SPACES                       TO TSPFL-RECORD.
           START TSPFILE KEY GREATER THAN OR EQUAL TO SPLIT-KEY3
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL (CUST-STAT NOT = "00"
                      AND CUST-STAT NOT = "02")
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK ":"
                         UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM.
      *---- Some results may be different with VB-ISAM  ------*
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           READ TSPFILE KEY IS PRIME-KEY
           IF  CUST-STAT NOT = "23"
               DISPLAY "Error " CUST-STAT " instead of 23"
                                UPON CONSOLE
           END-IF.
           MOVE DATA-COMPANY       (2)       TO CM-COMPANY.
           READ TSPFILE KEY IS PRIME-KEY
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on primary read "
                                UPON CONSOLE
           ELSE
               DISPLAY "Got: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK ":"
                         UPON CONSOLE
           END-IF.
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on next read "
                                UPON CONSOLE
           ELSE
               DISPLAY "Nxt: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK ":"
                         UPON CONSOLE
           END-IF.
           MOVE DATA-TELEPHONE     (7)       TO CM-TELEPHONE.
           MOVE DATA-MACHINE       (7)       TO CM-MACHINE.
           READ TSPFILE KEY IS SPLIT-KEY2
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 23"
                                UPON CONSOLE
           ELSE
               DISPLAY "Ky2: " CM-CUST-NUM " is " CM-COMPANY
                        " Mach=" CM-MACHINE ":"
                         UPON CONSOLE
           END-IF.
           CLOSE TSPFILE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:1956: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:1956"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1956"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:1958: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:1958"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Loading sample data file.
Sample data file load complete.
LIST SAMPLE FILE
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=8417    :
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    :
Key: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=********:
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=********:
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    :
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    :
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    :
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=********:
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    :
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    :
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    :
LIST SAMPLE FILE DESCENDING
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    :
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    :
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    :
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=********:
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    :
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    :
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    :
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=********:
Key: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=********:
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    :
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=8417    :
LIST SAMPLE FILE BY KEY3
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=8417    :
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    :
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    :
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    :
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    :
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    :
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    :
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    :
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    :
Key: OLD00000 is OLD TYME PIZZA MFG. CO.   Disk=8470    :
Key: PRE00000 is PRESTIGE OFFICE FURNITURE Disk=8470    :
Got: BET00000 is BETA SHOE MFG. INC.       Disk=8470    :
Nxt: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=********:
Ky2: GIB00000 is GIBRALTER LIFE INSURANCE  Mach=UNI-80/6:
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:1958"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_872
#AT_START_873
at_fn_group_banner 873 'run_file.at:2005' \
  "INDEXED file split keys WITH DUPLICATES" "        " 4
at_xfail=no
(
  $as_echo "873. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:2008" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:2008"

## Note: The order in which secondary records with duplicate keys
##       are returnded is not guaranteed.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT test-file
               ASSIGN        "TESTFILE"
               ACCESS        DYNAMIC
               ORGANIZATION  INDEXED
               RECORD KEY           test-key-1 SOURCE IS test-key-p1
               ALTERNATE RECORD KEY test-key-2 SOURCE IS test-key-p2,
                                                         test-key-p3
               WITH DUPLICATES
           .

       DATA             DIVISION.
       FILE             SECTION.
       FD  test-file.
       01  test-rec.
           03  test-key-p1 PIC X(4).
           03  test-key-p2 PIC 9(4).
           03  test-data   PIC X(4).
           03  test-key-p3 PIC X(4).

       WORKING-STORAGE SECTION.
       01  found        PIC X(03).

       PROCEDURE        DIVISION.
           OPEN OUTPUT test-file
           WRITE test-rec FROM "BBBB0001dat1aaaa"
           WRITE test-rec FROM "AAAA0001dat2aaaa"
           WRITE test-rec FROM "CCCC0002dat3aaaa"
           WRITE test-rec FROM "DDDD0002dat4bbbb"
           WRITE test-rec FROM "EEEE0002dat5bbbb"
           CLOSE test-file

           OPEN INPUT test-file

           MOVE "CCCC" TO test-key-p1
           READ test-file KEY IS test-key-1
               INVALID KEY
                   DISPLAY "READ with CCCC found no record"
               NOT INVALID KEY
                   IF test-data NOT = "dat3"
                       DISPLAY "READ with wrong result: "
                           test-rec
           END-READ

           MOVE SPACES   TO found

           MOVE 0001     TO test-key-p2
           MOVE "aaaa"   TO test-key-p3
           START test-file KEY >= test-key-2
               INVALID KEY
                   DISPLAY "START >= 0001/aaaa found no record"
               NOT INVALID KEY
                   READ  test-file NEXT
                       AT END
                           DISPLAY "READ NEXT (1) found no record"
                       NOT AT END
                           EVALUATE test-data
                              WHEN "dat1"
                                 MOVE 'X' TO found (1:1)
                              WHEN "dat2"
                                 MOVE 'X' TO found (2:1)
                              WHEN OTHER
                                 DISPLAY "READ NEXT (1) "
                                     "with wrong result: "
                                     test-data
                   END-READ
                   READ  test-file NEXT
                       AT END
                           DISPLAY "READ NEXT (2) found no record"
                       NOT AT END
                           EVALUATE test-data
                              WHEN "dat1"
                                 MOVE 'X' TO found (1:1)
                              WHEN "dat2"
                                 MOVE 'X' TO found (2:1)
                              WHEN OTHER
                                 DISPLAY "READ NEXT (2) "
                                     "with wrong result: "
                                     test-data
                   END-READ
                   IF found NOT = 'XX '
                      DISPLAY "START >= + READ NEXT * 2 "
                          "with wrong result: " found
           END-START
           MOVE 0001      TO test-key-p2
           MOVE "aaaa"    TO test-key-p3
           START test-file KEY > test-key-2
               INVALID KEY
                   DISPLAY "START > 0001/aaaa found no record"
               NOT INVALID KEY
                   READ  test-file NEXT
                       AT END
                           DISPLAY "READ NEXT (3) found no record"
                       NOT AT END
                           IF test-data NOT = "dat3"
                               DISPLAY "READ NEXT (3) "
                                   "with wrong result: "
                                   test-data
                   END-READ
           END-START

           MOVE 0002      TO test-key-p2
           MOVE ALL "z"   TO test-key-p3
           START test-file KEY IS < test-key-2
               INVALID KEY
                   DISPLAY "START < 0002/zzzz found no record"
               NOT INVALID KEY
                   READ  test-file PREVIOUS
                       AT END
                           DISPLAY "READ PREVIOUS (1) found no record"
                       NOT AT END
                           IF test-data NOT = "dat5"
                              DISPLAY "READ PREVIOUS (1) "
                                  "with wrong result: "
                                  test-data
                   END-READ
                   READ  test-file PREVIOUS
                       AT END
                           DISPLAY "READ PREVIOUS (2) found no record"
                       NOT AT END
                           IF test-data NOT = "dat4"
                              DISPLAY "READ PREVIOUS (2) "
                                  "with wrong result: "
                                  test-data
                   END-READ
                   READ  test-file PREVIOUS
                       AT END
                           DISPLAY "READ PREVIOUS (3) found no record"
                       NOT AT END
                           IF test-data NOT = "dat3"
                              DISPLAY "READ PREVIOUS (3) "
                                  "with wrong result: "
                                  test-data
                   END-READ
           END-START

           CLOSE test-file
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:2159: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:2159"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2159"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:2160: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:2160"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2160"
$at_failed && at_fn_log_failure
$at_traceon; }


# verify that all of this works with wrapping to EXTFH calls and
# back to our own EXTFH entry point

{ set +x
$as_echo "$at_srcdir/run_file.at:2165: \$COMPILE -fcallfh=EXTFH -o extfh prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=EXTFH -o extfh prog.cob" "run_file.at:2165"
( $at_check_trace; $COMPILE -fcallfh=EXTFH -o extfh prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2165"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:2166: \$COBCRUN_DIRECT ./extfh"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./extfh" "run_file.at:2166"
( $at_check_trace; $COBCRUN_DIRECT ./extfh
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2166"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_873
#AT_START_874
at_fn_group_banner 874 'run_file.at:2171' \
  "INDEXED file variable length record" "            " 4
at_xfail=no
(
  $as_echo "874. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:2174" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:2174"

cat >prog.cob <<'_ATEOF'

       Identification division.
       Program-id. prog.
      *
       Environment division.

       Input-output section.
       File-control.
      *
           Select optional tbw
               assign to path-tbw
               organization is indexed
               access mode is dynamic
               record key is tbw-key
               alternate record key is tbw-alt
                   suppress when space
               sharing with no other
               file status is fs-file-status.
      *
       I-o-control.
      *
       Data division.
       File section.
      *
       FD  tbw
           record is varying in size
               from 107 to 362 characters
               depending on end-tbw-record
	       .
       01  tbw-record.
           02 tbw-key                        pic x(100).
           02 tbw-alt.
               03 tbw-alt-1                  pic 9(02).
               03 tbw-alt-2                  pic 9(04).
           02 tbw-f1                         pic x(01).
           02 tbw-f2                         pic x(255).
      *
       Working-storage section.

       01  fs-file-status                 pic x(02).

       01  end-tbw-record                 pic 9(09) binary.

       01  flag-tbw                       pic x(01) value low-value.
           88 flag-tbw-open   value high-value.
           88 flag-tbw-closed value low-value.

       01  path-tbw                       pic x(255) value space.

       Procedure division.

      * Prepare.
           Move "tbw" to path-tbw.

      * First test.
           Perform tbw-delete-file thru tbw-exit.

           Perform tbw-open-i-o    thru tbw-exit.

           Move low-values to tbw-key.
           Perform tbw-start-primary-greater thru tbw-exit.

           Perform tbw-read-next thru tbw-exit.

           Move 122 to end-tbw-record.
           Move "aaaaa" to tbw-key.
           Move spaces to tbw-alt
                          tbw-f1
                          tbw-f2.
           Perform tbw-write thru tbw-exit.

           Move low-values to tbw-alt.
           Perform tbw-start-alternate thru tbw-exit.

           Move low-values to tbw-key.
           Perform tbw-start-primary-greater thru tbw-exit.

           Perform tbw-read-next thru tbw-exit.

           Perform tbw-read-next thru tbw-exit.

           Perform tbw-close thru tbw-exit.

      * Second test.

           Perform tbw-delete-file thru tbw-exit.

           Perform tbw-open-i-o thru tbw-exit.

           Move low-values to tbw-key.
           Perform tbw-start-primary-greater thru tbw-exit.

           Perform tbw-read-next thru tbw-exit.

           Move 163 to end-tbw-record.
           Move "aaaaa" to tbw-key.
           Move 1 to tbw-alt-1
                     tbw-alt-2.
           Move spaces to tbw-f1
                          tbw-f2.
           Perform tbw-write thru tbw-exit.

           Move 122 to end-tbw-record.
           Move "aaaab" to tbw-key.
           Move spaces to tbw-alt
                          tbw-f1
                          tbw-f2.
           Perform tbw-write thru tbw-exit.

           Move low-values to tbw-alt.
           Perform tbw-start-alternate thru tbw-exit.

           Perform tbw-read-next thru tbw-exit.

           Move spaces to tbw-alt.
           Perform tbw-rewrite thru tbw-exit.

      *>   note: should not have status 02 as it a suppressed alternate key
      *>         therefore duplicate checks must be skipped

      * Finish.
           Perform tbw-close thru tbw-exit.
           Display "Test completed".
           Stop run.

      * I/O.
       tbw-Open-I-O.
           If flag-tbw-open
               Perform tbw-Close thru tbw-Close-exit.
           Display "open".
           Open i-o tbw.
           Display "open done".
           If fs-file-status is less than "10"
               Set flag-tbw-open to true.
           Go to tbw-exit.
      *
       tbw-Start-Primary-Greater.
           Display "start > tbw-key".
           Start tbw
               key is greater than tbw-key
               invalid key
                 Display "start > tbw-key inv"
                 Go to tbw-exit
               not invalid
                 Display "start > tbw-key done"
                 Go to tbw-exit.
           Display "start > tbw-key "  fs-file-status
           Go to tbw-exit.
      *
       tbw-Start-Alternate.
           Display "start >= tbw-alt".
           Start tbw
               key is not less than tbw-alt
               invalid key
      *>Inspect! Display "start >= tbw-alt inv"
                 Display "start >= tbw-alt done"
                 Go to tbw-exit
               not invalid
                 Display "start >= tbw-alt done"
                 Go to tbw-exit.
           Display "start >= tbw-alt "  fs-file-status
           Go to tbw-exit.
      *
       tbw-Read-Next.
           Display "read next".
           Read tbw
               next record
               at end
                 Display "read next end"
                 Go to tbw-exit
               not at end
                 Display "read next done"
                 Go to tbw-exit.
           Display "read next "  fs-file-status
           Go to tbw-exit.
      *
       tbw-Write.
           Display "write".
           Write tbw-record
               invalid key
                 Display "write inv"
                 Go to tbw-exit
               not invalid
                 Display "write done"
                 Go to tbw-exit.
           Display "write "  fs-file-status
           Go to tbw-exit.
      *
       tbw-Rewrite.
           Display "rewrite".
           Rewrite tbw-record
               invalid key
                 Display "rewrite inv "  fs-file-status
                 Go to tbw-exit
               not invalid
                 Display "rewrite done " fs-file-status
                 Go to tbw-exit.
           Display "rewrite "  fs-file-status
           Go to tbw-exit.
      *
       tbw-Delete-File.
           If flag-tbw-open
               Perform tbw-Close thru tbw-Close-exit.
           Move "xx" to fs-file-status.
           Display "delete file".
           Delete file tbw.
           Display "delete file done".
           Go to tbw-exit.
      *
       tbw-Close.
           If flag-tbw-open
               Display "close"
               Close tbw
               Display "close done"
               Set flag-tbw-closed to true
           end-if.
       tbw-Close-exit.
           Exit.
       tbw-exit.
           Exit.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:2398: \$COMPILE prog.cob "
at_fn_check_prepare_dynamic "$COMPILE prog.cob " "run_file.at:2398"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2398"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:2400: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:2400"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "delete file
delete file done
open
open done
start > tbw-key
start > tbw-key inv
read next
read next 46
write
write done
start >= tbw-alt
start >= tbw-alt done
start > tbw-key
start > tbw-key done
read next
read next done
read next
read next end
close
close done
delete file
delete file done
open
open done
start > tbw-key
start > tbw-key inv
read next
read next 46
write
write done
write
write done
start >= tbw-alt
start >= tbw-alt done
read next
read next done
rewrite
rewrite done 00
close
close done
Test completed
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2400"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_874
#AT_START_875
at_fn_group_banner 875 'run_file.at:2447' \
  "INDEXED sample" "                                 " 4
at_xfail=no
(
  $as_echo "875. $at_setup_line: testing $at_desc ..."
  $at_traceon



# modified version of GC-FAQ: indexing example
# Author: Brian Tiffin, Date:   17-Feb-2009, 28-Jan-2014

$as_echo "run_file.at:2453" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:2453"

cat >prog.cob <<'_ATEOF'


       identification division.
       program-id. linage.

       environment division.
       configuration section.

       input-output section.
       file-control.
          select optional indexed-file
          assign to "indexed-file.dat"
          status is indexing-status-code
          organization is indexed
          access mode is dynamic
          record key is keyfield of indexing-record
          alternate record key is altkey of indexing-record
              with duplicates
          .

       data division.
       file section.
       fd indexed-file.
       01 indexing-record.
          03 keyfield          pic x(8).
          03 filler            pic x.
          03 altkey.
             05 first-part     pic 99.
             05 middle-part    pic x.
             05 last-part      pic 99.
          03 filler            pic x.
          03 data-part         pic x(18).

       working-storage section.
       01 indexing-status-code pic xx.
       01 indexing-status redefines indexing-status-code pic 99.
          88 indexing-ok       values 0 thru 10.

       78 line-separator       value
           '-----------------------------------------'.
       01 display-record.
          03 filler            pic x(4)  value spaces.
          03 keyfield          pic x(8).
          03 filler            pic xx    value spaces.
          03 altkey.
             05 first-part     pic 99.
             05 filler         pic x     value space.
             05 middle-part    pic x.
             05 filler         pic x     value space.
             05 last-part      pic 99.
          03 filler            pic xx    value ", ".
          03 data-part         pic x(18).
       77 safety-net           pic 99.

      *> control break
       01 oldkey               pic 99x99.

      *> read control fields
       01 duplicate-flag       pic x.
          88 no-more-duplicates          value high-value
             when set to false                 low-value.
       01 record-flag          pic x.
          88 no-more-records             value high-value
             when set to false                 low-value.

      *> ***************************************************************
       procedure division.
       main.
      *> Populate a sample database, create or overwrite keys
           perform populate-sample

      *> clear the record space for this example
           move spaces to indexing-record

      *> open the data file again
           open i-o indexed-file
           perform indexing-check
           if not indexing-ok
             stop run returning 1
           end-if

      *> read all the duplicate 00b02 keys
           move 00 to first-part of indexing-record
           move "b" to middle-part of indexing-record
           move 02 to last-part of indexing-record

      *> using read key and then next key / last key compare
           set no-more-duplicates to false

           display "Read all 00b02 keys sequentially" end-display
           perform read-indexing-record
           perform read-next-record
      *>       this is only here for safety...
               varying safety-net from 1 by 1
               until no-more-duplicates
      *>         s a f e  against broken indexed i/o
                  or safety-net > 40
           if safety-net > 40
               display "Safety kicked in!" end-display
           end-if
           display line-separator end-display

      *> read by key of reference ... the cool stuff
           move 00 to first-part of indexing-record
           move "a" to middle-part of indexing-record
           move 02 to last-part of indexing-record
           set no-more-records to false

      *> using start and read next
           display "Read all alternate keys greater than 00a02"
           end-display
           perform start-at-key
           perform read-next-by-key
      *>       this is only here for safety...
               varying safety-net from 1 by 1
               until no-more-records
      *>         s a f e  against broken indexed i/o
                  or safety-net > 40
           if safety-net > 40
               display "Safety kicked in!" end-display
           end-if
           display line-separator end-display

      *> read by primary key of reference
           move "87654321" to keyfield of indexing-record
           set no-more-records to false

      *> using start and previous by key
           display
               "Read all primary keys less than "
               function trim (keyfield of indexing-record)
           end-display
           perform start-prime-key
           perform read-previous-by-key
      *>       this is only here for safety...
               varying safety-net from 1 by 1
               until no-more-records
      *>         s a f e  against broken indexed i/o
                  or safety-net > 40
           if safety-net > 40
             display "Safety kicked in!" end-display
           end-if
           display line-separator end-display

      *> explicit early file unlock, see bug #533
           unlock indexed-file

      *> and with that we are done with indexing sample
           close indexed-file

           goback
           .
      *> ***************************************************************

      *> ***************************************************************
      *><* read by alternate key paragraph
       read-indexing-record.
           display "Reading: " altkey of indexing-record end-display
           read indexed-file key is altkey of indexing-record
               invalid key
                   display
                       "bad read key: "
                       function trim (altkey of indexing-record)
                       upon syserr
                   end-display
               set no-more-duplicates to true
           end-read
           perform indexing-check
           .

      *><* read next sequential paragraph
       read-next-record.
           move corresponding indexing-record to display-record
           display display-record end-display
           move altkey of indexing-record to oldkey

           read indexed-file next record
               at end set no-more-duplicates to true
               not at end
                   if oldkey not equal altkey of indexing-record
                       set no-more-duplicates to true
                   end-if
           end-read
           perform indexing-check
           .

      *><* start primary key of reference paragraph
       start-prime-key.
           display "Prime < " keyfield of indexing-record end-display
           start indexed-file
              key is less than
                  keyfield of indexing-record
              invalid key
                  display
                      "bad start: "
                      function trim (keyfield of indexing-record)
                      upon syserr
                  end-display
                  set no-more-records to true
              not invalid key
                  read indexed-file previous record
                      at end set no-more-records to true
                  end-read
           end-start
           perform indexing-check
           .

      *><* read previous by key of reference paragraph
       read-previous-by-key.
           move corresponding indexing-record to display-record
           display display-record end-display

           read indexed-file previous record
               at end set no-more-records to true
           end-read
           perform indexing-check
           .
      *><* start alternate key of reference paragraph
       start-at-key.
           display "Seeking >= " altkey of indexing-record end-display
           start indexed-file
              key is greater than or equal to
                  altkey of indexing-record
              invalid key
                  display
                      "bad start: "
                      function trim (altkey of indexing-record)
                      upon syserr
                  end-display
                  set no-more-records to true
              not invalid key
                  read indexed-file next record
                      at end set no-more-records to true
                  end-read
           end-start
           perform indexing-check
           .

      *><* read next by key of reference paragraph
       read-next-by-key.
           move corresponding indexing-record to display-record
           display display-record end-display

           read indexed-file next record
               at end set no-more-records to true
           end-read
           perform indexing-check
           .

      *><* populate a sample database
       populate-sample.

      *> Open optional index file for read write
           open i-o indexed-file
           perform indexing-check

           move "12345678 00a01 some 12345678 data" to indexing-record
           perform write-indexing-record
           move "87654321 00a01 some 87654321 data" to indexing-record
           perform write-indexing-record
           move "12348765 00a01 some 12348765 data" to indexing-record
           perform write-indexing-record
           move "87651234 00a01 some 87651234 data" to indexing-record
           perform write-indexing-record

           move "12345679 00b02 some 12345679 data" to indexing-record
           perform write-indexing-record
           move "97654321 00b02 some 97654321 data" to indexing-record
           perform write-indexing-record
           move "12349765 00b02 some 12349765 data" to indexing-record
           perform write-indexing-record
           move "97651234 00b02 some 97651234 data" to indexing-record
           perform write-indexing-record

           move "12345689 00c13 some 12345689 data" to indexing-record
           perform write-indexing-record
           move "98654321 00c13 some 98654321 data" to indexing-record
           perform write-indexing-record
           move "12349865 00c13 some 12349865 data" to indexing-record
           perform write-indexing-record
           move "98651234 00c13 some 98651234 data" to indexing-record
           perform write-indexing-record

      *> close it ... not necessary, but for the example we will
           close indexed-file
           perform indexing-check
           .

      *><* Write paragraph
       write-indexing-record.
           write indexing-record
               invalid key
                   display
                       "rewriting key: "
                       function trim (keyfield of indexing-record)
                       upon syserr
                   end-display
                   rewrite indexing-record
                       invalid key
                           display
                               "really bad key: "
                             function trim (keyfield of indexing-record)
                               upon syserr
                           end-display
                   end-rewrite
           end-write
           .

      *><* file status quick check.  For this sample, keep running
       indexing-check.
           if not indexing-ok then
               display
                   "isam file io problem: " indexing-status
                   upon syserr
               end-display
           end-if
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:2774: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:2774"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2774"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:2775: rm -f \"indexed-file.*\""
at_fn_check_prepare_trace "run_file.at:2775"
( $at_check_trace; rm -f "indexed-file.*"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2775"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:2776: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:2776"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Read all 00b02 keys sequentially
Reading: 00b02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
-----------------------------------------
Read all alternate keys greater than 00a02
Seeking >= 00a02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
    12345689  00 c 13, some 12345689 data
    98654321  00 c 13, some 98654321 data
    12349865  00 c 13, some 12349865 data
    98651234  00 c 13, some 98651234 data
-----------------------------------------
Read all primary keys less than 87654321
Prime < 87654321
    87651234  00 a 01, some 87651234 data
    12349865  00 c 13, some 12349865 data
    12349765  00 b 02, some 12349765 data
    12348765  00 a 01, some 12348765 data
    12345689  00 c 13, some 12345689 data
    12345679  00 b 02, some 12345679 data
    12345678  00 a 01, some 12345678 data
-----------------------------------------
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2776"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:2806: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:2806"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "rewriting key: 12345678
rewriting key: 87654321
rewriting key: 12348765
rewriting key: 87651234
rewriting key: 12345679
rewriting key: 97654321
rewriting key: 12349765
rewriting key: 97651234
rewriting key: 12345689
rewriting key: 98654321
rewriting key: 12349865
rewriting key: 98651234
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Read all 00b02 keys sequentially
Reading: 00b02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
-----------------------------------------
Read all alternate keys greater than 00a02
Seeking >= 00a02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
    12345689  00 c 13, some 12345689 data
    98654321  00 c 13, some 98654321 data
    12349865  00 c 13, some 12349865 data
    98651234  00 c 13, some 98651234 data
-----------------------------------------
Read all primary keys less than 87654321
Prime < 87654321
    87651234  00 a 01, some 87651234 data
    12349865  00 c 13, some 12349865 data
    12349765  00 b 02, some 12349765 data
    12348765  00 a 01, some 12348765 data
    12345689  00 c 13, some 12345689 data
    12345679  00 b 02, some 12345679 data
    12345678  00 a 01, some 12345678 data
-----------------------------------------
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2806"
$at_failed && at_fn_log_failure
$at_traceon; }


# recheck with COB_SYNC to cover additional code paths - see bug # 753
{ set +x
$as_echo "$at_srcdir/run_file.at:2851: COB_SYNC=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SYNC=Y $COBCRUN_DIRECT ./prog" "run_file.at:2851"
( $at_check_trace; COB_SYNC=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "rewriting key: 12345678
rewriting key: 87654321
rewriting key: 12348765
rewriting key: 87651234
rewriting key: 12345679
rewriting key: 97654321
rewriting key: 12349765
rewriting key: 97651234
rewriting key: 12345689
rewriting key: 98654321
rewriting key: 12349865
rewriting key: 98651234
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Read all 00b02 keys sequentially
Reading: 00b02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
-----------------------------------------
Read all alternate keys greater than 00a02
Seeking >= 00a02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
    12345689  00 c 13, some 12345689 data
    98654321  00 c 13, some 98654321 data
    12349865  00 c 13, some 12349865 data
    98651234  00 c 13, some 98651234 data
-----------------------------------------
Read all primary keys less than 87654321
Prime < 87654321
    87651234  00 a 01, some 87651234 data
    12349865  00 c 13, some 12349865 data
    12349765  00 b 02, some 12349765 data
    12348765  00 a 01, some 12348765 data
    12345689  00 c 13, some 12345689 data
    12345679  00 b 02, some 12345679 data
    12345678  00 a 01, some 12345678 data
-----------------------------------------
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2851"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:2895: test \"\$COB_HAS_ISAM\" = \"db\""
at_fn_check_prepare_dynamic "test \"$COB_HAS_ISAM\" = \"db\"" "run_file.at:2895"
( $at_check_trace; test "$COB_HAS_ISAM" = "db"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2895"
if $at_failed; then :
  # Previous test "failed" --> other ISAM, no need for more checks
{ set +x
$as_echo "$at_srcdir/run_file.at:2895: true"
at_fn_check_prepare_trace "run_file.at:2895"
( $at_check_trace; true
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2895"
$at_failed && at_fn_log_failure
$at_traceon; }

else
  # Previous test "passed" --> using BDB, recheck with DB_HOME set
{ set +x
$as_echo "$at_srcdir/run_file.at:2895: DB_HOME=. \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DB_HOME=. $COBCRUN_DIRECT ./prog" "run_file.at:2895"
( $at_check_trace; DB_HOME=. $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "rewriting key: 12345678
rewriting key: 87654321
rewriting key: 12348765
rewriting key: 87651234
rewriting key: 12345679
rewriting key: 97654321
rewriting key: 12349765
rewriting key: 97651234
rewriting key: 12345689
rewriting key: 98654321
rewriting key: 12349865
rewriting key: 98651234
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Read all 00b02 keys sequentially
Reading: 00b02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
-----------------------------------------
Read all alternate keys greater than 00a02
Seeking >= 00a02
    12345679  00 b 02, some 12345679 data
    97654321  00 b 02, some 97654321 data
    12349765  00 b 02, some 12349765 data
    97651234  00 b 02, some 97651234 data
    12345689  00 c 13, some 12345689 data
    98654321  00 c 13, some 98654321 data
    12349865  00 c 13, some 12349865 data
    98651234  00 c 13, some 98651234 data
-----------------------------------------
Read all primary keys less than 87654321
Prime < 87654321
    87651234  00 a 01, some 87651234 data
    12349865  00 c 13, some 12349865 data
    12349765  00 b 02, some 12349765 data
    12348765  00 a 01, some 12348765 data
    12345689  00 c 13, some 12345689 data
    12345679  00 b 02, some 12345679 data
    12345678  00 a 01, some 12345678 data
-----------------------------------------
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:2895"
$at_failed && at_fn_log_failure
$at_traceon; }


fi
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_875
#AT_START_876
at_fn_group_banner 876 'run_file.at:2948' \
  "WRITE + REWRITE FILE name" "                      " 4
at_xfail=no
(
  $as_echo "876. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE ASSIGN EXTERNAL RELFIX
           ORGANIZATION RELATIVE
           ACCESS IS SEQUENTIAL RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

           SELECT FLATFILE2 ASSIGN EXTERNAL RELFIX
           ORGANIZATION RELATIVE
           ACCESS IS RANDOM RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(4).

       FD  FLATFILE2
           BLOCK CONTAINS 5 RECORDS.

       01  TSP2-RECORD.
           10  C2-CUST-NUM                     PICTURE X(8).
           10  C2-COMPANY                      PICTURE X(25).
           10  C2-DISK                         PICTURE X(8).
           10  C2-NO-TERMINALS                 PICTURE 9(4).

       WORKING-STORAGE SECTION.

       78  MAX-SUB           VALUE  6.
       77  CUST-STAT                           PICTURE X(2).
       77  REC-NUM           VALUE  1          BINARY-SHORT UNSIGNED.

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GAM00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".
         02  DATA-ADDRESS   REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.

         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 13.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 254.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.
       01  WORK-AREA.
           05  SUB                             BINARY-SHORT UNSIGNED.
               88  ODD-RECORD                  VALUE 1 3 5.


       PROCEDURE DIVISION.

           PERFORM LOADFILE.

           OPEN I-O FLATFILE2.
           MOVE 2 TO REC-NUM
           READ FLATFILE2
           DISPLAY "Read    " C2-CUST-NUM " Sts:" CUST-STAT
                   " Trms:" C2-NO-TERMINALS.
           ADD 1 TO C2-NO-TERMINALS
           REWRITE FILE FLATFILE2 FROM TSP2-RECORD
           READ FLATFILE2
           DISPLAY "REWROTE " C2-CUST-NUM " Sts:" CUST-STAT
                   " Trms:" C2-NO-TERMINALS.
           CLOSE FLATFILE2.
           STOP RUN.

       LOADFILE.
           DISPLAY "Loading sample program data file."
                            UPON CONSOLE.

           OPEN OUTPUT FLATFILE.

           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample program data file load complete."
                            UPON CONSOLE.
           CLOSE FLATFILE.

       LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.
           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
           ELSE
               MOVE "8470"                   TO CM-DISK.
           WRITE FILE FLATFILE FROM TSPFL-RECORD.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3089: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3089"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3089"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:3091: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3091"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Loading sample program data file.
Sample program data file load complete.
Read    BET00000 Sts:00 Trms:0013
REWROTE BET00000 Sts:00 Trms:0014
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3091"
$at_failed && at_fn_log_failure
$at_traceon; }


# recheck with COB_SYNC to cover additional code paths
{ set +x
$as_echo "$at_srcdir/run_file.at:3099: COB_SYNC=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SYNC=Y $COBCRUN_DIRECT ./prog" "run_file.at:3099"
( $at_check_trace; COB_SYNC=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Loading sample program data file.
Sample program data file load complete.
Read    BET00000 Sts:00 Trms:0013
REWROTE BET00000 Sts:00 Trms:0014
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3099"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_876
#AT_START_877
at_fn_group_banner 877 'run_file.at:3109' \
  "START RELATIVE (1)" "                             " 4
at_xfail=no
(
  $as_echo "877. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT OPTIONAL TEST-FILE
              ASSIGN      "TESTFILE"
              ACCESS       DYNAMIC
              ORGANIZATION RELATIVE
              STATUS       TESTSTAT
              RELATIVE KEY TESTKEY
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC     PIC X(4).
       WORKING-STORAGE  SECTION.
       01  TESTKEY      USAGE BINARY-LONG UNSIGNED.
       01  TESTSTAT     PIC XX.
           88  V-OK     VALUE "00" "05".
       PROCEDURE        DIVISION.
           DELETE FILE TEST-FILE.
           OPEN  I-O   TEST-FILE.
           IF NOT V-OK
              DISPLAY "OPEN " TESTSTAT
              END-DISPLAY
              GOBACK
           END-IF.
           MOVE 99 TO TESTKEY.
           START TEST-FILE KEY < TESTKEY
           END-START.
           IF TESTSTAT NOT = "23"
              DISPLAY "START " TESTSTAT
              END-DISPLAY
           END-IF.
           CLOSE TEST-FILE.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3152: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3152"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3152"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3153: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3153"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3153"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_877
#AT_START_878
at_fn_group_banner 878 'run_file.at:3158' \
  "START RELATIVE (2)" "                             " 4
at_xfail=no
(
  $as_echo "878. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT OPTIONAL TEST-FILE
              ASSIGN      "TESTFILE"
              ACCESS       DYNAMIC
              ORGANIZATION RELATIVE
              STATUS       TESTSTAT
              RELATIVE KEY TESTKEY
       .
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC     PIC X(4).
       WORKING-STORAGE  SECTION.
       01  TESTKEY      USAGE BINARY-LONG UNSIGNED.
       01  TESTSTAT     PIC XX.
           88  V-OK     VALUE "00" "05".
           88  V-ZERO   VALUE "00".
       PROCEDURE        DIVISION.
           OPEN  I-O   TEST-FILE.
           IF NOT V-OK
              DISPLAY "OPEN " TESTSTAT
              END-DISPLAY
              GOBACK
           END-IF.
           MOVE 3 TO TESTKEY.
           MOVE "0003" TO TEST-REC.
           WRITE TEST-REC INVALID KEY
                 DISPLAY "WRITE " TESTSTAT
                 END-DISPLAY
           END-WRITE.
           MOVE 2 TO TESTKEY.
           MOVE "0002" TO TEST-REC.
           WRITE TEST-REC INVALID KEY
                 DISPLAY "WRITE " TESTSTAT
                 END-DISPLAY
           END-WRITE.
           MOVE 99 TO TESTKEY.
           START TEST-FILE KEY < TESTKEY
           END-START.
           IF NOT V-ZERO
              DISPLAY "START " TESTSTAT
              END-DISPLAY
           END-IF.
           IF TESTKEY NOT = 99
              DISPLAY "TESTKEY " TESTKEY
              END-DISPLAY
           END-IF.
           MOVE  SPACE TO TEST-REC.
           READ  TEST-FILE NEXT
           END-READ.
           IF NOT V-ZERO
              DISPLAY "READ " TESTSTAT
              END-DISPLAY
           END-IF.
           IF TEST-REC NOT = "0003"
              DISPLAY "READ RECORD " TEST-REC
              END-DISPLAY
           END-IF.
           CLOSE TEST-FILE.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3228: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3228"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3228"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3229: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3229"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3229"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_878
#AT_START_879
at_fn_group_banner 879 'run_file.at:3234' \
  "START RELATIVE (3)" "                             " 4
at_xfail=no
(
  $as_echo "879. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN TO DISK
                    ORGANIZATION RELATIVE
                    ACCESS DYNAMIC RELATIVE KEY file1-key.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic 999.
       WORKING-STORAGE SECTION.
       77  file1-key pic 9(6).
       PROCEDURE DIVISION.
          OPEN OUTPUT file1.
          CLOSE file1.
          OPEN I-O file1.
          MOVE 10 TO file1-key file1-rec.
          WRITE file1-rec.
          MOVE 11 TO file1-key file1-rec.
          WRITE file1-rec.
          MOVE 12 TO file1-key file1-rec.
          WRITE file1-rec.
          MOVE 13 TO file1-key file1-rec.
          WRITE file1-rec.
      *
          MOVE 0 TO file1-key.
          START file1 KEY > file1-key.
          READ file1 NEXT.
          IF (file1-rec <> 10)
             DISPLAY "FAILED: START key > 0".
      *
          MOVE 99 TO file1-key.
          START file1 KEY < file1-key.
          READ file1 NEXT.
          IF (file1-rec <> 13)
             DISPLAY "FAILED: START key < 99".
      *
          MOVE 0 TO file1-key.
          START file1 FIRST.
          READ file1 NEXT.
          IF (file1-rec <> 10)
             DISPLAY "FAILED: START key FIRST".
      *
          MOVE 0 TO file1-key.
          START file1 LAST.
          READ file1 NEXT.
          IF (file1-rec <> 13)
             DISPLAY "FAILED: START key LAST".
      *
          MOVE 0 TO file1-key.
          START file1 KEY >= file1-key.
          READ file1 NEXT.
          IF (file1-rec <> 10)
             DISPLAY "FAILED: START key >= 0".
      *
          MOVE 99 TO file1-key.
          START file1 KEY <= file1-key.
          READ file1 NEXT.
          IF (file1-rec <> 13)
             DISPLAY "FAILED: START key <= 99".
      *
          CLOSE file1.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3305: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3305"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3305"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3306: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3306"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3306"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_879
#AT_START_880
at_fn_group_banner 880 'run_file.at:3310' \
  "READ on OPTIONAL missing RELATIVE / SEQUENTIAL" " " 4
at_xfail=no
(
  $as_echo "880. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL INFILE  ASSIGN TO
                "missing.txt"
                ORGANIZATION IS RELATIVE
                ACCESS IS SEQUENTIAL
                FILE STATUS IS WSFS.
           SELECT OPTIONAL INFILES ASSIGN TO
                "missings.txt"
                ORGANIZATION IS SEQUENTIAL
                ACCESS IS SEQUENTIAL
                FILE STATUS IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD  INFILE.
       01  INREC             PIC X(80).
       FD  INFILES.
       01  INRECS            PIC X(80).
       WORKING-STORAGE SECTION.
       01  WSFS           PIC X(2).
           88  RECORDFOUND VALUE "00".
       01  WSINREC         PIC X(80).
       PROCEDURE DIVISION.
       MAIN-PROCEDURE.
      *    Open missing file
           OPEN INPUT INFILE
           DISPLAY "R: OPEN INPUT on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '05'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.
           OPEN INPUT INFILES
           DISPLAY "S: OPEN INPUT on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '05'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.
      *    First read, raise a FS 10 (AT END) which is expected
           READ INFILE INTO WSINREC
           DISPLAY "R: 1st READ on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '10'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.
           READ INFILES INTO WSINREC
           DISPLAY "S: 1st READ on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '10'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.

      *    Second read, should raise a FS 46 (READ AFTER AT END).
           READ INFILE INTO WSINREC
           DISPLAY "R: 2nd READ on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '46'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.
           READ INFILES INTO WSINREC
           DISPLAY "S: 2nd READ on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '46'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.
           READ INFILE
           DISPLAY "R: 3rd READ on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '46'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.
           READ INFILES
           DISPLAY "S: 3rd READ on missing optional file = " WSFS " "
                    NO ADVANCING
           IF WSFS = '46'
              DISPLAY "OK"
           ELSE
              DISPLAY "Bad"
           END-IF.

           CLOSE INFILE
           CLOSE INFILES
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3416: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3416"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3416"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:3418: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3418"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "R: OPEN INPUT on missing optional file = 05 OK
S: OPEN INPUT on missing optional file = 05 OK
R: 1st READ on missing optional file = 10 OK
S: 1st READ on missing optional file = 10 OK
R: 2nd READ on missing optional file = 46 OK
S: 2nd READ on missing optional file = 46 OK
R: 3rd READ on missing optional file = 46 OK
S: 3rd READ on missing optional file = 46 OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3418"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_880
#AT_START_881
at_fn_group_banner 881 'run_file.at:3432' \
  "READ on OPTIONAL missing INDEXED file" "          " 4
at_xfail=no
(
  $as_echo "881. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:3435" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:3435"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL file1 ASSIGN "fileX"
               ORGANIZATION IS INDEXED
               RECORD KEY IS file1-key
               STATUS f-status.

       DATA DIVISION.
       FILE SECTION.
       FD  file1.
       01  file1-key PIC X.

       WORKING-STORAGE SECTION.
       01  f-status PIC XX.

       PROCEDURE DIVISION.
           DELETE FILE file1.
           OPEN INPUT file1.
           IF (f-status <> "05")
               DISPLAY "FAILED OPEN: fs=" f-status
           END-IF
           READ file1
               AT END
                   IF (f-status <> "10")
                       DISPLAY "FAILED READ AT END: fs=" f-status
                   END-IF

               NOT AT END
                   DISPLAY "FAILED READ NO AT END: status " f-status
           END-READ
           CLOSE file1
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3476: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3476"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3476"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3477: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3477"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3477"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_881
#AT_START_882
at_fn_group_banner 882 'run_file.at:3482' \
  "EXTERNAL RELATIVE file" "                         " 4
at_xfail=no
(
  $as_echo "882. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT my-file
               ASSIGN TO "somefile"
               ORGANIZATION IS RELATIVE
               RELATIVE KEY IS my-key.

       DATA DIVISION.
       FILE SECTION.
       FD my-file EXTERNAL.
       01 my-record.
           03 my-record-data PIC X(80).

       WORKING-STORAGE SECTION.
       01  my-key PIC 9.

       PROCEDURE DIVISION.
           OPEN OUTPUT my-file
           MOVE 'testme' TO my-record
           CALL 'prog2'
           CLOSE my-file
           GOBACK.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog2.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT my-file
               ASSIGN TO "somefile"
               ORGANIZATION IS RELATIVE
               RELATIVE KEY IS my-key.

       DATA DIVISION.
       FILE SECTION.
       FD my-file EXTERNAL.
       01 two-record    PIC X(80).

       WORKING-STORAGE SECTION.
       01  my-key PIC 9.

       PROCEDURE DIVISION.
           WRITE two-record
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3539: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3539"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3539"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3540: \$COMPILE_MODULE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog2.cob" "run_file.at:3540"
( $at_check_trace; $COMPILE_MODULE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3540"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3541: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3541"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3541"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_882
#AT_START_883
at_fn_group_banner 883 'run_file.at:3546' \
  "DECLARATIVES procedure referencing" "             " 4
at_xfail=no
(
  $as_echo "883. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "./TEST-FILE".
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(10).
       WORKING-STORAGE  SECTION.
       01 Z             USAGE BINARY-LONG VALUE 0.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       P01 SECTION.
           USE AFTER ERROR PROCEDURE ON TEST-FILE.
       P0101.
           ADD 1 TO Z.
       END DECLARATIVES.
      * some comments here
      * to mimic real world programs
       MP01 SECTION.
       MP0101.
           OPEN INPUT TEST-FILE.
           PERFORM P0101.
           IF Z NOT = 2
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3580: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3580"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3580"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3581: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3581"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3581"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_883
#AT_START_884
at_fn_group_banner 884 'run_file.at:3586' \
  "DECLARATIVES procedure referencing (multiple)" "  " 4
at_xfail=no
(
  $as_echo "884. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN "./TEST-FILE".
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(10).
       WORKING-STORAGE  SECTION.
       01 Z             USAGE BINARY-LONG VALUE 0.
       PROCEDURE        DIVISION.
       DECLARATIVES.
       P01 SECTION.
           USE AFTER ERROR PROCEDURE ON TEST-FILE.
       P0101.
           ADD 1 TO Z.
       P02 SECTION.
           USE AFTER ERROR PROCEDURE ON OUTPUT.
       P0201.
           ADD 1 TO Z.
       END DECLARATIVES.
       MP01 SECTION.
       MP0101.
           OPEN  INPUT  TEST-FILE.
           PERFORM P01 THRU P02.
           IF Z NOT = 3
              DISPLAY Z.
           GOBACK.
_ATEOF


# disabling the check for "something leaves the section" - as this is
# guaranteed to happen with this PERFORM THROUGH
{ set +x
$as_echo "$at_srcdir/run_file.at:3624: \$COMPILE -fno-section-exit-check prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-section-exit-check prog.cob" "run_file.at:3624"
( $at_check_trace; $COMPILE -fno-section-exit-check prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3624"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3625: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3625"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3625"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_884
#AT_START_885
at_fn_group_banner 885 'run_file.at:3630' \
  "System routines for directories (1)" "            " 4
at_xfail=no
(
  $as_echo "885. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 DIR PIC X(4) VALUE 'ABCD'.

        PROCEDURE DIVISION.
        CALL 'CBL_CREATE_DIR' USING DIR END-CALL
        IF RETURN-CODE NOT = 0
            DISPLAY 'error creating dir ...' END-DISPLAY
        END-IF

        CALL 'CBL_CHANGE_DIR' USING DIR END-CALL
        IF RETURN-CODE NOT = 0
            DISPLAY 'error changing dir ...' END-DISPLAY
        END-IF

        CALL 'CBL_CHANGE_DIR' USING '..' END-CALL
        IF RETURN-CODE NOT = 0
            DISPLAY 'error changing dir up ...' END-DISPLAY
        END-IF

        CALL 'CBL_DELETE_DIR' USING DIR END-CALL
        IF RETURN-CODE NOT = 0
            DISPLAY 'error deleting dir' END-DISPLAY
        END-IF

        STOP RUN.
_ATEOF



{ set +x
$as_echo "$at_srcdir/run_file.at:3665: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3665"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3665"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3666: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3666"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3666"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3667: test -e abcd"
at_fn_check_prepare_trace "run_file.at:3667"
( $at_check_trace; test -e abcd
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:3667"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_885
#AT_START_886
at_fn_group_banner 886 'run_file.at:3672' \
  "System routines for directories (2)" "            " 4
at_xfail=no
(
  $as_echo "886. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION      DIVISION.
       PROGRAM-ID.         prog.

       DATA                DIVISION.
       WORKING-STORAGE     SECTION.
       01  fh              PIC X(4) COMP-5.
       01  rb              PIC X(8) COMP-X.
       01  cb-bfr          PIC X(4) COMP-X VALUE 16.
       01  w-dirname-1     PIC X(4) VALUE "tmp1".
       01  w-dirname-2     PIC X(9) VALUE "tmp1/tmp2".
       01  w-dirname-3     PIC X(14) VALUE "tmp1/tmp2/tmp3".
       01  w-filename      PIC X(20) VALUE "tmp1/tmp2/tmp3/file1".
       01  w-finfo         PIC X(16).

       PROCEDURE DIVISION.
           CALL "CBL_CREATE_DIR" USING w-dirname-1.
           IF RETURN-CODE <> 0
              DISPLAY "FAILED 1: CBL_CREATE_DIR (res=" RETURN-CODE ")"
           END-IF

           CALL "CBL_CREATE_DIR" USING w-dirname-2.
           IF RETURN-CODE <> 0
              DISPLAY "FAILED 2: CBL_CREATE_DIR (res=" RETURN-CODE ")"
           END-IF

      *    Should fail because directory does NOT exists yet.
           CALL "CBL_CREATE_FILE"
              USING w-filename, 1, 0, 0, fh.
           IF RETURN-CODE <> 35
              DISPLAY "FAILED 3: CBL_CREATE_FILE expected fail (res="
                      RETURN-CODE ")"
              IF RETURN-CODE = ZERO
                 CALL "CBL_CLOSE_FILE" USING fh
              END-IF
           END-IF

           CALL "CBL_CREATE_DIR" USING w-dirname-3.
           IF RETURN-CODE <> 0
              DISPLAY "FAILED 4: CBL_CREATE_DIR (res=" RETURN-CODE ")"
           END-IF

           CALL "CBL_CREATE_FILE"
              USING w-filename, 1, 0, 0, fh.
           IF RETURN-CODE <> 0
              DISPLAY "FAILED 5: CBL_CREATE_FILE (res="
                      RETURN-CODE ")"
           END-IF

           CALL "CBL_CLOSE_FILE" USING fh.
           IF RETURN-CODE <> 0
              DISPLAY "FAILED 6: CBL_CLOSE_FILE (res="
                      RETURN-CODE ")"
           END-IF

           CALL "CBL_CHECK_FILE_EXIST" USING w-filename, w-finfo.
           IF RETURN-CODE <> 0
              DISPLAY "FAILED 7: CBL_CHECK_FILE_EXIST (res="
                      RETURN-CODE ")"
           END-IF


      *    Should fail because directory is NOT empty.
           CALL "CBL_DELETE_DIR" USING w-dirname-1.
           IF RETURN-CODE = 0
              DISPLAY "FAILED 8: CBL_DELETE_DIR EXPECTED TO FAIL"
           END-IF
      ***********************
      * TO-DO: IMPLEMENT CBL_PURGE_DIR? NOT IN MF OR ACU.
      ***********************
      *    Remove all files (including sub-directories) in tmp1
      *    CALL "CBL_PURGE_DIR" USING w-dirname-1.
      *    IF RETURN-CODE <> 0
      *        DISPLAY "FAILED 9: CBL_PURGE_DIR (res=" RETURN-CODE ")"
      *  END-IF
      *
      *     Should succeed because directory is NOW empty.
      *     CALL "CBL_DELETE_DIR" USING w-dirname-1.
      *     IF RETURN-CODE <> 0
      *         DISPLAY "FAILED 10: CBL_DELETE_DIR (res=" RETURN-CODE ")"
      *     END-IF

           STOP RUN NORMAL
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3763: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3763"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3763"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3764: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3764"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3764"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_886
#AT_START_887
at_fn_group_banner 887 'run_file.at:3769' \
  "System routines for files" "                      " 4
at_xfail=no
(
  $as_echo "887. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >file1 <<'_ATEOF'

dummy
_ATEOF

cat >file2 <<'_ATEOF'

test
_ATEOF

cat >file3 <<'_ATEOF'

data
_ATEOF


cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID.     prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 FNAME        PIC X(256) VALUE 'testtext.txt'.
        01 ACCESS-MODE  PIC X      USAGE COMP-X VALUE 2.
        01 FHANDLE      PIC X(4)   USAGE COMP-X.

        01 OFFSET       PIC X(8)   USAGE COMP-X.
        01 NBYTES       PIC X(4)   USAGE COMP-X.
        01 WRITE-BUFFER PIC X(20).

        PROCEDURE DIVISION.
        CALL 'CBL_CREATE_FILE' USING FNAME 55 11 22 FHANDLE
        END-CALL
        IF RETURN-CODE NOT = -1
           DISPLAY 'Wrong return codes ...' END-DISPLAY
        END-IF
        MOVE 0 TO RETURN-CODE

        CALL 'CBL_CREATE_FILE' USING
        FNAME ACCESS-MODE 0 0 FHANDLE
        END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error creating file ...' END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF

        MOVE 'TestText.ABCD' TO WRITE-BUFFER.
        MOVE 0 TO OFFSET.
        MOVE 9 TO NBYTES.

        CALL 'CBL_WRITE_FILE' USING
        FHANDLE OFFSET NBYTES '0' WRITE-BUFFER
        END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error writing file ...' END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF

        CALL 'CBL_FLUSH_FILE' USING FHANDLE END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error flushing file ...' END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF

        CALL 'CBL_CLOSE_FILE' USING FHANDLE END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error closing file ...' END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF

        STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID.     prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 FNAME        PIC X(256) VALUE 'testtext.txt'.
        01 RET          PIC -9.
        01 FHANDLE      PIC X(4)   USAGE COMP-X.

        01 OFFSET       PIC X(8)   USAGE COMP-X.
        01 NBYTES       PIC X(4)   USAGE COMP-X.
        01 READ-BUFFER  PIC X(10).

        PROCEDURE DIVISION.
        CALL 'CBL_OPEN_FILE' USING FNAME 1 0 0 FHANDLE
        END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error opening file ...' END-DISPLAY
           GOBACK
        END-IF

        CALL 'CBL_READ_FILE' USING
        FHANDLE OFFSET NBYTES 128 READ-BUFFER
        END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error getting file size...'
                   return-code
           END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF
        IF OFFSET NOT = 9 *> size written in the first test
           DISPLAY 'Wrong size: ' offset END-DISPLAY
           *> still go on with the explicit size
        ELSE
           *> recheck with unexpected parms:
           MOVE 'baddy' to offset(1:)
           CALL 'CBL_READ_FILE' USING
           FHANDLE OFFSET 0 128 NULL
           END-CALL
           IF RETURN-CODE NOT = 0 or OFFSET NOT = 9
              DISPLAY 'bad handling bad parms '
                      'size: ' offset  ' return: ' return-code
              END-DISPLAY
              MOVE 0 TO RETURN-CODE
           END-IF
        END-IF

        MOVE SPACES TO READ-BUFFER.
        MOVE 2 TO OFFSET.
        MOVE 9 TO NBYTES.

        CALL 'CBL_READ_FILE' USING
        FHANDLE OFFSET NBYTES 0 READ-BUFFER
        END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error reading file ...'
                   return-code
           END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF
        IF READ-BUFFER NOT = 'stText.' *> text from first test
           DISPLAY 'Wrong readbuffer ...' END-DISPLAY
        END-IF

        CALL 'CBL_CLOSE_FILE' USING FHANDLE END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error closing file ...'
                   return-code
           END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF

        CALL 'CBL_RENAME_FILE' USING FNAME 'foo.txt' END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error renaming file ...'
                   return-code
           END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF

        CALL 'CBL_DELETE_FILE' USING 'file1' END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error deleting file1 ...'
                   return-code
           END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF
        CALL 'CBL_DELETE_FILE' USING 'file1' END-CALL
        IF RETURN-CODE = 0
           DISPLAY 'no error on deleting file1 for the second time...'
                   return-code
           END-DISPLAY
        END-IF
        MOVE 0 TO RETURN-CODE

        CALL 'C$DELETE' USING 'file2' 'S' END-CALL
        IF RETURN-CODE NOT = 0
           DISPLAY 'error deleting file2 ...'
                   return-code
           END-DISPLAY
           MOVE 0 TO RETURN-CODE
        END-IF
        CALL 'CBL_DELETE_FILE' USING 'file2' END-CALL
        IF RETURN-CODE = 0   *> note: should only return 0 or 1 when in ACUCOBOL mode
           DISPLAY 'no error on deleting file2 for the second time...'
                   return-code
           END-DISPLAY
        END-IF
        MOVE 0 TO RETURN-CODE

        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3953: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:3953"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3953"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3954: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:3954"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:15: warning: call to CBL_CREATE_FILE with wrong file_lock: 11
libcob: prog.cob:15: warning: call to CBL_CREATE_FILE with wrong file_dev: 22
libcob: prog.cob:15: warning: call to CBL_OPEN_FILE with wrong access mode: 55
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3954"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:3960: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:3960"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3960"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:3961: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:3961"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3961"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_887
#AT_START_888
at_fn_group_banner 888 'run_file.at:3966' \
  "System routines for files - filename mapping" "   " 4
at_xfail=no
(
  $as_echo "888. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID.     prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 FNAME        PIC X(256).
        01 RET          PIC -9.
        01 FHANDLE      PIC X(4)   USAGE COMP-X.

        01 OFFSET       PIC X(8)   USAGE COMP-X.
        01 NBYTES       PIC X(4)   USAGE COMP-X.
        01 READ-BUFFER  PIC X(10).

        PROCEDURE DIVISION CHAINING FNAME.
        DISPLAY 'RUN WITH ' FUNCTION TRIM (FNAME TRAILING).
        CALL 'CBL_OPEN_FILE' USING FNAME 1 0 0 FHANDLE.
        IF RETURN-CODE NOT = 0
           DISPLAY 'error opening file ...'
           MOVE 0 TO RETURN-CODE
           STOP RUN.

        CALL 'CBL_CLOSE_FILE' USING FHANDLE.
        IF RETURN-CODE NOT = 0
           DISPLAY 'error closing file ...'
                   return-code
           MOVE 0 TO RETURN-CODE.

        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:3999: mkdir -p sub"
at_fn_check_prepare_trace "run_file.at:3999"
( $at_check_trace; mkdir -p sub
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:3999"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4000: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4000"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4000"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4001: \$COBCRUN_DIRECT ./prog notthere"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog notthere" "run_file.at:4001"
( $at_check_trace; $COBCRUN_DIRECT ./prog notthere
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH notthere
error opening file ...
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4001"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4005: \$COBCRUN_DIRECT ./prog prog.cob"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog prog.cob" "run_file.at:4005"
( $at_check_trace; $COBCRUN_DIRECT ./prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4005"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4008: \$COBCRUN_DIRECT ./prog ./prog.cob"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog ./prog.cob" "run_file.at:4008"
( $at_check_trace; $COBCRUN_DIRECT ./prog ./prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH ./prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4008"
$at_failed && at_fn_log_failure
$at_traceon; }

# the first part is resolved by DD_var and dd_var
{ set +x
$as_echo "$at_srcdir/run_file.at:4012: DD_dot=\".\" dd_dot=\"A\" dot=\"B\"  \$COBCRUN_DIRECT ./prog 'dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\".\" dd_dot=\"A\" dot=\"B\"  $COBCRUN_DIRECT ./prog 'dot/prog.cob'" "run_file.at:4012"
( $at_check_trace; DD_dot="." dd_dot="A" dot="B"  $COBCRUN_DIRECT ./prog 'dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4012"
$at_failed && at_fn_log_failure
$at_traceon; }

# MinGW and other Win32 builds would fail this - because "getenv is not case sensitive"
# note: does not apply to cygwin; "AAA" wins over "aaa"
if test "$PATHSEP" != ";"; then
   { set +x
$as_echo "$at_srcdir/run_file.at:4018: DD_dot=\"\" dd_dot=\".\" dot=\"A\"  \$COBCRUN_DIRECT ./prog 'dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\".\" dot=\"A\"  $COBCRUN_DIRECT ./prog 'dot/prog.cob'" "run_file.at:4018"
( $at_check_trace; DD_dot="" dd_dot="." dot="A"  $COBCRUN_DIRECT ./prog 'dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4018"
$at_failed && at_fn_log_failure
$at_traceon; }

fi
# MF would say (ignore for now as this conflicts with ACUCOBOL) don't resolve by $
# as it does not start with $:
#AT_CHECK([DD_dot="" dd_dot="" dot="." $COBCRUN_DIRECT ./prog 'dot/prog.cob'], [0],
#[RUN WITH dot/prog.cob
#error opening file ...
#], [])
{ set +x
$as_echo "$at_srcdir/run_file.at:4028: DD_dot=\"\" dd_dot=\"\" dot=\".\" \$COBCRUN_DIRECT ./prog 'dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\"\" dot=\".\" $COBCRUN_DIRECT ./prog 'dot/prog.cob'" "run_file.at:4028"
( $at_check_trace; DD_dot="" dd_dot="" dot="." $COBCRUN_DIRECT ./prog 'dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4028"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4031: DD_dot=\"\" dd_dot=\"\" dot=\"\" \$COBCRUN_DIRECT ./prog 'dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\"\" dot=\"\" $COBCRUN_DIRECT ./prog 'dot/prog.cob'" "run_file.at:4031"
( $at_check_trace; DD_dot="" dd_dot="" dot="" $COBCRUN_DIRECT ./prog 'dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH dot/prog.cob
error opening file ...
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4031"
$at_failed && at_fn_log_failure
$at_traceon; }

# the first part with $  is resolved by DD_var and dd_var and var
{ set +x
$as_echo "$at_srcdir/run_file.at:4036: DD_dot=\".\" dd_dot=\"\" dot=\"\"  \$COBCRUN_DIRECT ./prog '\$dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\".\" dd_dot=\"\" dot=\"\"  $COBCRUN_DIRECT ./prog '$dot/prog.cob'" "run_file.at:4036"
( $at_check_trace; DD_dot="." dd_dot="" dot=""  $COBCRUN_DIRECT ./prog '$dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH \$dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4036"
$at_failed && at_fn_log_failure
$at_traceon; }

# MinGW and other Win32 builds would fail this - because "getenv is not case sensitive"
# note: does not apply to cygwin; "AAA" wins over "aaa"
if test "$PATHSEP" != ";"; then
   { set +x
$as_echo "$at_srcdir/run_file.at:4042: DD_dot=\"\" dd_dot=\".\" dot=\"\"  \$COBCRUN_DIRECT ./prog '\$dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\".\" dot=\"\"  $COBCRUN_DIRECT ./prog '$dot/prog.cob'" "run_file.at:4042"
( $at_check_trace; DD_dot="" dd_dot="." dot=""  $COBCRUN_DIRECT ./prog '$dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH \$dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4042"
$at_failed && at_fn_log_failure
$at_traceon; }

fi
{ set +x
$as_echo "$at_srcdir/run_file.at:4046: DD_dot=\"\" dd_dot=\"\" dot=\".\"  \$COBCRUN_DIRECT ./prog '\$dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\"\" dot=\".\"  $COBCRUN_DIRECT ./prog '$dot/prog.cob'" "run_file.at:4046"
( $at_check_trace; DD_dot="" dd_dot="" dot="."  $COBCRUN_DIRECT ./prog '$dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH \$dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4046"
$at_failed && at_fn_log_failure
$at_traceon; }

# if a _leading_ $ does not exist it is removed, together with the following slash
# --> should ignore the variable and the first slash
{ set +x
$as_echo "$at_srcdir/run_file.at:4051: DD_dot=\"\" dd_dot=\"\" dot=\"\"  \$COBCRUN_DIRECT ./prog '\$dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\"\" dot=\"\"  $COBCRUN_DIRECT ./prog '$dot/prog.cob'" "run_file.at:4051"
( $at_check_trace; DD_dot="" dd_dot="" dot=""  $COBCRUN_DIRECT ./prog '$dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH \$dot/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4051"
$at_failed && at_fn_log_failure
$at_traceon; }

# would _possibly_ fail with MF (their docs do not match their behaviour in any case...)
# but this is by GnuCOBOL design here:
{ set +x
$as_echo "$at_srcdir/run_file.at:4056: DD_dot=\"\" dd_dot=\"\" dot=\"\"  \$COBCRUN_DIRECT ./prog '\$dot/\$dotter/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\"\" dot=\"\"  $COBCRUN_DIRECT ./prog '$dot/$dotter/prog.cob'" "run_file.at:4056"
( $at_check_trace; DD_dot="" dd_dot="" dot=""  $COBCRUN_DIRECT ./prog '$dot/$dotter/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH \$dot/\$dotter/prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4056"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4059: DD_dot=\"\" dd_dot=\"\" dot=\"dot\"  \$COBCRUN_DIRECT ./prog '\$dot/prog.cob'"
at_fn_check_prepare_dynamic "DD_dot=\"\" dd_dot=\"\" dot=\"dot\"  $COBCRUN_DIRECT ./prog '$dot/prog.cob'" "run_file.at:4059"
( $at_check_trace; DD_dot="" dd_dot="" dot="dot"  $COBCRUN_DIRECT ./prog '$dot/prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH \$dot/prog.cob
error opening file ...
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4059"
$at_failed && at_fn_log_failure
$at_traceon; }

# should try './prog'
{ set +x
$as_echo "$at_srcdir/run_file.at:4064: DD_prog=\"A\" dd_prog=\"B\" prog=\"C\"  \$COBCRUN_DIRECT ./prog './prog.cob'"
at_fn_check_prepare_dynamic "DD_prog=\"A\" dd_prog=\"B\" prog=\"C\"  $COBCRUN_DIRECT ./prog './prog.cob'" "run_file.at:4064"
( $at_check_trace; DD_prog="A" dd_prog="B" prog="C"  $COBCRUN_DIRECT ./prog './prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH ./prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4064"
$at_failed && at_fn_log_failure
$at_traceon; }

# should try './$prog'
{ set +x
$as_echo "$at_srcdir/run_file.at:4068: DD_prog=\"\" dd_prog=\"\" prog=\"\"  \$COBCRUN_DIRECT ./prog './\$prog.cob'"
at_fn_check_prepare_dynamic "DD_prog=\"\" dd_prog=\"\" prog=\"\"  $COBCRUN_DIRECT ./prog './$prog.cob'" "run_file.at:4068"
( $at_check_trace; DD_prog="" dd_prog="" prog=""  $COBCRUN_DIRECT ./prog './$prog.cob'
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH ./\$prog.cob
error opening file ...
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4068"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4072: \$COBCRUN_DIRECT ./prog ../prog.cob"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog ../prog.cob" "run_file.at:4072"
( $at_check_trace; $COBCRUN_DIRECT ./prog ../prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH ../prog.cob
error opening file ...
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4072"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4076: \$COBCRUN_DIRECT ./prog sub/../prog.cob"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog sub/../prog.cob" "run_file.at:4076"
( $at_check_trace; $COBCRUN_DIRECT ./prog sub/../prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "RUN WITH sub/../prog.cob
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4076"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_888
#AT_START_889
at_fn_group_banner 889 'run_file.at:4083' \
  "System routine CBL_COPY_FILE" "                   " 4
at_xfail=no
(
  $as_echo "889. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        PROCEDURE DIVISION.
        DISPLAY "test" END-DISPLAY
        STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog2.
        DATA DIVISION.
        WORKING-STORAGE SECTION.
        01 FILE1 PIC X(8) VALUE 'prog.cob'.
        01 FILE2 PIC X(9) VALUE 'prog3.cob'.

        PROCEDURE DIVISION.
        CALL 'CBL_COPY_FILE' USING
        FILE1 FILE2
        END-CALL
        STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4111: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:4111"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4111"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4112: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:4112"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4113: diff prog.cob prog3.cob"
at_fn_check_prepare_trace "run_file.at:4113"
( $at_check_trace; diff prog.cob prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4113"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_889
#AT_START_890
at_fn_group_banner 890 'run_file.at:4118' \
  "Default file external name" "                     " 4
at_xfail=no
(
  $as_echo "890. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >fexists_signed.c <<'_ATEOF'


#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <libcob.h>

/*
 * Check file is present and correct by comparing
 * its content to a given signature.
 */
COB_EXT_EXPORT int
fexists_signed (char *fid, char *signature, int signature_size)
{
	char *bfr;
	FILE *f;
	int res = -1;

	f = fopen (fid, "r");
	if (f != NULL) {
		 bfr = (char *) cob_malloc (signature_size);
		 if (1 == fread (bfr, signature_size, 1, f)) {
				if (!memcmp (signature, bfr, signature_size)) {
					 res = 0;
				}
		 }
		 free (bfr);
	}
	return res;
}
_ATEOF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec.
          2  file1-date pic x(8).
          2  file1-time pic x(8).
       WORKING-STORAGE SECTION.
       77 erc      BINARY-LONG.
       77 rec-size BINARY-LONG VALUE 16.
       PROCEDURE DIVISION.
           ACCEPT file1-date FROM DATE YYYYMMDD.
           ACCEPT file1-time FROM TIME.
           OPEN OUTPUT file1.
           WRITE file1-rec.
           CLOSE file1.
           CALL "fexists_signed" USING
                BY REFERENCE "./file1" file1-rec
                BY VALUE rec-size
                RETURNING erc.
           IF (erc <> 0)
              DISPLAY "FAILED file1".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4183: \$COMPILE_MODULE fexists_signed.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE fexists_signed.c" "run_file.at:4183"
( $at_check_trace; $COMPILE_MODULE fexists_signed.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4183"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4184: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4184"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4184"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4185: unset COB_FILE_PATH ; ./prog"
at_fn_check_prepare_trace "run_file.at:4185"
( $at_check_trace; unset COB_FILE_PATH ; ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4185"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_890
#AT_START_891
at_fn_group_banner 891 'run_file.at:4192' \
  "SEQUENTIAL basic I/O" "                           " 4
at_xfail=no
(
  $as_echo "891. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK ORGANIZATION SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x.
       PROCEDURE DIVISION.
           DELETE FILE file1.
           OPEN OUTPUT file1.
           MOVE "A" TO file1-rec.
           WRITE file1-rec.
           CLOSE file1.
           OPEN I-O file1.
           READ file1.
           IF file1-rec <> "A"
              display "FIRST READ FAILED"
           ELSE
              MOVE "X" TO file1-rec
              REWRITE file1-rec.
           CLOSE file1.
           IF file1-rec NOT = "X"
              STOP RUN.
           OPEN INPUT file1.
           READ file1.
           IF file1-rec <> "X"
              display "SECOND READ FAILED".
           CLOSE file1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4230: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4230"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4230"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4231: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:4231"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4231"
$at_failed && at_fn_log_failure
$at_traceon; }

# recheck with COB_SYNC to cover additional code paths
{ set +x
$as_echo "$at_srcdir/run_file.at:4233: COB_SYNC=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SYNC=Y $COBCRUN_DIRECT ./prog" "run_file.at:4233"
( $at_check_trace; COB_SYNC=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4233"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_891
#AT_START_892
at_fn_group_banner 892 'run_file.at:4241' \
  "LINE SEQUENTIAL basic I/O" "                      " 4
at_xfail=no
(
  $as_echo "892. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK ORGANIZATION LINE SEQUENTIAL.
       SELECT file2 ASSIGN DISK ORGANIZATION LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x.
       FD file2.
       1  file2-rec pic xx.
       PROCEDURE DIVISION.
           DELETE FILE file1, file2
           OPEN OUTPUT file1, file2
           MOVE "A" TO file1-rec, file2-rec
           WRITE file1-rec
           WRITE file2-rec
           MOVE " " TO file1-rec, file2-rec
           WRITE file1-rec
           WRITE file2-rec
           WRITE file1-rec FROM "A"
           WRITE file2-rec FROM "AA"
           WRITE file1-rec FROM " "
           WRITE file2-rec FROM " A"
           CLOSE file1, file2
           OPEN INPUT file1, file2
           READ file1
           IF file1-rec NOT = "A"
              display "FAILED 1 file1 - '" file1-rec "'".
           READ file2
           IF file2-rec NOT = "A"
              display "FAILED 1 file2 - '" file2-rec "'".
           READ file1
           IF file1-rec NOT = SPACE
              display "FAILED 2 file1 - '" file1-rec "'".
           READ file2
           IF file2-rec NOT = SPACES
              display "FAILED 2 file2 - '" file2-rec "'".
           READ file1
           IF file1-rec NOT = "A"
              display "FAILED 3 file1 - '" file1-rec "'".
           READ file2
           IF file2-rec NOT = "AA"
              display "FAILED 3 file2 - '" file2-rec "'".
           READ file1
           IF file1-rec NOT = SPACE
              display "FAILED 4 file1 - '" file1-rec "'".
           READ file2
           IF file2-rec NOT = " A"
              display "FAILED 4 file2 - '" file2-rec "'".
           CLOSE file1, file2.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4301: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4301"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4301"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4302: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:4302"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4302"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_892
#AT_START_893
at_fn_group_banner 893 'run_file.at:4307' \
  "LINE SEQUENTIAL WRITE AFTER" "                    " 4
at_xfail=no
(
  $as_echo "893. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN OUTPUT TEST-FILE.
           MOVE "a"    TO TEST-REC.
           WRITE TEST-REC
           END-WRITE.
           MOVE "ab"   TO TEST-REC.
           WRITE TEST-REC AFTER 1 LINES
           END-WRITE.
           MOVE "abc"  TO TEST-REC.
           WRITE TEST-REC BEFORE 2 LINES
           END-WRITE.
           MOVE "abcd" TO TEST-REC.
           WRITE TEST-REC
           END-WRITE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4340: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4340"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4340"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4341: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:4341"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4341"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4342: cat TEST-FILE"
at_fn_check_prepare_trace "run_file.at:4342"
( $at_check_trace; cat TEST-FILE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "a

ababc

abcd
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4342"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_893
#AT_START_894
at_fn_group_banner 894 'run_file.at:4353' \
  "LINE SEQUENTIAL record truncation (1)" "          " 4
at_xfail=no
(
  $as_echo "894. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >TEST-FILE <<'_ATEOF'
a
ab
abc
abcd
abcde
abcdef
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       PROCEDURE        DIVISION.
           OPEN INPUT TEST-FILE
           PERFORM UNTIL EXIT
              READ TEST-FILE
                  AT END EXIT PERFORM
              END-READ
              DISPLAY "(" TEST-REC ")"
              END-DISPLAY
           END-PERFORM.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4390: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4390"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4390"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4391: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:4391"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "(a   )
(ab  )
(abc )
(abcd)
(abcd)
(e   )
(abcd)
(ef  )
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4391"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN       "./TEST-FILE"
                        ORGANIZATION IS LINE SEQUENTIAL
                        STATUS IS    TEST-STATUS.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       WORKING-STORAGE  SECTION.
       77 TEST-STATUS   PIC XX.
       PROCEDURE        DIVISION.
           OPEN INPUT TEST-FILE
           PERFORM UNTIL TEST-STATUS (1:1) NOT = '0'
              READ TEST-FILE
              END-READ
              DISPLAY "(" TEST-REC ") " TEST-STATUS
              END-DISPLAY
           END-PERFORM.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4429: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:4429"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4429"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:4430: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:4430"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "(a   ) 00
(ab  ) 00
(abc ) 00
(abcd) 00
(abcd) 06
(e   ) 00
(abcd) 06
(ef  ) 00
(ef  ) 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4430"
$at_failed && at_fn_log_failure
$at_traceon; }


# this one is the actual extension (old OpenCOBOL/GnuCOBOL behaviour)
{ set +x
$as_echo "$at_srcdir/run_file.at:4443: COB_LS_SPLIT=FALSE \\
\$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_notrace 'an embedded newline' "run_file.at:4443"
( $at_check_trace; COB_LS_SPLIT=FALSE \
$COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "(a   ) 00
(ab  ) 00
(abc ) 00
(abcd) 00
(abcd) 04
(abcd) 04
(abcd) 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4443"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_894
#AT_START_895
at_fn_group_banner 895 'run_file.at:4457' \
  "LINE SEQUENTIAL record truncation (2)" "          " 4
at_xfail=no
(
  $as_echo "895. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
Record 1................................X.......
Record 2.....................X
Record 3................................X...
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT INFILE     ASSIGN TO EXTERNAL INFILE
                ORGANIZATION IS LINE SEQUENTIAL
                FILE STATUS  IS INPUT-STATUS .

           SELECT OUTFILE   ASSIGN TO EXTERNAL OUTFILE
                ORGANIZATION IS LINE SEQUENTIAL
                FILE STATUS  IS INPUT-STATUS .

       DATA DIVISION.
       FILE SECTION.
       FD INFILE
             RECORD IS VARYING IN SIZE FROM 18 TO 40 CHARACTERS
             DEPENDING ON INPUT-LEN
            .
       01  INPUT-REC           PIC X(40).

       FD OUTFILE
             RECORD IS VARYING IN SIZE FROM 18 TO 40 CHARACTERS
             DEPENDING ON INPUT-LEN
            .
       01  OUTPUT-REC          PIC X(40).

       WORKING-STORAGE SECTION.

       01  OUTPUT-FILE         PIC X(19)     VALUE 'TEST-FILE'.
       01  INPUT-FILE          PIC X(19)     VALUE 'TEST-INP'.
       01  INPUT-STATUS        PIC XX.
       01  INPUT-LEN           PIC 999  VALUE 18 .

       PROCEDURE DIVISION.
       A000-BEGIN.
           OPEN INPUT INFILE.
           READ INFILE
           DISPLAY " Read 1: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           DISPLAY "       :" INPUT-REC ":"
           READ INFILE
           DISPLAY " Read 2: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           DISPLAY "       :" INPUT-REC ":"
           MOVE 0 TO INPUT-LEN
           READ INFILE
           DISPLAY " Read 3: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           DISPLAY "       :" INPUT-REC ":"
           MOVE SPACES TO INPUT-REC
           MOVE 0 TO INPUT-LEN
           READ INFILE
           DISPLAY " Read 4: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           IF INPUT-STATUS (1:1) = "0"
               DISPLAY "       :" INPUT-REC ":"
           END-IF
           CLOSE INFILE

           OPEN OUTPUT OUTFILE
           MOVE 9 TO INPUT-LEN
           MOVE "Record 1............." TO OUTPUT-REC
           WRITE OUTPUT-REC
           DISPLAY "Write 1: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
                             UPON CONSOLE
           MOVE 64 TO INPUT-LEN
           MOVE ALL '.' TO OUTPUT-REC
           MOVE "Record 2" TO OUTPUT-REC (1:8)
           WRITE OUTPUT-REC
           DISPLAY "Write 2: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
                             UPON CONSOLE
           CLOSE OUTFILE
           STOP RUN.
_ATEOF





cat >reference <<'_ATEOF'
Record 1.
Record 2................................
_ATEOF


# normal compile, switched via runtime option
{ set +x
$as_echo "$at_srcdir/run_file.at:4554: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4554"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4554"
$at_failed && at_fn_log_failure  \
"TEST-FILE"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:4556: COB_LS_SPLIT=FALSE DD_INFILE=./inp_data OUTFILE=TEST-FILE \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_file.at:4556"
( $at_check_trace; COB_LS_SPLIT=FALSE DD_INFILE=./inp_data OUTFILE=TEST-FILE \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " Read 1: STATUS IS 04 LENGTH IS 040
       :Record 1................................:
 Read 2: STATUS IS 00 LENGTH IS 030
       :Record 2.....................X          :
 Read 3: STATUS IS 04 LENGTH IS 040
       :Record 3................................:
 Read 4: STATUS IS 10 LENGTH IS 000
Write 1: STATUS IS 00 LENGTH IS 009
Write 2: STATUS IS 00 LENGTH IS 064
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4556"
$at_failed && at_fn_log_failure  \
"TEST-FILE"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:4569: diff reference TEST-FILE"
at_fn_check_prepare_trace "run_file.at:4569"
( $at_check_trace; diff reference TEST-FILE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4569"
$at_failed && at_fn_log_failure  \
"TEST-FILE"
$at_traceon; }


# same check with dialect option (4.x feature)
# AT_CHECK([$COMPILE -std=gc31 prog.cob], [0], [], [])
#
# same result, but status 00
# AT_CHECK([DD_INFILE=./inp_data OUTFILE=TEST-FILE \
# $COBCRUN_DIRECT ./prog], [0],
# [ Read 1: STATUS IS 00 LENGTH IS 040
#        :Record 1................................:
#  Read 2: STATUS IS 00 LENGTH IS 030
#        :Record 2.....................X          :
#  Read 3: STATUS IS 00 LENGTH IS 040
#        :Record 3................................:
#  Read 4: STATUS IS 10 LENGTH IS 000
# Write 1: STATUS IS 00 LENGTH IS 009
# Write 2: STATUS IS 00 LENGTH IS 064
# ], [])
#
# AT_CHECK([diff reference TEST-FILE], [0], [], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_895
#AT_START_896
at_fn_group_banner 896 'run_file.at:4593' \
  "LINE SEQUENTIAL standard record overflow" "       " 4
at_xfail=no
(
  $as_echo "896. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
Record 1................................X.......
Record 2.....................X
Record 3................................X...
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT INFILE     ASSIGN TO EXTERNAL INFILE
                ORGANIZATION IS LINE SEQUENTIAL
                FILE STATUS  IS INPUT-STATUS .

           SELECT OUTFILE   ASSIGN TO EXTERNAL OUTFILE
                ORGANIZATION IS LINE SEQUENTIAL
                FILE STATUS  IS INPUT-STATUS .

       DATA DIVISION.
       FILE SECTION.
       FD INFILE
             RECORD IS VARYING IN SIZE FROM 18 TO 40 CHARACTERS
             DEPENDING ON INPUT-LEN
            .
       01  INPUT-REC           PIC X(40).

       FD OUTFILE
             RECORD IS VARYING IN SIZE FROM 18 TO 40 CHARACTERS
             DEPENDING ON INPUT-LEN
            .
       01  OUTPUT-REC          PIC X(40).

       WORKING-STORAGE SECTION.

       01  OUTPUT-FILE         PIC X(19)     VALUE 'TEST-FILE'.
       01  INPUT-FILE          PIC X(19)     VALUE 'TEST-INP'.
       01  INPUT-STATUS        PIC XX.
       01  INPUT-LEN           PIC 999  VALUE 18 .

       PROCEDURE DIVISION.
       A000-BEGIN.
           OPEN INPUT INFILE.
           READ INFILE
           DISPLAY " Read 1: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           DISPLAY "       :" INPUT-REC ":"
           READ INFILE
           DISPLAY " Read 2: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           DISPLAY "       :" INPUT-REC ":"
           MOVE 0 TO INPUT-LEN
           READ INFILE
           DISPLAY " Read 3: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           DISPLAY "       :" INPUT-REC ":"
           MOVE SPACES TO INPUT-REC
           MOVE 0 TO INPUT-LEN
           READ INFILE
           DISPLAY " Read 4: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
           IF INPUT-STATUS (1:1) = "0"
               DISPLAY "       :" INPUT-REC ":"
           END-IF
           CLOSE INFILE

           OPEN OUTPUT OUTFILE
           MOVE 9 TO INPUT-LEN
           MOVE "Record 1............." TO OUTPUT-REC
           WRITE OUTPUT-REC
           DISPLAY "Write 1: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
                             UPON CONSOLE
           MOVE 64 TO INPUT-LEN
           MOVE ALL '.' TO OUTPUT-REC
           MOVE "Record 2" TO OUTPUT-REC (1:8)
           WRITE OUTPUT-REC
           DISPLAY "Write 2: STATUS IS " INPUT-STATUS
                   " LENGTH IS " INPUT-LEN
                             UPON CONSOLE
           CLOSE OUTFILE
           STOP RUN.
_ATEOF




{ set +x
$as_echo "$at_srcdir/run_file.at:4683: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:4683"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4683"
$at_failed && at_fn_log_failure  \
"TEST-FILE"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:4685: DD_INFILE=./inp_data OUTFILE=TEST-FILE \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_file.at:4685"
( $at_check_trace; DD_INFILE=./inp_data OUTFILE=TEST-FILE \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " Read 1: STATUS IS 06 LENGTH IS 040
       :Record 1................................:
 Read 2: STATUS IS 00 LENGTH IS 008
       :X.......                                :
 Read 3: STATUS IS 00 LENGTH IS 030
       :Record 2.....................X          :
 Read 4: STATUS IS 06 LENGTH IS 040
       :Record 3................................:
Write 1: STATUS IS 00 LENGTH IS 009
Write 2: STATUS IS 00 LENGTH IS 064
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4685"
$at_failed && at_fn_log_failure  \
"TEST-FILE"
$at_traceon; }


cat >reference <<'_ATEOF'
Record 1.
Record 2................................
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:4704: diff reference TEST-FILE"
at_fn_check_prepare_trace "run_file.at:4704"
( $at_check_trace; diff reference TEST-FILE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:4704"
$at_failed && at_fn_log_failure  \
"TEST-FILE"
$at_traceon; }


# same check with dialect option (4.x feature)
# AT_CHECK([$COMPILE -std=gc31 prog.cob], [0], [], [])
#
# same result because of configuration, but status 00
# AT_CHECK([COB_LS_SPLIT=TRUE DD_INFILE=./inp_data OUTFILE=TEST-FILE \
# $COBCRUN_DIRECT ./prog], [0],
# [ Read 1: STATUS IS 00 LENGTH IS 040
#        :Record 1................................:
#  Read 2: STATUS IS 00 LENGTH IS 008
#        :X.......                                :
#  Read 3: STATUS IS 00 LENGTH IS 030
#        :Record 2.....................X          :
#  Read 4: STATUS IS 00 LENGTH IS 040
#        :Record 3................................:
# Write 1: STATUS IS 00 LENGTH IS 009
# Write 2: STATUS IS 00 LENGTH IS 064
# ], [])
#
# AT_CHECK([diff reference TEST-FILE], [0], [], [])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_896
#AT_START_897
at_fn_group_banner 897 'run_file.at:4729' \
  "LINAGE and LINAGE-COUNTER sample" "               " 4
at_xfail=no
(
  $as_echo "897. $at_setup_line: testing $at_desc ..."
  $at_traceon



# modified version of GC-FAQ: Example of LINAGE File Descriptor
# Author: Brian Tiffin, Date:   10-July-2008

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           select optional data-file assign to 'prog.cob'
               organization is line sequential
               file status is data-file-status.
           select mini-report assign to "mini-report".

       DATA DIVISION.
       FILE SECTION.
       FD  data-file.
       01  data-record.
           88 endofdata        value high-values.
           02 data-line        pic x(80).
       FD  mini-report
           linage is 16 lines
               with footing at 15
               lines at top 2
               lines at bottom 2.
       01  report-line         pic x(80).

       WORKING-STORAGE SECTION.
       01  command-arguments   pic x(1024).
       01  file-name           pic x(160).
       01  data-file-status    pic xx.
       01  lc                  pic 99.
       01  report-line-blank.
           02 filler           pic x(18) value all "*".
           02 filler           pic x(05) value spaces.
           02 filler           pic x(34)
               VALUE "THIS PAGE INTENTIONALLY LEFT BLANK".
           02 filler           pic x(05) value spaces.
           02 filler           pic x(18) value all "*".
       01  report-line-data.
           02 body-tag         pic 9(6).
           02 line-3           pic x(74).
       01  report-line-header.
           02 filler           pic x(6) VALUE "PAGE: ".
           02 page-no          pic 9999.
           02 filler           pic x(24).
           02 filler           pic x(5) VALUE " LC: ".
           02 header-tag       pic 9(6).
           02 filler           pic x(23).
           02 filler           pic x(6) VALUE "DATE: ".
           02 page-date        pic x(6).

       01  page-count          pic 9999.

       PROCEDURE DIVISION.
       main.
           open input data-file.
           read data-file
               at end
                   display "File open error: " data-file-status
                   stop run
           end-read.

           open output mini-report.

           write report-line
               from report-line-blank
           end-write.

           move 1 to page-count.
           accept page-date from date end-accept.
           move page-count to page-no.
           write report-line
               from report-line-header
               after advancing page
           end-write.

           perform readwrite-loop until endofdata.

           display
               "Normal termination, ending status: "
               data-file-status
           close mini-report.

           close data-file.
           stop run.

      ****************************************************************
       readwrite-loop.
           move data-record to report-line-data
           move linage-counter to body-tag
           write report-line from report-line-data
               end-of-page
                   add 1 to page-count end-add
                   move page-count to page-no
                   move linage-counter to header-tag
                   write report-line from report-line-header
                       after advancing page
                   end-write
           end-write
           read data-file
               at end set endofdata to true
           end-read
           .
_ATEOF



cat >reference-report <<'_ATEOF'


******************     THIS PAGE INTENTIONALLY LEFT BLANK     ******************


















PAGE: 0001                         LC: 000000                       DATE: 150206
000001
000002 IDENTIFICATION DIVISION.
000003 PROGRAM-ID. prog.
000004 ENVIRONMENT DIVISION.
000005 INPUT-OUTPUT SECTION.
000006 FILE-CONTROL.
000007     select optional data-file assign to 'prog.cob'
000008         organization is line sequential
000009         file status is data-file-status.
000010     select mini-report assign to "mini-report".
000011
000012 DATA DIVISION.
000013 FILE SECTION.
000014 FD  data-file.





PAGE: 0002                         LC: 000015                       DATE: 150206
000001 01  data-record.
000002     88 endofdata        value high-values.
000003     02 data-line        pic x(80).
000004 FD  mini-report
000005     linage is 16 lines
000006         with footing at 15
000007         lines at top 2
000008         lines at bottom 2.
000009 01  report-line         pic x(80).
000010
000011 WORKING-STORAGE SECTION.
000012 01  command-arguments   pic x(1024).
000013 01  file-name           pic x(160).
000014 01  data-file-status    pic xx.





PAGE: 0003                         LC: 000015                       DATE: 150206
000001 01  lc                  pic 99.
000002 01  report-line-blank.
000003     02 filler           pic x(18) value all "*".
000004     02 filler           pic x(05) value spaces.
000005     02 filler           pic x(34)
000006         VALUE "THIS PAGE INTENTIONALLY LEFT BLANK".
000007     02 filler           pic x(05) value spaces.
000008     02 filler           pic x(18) value all "*".
000009 01  report-line-data.
000010     02 body-tag         pic 9(6).
000011     02 line-3           pic x(74).
000012 01  report-line-header.
000013     02 filler           pic x(6) VALUE "PAGE: ".
000014     02 page-no          pic 9999.





PAGE: 0004                         LC: 000015                       DATE: 150206
000001     02 filler           pic x(24).
000002     02 filler           pic x(5) VALUE " LC: ".
000003     02 header-tag       pic 9(6).
000004     02 filler           pic x(23).
000005     02 filler           pic x(6) VALUE "DATE: ".
000006     02 page-date        pic x(6).
000007
000008 01  page-count          pic 9999.
000009
000010 PROCEDURE DIVISION.
000011 main.
000012     open input data-file.
000013     read data-file
000014         at end





PAGE: 0005                         LC: 000015                       DATE: 150206
000001             display "File open error: " data-file-status
000002             stop run
000003     end-read.
000004
000005     open output mini-report.
000006
000007     write report-line
000008         from report-line-blank
000009     end-write.
000010
000011     move 1 to page-count.
000012     accept page-date from date end-accept.
000013     move page-count to page-no.
000014     write report-line





PAGE: 0006                         LC: 000015                       DATE: 150206
000001         from report-line-header
000002         after advancing page
000003     end-write.
000004
000005     perform readwrite-loop until endofdata.
000006
000007     display
000008         "Normal termination, ending status: "
000009         data-file-status
000010     close mini-report.
000011
000012     close data-file.
000013     stop run.
000014





PAGE: 0007                         LC: 000015                       DATE: 150206
000001****************************************************************
000002 readwrite-loop.
000003     move data-record to report-line-data
000004     move linage-counter to body-tag
000005     write report-line from report-line-data
000006         end-of-page
000007             add 1 to page-count end-add
000008             move page-count to page-no
000009             move linage-counter to header-tag
000010             write report-line from report-line-header
000011                 after advancing page
000012             end-write
000013     end-write
000014     read data-file





PAGE: 0008                         LC: 000015                       DATE: 150206
000001         at end set endofdata to true
000002     end-read
000003     .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5007: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:5007"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5007"
$at_failed && at_fn_log_failure  \
"mini-report"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5008: COB_CURRENT_DATE=\"2015/02/06 16:40:52\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_CURRENT_DATE=\"2015/02/06 16:40:52\" $COBCRUN_DIRECT ./prog" "run_file.at:5008"
( $at_check_trace; COB_CURRENT_DATE="2015/02/06 16:40:52" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Normal termination, ending status: 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5008"
$at_failed && at_fn_log_failure  \
"mini-report"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5011: diff mini-report reference-report"
at_fn_check_prepare_trace "run_file.at:5011"
( $at_check_trace; diff mini-report reference-report
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5011"
$at_failed && at_fn_log_failure  \
"mini-report"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_897
#AT_START_898
at_fn_group_banner 898 'run_file.at:5016' \
  "EXTFH: LINAGE and LINAGE-COUNTER sample" "        " 4
at_xfail=yes
(
  $as_echo "898. $at_setup_line: testing $at_desc ..."
  $at_traceon



# modified version of the test above

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           select optional data-file assign to 'prog.cob'
               organization is line sequential
               file status is data-file-status.
           select mini-report assign to "mini-report".

       DATA DIVISION.
       FILE SECTION.
       FD  data-file.
       01  data-record.
           88 endofdata        value high-values.
           02 data-line        pic x(80).
       FD  mini-report
           linage is 16 lines
               with footing at 15
               lines at top 2
               lines at bottom 2.
       01  report-line         pic x(80).

       WORKING-STORAGE SECTION.
       01  command-arguments   pic x(1024).
       01  file-name           pic x(160).
       01  data-file-status    pic xx.
       01  lc                  pic 99.
       01  report-line-blank.
           02 filler           pic x(18) value all "*".
           02 filler           pic x(05) value spaces.
           02 filler           pic x(34)
               VALUE "THIS PAGE INTENTIONALLY LEFT BLANK".
           02 filler           pic x(05) value spaces.
           02 filler           pic x(18) value all "*".
       01  report-line-data.
           02 body-tag         pic 9(6).
           02 line-3           pic x(74).
       01  report-line-header.
           02 filler           pic x(6) VALUE "PAGE: ".
           02 page-no          pic 9999.
           02 filler           pic x(24).
           02 filler           pic x(5) VALUE " LC: ".
           02 header-tag       pic 9(6).




       01  page-count          pic 9999.

       PROCEDURE DIVISION.
       main.
           open input data-file.
           read data-file
               at end
                   display "File open error: " data-file-status
                   stop run
           end-read.

           open output mini-report.

           write report-line
               from report-line-blank
           end-write.

           move 1 to page-count.
           move page-count to page-no.
           write report-line
               from report-line-header
               after advancing page
           end-write.

           perform readwrite-loop until endofdata.

           display
               "Normal termination, ending status: "
               data-file-status
           close mini-report.

           close data-file.
           stop run.

      ****************************************************************
       readwrite-loop.
           move data-record to report-line-data
           move linage-counter to body-tag
           write report-line from report-line-data
               end-of-page
                   add 1 to page-count end-add
                   move page-count to page-no
                   move linage-counter to header-tag
                   write report-line from report-line-header
                       after advancing page
                   end-write
           end-write
           read data-file
               at end set endofdata to true
           end-read
           .
_ATEOF



cat >reference-report <<'_ATEOF'


******************     THIS PAGE INTENTIONALLY LEFT BLANK     ******************


















PAGE: 0001                         LC: 000000
000001
000002 IDENTIFICATION DIVISION.
000003 PROGRAM-ID. prog.
000004 ENVIRONMENT DIVISION.
000005 INPUT-OUTPUT SECTION.
000006 FILE-CONTROL.
000007     select optional data-file assign to 'prog.cob'
000008         organization is line sequential
000009         file status is data-file-status.
000010     select mini-report assign to "mini-report".
000011
000012 DATA DIVISION.
000013 FILE SECTION.
000014 FD  data-file.





PAGE: 0002                         LC: 000015
000001 01  data-record.
000002     88 endofdata        value high-values.
000003     02 data-line        pic x(80).
000004 FD  mini-report
000005     linage is 16 lines
000006         with footing at 15
000007         lines at top 2
000008         lines at bottom 2.
000009 01  report-line         pic x(80).
000010
000011 WORKING-STORAGE SECTION.
000012 01  command-arguments   pic x(1024).
000013 01  file-name           pic x(160).
000014 01  data-file-status    pic xx.





PAGE: 0003                         LC: 000015
000001 01  lc                  pic 99.
000002 01  report-line-blank.
000003     02 filler           pic x(18) value all "*".
000004     02 filler           pic x(05) value spaces.
000005     02 filler           pic x(34)
000006         VALUE "THIS PAGE INTENTIONALLY LEFT BLANK".
000007     02 filler           pic x(05) value spaces.
000008     02 filler           pic x(18) value all "*".
000009 01  report-line-data.
000010     02 body-tag         pic 9(6).
000011     02 line-3           pic x(74).
000012 01  report-line-header.
000013     02 filler           pic x(6) VALUE "PAGE: ".
000014     02 page-no          pic 9999.





PAGE: 0004                         LC: 000015
000001     02 filler           pic x(24).
000002     02 filler           pic x(5) VALUE " LC: ".
000003     02 header-tag       pic 9(6).
000004
000005
000006
000007
000008 01  page-count          pic 9999.
000009
000010 PROCEDURE DIVISION.
000011 main.
000012     open input data-file.
000013     read data-file
000014         at end





PAGE: 0005                         LC: 000015
000001             display "File open error: " data-file-status
000002             stop run
000003     end-read.
000004
000005     open output mini-report.
000006
000007     write report-line
000008         from report-line-blank
000009     end-write.
000010
000011     move 1 to page-count.
000012     accept page-date from date end-accept.
000013     move page-count to page-no.
000014     write report-line





PAGE: 0006                         LC: 000015
000001         from report-line-header
000002         after advancing page
000003     end-write.
000004
000005     perform readwrite-loop until endofdata.
000006
000007     display
000008         "Normal termination, ending status: "
000009         data-file-status
000010     close mini-report.
000011
000012     close data-file.
000013     stop run.
000014





PAGE: 0007                         LC: 000015
000001****************************************************************
000002 readwrite-loop.
000003     move data-record to report-line-data
000004     move linage-counter to body-tag
000005     write report-line from report-line-data
000006         end-of-page
000007             add 1 to page-count end-add
000008             move page-count to page-no
000009             move linage-counter to header-tag
000010             write report-line from report-line-header
000011                 after advancing page
000012             end-write
000013     end-write
000014     read data-file





PAGE: 0008                         LC: 000015
000001         at end set endofdata to true
000002     end-read
000003     .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5291: \$COMPILE -fcallfh=EXTFH prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=EXTFH prog.cob" "run_file.at:5291"
( $at_check_trace; $COMPILE -fcallfh=EXTFH prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5291"
$at_failed && at_fn_log_failure  \
"mini-report"
$at_traceon; }


# currently does not generate the expected report, as LINAGE options
# are not passed via FCD and the internal part works only "partial"



{ set +x
$as_echo "$at_srcdir/run_file.at:5298: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:5298"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Normal termination, ending status: 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5298"
$at_failed && at_fn_log_failure  \
"mini-report"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5301: diff mini-report reference-report"
at_fn_check_prepare_trace "run_file.at:5301"
( $at_check_trace; diff mini-report reference-report
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5301"
$at_failed && at_fn_log_failure  \
"mini-report"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_898
#AT_START_899
at_fn_group_banner 899 'run_file.at:5306' \
  "SEQUENTIAL file I/O with variable records" "      " 4
at_xfail=no
(
  $as_echo "899. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN DISK.

       DATA DIVISION.
       FILE SECTION.
       FD  f RECORD VARYING FROM 10 TO 20 DEPENDING rec-size.
       01  f-rec.
           02  f-x OCCURS 20 PIC X.

       WORKING-STORAGE SECTION.
       01  rec-size PIC 99.
       01  i PIC 99.
       01  1-template VALUE "+12345678++12345678+".
           02  1-x OCCURS 20 PIC X.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           PERFORM VARYING rec-size FROM 20 BY -1 UNTIL rec-size < 10
               WRITE f-rec FROM 1-template
           END-PERFORM
           CLOSE f

           OPEN INPUT f
      *    rec-size should not influence READ
           MOVE 15 TO rec-size
           PERFORM VARYING i FROM 20 BY -1 UNTIL i < 10
               READ f
                   AT END
                       DISPLAY "Failed: EOF"
                       STOP RUN ERROR
               END-READ

      *        Note the characters f-rec (rec-size + 1:) are all undefined,
      *        hence the refmod (1:rec-size).
               DISPLAY rec-size ": >" f-rec (1:rec-size) "<"
               IF rec-size NOT = i
                   DISPLAY "Failed: bad record size"
                   STOP RUN ERROR
               END-IF
               IF f-x (rec-size) NOT = 1-x (rec-size)
                   DISPLAY "Failed: bad data"
                   STOP RUN ERROR
               END-IF
           END-PERFORM
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5363: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:5363"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5363"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5364: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:5364"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "20: >+12345678++12345678+<
19: >+12345678++12345678<
18: >+12345678++1234567<
17: >+12345678++123456<
16: >+12345678++12345<
15: >+12345678++1234<
14: >+12345678++123<
13: >+12345678++12<
12: >+12345678++1<
11: >+12345678++<
10: >+12345678+<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5364"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_899
#AT_START_900
at_fn_group_banner 900 'run_file.at:5381' \
  "LINE SEQUENTIAL file I/O with variable records" " " 4
at_xfail=no
(
  $as_echo "900. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN DISK
               LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f RECORD VARYING FROM 10 TO 20 DEPENDING rec-size.
       01  f-rec.
           02  f-x OCCURS 20 PIC X.

       WORKING-STORAGE SECTION.
       01  rec-size PIC 99.
       01  i PIC 99.
       01  1-template VALUE "+12345678++12345678+".
           02  1-x OCCURS 20 PIC X.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           PERFORM VARYING rec-size FROM 20 BY -1 UNTIL rec-size < 10
               WRITE f-rec FROM 1-template
           END-PERFORM
           CLOSE f

           OPEN INPUT f
      *    rec-size should not influence READ
           MOVE 15 TO rec-size
           PERFORM VARYING i FROM 20 BY -1 UNTIL i < 10
               READ f
                   AT END
                       DISPLAY "Failed: EOF"
                       STOP RUN ERROR
               END-READ

               DISPLAY rec-size ": >" f-rec (1:rec-size) "<"
               IF rec-size NOT = i
                   DISPLAY "Failed: bad record size"
                   STOP RUN ERROR
               END-IF
               IF f-x (rec-size) NOT = 1-x (rec-size)
                   DISPLAY "Failed: bad data"
                   STOP RUN ERROR
               END-IF
           END-PERFORM
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5437: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:5437"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5437"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5438: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:5438"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "20: >+12345678++12345678+<
19: >+12345678++12345678<
18: >+12345678++1234567<
17: >+12345678++123456<
16: >+12345678++12345<
15: >+12345678++1234<
14: >+12345678++123<
13: >+12345678++12<
12: >+12345678++1<
11: >+12345678++<
10: >+12345678+<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5438"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_900
#AT_START_901
at_fn_group_banner 901 'run_file.at:5455' \
  "SEQUENTIAL file REWRITE" "                        " 4
at_xfail=no
(
  $as_echo "901. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID.  prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT file1 ASSIGN DISK.

       DATA DIVISION.
       FILE SECTION.
       FD  file1.
       01  file1-rec.
           02  file1-serial-1 PIC 9(6).
           02  file1-xseen PIC 9(4).
           02  file1-serial-2 PIC 9(6).

       WORKING-STORAGE SECTION.
       01  w-count PIC 9(6) VALUE 0.
       01  w-eof PIC 9 VALUE 0.
           88  eof VALUE 1 FALSE 0.
       01  w-abort PIC 9 VALUE 0.
           88  abort VALUE 1 FALSE 0.

       PROCEDURE DIVISION.
           OPEN OUTPUT file1
           PERFORM VARYING w-count FROM 1 BY 1
                   UNTIL w-count > 20
               MOVE w-count TO file1-serial-1
               MOVE 0 TO file1-xseen
               ADD 100 w-count GIVING file1-serial-2
               WRITE file1-rec
           END-PERFORM
           CLOSE file1

           OPEN I-O file1
           SET eof TO FALSE
           PERFORM VARYING w-count FROM 1 BY 1
                   UNTIL eof OR abort
               READ file1
                   AT END
                       SET eof TO TRUE

                   NOT AT END
                       IF (file1-serial-1 <> w-count)
                           DISPLAY "FAIL 1: " w-count " :: "
                               file1-serial-1
                           SET abort TO TRUE
                       ELSE IF (file1-serial-2 <> (100 + w-count))
                           DISPLAY "FAIL 2: " w-count " :: "
                               file1-serial-2
                           SET abort TO TRUE
                       ELSE IF (file1-xseen <> 0)
                           DISPLAY "FAIL 3: " w-count " :: " file1-xseen
                           SET abort TO TRUE
                       ELSE IF (w-count = 5 OR 10 OR 15 OR 20)
                           ADD 1000 w-count GIVING file1-serial-2
                           ADD 1 TO file1-xseen
                           REWRITE file1-rec
                       END-IF
               END-READ
           END-PERFORM
           IF NOT ((w-count = 22) AND eof)
               DISPLAY "FAIL 4"
           END-IF
           CLOSE file1

           OPEN INPUT file1
           SET eof TO FALSE
           SET abort TO FALSE
           PERFORM VARYING w-count FROM 1 BY 1
                   UNTIL eof OR abort
               READ file1
                   AT END
                       SET eof TO TRUE

                   NOT AT END
                       IF (file1-serial-1 <> w-count)
                           DISPLAY "FAIL 5"
                           SET abort TO TRUE
                       ELSE IF (w-count = 5 OR 10 OR 15 OR 20)
                           IF NOT ((file1-serial-2 = (1000 + w-count))
                                   AND (file1-xseen = 1))
                               DISPLAY "FAIL 6"
                               SET abort TO TRUE
                           END-IF
                       ELSE
                           IF NOT ((file1-serial-2 = (100 + w-count))
                                   AND (file1-xseen = 0))
                               DISPLAY "FAIL 7"
                               SET abort TO TRUE
                           END-IF
                       END-IF
               END-READ
           END-PERFORM
           CLOSE file1
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5558: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:5558"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5558"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5559: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:5559"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5559"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_901
#AT_START_902
at_fn_group_banner 902 'run_file.at:5567' \
  "SEQUENTIAL file with LOCK MODE EXCLUSIVE" "       " 4
at_xfail=yes
(
  $as_echo "902. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           lock mode is exclusive
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5630: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:5630"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5630"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5631: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:5631"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5631"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5632: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:5632"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5632"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_902
#AT_START_903
at_fn_group_banner 903 'run_file.at:5637' \
  "SEQUENTIAL file with OPEN WITH LOCK" "            " 4
at_xfail=yes
(
  $as_echo "903. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1 with lock.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5698: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:5698"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5698"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5699: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:5699"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5699"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5700: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:5700"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5700"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_903
#AT_START_904
at_fn_group_banner 904 'run_file.at:5705' \
  "SEQUENTIAL file with SHARING NO" "                " 4
at_xfail=yes
(
  $as_echo "904. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           sharing no
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5768: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:5768"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5768"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5769: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:5769"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5769"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5770: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:5770"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5770"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_904
#AT_START_905
at_fn_group_banner 905 'run_file.at:5775' \
  "SEQUENTIAL file with SHARING READ ONLY" "         " 4
at_xfail=no
(
  $as_echo "905. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           sharing read only
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open i-o file1.
           if fs not = "61"
              display "FAILED 1: " fs
              close file1
           end-if.
           open input file1.
           if fs not = "00"
              display "FAILED 2: " fs
           else
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5842: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:5842"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5842"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5843: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:5843"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5843"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5844: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:5844"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5844"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_905
#AT_START_906
at_fn_group_banner 906 'run_file.at:5850' \
  "SEQUENTIAL file with blocked lock" "              " 4
at_xfail=yes
(
  $as_echo "906. $at_setup_line: testing $at_desc ..."
  $at_traceon





cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "00"
              display "FAILED: " fs
              stop run
           end-if.
           close file1
           open input file1 with lock.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5916: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:5916"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5916"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5917: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:5917"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5917"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5918: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:5918"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5918"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_906
#AT_START_907
at_fn_group_banner 907 'run_file.at:5923' \
  "RELATIVE SEQUENTIAL basic I/O" "                  " 4
at_xfail=no
(
  $as_echo "907. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK ORGANIZATION RELATIVE.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x.
       PROCEDURE DIVISION.
           DELETE FILE file1.
           OPEN OUTPUT file1.
           MOVE "A" TO file1-rec.
           WRITE file1-rec.
           CLOSE file1.
           OPEN INPUT file1.
           READ file1.
           IF (file1-rec <> "A")
              display "FAILED".
           CLOSE file1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:5951: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:5951"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5951"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:5952: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:5952"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:5952"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_907
#AT_START_908
at_fn_group_banner 908 'run_file.at:5957' \
  "RELATIVE RANDOM basic I/O" "                      " 4
at_xfail=no
(
  $as_echo "908. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK
          ORGANIZATION RELATIVE
          ACCESS RANDOM RELATIVE KEY file1-key.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x.
       WORKING-STORAGE SECTION.
       77  file1-key pic 99.
       PROCEDURE DIVISION.
           DELETE FILE file1.
           OPEN OUTPUT file1.
           MOVE 1 to file1-key.
           MOVE "A" TO file1-rec.
           WRITE file1-rec.
           MOVE 2 to file1-key.
           MOVE "B" TO file1-rec.
           WRITE file1-rec.
           MOVE 3 to file1-key.
           MOVE "C" TO file1-rec.
           WRITE file1-rec.
           CLOSE file1.
           OPEN INPUT file1.
           MOVE 2 to file1-key.
           READ file1.
           IF (file1-rec <> "B")
              display "FAILED".
           MOVE 1 to file1-key.
           READ file1.
           IF (file1-rec <> "A")
              display "FAILED".
           CLOSE file1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6001: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:6001"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6001"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6002: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:6002"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6002"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_908
#AT_START_909
at_fn_group_banner 909 'run_file.at:6007' \
  "RELATIVE SEQUENTIAL with variable records" "      " 4
at_xfail=no
(
  $as_echo "909. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN DISK
               ORGANIZATION RELATIVE.

       DATA DIVISION.
       FILE SECTION.
       FD  f RECORD VARYING FROM 10 TO 20 DEPENDING rec-size.
       01  f-rec.
           02  f-x OCCURS 20 PIC X.

       WORKING-STORAGE SECTION.
       01  rec-size PIC 99.
       01  i PIC 99.
       01  1-template VALUE "+12345678++12345678+".
           02  1-x OCCURS 20 PIC X.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           PERFORM VARYING rec-size FROM 20 BY -1 UNTIL rec-size < 10
               WRITE f-rec FROM 1-template
           END-PERFORM
           CLOSE f

           OPEN INPUT f
      *    rec-size should not influence READ
           MOVE 15 TO rec-size
           PERFORM VARYING i FROM 20 BY -1 UNTIL i < 10
               READ f
                   AT END
                       DISPLAY "Failed: EOF"
                       STOP RUN ERROR
               END-READ

               DISPLAY rec-size ": >" f-rec (1:rec-size) "<"
               IF rec-size NOT = i
                   DISPLAY "Failed: bad record size"
                   STOP RUN ERROR
               END-IF
               IF f-x (rec-size) NOT = 1-x (rec-size)
                   DISPLAY "Failed: bad data"
                   STOP RUN ERROR
               END-IF
           END-PERFORM
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6063: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:6063"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6063"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6064: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:6064"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "20: >+12345678++12345678+<
19: >+12345678++12345678<
18: >+12345678++1234567<
17: >+12345678++123456<
16: >+12345678++12345<
15: >+12345678++1234<
14: >+12345678++123<
13: >+12345678++12<
12: >+12345678++1<
11: >+12345678++<
10: >+12345678+<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6064"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_909
#AT_START_910
at_fn_group_banner 910 'run_file.at:6081' \
  "INDEXED SEQUENTIAL basic I/O" "                   " 4
at_xfail=no
(
  $as_echo "910. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6084" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6084"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT fileX ASSIGN DISK ORGANIZATION INDEXED
           RECORD KEY fileX-key.
       DATA DIVISION.
       FILE SECTION.
       FD fileX.
       1  fileX-rec.
          2 fileX-key pic x(6).
          2 fileX-data pic x(10).
       PROCEDURE DIVISION.
           OPEN OUTPUT fileX.
           MOVE ALL "A" TO fileX-rec.
           WRITE fileX-rec.
           CLOSE fileX.
           OPEN INPUT fileX.
           READ fileX.
           IF (fileX-rec <> ALL "A")
              display "FAILED".
           CLOSE fileX.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6113: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:6113"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6113"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6114: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:6114"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6114"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_910
#AT_START_911
at_fn_group_banner 911 'run_file.at:6119' \
  "INDEXED SEQUENTIAL with variable records" "       " 4
at_xfail=no
(
  $as_echo "911. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6122" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6122"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT f ASSIGN DISK
               INDEXED
               RECORD KEY f-key
               ACCESS RANDOM.

       DATA DIVISION.
       FILE SECTION.
       FD  f RECORD VARYING FROM 12 TO 22 DEPENDING rec-size.
       01  f-rec.
           02  f-key PIC 99.
           02  f-data.
               03  f-x OCCURS 20 PIC X.

       WORKING-STORAGE SECTION.
       01  rec-size PIC 99.
       01  1-template VALUE "+12345678++12345678+".
           02  1-x OCCURS 20 PIC X.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           MOVE 1 TO f-key
           PERFORM VARYING rec-size FROM 22 BY -1 UNTIL rec-size < 12
               MOVE 1-template TO f-data
               WRITE f-rec
               ADD 1 TO f-key
           END-PERFORM
           CLOSE f

           OPEN INPUT f
      *    rec-size should not influence READ
           MOVE 15 TO rec-size
           PERFORM VARYING f-key FROM 1 BY 1 UNTIL f-key > 11
               READ f
                   AT END
                       DISPLAY "Failed: EOF"
                       STOP RUN ERROR
               END-READ

               DISPLAY rec-size ": >" f-rec (3:rec-size - 2) "<"
               IF rec-size NOT = (22 - f-key) + 1
                   DISPLAY "Failed: bad record size - " rec-size
                   STOP RUN ERROR
               END-IF
               IF f-x (rec-size - 2) NOT = 1-x (rec-size - 2)
                   DISPLAY "Failed: bad data - " f-data
                   STOP RUN ERROR
               END-IF
           END-PERFORM
           CLOSE f
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6183: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:6183"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6183"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6184: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:6184"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "22: >+12345678++12345678+<
21: >+12345678++12345678<
20: >+12345678++1234567<
19: >+12345678++123456<
18: >+12345678++12345<
17: >+12345678++1234<
16: >+12345678++123<
15: >+12345678++12<
14: >+12345678++1<
13: >+12345678++<
12: >+12345678+<
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6184"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_911
#AT_START_912
at_fn_group_banner 912 'run_file.at:6201' \
  "INDEXED file with LOCK MODE EXCLUSIVE" "          " 4
at_xfail=yes
(
  $as_echo "912. $at_setup_line: testing $at_desc ..."
  $at_traceon



## TO-DO: Support INDEXED file sharing/locking.
$as_echo "run_file.at:6205" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6205"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           lock mode is exclusive
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6273: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6273"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6273"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6274: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6274"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6274"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6275: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6275"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6275"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_912
#AT_START_913
at_fn_group_banner 913 'run_file.at:6280' \
  "INDEXED file with OPEN WITH LOCK" "               " 4
at_xfail=yes
(
  $as_echo "913. $at_setup_line: testing $at_desc ..."
  $at_traceon



## TO-DO: Support INDEXED file sharing/locking.
$as_echo "run_file.at:6284" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6284"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1 with lock.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6351: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6351"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6351"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6352: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6352"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6352"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6353: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6353"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6353"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_913
#AT_START_914
at_fn_group_banner 914 'run_file.at:6358' \
  "INDEXED file with SHARING NO" "                   " 4
at_xfail=yes
(
  $as_echo "914. $at_setup_line: testing $at_desc ..."
  $at_traceon



## TO-DO: Support INDEXED file sharing/locking.
$as_echo "run_file.at:6362" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6362"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           sharing no
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6430: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6430"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6430"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6431: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6431"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6431"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6432: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6432"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6432"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_914
#AT_START_915
at_fn_group_banner 915 'run_file.at:6437' \
  "INDEXED file with SHARING READ ONLY" "            " 4
at_xfail=yes
(
  $as_echo "915. $at_setup_line: testing $at_desc ..."
  $at_traceon



## TO-DO: Support INDEXED file sharing/locking.
$as_echo "run_file.at:6441" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6441"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           sharing read only
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open i-o file1.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           open input file1.
           if fs not = "00"
              display "FAILED: " fs
           else
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6515: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6515"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6515"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6516: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6516"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6516"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6517: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6517"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6517"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_915
#AT_START_916
at_fn_group_banner 916 'run_file.at:6523' \
  "INDEXED file with blocked lock" "                 " 4
at_xfail=yes
(
  $as_echo "916. $at_setup_line: testing $at_desc ..."
  $at_traceon



## TO-DO: Support INDEXED file sharing/locking.
$as_echo "run_file.at:6527" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6527"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           close file1.
           open input file1.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           if fs not = "00"
              display "FAILED: " fs
              stop run
           end-if.
           close file1
           open input file1 with lock.
           if fs not = "61"
              display "FAILED: " fs
              close file1
           end-if.
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6598: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6598"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6598"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6599: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6599"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6599"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6600: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6600"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6600"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_916
#AT_START_917
at_fn_group_banner 917 'run_file.at:6605' \
  "INDEXED file with LOCK AUTOMATIC (1)" "           " 4
at_xfail=yes
(
  $as_echo "917. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6608" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6608"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           access mode is random
           organization indexed
           record key file1-key
           lock mode is automatic
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           move "X" to file1-key.
           write file1-rec.
           if fs not = "00"
              display "FAILED 1::w fs=" fs.
           close file1.
           open i-o file1.
           move "X" to file1-key.
           read file1.
           if fs not = "00"
              display "FAILED 1::r fs=" fs.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           access mode is random
           organization indexed
           record key file1-key
           lock mode is automatic
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open i-o file1.
           move "X" to file1-key.
           read file1.
           if fs not = "61"
              display "FAILED 2::r " fs.
           close file1
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6688: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6688"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6688"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6689: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6689"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6689"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6690: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6690"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6690"
$at_failed && at_fn_log_failure
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_917
#AT_START_918
at_fn_group_banner 918 'run_file.at:6696' \
  "INDEXED file with LOCK AUTOMATIC (2)" "           " 4
at_xfail=no
(
  $as_echo "918. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6699" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6699"

cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           access mode is random
           organization indexed
           record key file1-key
           lock mode is automatic
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           move "X" to file1-key.
           write file1-rec.
           if fs not = "00"
              display "FAILED 1::w fs=" fs.
           close file1.
           open i-o file1.
           move "X" to file1-key.
           read file1.
           if fs not = "00"
              display "FAILED 1::r fs=" fs.
           rewrite file1-rec.
           if fs not = "00"
              display "FAILED 1::rw fs=" fs.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           access mode is random
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open input file1.
           move "X" to file1-key.
           read file1.
           if fs not = "00"
              display "FAILED 2::r " fs
           end-if.
           close file1
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6781: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6781"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6781"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6782: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6782"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6782"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6783: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6783"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6783"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_918
#AT_START_919
at_fn_group_banner 919 'run_file.at:6788' \
  "INDEXED file with LOCK MANUAL" "                  " 4
at_xfail=yes
(
  $as_echo "919. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6791" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6791"


cat >prog1.cob <<'_ATEOF'

       identification division.
       program-id. prog1.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           access mode is random
           organization indexed
           record key file1-key
           lock mode is manual
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       1    os-check   pic x(7).
         88 os-is-windows-or-dos values 'WINDOWS' 'FREEDOS'.
       78  callee       value "./prog2".
       78  callee-wdos  value ".\prog2".
       procedure division.
           open output file1.
           move "X" to file1-key.
           write file1-rec.
           if fs not = "00"
              display "FAILED 1::w fs=" fs.
           close file1.
           open i-o file1.
           move "X" to file1-key.
           read file1 with lock.
           if fs not = "00"
              display "FAILED 1::r fs=" fs.
           accept os-check from environment "COB_ON_CYGWIN".
           if os-check = spaces
             accept os-check from environment "OS".
           if os-check = spaces
             accept os-check from environment "OS_NAME".
           inspect os-check converting "werfdosin" to "WERFDOSIN".
           if os-is-windows-or-dos
             call "SYSTEM" using callee-wdos
           else
             call "SYSTEM" using callee.
           close file1.
           stop run.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       identification division.
       program-id. prog2.
       environment division.
       input-output section.
       file-control.
       select file1 assign disk
           access mode is random
           organization indexed
           record key file1-key
           status is fs.
       data division.
       file section.
       fd file1.
       1    file1-rec.
        2   file1-key pic x.
       working-storage section.
       1    fs pic xx.
       procedure division.
           open i-o file1.
           move "X" to file1-key.
           read file1.
           if fs not = "61"
              display "FAILED 2::r " fs
           end-if.
           close file1
           stop run.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6871: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:6871"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6871"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6872: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:6872"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6872"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6873: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_file.at:6873"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6873"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_919
#AT_START_920
at_fn_group_banner 920 'run_file.at:6878' \
  "START INDEXED" "                                  " 4
at_xfail=no
(
  $as_echo "920. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6881" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6881"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN TO "./file1X"
                    ORGANIZATION INDEXED
                    ACCESS DYNAMIC RECORD KEY file1-key.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec.
          2  file1-key pic 999.
          2  file1-data pic 999.
       PROCEDURE DIVISION.
          OPEN OUTPUT file1.
          CLOSE file1.
          OPEN I-O file1.
          MOVE 10 TO file1-key file1-data.
          WRITE file1-rec.
          MOVE 11 TO file1-key file1-data.
          WRITE file1-rec.
          MOVE 12 TO file1-key file1-data.
          WRITE file1-rec.
          MOVE 13 TO file1-key file1-data.
          WRITE file1-rec.
      *
          MOVE 0 TO file1-key.
          START file1 KEY > file1-key.
          READ file1 NEXT.
          IF (file1-data <> 10)
             DISPLAY "FAILED: START key > 0".
      *
          MOVE 99 TO file1-key.
          START file1 KEY < file1-key.
          READ file1 NEXT.
          IF (file1-data <> 13)
             DISPLAY "FAILED: START key < 99".
      *
          MOVE 999 TO file1-key.
          START file1 FIRST.
          READ file1 NEXT.
          IF (file1-data <> 10)
             DISPLAY "FAILED: START key FIRST".
      *
          MOVE 0 TO file1-key.
          START file1 LAST.
          READ file1 NEXT.
          IF (file1-data <> 13)
             DISPLAY "FAILED: START key LAST".
      *
          MOVE 0 TO file1-key.
          START file1 KEY >= file1-key.
          READ file1 NEXT.
          IF (file1-data <> 10)
             DISPLAY "FAILED: START key >= 0".
      *
          MOVE 99 TO file1-key.
          START file1 KEY <= file1-key.
          READ file1 NEXT.
          IF (file1-data <> 13)
             DISPLAY "FAILED: START key <= 99".

          CLOSE file1.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:6951: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:6951"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6951"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:6952: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:6952"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:6952"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_920
#AT_START_921
at_fn_group_banner 921 'run_file.at:6957' \
  "INDEXED partial keys" "                           " 4
at_xfail=no
(
  $as_echo "921. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:6960" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:6960"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL f ASSIGN "fileX"
               ORGANIZATION INDEXED
               ACCESS DYNAMIC
               RECORD KEY f-key1
               ALTERNATE RECORD f-key2
               ALTERNATE RECORD f-key3 DUPLICATES
               STATUS f-status.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-rec.
           02  f-key1.
               03  f-key1-1 PIC X(3).
               03  f-key1-2 PIC X(3).
           02  f-key2.
               03  f-key2-1 PIC X(3).
               03  f-key2-2 PIC X(3).
           02  f-key3.
               03  f-key3-1 PIC X(3).
               03  f-key3-2 PIC X(3).
           02  file1-serial PIC 99.

       WORKING-STORAGE SECTION.
       01  f-status PIC XX.
       01  w-serial PIC 99 VALUE 0.

       PROCEDURE DIVISION.
           DELETE FILE f
           OPEN I-O f
           MOVE "AAAAAAaaaaaaXX----" TO f-rec
           PERFORM write-f
           MOVE "AAAAABaaaaabXX----" TO f-rec
           PERFORM write-f
           MOVE "AAAABBaaaabbXX----" TO f-rec
           PERFORM write-f
           MOVE "AAABBBaaabbbXXX---" TO f-rec
           PERFORM write-f
           MOVE "AABBBBaabbbbXXX---" TO f-rec
           PERFORM write-f
           MOVE "ABBBBBabbbbbXXX---" TO f-rec
           PERFORM write-f
           MOVE "BBBBBBbbbbbbXXX---" TO f-rec
           PERFORM write-f

           MOVE "AAB" TO f-key1-1
           MOVE "~~~" TO f-key1-2
           START f KEY = f-key1-1
           READ f NEXT
           IF (f-status <> "00") OR
                   (file1-serial <> 4)
               DISPLAY "FAILED 1: status " f-status "-"
                       "serial: " file1-serial
           END-IF

           MOVE "AAB" TO f-key1-1
           MOVE "~~~" TO f-key1-2
           START f KEY < f-key1-1
           READ f PREVIOUS
           IF (f-status <> "00") OR
                   (file1-serial <> 3)
               DISPLAY "FAILED 2: status " f-status "-"
                       "serial: " file1-serial
           END-IF

           MOVE "AAA" TO f-key1-1
           MOVE "~~~" TO f-key1-2
           START f KEY > f-key1-1
           READ f NEXT
           IF (f-status <> "00") OR
                   (file1-serial <> 4)
               DISPLAY "FAILED 3: status " f-status "-"
                       "serial: " file1-serial
           END-IF

           MOVE "aab" TO f-key2-1
           MOVE "~~~" TO f-key2-2
           START f KEY = f-key2-1
           READ f NEXT
           IF (f-status <> "00") OR
                   (file1-serial <> 4)
               DISPLAY "FAILED 4: status " f-status "-"
                       "serial: " file1-serial
           END-IF

           MOVE "aab" TO f-key2-1
           MOVE "~~~" TO f-key2-2
           START f KEY < f-key2-1
           READ f PREVIOUS
           IF (f-status <> "00") OR
                   (file1-serial <> 3)
               DISPLAY "FAILED 5: status " f-status "-"
                       "serial: " file1-serial
           END-IF

           MOVE "aaa" TO f-key2-1
           MOVE "~~~" TO f-key2-2
           START f KEY > f-key2-1
           READ f NEXT
           IF (f-status <> "00") OR
                   (file1-serial <> 4)
               DISPLAY "FAILED 6: status " f-status "-"
                       "serial: " file1-serial
           END-IF

           MOVE "XX-" TO f-key3-1
           START f KEY > f-key3-1
           READ f NEXT
      *  CHECK: Return file-status "02" if duplicates exist
           IF (f-status <> "02"
      *    Depends on xISAM implementation and the way BDB is used (not yet
      *    implemented in 3.x)
            AND f-status <> "00"
               ) OR file1-serial <> 3
               DISPLAY "FAILED 7: status " f-status "-"
           END-IF
           CLOSE f
           STOP RUN
           .
       write-f.
           MOVE w-serial TO file1-serial
           WRITE f-rec
           ADD 1 TO w-serial
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:7095: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:7095"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7095"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:7096: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:7096"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7096"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_921
#AT_START_922
at_fn_group_banner 922 'run_file.at:7104' \
  "INDEXED undeclared keys" "                        " 4
at_xfail=no
(
  $as_echo "922. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:7107" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:7107"

# real ISAM has the key information and will "fail" one part,
# BDB hasn't and will "pass" this one but fail the other
# -> skip as 4.x feature
$as_echo "run_file.at:7112" >"$at_check_line_file"
at_fn_check_skip 77 "$at_srcdir/run_file.at:7112"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN TO "./fileX"
                    ORGANIZATION INDEXED
                    ACCESS RANDOM
                    RECORD KEY file1-key1
                    ALTERNATE RECORD KEY file1-key2
                    ALTERNATE RECORD KEY file1-key3.
       SELECT file2 ASSIGN TO "./fileX"
                    ORGANIZATION INDEXED
                    ACCESS RANDOM
                    RECORD KEY file2-key1
                    ALTERNATE RECORD KEY file2-key2.
       SELECT file3 ASSIGN TO "./fileX"
                    ORGANIZATION INDEXED
                    ACCESS RANDOM
                    RECORD KEY file3-key1.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec.
          2  file1-key1 pic 999.
          2  file1-key2 pic 999.
          2  file1-key3 pic 999.
          2  file1-data pic 999.
       FD file2.
       1  file2-rec.
          2  file2-key1 pic 999.
          2  file2-key2 pic 999.
          2  file2-key3 pic 999.
          2  file2-data pic 999.
       FD file3.
       1  file3-rec.
          2  file3-key1 pic 999.
          2  file3-key2 pic 999.
          2  file3-key3 pic 999.
          2  file3-data pic 999.
       WORKING-STORAGE SECTION.
       77 ix pic 9(6).
       PROCEDURE DIVISION.
          OPEN OUTPUT file1.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             MOVE ix TO file1-key1 file1-data
             ADD 100 TO ix GIVING file1-key2
             ADD 200 TO ix GIVING file1-key3
             WRITE file1-rec
          END-PERFORM.
          CLOSE file1.
      *
          OPEN INPUT file1.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             MOVE ix TO file1-key1
             READ file1 KEY file1-key1
             IF (file1-data <> ix)
                DISPLAY "FAILED 1-1"
             END-IF
          END-PERFORM.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             ADD 100 TO ix GIVING file1-key2
             READ file1 KEY file1-key2
             IF (file1-data <> ix)
                DISPLAY "FAILED 1-2"
             END-IF
          END-PERFORM.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             ADD 200 TO ix GIVING file1-key3
             READ file1 KEY file1-key3
             IF (file1-data <> ix)
                DISPLAY "FAILED 1-3"
             END-IF
          END-PERFORM.
          CLOSE file1.
      *
          OPEN INPUT file2.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             MOVE ix TO file2-key1
             READ file2 KEY file2-key1
             IF (file2-data <> ix)
                DISPLAY "FAILED 2-1"
             END-IF
          END-PERFORM.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             ADD 100 TO ix GIVING file2-key2
             READ file2 KEY file2-key2
             IF (file2-data <> ix)
                DISPLAY "FAILED 2-2"
             END-IF
          END-PERFORM.
          CLOSE file2.
      *
          OPEN INPUT file3.
          PERFORM VARYING ix FROM 1 BY 1
             UNTIL ix > 10
             MOVE ix TO file3-key1
             READ file3 KEY file3-key1
             IF (file3-data <> ix)
                DISPLAY "FAILED 3-1"
             END-IF
          END-PERFORM.
          CLOSE file3.
      *
      *   Insert rec via file with only 1 index declared
          OPEN I-O file3.
          MOVE 20 TO ix.
          MOVE ix TO file3-key1 file3-data
          ADD 100 TO ix GIVING file3-key2
          ADD 200 TO ix GIVING file3-key3
          WRITE file3-rec
          CLOSE file3
      *
      *   Check new rec is visible in other files
          OPEN INPUT file1.
          MOVE 10 TO file1-key1.
          READ file1 KEY file1-key1.
          IF (file1-data <> 10)
             DISPLAY "FAILED 1-4".
          MOVE SPACES TO file1-rec.
          MOVE 110 TO file1-key2.
          READ file1 KEY file1-key2.
          IF (file1-data <> 10)
             DISPLAY "FAILED 1-5".
          MOVE SPACES TO file1-rec.
          MOVE 210 TO file1-key3.
          READ file1 KEY file1-key3.
          IF (file1-data <> 10)
             DISPLAY "FAILED 1-6".
          CLOSE file1.
      *
          OPEN INPUT file2.
          MOVE 10 TO file2-key1.
          READ file2 KEY file2-key1.
          IF (file2-data <> 10)
             DISPLAY "FAILED 2-3".
          MOVE SPACES TO file2-rec.
          MOVE 110 TO file2-key2.
          READ file2 KEY file2-key2.
          IF (file2-data <> 10)
             DISPLAY "FAILED 2-4".
          CLOSE file2.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:7266: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:7266"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7266"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:7267: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:7267"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:82: error: unknown file error (status = 39) for file file2 ('.' => ./fileX) on OPEN
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:7267"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:7270: COB_KEYCHECK=OFF \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_KEYCHECK=OFF $COBCRUN_DIRECT ./prog" "run_file.at:7270"
( $at_check_trace; COB_KEYCHECK=OFF $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7270"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_922
#AT_START_923
at_fn_group_banner 923 'run_file.at:7275' \
  "READ INPUT pipe & WRITE OUTPUT pipe" "            " 4
at_xfail=yes
(
  $as_echo "923. $at_setup_line: testing $at_desc ..."
  $at_traceon



# only implemented with 4+


cat >test-data-in <<'_ATEOF'
NAME
STREET
TOWN
COUNTRY
_ATEOF


cat >provider <<'_ATEOF'

cat $1
_ATEOF


cat >consumer <<'_ATEOF'

cat
_ATEOF


cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.
       environment division.
       configuration section.
       input-output section.
       file-control.
           select pipe-in
               organization line sequential
               access sequential
               assign to w-command
               status is f-status.
           select pipe-out
               organization line sequential
               access sequential
               assign to w-command
               status is f-status.
       data division.
       file section.
       fd  pipe-in.
       1   pipe-msg-in pic x(132).
       fd  pipe-out.
       1   pipe-msg-out pic x(132).
       working-storage section.
       77  f-status pic xx.
           88  f-status-ok value "00".
       77  w-command pic x(100).
       procedure division.
           move "< sh ./provider ./test-data-in"
             to w-command.
           open input pipe-in.
           if not f-status-ok
              display "FAILED: OPEN INPUT"
              stop run
           end-if.
           move "> sh ./consumer > ./test-data-out"
             to w-command.
           open output pipe-out.
           if not f-status-ok
              display "FAILED: OPEN OUTPUT"
              stop run
           end-if.
           perform until not f-status-ok
              read pipe-in
              if f-status-ok
                 perform x01-100-map
                 write pipe-msg-out
              end-if
           end-perform.
           close pipe-in.
           close pipe-out.
           stop run.
      *
       x01-100-map.
           move "*** Jacques Tati ***" to pipe-msg-out.
           if (pipe-msg-in = "COUNTRY")
              move "Country: FRANCE" to pipe-msg-out.
           if (pipe-msg-in = "TOWN")
              move "Town: DEAUVILLE" to pipe-msg-out.
           if (pipe-msg-in = "NAME")
              move "Name: M. Hulot" to pipe-msg-out.
           if (pipe-msg-in = "STREET")
              move "Street: Rue des Anglais" to pipe-msg-out.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:7361: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:7361"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7361"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:7362: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:7362"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7362"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:7363: cat test-data-out"
at_fn_check_prepare_trace "run_file.at:7363"
( $at_check_trace; cat test-data-out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Name: M. Hulot
Street: Rue des Anglais
Town: DEAUVILLE
Country: FRANCE
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:7363"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_923
#AT_START_924
at_fn_group_banner 924 'run_file.at:7373' \
  "EXTFH: using ISAM callback" "                     " 4
at_xfail=no
(
  $as_echo "924. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:7376" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:7376"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL TSPFILE
           ASSIGN TO "testisam"
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS CM-CUST-NUM
           ALTERNATE RECORD KEY IS CM-TELEPHONE WITH DUPLICATES
           ALTERNATE RECORD KEY IS CM-DISK WITH DUPLICATES
           FILE STATUS IS CUST-STAT .

           SELECT TSTFILE
           ASSIGN TO "testisam"
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS TS-CUST-NUM
           ALTERNATE RECORD KEY IS TS-TELEPHONE WITH DUPLICATES
           ALTERNATE RECORD KEY IS TS-DISK WITH DUPLICATES
           FILE STATUS IS CUST-STAT .

           SELECT FLATFILE ASSIGN EXTERNAL RELFIX
           ORGANIZATION RELATIVE
           ACCESS IS RANDOM RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

       DATA  DIVISION.
       FILE SECTION.
       FD  TSPFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           05  TSPFL-REC.
           10  CM-CUST-NUM.
             15  CM-CUST-PRE                   PICTURE X(3).
             15  CM-CUST-NNN                   PICTURE X(5).
           10  CM-STATUS                       PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-ADDRESS-1                    PICTURE X(25).
           10  CM-ADDRESS-2                    PICTURE X(25).
           10  CM-ADDRESS-3                    PICTURE X(25).
           10  CM-TELEPHONE                    PICTURE 9(10).
           10  CM-DP-MGR                       PICTURE X(25).
           10  CM-MACHINE                      PICTURE X(8).
           10  CM-MEMORY                       PICTURE X(4).
           10  CM-DISK                         PICTURE X(8).
           10  CM-TAPE                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).

       FD  TSTFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSTFL-RECORD.
           05  TSTFL-REC.
           10  TS-CUST-NUM                     PICTURE X(8).
           10  TS-STATUS                       PICTURE X.
           10  TS-COMPANY                      PICTURE X(25).
           10  TS-ADDRESS-1                    PICTURE X(25).
           10  TS-ADDRESS-2                    PICTURE X(25).
           10  TS-ADDRESS-3                    PICTURE X(25).
           10  TS-TELEPHONE                    PICTURE 9(10).
           10  TS-DP-MGR                       PICTURE X(25).
           10  TS-MACHINE                      PICTURE X(8).
           10  TS-MEMORY                       PICTURE X(4).
           10  TS-DISK                         PICTURE X(8).
           10  TS-TAPE                         PICTURE X(8).

       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSP2-RECORD.
           10  C2-CUST-NUM                     PICTURE X(8).
           10  C2-COMPANY                      PICTURE X(25).
           10  C2-DISK                         PICTURE X(8).
           10  C2-NO-TERMINALS                 PICTURE 9(4) COMP-4.
           10  C2-PK-DATE                      PICTURE S9(14) COMP-3.

       WORKING-STORAGE SECTION.

       01  CUST-STAT.
           05  FILLER PICTURE XX.
       78  MAX-SUB           VALUE  16.

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GIB00000".
           05  FILLER PIC X(8) VALUE "H&J00000".
           05  FILLER PIC X(8) VALUE "INC00000".
           05  FILLER PIC X(8) VALUE "JOH00000".
           05  FILLER PIC X(8) VALUE "KON00000".
           05  FILLER PIC X(8) VALUE "LEW00000".
           05  FILLER PIC X(8) VALUE "MOR00000".
           05  FILLER PIC X(8) VALUE "NEW00000".
           05  FILLER PIC X(8) VALUE "OLD00000".
           05  FILLER PIC X(8) VALUE "PRE00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GIBRALTER LIFE INSURANCE ".
           05  FILLER PIC X(25) VALUE "H & J PLUMBING SUPPLIES  ".
           05  FILLER PIC X(25) VALUE "INCREMENTAL BACKUP CORP. ".
           05  FILLER PIC X(25) VALUE "JOHNSON BOATING SUPPLIES ".
           05  FILLER PIC X(25) VALUE "KONFLAB PLASTIC PRODUCTS.".
           05  FILLER PIC X(25) VALUE "LEWISTON GRAPHICS LTD.   ".
           05  FILLER PIC X(25) VALUE "MORNINGSIDE CARPENTRY.   ".
           05  FILLER PIC X(25) VALUE "NEW WAVE SURF SHOPS INC. ".
           05  FILLER PIC X(25) VALUE "OLD TYME PIZZA MFG. CO.  ".
           05  FILLER PIC X(25) VALUE "PRESTIGE OFFICE FURNITURE".

         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-1-TBL.

           05  FILLER PIC X(25) VALUE "123 MAIN STREET          ".
           05  FILLER PIC X(25) VALUE "1090 2ND AVE. WEST       ".
           05  FILLER PIC X(25) VALUE "1401 JEFFERSON BLVD.     ".
           05  FILLER PIC X(25) VALUE "1620 ARIZONA WAY         ".
           05  FILLER PIC X(25) VALUE "1184 EAST FIRST STREET   ".
           05  FILLER PIC X(25) VALUE "114 JOHN F. KENNEDY AVE. ".
           05  FILLER PIC X(25) VALUE "650 LIBERTY CRESCENT     ".
           05  FILLER PIC X(25) VALUE "77 SUNSET BLVD.          ".
           05  FILLER PIC X(25) VALUE "10908 SANTA MONICA BLVD. ".
           05  FILLER PIC X(25) VALUE "1134 PARIS ROAD          ".
           05  FILLER PIC X(25) VALUE "808 NORTHWEST MAIN ST.   ".
           05  FILLER PIC X(25) VALUE "9904 QUEEN STREET        ".
           05  FILLER PIC X(25) VALUE "1709 DUNDAS CRESCENT W.  ".
           05  FILLER PIC X(25) VALUE "3240 MARIS AVENUE        ".
           05  FILLER PIC X(25) VALUE "1705 WISCONSIN ROAD      ".
           05  FILLER PIC X(25) VALUE "114A MAPLE GROVE         ".

         02  DATA-ADDRESS-1 REDEFINES DATA-ADDRESS-1-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "SAN DIEGO ".
           05  FILLER PIC X(10) VALUE "LOS RIOS  ".
           05  FILLER PIC X(10) VALUE "MADISON   ".
           05  FILLER PIC X(10) VALUE "WILBUR    ".
           05  FILLER PIC X(10) VALUE "TOPEKA    ".
           05  FILLER PIC X(10) VALUE "SEATTLE   ".
           05  FILLER PIC X(10) VALUE "NEW JERSEY".
           05  FILLER PIC X(10) VALUE "FORT WAYNE".
           05  FILLER PIC X(10) VALUE "COLUMBUS  ".
           05  FILLER PIC X(10) VALUE "RICHMOND  ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS-2 REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-ADDRESS-3-TBL.

           05  FILLER PIC X(10) VALUE "N.Y.      ".
           05  FILLER PIC X(10) VALUE "GEORGIA   ".
           05  FILLER PIC X(10) VALUE "D.C.      ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CALIFORNIA".
           05  FILLER PIC X(10) VALUE "NEW MEXICO".
           05  FILLER PIC X(10) VALUE "WISCONSIN ".
           05  FILLER PIC X(10) VALUE "DELAWARE  ".
           05  FILLER PIC X(10) VALUE "KANSAS    ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "N.J.      ".
           05  FILLER PIC X(10) VALUE "COLORADO  ".
           05  FILLER PIC X(10) VALUE "OHIO      ".
           05  FILLER PIC X(10) VALUE "VIRGINIA  ".
           05  FILLER PIC X(10) VALUE "N.Y.      ".

         02  DATA-ADDRESS-3 REDEFINES DATA-ADDRESS-3-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-TELEPHONE-TBL.

           05  FILLER PIC 9(10) VALUE 3131234432.
           05  FILLER PIC 9(10) VALUE 4082938498.
           05  FILLER PIC 9(10) VALUE 8372487274.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 5292398745.
           05  FILLER PIC 9(10) VALUE 8009329492.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 6546456333.
           05  FILLER PIC 9(10) VALUE 3455445444.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 7456434355.
           05  FILLER PIC 9(10) VALUE 6554456433.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 7534587453.
           05  FILLER PIC 9(10) VALUE 8787458374.
           05  FILLER PIC 9(10) VALUE 4169898509.

         02  DATA-TELEPHONE REDEFINES DATA-TELEPHONE-TBL
                                       PIC 9(10) OCCURS MAX-SUB.
         02  DATA-DP-MGR-TBL.

           05  FILLER PIC X(20) VALUE "MR. DAVE HARRIS     ".
           05  FILLER PIC X(20) VALUE "MS. JANICE SILCOX   ".
           05  FILLER PIC X(20) VALUE "MR. ALLAN JONES     ".
           05  FILLER PIC X(20) VALUE "MR. PETER MACKAY    ".
           05  FILLER PIC X(20) VALUE "MRS. DONNA BREWER   ".
           05  FILLER PIC X(20) VALUE "MR. MICHAEL SMYTHE  ".
           05  FILLER PIC X(20) VALUE "MR. D.A. MORRISON   ".
           05  FILLER PIC X(20) VALUE "MR. BRIAN PATTERSON ".
           05  FILLER PIC X(20) VALUE "MR. DARRYL TOWNSEND ".
           05  FILLER PIC X(20) VALUE "MS. VALERIE HARPER  ".
           05  FILLER PIC X(20) VALUE "MR. FRED MILLER     ".
           05  FILLER PIC X(20) VALUE "MR. DONALD FISCHER  ".
           05  FILLER PIC X(20) VALUE "MR. STEVEN YOURDIN  ".
           05  FILLER PIC X(20) VALUE "MS. Goldie Hawn     ".
           05  FILLER PIC X(20) VALUE "MS. ALICE WINSTON   ".
           05  FILLER PIC X(20) VALUE "MR. THOMAS JEFFERSON".

         02  DATA-DP-MGR    REDEFINES DATA-DP-MGR-TBL
                                       PIC X(20) OCCURS MAX-SUB.
         02  DATA-MACHINE-TBL.

           05  FILLER PIC X(8) VALUE "UNI-9030".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-80/3".
           05  FILLER PIC X(8) VALUE "UNI-80/5".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-9040".

         02  DATA-MACHINE   REDEFINES DATA-MACHINE-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 85.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 45.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 107.
           05  FILLER PIC 9(3) COMP-3 VALUE 67.
           05  FILLER PIC 9(3) COMP-3 VALUE 32.
           05  FILLER PIC 9(3) COMP-3 VALUE 16.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 128.
           05  FILLER PIC 9(3) COMP-3 VALUE 64.
           05  FILLER PIC 9(3) COMP-3 VALUE 110.
           05  FILLER PIC 9(3) COMP-3 VALUE 324.
           05  FILLER PIC 9(3) COMP-3 VALUE 124.
           05  FILLER PIC 9(3) COMP-3 VALUE 86.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.

       78  REC-MAX                     VALUE 10.
       01  WORK-AREA.
           05  REC-NUM                 BINARY-SHORT UNSIGNED VALUE 0.
           05  SUB                     BINARY-SHORT UNSIGNED.
               88  ODD-RECORD                  VALUE 1 3 5 7 9 10 11.

           05  TSPFL-KEY                       PICTURE X(8).

       PROCEDURE DIVISION.

       MAINFILE.
           OPEN OUTPUT TSPFILE
           CLOSE TSPFILE.

           OPEN I-O TSPFILE
           MOVE '99' TO CUST-STAT
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "10"
               DISPLAY "Error " CUST-STAT " on read of empty file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           MOVE LOW-VALUES                     TO TSPFL-RECORD.
           START TSPFILE KEY GREATER THAN CM-CUST-NUM
           IF CUST-STAT NOT = "23"
               DISPLAY "Error " CUST-STAT " starting empty file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "46"
               DISPLAY "Error " CUST-STAT " start/read of empty file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           DISPLAY "OK: Operations on empty file"
           CLOSE TSPFILE.

           PERFORM LOADFILE.
           PERFORM LISTFILE.
           OPEN INPUT TSTFILE
           IF CUST-STAT NOT = "00"
               DISPLAY "Expected ERROR " CUST-STAT
                       " opening TSTFILE, Record size different"
                       UPON CONSOLE
           ELSE
               DISPLAY "Un-Expected open TSTFILE, Record size different"
                       UPON CONSOLE
               CLOSE TSTFILE
           END-IF.
           PERFORM LOADFLAT.
           STOP RUN.

       LOADFILE.
           DISPLAY "Loading sample data file."
                            UPON CONSOLE.

           OPEN OUTPUT TSPFILE
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT
               " opening 'testisam' file" UPON CONSOLE
               STOP RUN
           END-IF.

           PERFORM 1000-LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample data file load complete."
                            UPON CONSOLE.
           CLOSE TSPFILE.

      *---------------------------------------------------------------*
      *         LOAD A RECORD FROM DATA TABLES                        *
      *---------------------------------------------------------------*

       1000-LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE CM-CUST-NUM                  TO TSPFL-KEY.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-ADDRESS-1     (SUB)     TO CM-ADDRESS-1.
           MOVE DATA-ADDRESS-2     (SUB)     TO CM-ADDRESS-2.
           MOVE DATA-ADDRESS-3     (SUB)     TO CM-ADDRESS-3.
           MOVE DATA-TELEPHONE     (SUB)     TO CM-TELEPHONE.
           MOVE DATA-DP-MGR        (SUB)     TO CM-DP-MGR.
           MOVE DATA-MACHINE       (SUB)     TO CM-MACHINE.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
               MOVE "1600 BPI"               TO CM-TAPE
               MOVE "1MEG"                   TO CM-MEMORY
           ELSE
               MOVE "8470"                   TO CM-DISK
               MOVE "6250 BPI"               TO CM-TAPE
               MOVE "3MEG"                   TO CM-MEMORY.

           WRITE TSPFL-RECORD.
           IF CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Load - Key: " TSPFL-KEY ", Status: " CUST-STAT
                                 UPON CONSOLE.

       LISTFILE.
           DISPLAY "LIST SAMPLE FILE" UPON CONSOLE.
           OPEN INPUT TSTFILE
           MOVE SPACES                       TO TSTFL-RECORD.
           MOVE "PRE00000" TO CM-CUST-NUM.
           START TSTFILE KEY GREATER THAN OR EQUAL TO TS-CUST-NUM
           READ  TSTFILE NEXT RECORD
           READ  TSTFILE NEXT RECORD
           CLOSE TSTFILE.

           MOVE ZERO TO REC-NUM
           OPEN INPUT TSPFILE
           IF CUST-STAT NOT = "00"
               DISPLAY "ERROR " CUST-STAT " OPENING INPUT FILE"
                                             UPON CONSOLE
               STOP RUN
           END-IF.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE "PRE00000" TO CM-CUST-NUM.
           START TSPFILE KEY GREATER THAN OR EQUAL TO CM-CUST-NUM
           READ  TSPFILE NEXT RECORD
           READ  TSPFILE NEXT RECORD

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE "DEL00000" TO CM-CUST-NUM.
           START TSPFILE KEY GREATER THAN CM-CUST-NUM
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File" UPON CONSOLE
           END-IF.

           DISPLAY "LIST SAMPLE FILE DESCENDING" UPON CONSOLE.
           MOVE ZERO TO REC-NUM
           START TSPFILE KEY LESS THAN CM-CUST-NUM
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE PREVIOUS RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               READ TSPFILE PREVIOUS RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM.

           CLOSE TSPFILE.

           OPEN I-O TSPFILE.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           MOVE 'X'                          TO CM-CUST-NUM (5:1).
           READ TSPFILE KEY IS CM-CUST-NUM
           IF  CUST-STAT NOT = "23"
               DISPLAY "Error " CUST-STAT " instead of 23."
                                UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (2)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on primary read ."
                                UPON CONSOLE
           ELSE
               DISPLAY "Got: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
           END-IF.
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on next read"
                                UPON CONSOLE
           ELSE
               DISPLAY "Nxt: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
           END-IF.
           MOVE DATA-TELEPHONE     (7)       TO CM-TELEPHONE.
           MOVE DATA-MACHINE       (7)       TO CM-MACHINE.
           READ TSPFILE KEY IS CM-TELEPHONE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 23"
                                UPON CONSOLE
           ELSE
               DISPLAY "Ky2: " CM-CUST-NUM " is " CM-COMPANY
                        " Mach=" CM-MACHINE "."
                         UPON CONSOLE
           END-IF.
           WRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "22"
               DISPLAY "Error " CUST-STAT " instead of 22"
                                UPON CONSOLE
           ELSE
               DISPLAY "  Write: " CM-CUST-NUM " got 22 as expected"
                         UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (3)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (3)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           DISPLAY "   Read: " CM-CUST-NUM " got "
                         CUST-STAT " as expected "
                         CM-NO-TERMINALS " terminals"
                         UPON CONSOLE.
           ADD 5 TO CM-NO-TERMINALS
           REWRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "02"
           AND CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 02"
                                UPON CONSOLE
           ELSE
               DISPLAY "ReWrite: " CM-CUST-NUM " got "
                         "00/02 as expected "
                         CM-NO-TERMINALS " terminals"
                         UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (2)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (2)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           DISPLAY "   Read: " CM-CUST-NUM " got "
                         CUST-STAT " as expected "
                         CM-NO-TERMINALS " terminals"
                         UPON CONSOLE.
           MOVE DATA-CUST-NUM      (3)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (3)       TO CM-COMPANY.
           REWRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "02"
           AND CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 02"
                                UPON CONSOLE
           ELSE
               DISPLAY "ReWrite: " CM-CUST-NUM " got "
                       "00/02 as expected"
                         UPON CONSOLE
           END-IF.
           MOVE DATA-CUST-NUM      (6)       TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (6)       TO CM-COMPANY.
           READ TSPFILE KEY IS CM-CUST-NUM
           MOVE DATA-TELEPHONE     (7)       TO CM-TELEPHONE.
           MOVE DATA-MACHINE       (7)       TO CM-MACHINE.
           REWRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "02"
           AND CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " instead of 02"
                                UPON CONSOLE
           ELSE
               DISPLAY "ReWrite: " CM-CUST-NUM " got "
                        "00/02 as expected"
                         UPON CONSOLE
           END-IF.
           DELETE TSPFILE.
           CLOSE TSPFILE.

       LOADFLAT.
           OPEN OUTPUT FLATFILE.
           PERFORM FLAT-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB
                             OR SUB > 5.
           CLOSE FLATFILE.
           OPEN INPUT FLATFILE.
           MOVE 3 TO REC-NUM
           READ FLATFILE
           MOVE 999 TO REC-NUM
           READ FLATFILE
           CLOSE FLATFILE.

       FLAT-RECORD.

           MOVE SPACES                       TO TSP2-RECORD.
           MOVE SUB                          TO REC-NUM.
           MOVE DATA-CUST-NUM      (SUB)     TO C2-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO C2-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO C2-NO-TERMINALS.
           MOVE 20070319                     TO C2-PK-DATE.
           IF  ODD-RECORD
               MOVE "8417"                   TO C2-DISK
           ELSE
               MOVE "8470"                   TO C2-DISK.
           WRITE TSP2-RECORD.
_ATEOF


cat >cmod.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

static char *txtOpCode(int opCode);

/*********************************************************
 *  TSTFH - External File Handler entry point.
*********************************************************/

COB_EXT_EXPORT int
TSTFH (unsigned char *opCodep, FCD3 *fcd)
{
   unsigned int   opCode;

   if (*opCodep == 0xfa)
      opCode = 0xfa00 + opCodep[1];
   else
      opCode = opCodep[1];

   if (fcd->fileOrg == ORG_LINE_SEQ
    || fcd->fileOrg == ORG_SEQ
    || fcd->fileOrg == ORG_INDEXED
    || fcd->fileOrg == ORG_RELATIVE) {
      switch (opCode) {
      case OP_OPEN_OUTPUT:
      case OP_OPEN_IO:
      case OP_OPEN_EXTEND:
      case OP_OPEN_OUTPUT_NOREWIND:
         return EXTFH(opCodep, fcd);
         break;

      case OP_OPEN_INPUT:
      case OP_OPEN_INPUT_NOREWIND:
      case OP_OPEN_INPUT_REVERSED:
         return EXTFH(opCodep, fcd);
         break;

      default:
         break;
      }

   }

   if (opCode == OP_CLOSE
    && (fcd->openMode & OPEN_NOT_OPEN) ) {
      return 0;
   }

   return EXTFH(opCodep, fcd);
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:8028: \$COMPILE -fcallfh=TSTFH prog.cob cmod.c"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=TSTFH prog.cob cmod.c" "run_file.at:8028"
( $at_check_trace; $COMPILE -fcallfh=TSTFH prog.cob cmod.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8028"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:8030: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:8030"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK: Operations on empty file
Loading sample data file.
Sample data file load complete.
LIST SAMPLE FILE
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
LIST SAMPLE FILE DESCENDING
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=8470    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=8470    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=8417    .
Got: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Nxt: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=8470    .
Ky2: GIB00000 is GIBRALTER LIFE INSURANCE  Mach=UNI-80/6.
  Write: GIB00000 got 22 as expected
   Read: GAM00000 got 00 as expected 00075 terminals
ReWrite: GAM00000 got 00/02 as expected 00080 terminals
   Read: BET00000 got 00 as expected 00034 terminals
ReWrite: GAM00000 got 00/02 as expected
ReWrite: FOR00000 got 00/02 as expected
Expected ERROR 39 opening TSTFILE, Record size different
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8030"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_924
#AT_START_925
at_fn_group_banner 925 'run_file.at:8073' \
  "EXTFH: Indexed with FH--FCD" "                    " 4
at_xfail=no
(
  $as_echo "925. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:8076" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:8076"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.

       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

      $set fcdreg
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT TSPFILE
           ASSIGN TO "mytstisam"
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS PRIME-KEY
           SOURCE IS CM-CUST-NUM

           ALTERNATE RECORD KEY IS SPLIT-KEY2
           SOURCE IS CM-TELEPHONE,CM-MACHINE
      *         WITH DUPLICATES

           ALTERNATE RECORD KEY IS SPLIT-KEY3
           SOURCE IS CM-DISK,CM-TAPE
      *         WITH DUPLICATES
      *         SUPPRESS WHEN ALL "*"
           FILE STATUS IS CUST-STAT
           .

       DATA  DIVISION.
       FILE SECTION.
       FD  TSPFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           05  TSPFL-REC.
           10  CM-CUST-NUM.
             15  CM-CUST-PRE                   PICTURE X(3).
             15  CM-CUST-NNN                   PICTURE X(5).
           10  CM-STATUS                       PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-ADDRESS-1                    PICTURE X(25).
           10  CM-ADDRESS-2                    PICTURE X(25).
           10  CM-ADDRESS-3                    PICTURE X(25).
           10  CM-TELEPHONE                    PICTURE 9(10).
           10  CM-DP-MGR                       PICTURE X(25).
           10  CM-MACHINE                      PICTURE X(8).
           10  CM-MEMORY                       PICTURE X(4).
           10  CM-DISK                         PICTURE X(8).
           10  CM-TAPE                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).

       WORKING-STORAGE SECTION.
       01  CUST-STAT.
           05  STAT-1 PICTURE 9(4) COMP SYNC.
           05  FILLER REDEFINES STAT-1.
               10  STAT-X1 PIC X COMP-X.
               10  STAT-X2 PIC X COMP-X.
       77  BYTE-1  PICTURE 9(3).
       77  BYTE-2  PICTURE 9(3).
       78  MAX-SUB           VALUE  16.
       77  IDX                                 PICTURE 9.
       77  IDX2                                PICTURE 9.
       77  OUT-FILE-NAME                       PICTURE X(9)
           VALUE "myextisam".

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GIB00000".
           05  FILLER PIC X(8) VALUE "H&J00000".
           05  FILLER PIC X(8) VALUE "INC00000".
           05  FILLER PIC X(8) VALUE "JOH00000".
           05  FILLER PIC X(8) VALUE "KON00000".
           05  FILLER PIC X(8) VALUE "LEW00000".
           05  FILLER PIC X(8) VALUE "MOR00000".
           05  FILLER PIC X(8) VALUE "NEW00000".
           05  FILLER PIC X(8) VALUE "OLD00000".
           05  FILLER PIC X(8) VALUE "PRE00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GIBRALTER LIFE INSURANCE ".
           05  FILLER PIC X(25) VALUE "H & J PLUMBING SUPPLIES  ".
           05  FILLER PIC X(25) VALUE "INCREMENTAL BACKUP CORP. ".
           05  FILLER PIC X(25) VALUE "JOHNSON BOATING SUPPLIES ".
           05  FILLER PIC X(25) VALUE "KONFLAB PLASTIC PRODUCTS.".
           05  FILLER PIC X(25) VALUE "LEWISTON GRAPHICS LTD.   ".
           05  FILLER PIC X(25) VALUE "MORNINGSIDE CARPENTRY.   ".
           05  FILLER PIC X(25) VALUE "NEW WAVE SURF SHOPS INC. ".
           05  FILLER PIC X(25) VALUE "OLD TYME PIZZA MFG. CO.  ".
           05  FILLER PIC X(25) VALUE "PRESTIGE OFFICE FURNITURE".

         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-1-TBL.

           05  FILLER PIC X(25) VALUE "123 MAIN STREET          ".
           05  FILLER PIC X(25) VALUE "1090 2ND AVE. WEST       ".
           05  FILLER PIC X(25) VALUE "1401 JEFFERSON BLVD.     ".
           05  FILLER PIC X(25) VALUE "1620 ARIZONA WAY         ".
           05  FILLER PIC X(25) VALUE "1184 EAST FIRST STREET   ".
           05  FILLER PIC X(25) VALUE "114 JOHN F. KENNEDY AVE. ".
           05  FILLER PIC X(25) VALUE "650 LIBERTY CRESCENT     ".
           05  FILLER PIC X(25) VALUE "77 SUNSET BLVD.          ".
           05  FILLER PIC X(25) VALUE "10908 SANTA MONICA BLVD. ".
           05  FILLER PIC X(25) VALUE "1134 PARIS ROAD          ".
           05  FILLER PIC X(25) VALUE "808 NORTHWEST MAIN ST.   ".
           05  FILLER PIC X(25) VALUE "9904 QUEEN STREET        ".
           05  FILLER PIC X(25) VALUE "1709 DUNDAS CRESCENT W.  ".
           05  FILLER PIC X(25) VALUE "3240 MARIS AVENUE        ".
           05  FILLER PIC X(25) VALUE "1705 WISCONSIN ROAD      ".
           05  FILLER PIC X(25) VALUE "114A MAPLE GROVE         ".

         02  DATA-ADDRESS-1 REDEFINES DATA-ADDRESS-1-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "SAN DIEGO ".
           05  FILLER PIC X(10) VALUE "LOS RIOS  ".
           05  FILLER PIC X(10) VALUE "MADISON   ".
           05  FILLER PIC X(10) VALUE "WILBUR    ".
           05  FILLER PIC X(10) VALUE "TOPEKA    ".
           05  FILLER PIC X(10) VALUE "SEATTLE   ".
           05  FILLER PIC X(10) VALUE "NEW JERSEY".
           05  FILLER PIC X(10) VALUE "FORT WAYNE".
           05  FILLER PIC X(10) VALUE "COLUMBUS  ".
           05  FILLER PIC X(10) VALUE "RICHMOND  ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS-2 REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-ADDRESS-3-TBL.

           05  FILLER PIC X(10) VALUE "N.Y.      ".
           05  FILLER PIC X(10) VALUE "GEORGIA   ".
           05  FILLER PIC X(10) VALUE "D.C.      ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CALIFORNIA".
           05  FILLER PIC X(10) VALUE "NEW MEXICO".
           05  FILLER PIC X(10) VALUE "WISCONSIN ".
           05  FILLER PIC X(10) VALUE "DELAWARE  ".
           05  FILLER PIC X(10) VALUE "KANSAS    ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "N.J.      ".
           05  FILLER PIC X(10) VALUE "COLORADO  ".
           05  FILLER PIC X(10) VALUE "OHIO      ".
           05  FILLER PIC X(10) VALUE "VIRGINIA  ".
           05  FILLER PIC X(10) VALUE "N.Y.      ".

         02  DATA-ADDRESS-3 REDEFINES DATA-ADDRESS-3-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-TELEPHONE-TBL.

           05  FILLER PIC 9(10) VALUE 3131234432.
           05  FILLER PIC 9(10) VALUE 4082938498.
           05  FILLER PIC 9(10) VALUE 8372487274.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 5292398745.
           05  FILLER PIC 9(10) VALUE 8009329492.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 6546456333.
           05  FILLER PIC 9(10) VALUE 3455445444.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 7456434355.
           05  FILLER PIC 9(10) VALUE 6554456433.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 7534587453.
           05  FILLER PIC 9(10) VALUE 8787458374.
           05  FILLER PIC 9(10) VALUE 4169898509.

         02  DATA-TELEPHONE REDEFINES DATA-TELEPHONE-TBL
                                       PIC 9(10) OCCURS MAX-SUB.
         02  DATA-DP-MGR-TBL.

           05  FILLER PIC X(20) VALUE "MR. DAVE HARRIS     ".
           05  FILLER PIC X(20) VALUE "MS. JANICE SILCOX   ".
           05  FILLER PIC X(20) VALUE "MR. ALLAN JONES     ".
           05  FILLER PIC X(20) VALUE "MR. PETER MACKAY    ".
           05  FILLER PIC X(20) VALUE "MRS. DONNA BREWER   ".
           05  FILLER PIC X(20) VALUE "MR. MICHAEL SMYTHE  ".
           05  FILLER PIC X(20) VALUE "MR. D.A. MORRISON   ".
           05  FILLER PIC X(20) VALUE "MR. BRIAN PATTERSON ".
           05  FILLER PIC X(20) VALUE "MR. DARRYL TOWNSEND ".
           05  FILLER PIC X(20) VALUE "MS. VALERIE HARPER  ".
           05  FILLER PIC X(20) VALUE "MR. FRED MILLER     ".
           05  FILLER PIC X(20) VALUE "MR. DONALD FISCHER  ".
           05  FILLER PIC X(20) VALUE "MR. STEVEN YOURDIN  ".
           05  FILLER PIC X(20) VALUE "MS. Goldie Hawn     ".
           05  FILLER PIC X(20) VALUE "MS. ALICE WINSTON   ".
           05  FILLER PIC X(20) VALUE "MR. THOMAS JEFFERSON".

         02  DATA-DP-MGR    REDEFINES DATA-DP-MGR-TBL
                                       PIC X(20) OCCURS MAX-SUB.
         02  DATA-MACHINE-TBL.

           05  FILLER PIC X(8) VALUE "UNI-9030".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-80/3".
           05  FILLER PIC X(8) VALUE "UNI-80/5".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-9040".

         02  DATA-MACHINE   REDEFINES DATA-MACHINE-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 85.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 45.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 107.
           05  FILLER PIC 9(3) COMP-3 VALUE 67.
           05  FILLER PIC 9(3) COMP-3 VALUE 32.
           05  FILLER PIC 9(3) COMP-3 VALUE 16.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 128.
           05  FILLER PIC 9(3) COMP-3 VALUE 64.
           05  FILLER PIC 9(3) COMP-3 VALUE 110.
           05  FILLER PIC 9(3) COMP-3 VALUE 324.
           05  FILLER PIC 9(3) COMP-3 VALUE 124.
           05  FILLER PIC 9(3) COMP-3 VALUE 86.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.

       01  WORK-AREA.
           05  REC-NUM                         PICTURE 9(2) VALUE 0.
           05  SUB                             BINARY-SHORT UNSIGNED.
               88  ODD-RECORD                  VALUE 1 3 5 7 9 10 11.
               88  NULL-KEY                    VALUE 4 5 8 12 14.

           05  TSPFL-KEY                       PICTURE X(8).
           05  KC-PTR                          USAGE POINTER.

       LINKAGE SECTION.

       01  TSP-FCD.
           COPY "xfhfcd.cpy".

       01 key-def.
           03 kdb-len             pic 9(4) comp-x.
           03 filler              pic x(4).
           03 key-nkeys           pic 9(4) comp-x.
           03 filler              pic x(6).
           03 key-defs occurs 1 to 8 times depending on key-nkeys.
              05 key-count       pic 9(3) comp-x.
              05 key-offset      pic 9(3) comp-x.
              05 key-flags       pic X  comp-x.
              05 key-compression pic X  comp-x.
              05 key-sparse      pic x.
              05 filler          pic x(9).

       01 key-comp.
           03 kc-desc            pic X comp-x.
           03 kc-type            pic X comp-x.
           03 kc-pos             pic 9(9) comp-x.
           03 kc-len             pic 9(9) comp-x.

       01 TSP-FILENAME   PIC X(256).
       PROCEDURE DIVISION.

       MAINFILE.
           SET ADDRESS OF TSP-FCD TO ADDRESS OF FH--FCD OF TSPFILE.
           SET ADDRESS OF KEY-DEF TO ADDRESS OF FH--KEYDEF OF TSPFILE.
           DISPLAY "Other Flags " FCD-OTHER-FLAGS "."
           DISPLAY "File has " key-nkeys " keys."
           DISPLAY "Key def  " kdb-len " bytes."
           SET ADDRESS OF TSP-FILENAME TO FCD-FILENAME-ADDRESS.
           DISPLAY "File assigned is '"
                   TSP-FILENAME (1:FCD-NAME-LENGTH) "'".
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF OUT-FILE-NAME.
           MOVE LENGTH OF OUT-FILE-NAME TO FCD-NAME-LENGTH.
           DISPLAY "*** Dump FCD before changes"
           PERFORM DUMP-FCD.
           MOVE 64 TO KEY-FLAGS (2)
           MOVE 66 TO KEY-FLAGS (3)
           MOVE '*' TO KEY-SPARSE (3)
           DISPLAY "*** Dump FCD after changes"
           PERFORM DUMP-FCD.
           PERFORM LOADFILE.
           PERFORM LISTFILE.
           STOP RUN.

       DUMP-FCD.
           PERFORM VARYING IDX FROM 1 BY 1
                     UNTIL IDX > key-nkeys
             IF key-sparse (idx) < ' '
               MOVE ' ' TO key-sparse (idx)
             END-IF
             DISPLAY "Key" IDX " has " key-count (idx) " parts,"
                     " Offset " key-offset (idx)
                     " Flags " key-flags (idx)
                     " Comp " key-compression (idx)
                     " Sparse " key-sparse (idx) "."
             SET KC-PTR TO ADDRESS OF KEY-DEF
             SET KC-PTR UP BY key-offset (idx)
             PERFORM VARYING IDX2 FROM 1 BY 1
                     UNTIL IDX2 > key-count (idx)
               SET ADDRESS OF KEY-COMP TO KC-PTR
               DISPLAY "      Pos " kc-pos " Len " kc-len
               SET KC-PTR UP BY LENGTH OF KEY-COMP
             END-PERFORM
           END-PERFORM.

       LOADFILE.
           OPEN OUTPUT TSPFILE
           SET ADDRESS OF TSP-FILENAME TO FCD-FILENAME-ADDRESS.
           DISPLAY "Loading sample file '"
                   TSP-FILENAME (1:FCD-NAME-LENGTH) "'"
                            UPON CONSOLE.

           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "05"
               DISPLAY "Error " CUST-STAT " opening '"
                       TSP-FILENAME (1:FCD-NAME-LENGTH) "' file"
                                UPON CONSOLE
               STOP RUN
           END-IF.

           PERFORM 1000-LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample data file load complete."
                            UPON CONSOLE.
           CLOSE TSPFILE.

      *---------------------------------------------------------------*
      *         LOAD A RECORD FROM DATA TABLES                        *
      *---------------------------------------------------------------*

       1000-LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE CM-CUST-NUM                  TO TSPFL-KEY.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-ADDRESS-1     (SUB)     TO CM-ADDRESS-1.
           MOVE DATA-ADDRESS-2     (SUB)     TO CM-ADDRESS-2.
           MOVE DATA-ADDRESS-3     (SUB)     TO CM-ADDRESS-3.
           MOVE DATA-TELEPHONE     (SUB)     TO CM-TELEPHONE.
           MOVE DATA-DP-MGR        (SUB)     TO CM-DP-MGR.
           MOVE DATA-MACHINE       (SUB)     TO CM-MACHINE.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
               MOVE "1600 BPI"               TO CM-TAPE
               MOVE "1MEG"                   TO CM-MEMORY
           ELSE
               MOVE "8470"                   TO CM-DISK
               MOVE "6250 BPI"               TO CM-TAPE
               MOVE "3MEG"                   TO CM-MEMORY.
           IF  NULL-KEY
               MOVE ALL "*"                  TO CM-DISK
               MOVE ALL "*"                  TO CM-TAPE.
           IF  SUB = 1 OR 6
               MOVE "2417"                   TO CM-DISK
               MOVE "549  mmm"               TO CM-TAPE.

           WRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "WRITE: " TSPFL-KEY ", Status: "
                       CUST-STAT UPON CONSOLE
           END-IF.

       LISTFILE.
           MOVE ZERO TO REC-NUM
           OPEN INPUT TSPFILE
           SET ADDRESS OF TSP-FILENAME TO FCD-FILENAME-ADDRESS.
           DISPLAY "List sample file '"
                   TSP-FILENAME (1:FCD-NAME-LENGTH) "'"
                            UPON CONSOLE.
           IF  CUST-STAT NOT = "00"
               DISPLAY "ERROR " CUST-STAT " OPENING INPUT FILE"
                                             UPON CONSOLE
               IF CUST-STAT (1:1) = "9"
                   DISPLAY "Sub Error " STAT-X2 UPON CONSOLE
               END-IF
               STOP RUN
           END-IF.
           MOVE SPACES                       TO TSPFL-RECORD.
           START TSPFILE KEY GREATER THAN PRIME-KEY
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               IF CUST-STAT (1:1) = "9"
                   DISPLAY "Sub Error " STAT-X2 UPON CONSOLE
               END-IF
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               IF CUST-STAT (1:1) = "9"
                   DISPLAY "Sub Error " STAT-X2 UPON CONSOLE
               END-IF
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > MAX-SUB
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File after " REC-NUM UPON CONSOLE
           END-IF.

           DISPLAY "LIST SAMPLE FILE DESCENDING" UPON CONSOLE.
           MOVE ZERO TO REC-NUM
           MOVE ALL 'Z'                      TO TSPFL-RECORD.
           START TSPFILE KEY LESS THAN PRIME-KEY
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE PREVIOUS RECORD WITH NO LOCK
           IF CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > MAX-SUB
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               READ TSPFILE PREVIOUS RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM.
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File after " REC-NUM UPON CONSOLE
           END-IF.

           DISPLAY "LIST SAMPLE FILE BY KEY3" UPON CONSOLE.
           MOVE ZERO                         TO REC-NUM
           MOVE SPACES                       TO TSPFL-RECORD.
           START TSPFILE KEY GREATER THAN OR EQUAL TO SPLIT-KEY3
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " starting file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           READ  TSPFILE NEXT RECORD WITH NO LOCK
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " on 1st read of file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           PERFORM UNTIL (CUST-STAT NOT = "00"
                      AND CUST-STAT NOT = "02")
                      OR REC-NUM > MAX-SUB
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK "."
                         UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
                END-READ
                ADD 1 TO REC-NUM
           END-PERFORM.
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File after " REC-NUM UPON CONSOLE
           END-IF.
           CLOSE TSPFILE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:8591: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:8591"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8591"
$at_failed && at_fn_log_failure
$at_traceon; }




{ set +x
$as_echo "$at_srcdir/run_file.at:8595: \$COBCRUN_DIRECT ./prog 1>prog.out"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog 1>prog.out" "run_file.at:8595"
( $at_check_trace; $COBCRUN_DIRECT ./prog 1>prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8595"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


cat >reference <<'_ATEOF'
Other Flags 32.
File has 0003 keys.
Key def  0112 bytes.
File assigned is 'mytstisam'
*** Dump FCD before changes
Key1 has 001 parts, Offset 062 Flags 00 Comp 00 Sparse  .
      Pos 000000000 Len 000000008
Key2 has 002 parts, Offset 072 Flags 00 Comp 00 Sparse  .
      Pos 000000109 Len 000000010
      Pos 000000144 Len 000000008
Key3 has 002 parts, Offset 092 Flags 00 Comp 00 Sparse  .
      Pos 000000156 Len 000000008
      Pos 000000164 Len 000000008
*** Dump FCD after changes
Key1 has 001 parts, Offset 062 Flags 00 Comp 00 Sparse  .
      Pos 000000000 Len 000000008
Key2 has 002 parts, Offset 072 Flags 64 Comp 00 Sparse  .
      Pos 000000109 Len 000000010
      Pos 000000144 Len 000000008
Key3 has 002 parts, Offset 092 Flags 66 Comp 00 Sparse *.
      Pos 000000156 Len 000000008
      Pos 000000164 Len 000000008
Loading sample file 'myextisam'
Sample data file load complete.
List sample file 'myextisam'
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=2417    .
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Key: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=********.
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=********.
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=2417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=********.
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=********.
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=********.
Key: OLD00000 is OLD TYME PIZZA MFG. CO.   Disk=8470    .
Key: PRE00000 is PRESTIGE OFFICE FURNITURE Disk=8470    .
Hit End of File after 16
LIST SAMPLE FILE DESCENDING
Key: PRE00000 is PRESTIGE OFFICE FURNITURE Disk=8470    .
Key: OLD00000 is OLD TYME PIZZA MFG. CO.   Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=********.
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=********.
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=********.
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=2417    .
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=********.
Key: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=********.
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=2417    .
Hit End of File after 16
LIST SAMPLE FILE BY KEY3
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=2417    .
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=2417    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: OLD00000 is OLD TYME PIZZA MFG. CO.   Disk=8470    .
Key: PRE00000 is PRESTIGE OFFICE FURNITURE Disk=8470    .
Hit End of File after 11
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:8672: diff reference prog.out"
at_fn_check_prepare_trace "run_file.at:8672"
( $at_check_trace; diff reference prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8672"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


# verify that all of this works with wrapping to EXTFH calls
# and that those don't trash the FH--FCD allocated memory

{ set +x
$as_echo "$at_srcdir/run_file.at:8677: \$COMPILE -fcallfh=EXTFH -o extfh prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=EXTFH -o extfh prog.cob" "run_file.at:8677"
( $at_check_trace; $COMPILE -fcallfh=EXTFH -o extfh prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8677"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:8678: \$COBCRUN_DIRECT ./extfh 1>prog.out"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./extfh 1>prog.out" "run_file.at:8678"
( $at_check_trace; $COBCRUN_DIRECT ./extfh 1>prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8678"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:8680: diff reference prog.out"
at_fn_check_prepare_trace "run_file.at:8680"
( $at_check_trace; diff reference prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:8680"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_925
#AT_START_926
at_fn_group_banner 926 'run_file.at:8686' \
  "EXTFH: SEQUENTIAL files" "                        " 4
at_xfail=no
(
  $as_echo "926. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE ASSIGN EXTERNAL SEQFIX
           ORGANIZATION SEQUENTIAL
           FILE STATUS IS CUST-STAT .

       DATA DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(4) COMP-4.
           10  CM-PK-DATE                      PICTURE S9(14) COMP-3.
           10  CM-TRAILER                      PICTURE X(8).

       WORKING-STORAGE SECTION.

       78  MAX-SUB           VALUE  6.
       77  CUST-STAT                           PICTURE X(2).

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS   REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.

         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 13.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 254.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.
       01  WORK-AREA.
           05  SUB                             BINARY-SHORT UNSIGNED.
               88  ODD-RECORD                  VALUE 1 3 5.


       PROCEDURE DIVISION.

           OPEN INPUT FLATFILE.
           DISPLAY "Open Input when no file Sts:" CUST-STAT
           OPEN EXTEND FLATFILE.
           DISPLAY "Open Extend when no file Sts:" CUST-STAT
           CLOSE FLATFILE.
           DISPLAY "Close when no open file Sts:" CUST-STAT
           OPEN OUTPUT FLATFILE.
           CLOSE FLATFILE.
           OPEN EXTEND FLATFILE.
           DISPLAY "Open Extend when empty file Sts:" CUST-STAT
           CLOSE FLATFILE.

           PERFORM LOADFILE.
           OPEN INPUT FLATFILE.
           DISPLAY "Open Sts:" CUST-STAT
           READ FLATFILE
           DISPLAY "Read " CM-CUST-NUM " Sts:" CUST-STAT.
           READ FLATFILE
           DISPLAY "Read " CM-CUST-NUM " Sts:" CUST-STAT.
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           READ FLATFILE
           DISPLAY "Read " CM-CUST-NUM " Sts:" CUST-STAT.
           ADD 1 TO CM-NO-TERMINALS
           REWRITE TSPFL-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" CM-NO-TERMINALS.
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           READ FLATFILE
           DISPLAY "Read " CM-CUST-NUM " Sts:" CUST-STAT.
           ADD 1 TO CM-NO-TERMINALS
           REWRITE TSPFL-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" CM-NO-TERMINALS.
           READ FLATFILE WITH LOCK
           DISPLAY "Read " CM-CUST-NUM
      *    DELETE FLATFILE
      *    DISPLAY "DELETE " CM-CUST-NUM " Sts " CUST-STAT.
           CLOSE FLATFILE.
           OPEN INPUT FLATFILE.
           DISPLAY "Re-list File Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.
           OPEN EXTEND FLATFILE.
           MOVE 2 TO SUB
           PERFORM LOAD-RECORD
           CLOSE FLATFILE.
           OPEN INPUT FLATFILE.
           DISPLAY "List File afer EXTEND Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.
           STOP RUN RETURNING 0.

       READ-RECORD.
           MOVE SPACES                       TO TSPFL-RECORD.
           READ FLATFILE
           IF CUST-STAT NOT = "00"
             DISPLAY "Read Status: " CUST-STAT
           ELSE
             DISPLAY "Read  " CM-CUST-NUM
                     " Trms:" CM-NO-TERMINALS
           END-IF.

       LOADFILE.
           DISPLAY "Loading sample data file.".

           OPEN OUTPUT FLATFILE.

           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample data file load complete.".
           CLOSE FLATFILE.

       LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.
           MOVE 20070319                     TO CM-PK-DATE.
           IF SUB = 1 OR 4 OR 6
               MOVE -20070319                 TO CM-PK-DATE.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
           ELSE
               MOVE "8470"                   TO CM-DISK.
           WRITE TSPFL-RECORD.
_ATEOF


cat >cmod.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

static char *txtOpCode(int opCode);

static int
doOpenFile(
   unsigned char  *opCodep,
   FCD3  *fcd,
   char  *opmsg)
{
   int      sts;

   sts = EXTFH( opCodep, fcd );
   printf("EXFTH did %s; Status=%c%c; File now %s\n",
       opmsg, fcd->fileStatus[0], fcd->fileStatus[1],
       (fcd->openMode & OPEN_NOT_OPEN) ? "Closed" : "Open");
   return sts;
}

/*********************************************************
 *  TSTFH - External File Handler entry point.
*********************************************************/

COB_EXT_EXPORT int
TSTFH (unsigned char *opCodep, FCD3 *fcd)
{
   unsigned int   opCode;
   int      sts;

   if (*opCodep == 0xfa)
      opCode = 0xfa00 + opCodep[1];
   else
      opCode = opCodep[1];

   if (fcd->fileOrg == ORG_LINE_SEQ
    || fcd->fileOrg == ORG_SEQ
    || fcd->fileOrg == ORG_INDEXED
    || fcd->fileOrg == ORG_RELATIVE) {
      switch (opCode) {
      case OP_OPEN_OUTPUT:
      case OP_OPEN_IO:
      case OP_OPEN_EXTEND:
      case OP_OPEN_OUTPUT_NOREWIND:
         return doOpenFile( opCodep, fcd, txtOpCode(opCode));
         break;

      case OP_OPEN_INPUT:
      case OP_OPEN_INPUT_NOREWIND:
      case OP_OPEN_INPUT_REVERSED:
         return doOpenFile( opCodep, fcd, txtOpCode(opCode));
         break;

      case OP_CLOSE:
         return doOpenFile( opCodep, fcd, txtOpCode(opCode));
         break;

      default:
         break;
      }

   }

   if (opCode == OP_CLOSE
    && (fcd->openMode & OPEN_NOT_OPEN) ) {
      return 0;
   }

   sts = EXTFH(opCodep, fcd);
   printf("EXFTH did %s; Status=%c%c\n", txtOpCode(opCode),
       fcd->fileStatus[0], fcd->fileStatus[1]);
   return sts;
}

static char *           /* Return Text name of function */
txtOpCode(int opCode)
{
   static char tmp[32];
   switch (opCode) {
   case OP_OPEN_INPUT:     return "OPEN_IN";
   case OP_OPEN_OUTPUT:       return "OPEN_OUT";
   case OP_OPEN_IO:     return "OPEN_IO";
   case OP_OPEN_EXTEND:       return "OPEN_EXT";
   case OP_OPEN_INPUT_NOREWIND:  return "OPEN_IN_NOREW";
   case OP_OPEN_OUTPUT_NOREWIND: return "OPEN_OUT_NOREW";
   case OP_OPEN_INPUT_REVERSED:  return "OPEN_IN_REV";
   case OP_CLOSE:          return "CLOSE";
   case OP_CLOSE_LOCK:     return "CLOSE_LOCK";
   case OP_CLOSE_NOREWIND:    return "CLOSE_NORED";
   case OP_CLOSE_REEL:     return "CLOSE_REEL";
   case OP_CLOSE_REMOVE:      return "CLOSE_REMOVE";
   case OP_CLOSE_NO_REWIND:   return "CLOSE_NO_REW";
   case OP_START_EQ:       return "START_EQ";
   case OP_START_EQ_ANY:      return "START_EQ_ANY";
   case OP_START_GT:       return "START_GT";
   case OP_START_GE:       return "START_GE";
   case OP_START_LT:       return "START_LT";
   case OP_START_LE:       return "START_LE";
   case OP_READ_SEQ_NO_LOCK:  return "READ_SEQ_NO_LK";
   case OP_READ_SEQ:       return "READ_SEQ";
   case OP_READ_SEQ_LOCK:     return "READ_SEQ_LK";
   case OP_READ_SEQ_KEPT_LOCK:   return "READ_SEQ_KEPT_LK";
   case OP_READ_PREV_NO_LOCK:    return "READ_PREV_NO_LK";
   case OP_READ_PREV:      return "READ_PREV";
   case OP_READ_PREV_LOCK:    return "READ_PREV_LK";
   case OP_READ_PREV_KEPT_LOCK:  return "READ_PREV_KEPT_LK";
   case OP_READ_RAN:       return "READ_RAN";
   case OP_READ_RAN_NO_LOCK:  return "READ_RAN_NO_LK";
   case OP_READ_RAN_KEPT_LOCK:   return "READ_RAN_KEPT_LK";
   case OP_READ_RAN_LOCK:     return "READ_RAN_LK";
   case OP_READ_DIR:       return "READ_DIR";
   case OP_READ_DIR_NO_LOCK:  return "READ_DIR_NO_LK";
   case OP_READ_DIR_KEPT_LOCK:   return "READ_DIR_KEPT_LK";
   case OP_READ_DIR_LOCK:     return "READ_DIR_LK";
   case OP_READ_POSITION:     return "READ_POSITION";
   case OP_WRITE:          return "WRITE";
   case OP_REWRITE:     return "REWRITE";
   case OP_DELETE:      return "DELETE";
   case OP_DELETE_FILE:       return "DELETE_FILE";
   case OP_UNLOCK:      return "UNLOCK";
   case OP_ROLLBACK:       return "ROLLBACK";
   case OP_COMMIT:      return "COMMIT";
   case OP_WRITE_BEFORE:      return "WRITE_BEFORE";
   case OP_WRITE_BEFORE_TAB:  return "WRITE_BEFORE_TAB";
   case OP_WRITE_BEFORE_PAGE:    return "WRITE_BEFORE_PAGE";
   case OP_WRITE_AFTER:       return "WRITE_AFTER";
   case OP_WRITE_AFTER_TAB:   return "WRITE_AFTER_TAB";
   case OP_WRITE_AFTER_PAGE:  return "WRITE_AFTER_PAGE";
   }
   sprintf(tmp, "Func 0x%02X:", opCode);
   return tmp;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:9007: \$COMPILE -fcallfh=TSTFH prog.cob cmod.c"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=TSTFH prog.cob cmod.c" "run_file.at:9007"
( $at_check_trace; $COMPILE -fcallfh=TSTFH prog.cob cmod.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9007"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:9009: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:9009"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "EXFTH did OPEN_IN; Status=35; File now Closed
Open Input when no file Sts:35
EXFTH did OPEN_EXT; Status=35; File now Closed
Open Extend when no file Sts:35
EXFTH did CLOSE; Status=42; File now Closed
Close when no open file Sts:42
EXFTH did OPEN_OUT; Status=00; File now Open
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_EXT; Status=00; File now Open
Open Extend when empty file Sts:00
EXFTH did CLOSE; Status=00; File now Closed
Loading sample data file.
EXFTH did OPEN_OUT; Status=00; File now Open
EXFTH did WRITE; Status=00
EXFTH did WRITE; Status=00
EXFTH did WRITE; Status=00
EXFTH did WRITE; Status=00
EXFTH did WRITE; Status=00
EXFTH did WRITE; Status=00
Sample data file load complete.
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_IN; Status=00; File now Open
Open Sts:00
EXFTH did READ_SEQ; Status=00
Read ALP00000 Sts:00
EXFTH did READ_SEQ; Status=00
Read BET00000 Sts:00
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_IO; Status=00; File now Open
EXFTH did READ_SEQ; Status=00
Read ALP00000 Sts:00
EXFTH did REWRITE; Status=00
REWRITE ALP00000 Sts 00 Trms:0011
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_IO; Status=00; File now Open
EXFTH did READ_SEQ; Status=00
Read ALP00000 Sts:00
EXFTH did REWRITE; Status=00
REWRITE ALP00000 Sts 00 Trms:0012
EXFTH did READ_SEQ; Status=00
Read BET00000
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_IN; Status=00; File now Open
Re-list File Open Sts:00
EXFTH did READ_SEQ; Status=00
Read  ALP00000 Trms:0012
EXFTH did READ_SEQ; Status=00
Read  BET00000 Trms:0013
EXFTH did READ_SEQ; Status=00
Read  GAM00000 Trms:0075
EXFTH did READ_SEQ; Status=00
Read  DEL00000 Trms:0010
EXFTH did READ_SEQ; Status=00
Read  EPS00000 Trms:0090
EXFTH did READ_SEQ; Status=00
Read  FOR00000 Trms:0254
EXFTH did READ_SEQ; Status=10
Read Status: 10
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_EXT; Status=00; File now Open
EXFTH did WRITE; Status=00
EXFTH did CLOSE; Status=00; File now Closed
EXFTH did OPEN_IN; Status=00; File now Open
List File afer EXTEND Open Sts:00
EXFTH did READ_SEQ; Status=00
Read  ALP00000 Trms:0012
EXFTH did READ_SEQ; Status=00
Read  BET00000 Trms:0013
EXFTH did READ_SEQ; Status=00
Read  GAM00000 Trms:0075
EXFTH did READ_SEQ; Status=00
Read  DEL00000 Trms:0010
EXFTH did READ_SEQ; Status=00
Read  EPS00000 Trms:0090
EXFTH did READ_SEQ; Status=00
Read  FOR00000 Trms:0254
EXFTH did READ_SEQ; Status=00
Read  BET00000 Trms:0013
EXFTH did READ_SEQ; Status=10
Read Status: 10
EXFTH did CLOSE; Status=00; File now Closed
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9009"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_926
#AT_START_927
at_fn_group_banner 927 'run_file.at:9096' \
  "EXTFH: LINE SEQUENTIAL files, direct EXTFH" "     " 4
at_xfail=no
(
  $as_echo "927. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       DATA DIVISION.
       FILE SECTION.
       WORKING-STORAGE SECTION.

       01  I                       PIC XX COMP-X.

       01  WS-FCD-DDNAME           PIC X(8) VALUE SPACES.
       01  WS-FCD-PTR              POINTER   VALUE NULL.

       01  WS-FCD-SIZE             PIC 9(04) VALUE   0       COMP-5.
       01  WS-FCD-FLAGS            PIC 9(04) VALUE   0       COMP-5.

       01  DISPLAY-BYTE.
          05  DISPLAY-XXX             PIC X(03).
          05  DISPLAY-ZZ9             REDEFINES DISPLAY-XXX
                                      PIC ZZ9.
       01  ACTION-CODE                 pic x(2).
          78  OP-OPEN-INPUT           value x"fa00".
          78  OP-OPEN-OUTPUT          value x"fa01".
          78  OP-OPEN-I-O             value x"fa02".
          78  OP-WRITE                value x"faf3".
          78  OP-RELEASE              value x"faf3".
          78  OP-REWRITE              value x"faf4".
          78  OP-READ-NEXT            value x"faf5".
          78  OP-START-EQUAL          value x"fae9".
          78  OP-CLOSE                value x"fa80".
          78  OP-QUERY-FILE           value x"0006".

       01  DISPLAY-A1-XXX              PIC X(03).
       01  DISPLAY-A1-ZZ9              REDEFINES DISPLAY-A1-XXX
                                      PIC ZZ9.
       01  DISPLAY-A2-XXX              PIC X(03).
       01  DISPLAY-A2-ZZ9              REDEFINES DISPLAY-A2-XXX
                                       PIC ZZ9.

       01  FCD-FILENAME               PIC X(80) value "test.out".
       01  FCD-RECORD                 PIC X(512) value spaces.

       LINKAGE SECTION.

       01  FCD-MAP.
           copy 'xfhfcd3.cpy'.

      *================================================================*
       PROCEDURE DIVISION.
      *----------------------------------------------------------------*
       000-MAIN.

          PERFORM 100-OPEN.

          PERFORM VARYING I FROM 1 BY 1 UNTIL I > 10
            MOVE I TO DISPLAY-A1-ZZ9
            MOVE DISPLAY-A1-ZZ9 TO FCD-RECORD
            PERFORM 300-WRITE
          END-PERFORM.

          PERFORM 400-CLOSE.
          STOP RUN.

      *----------------------------------------------------------------*
      *    Process the open request
      *
       100-OPEN.

          MOVE "TESTOUT" TO WS-FCD-DDNAME

          MOVE LENGTH OF FCD-MAP TO WS-FCD-SIZE
          DISPLAY "FCD SIZE " WS-FCD-SIZE.

          IF WS-FCD-PTR EQUAL NULL
             ALLOCATE ws-fcd-size characters
                           returning WS-FCD-PTR

             SET  ADDRESS OF FCD-MAP  TO WS-FCD-PTR
             MOVE LOW-VALUES          TO FCD-MAP
             MOVE WS-FCD-SIZE         TO FCD-LENGTH
             move fcd--version-number TO FCD-VERSION
             MOVE "00"                TO FCD-FILE-STATUS
             move fcd--status-defined to FCD-ACCESS-MODE
             move fcd--open-closed    to FCD-OPEN-MODE
             move fcd--external-name  to FCD-OTHER-FLAGS
             SET  FCD-HANDLE          TO NULL
             MOVE 8                   TO FCD-NAME-LENGTH
             SET  FCD-FILENAME-ADDRESS TO ADDRESS
                                       OF WS-FCD-DDNAME
             SET  FCD-KEY-DEF-ADDRESS TO NULL
             move fcd--allow-readers  to FCD-LOCKTYPES
          ELSE
             SET  ADDRESS OF FCD-MAP  TO WS-FCD-PTR
             IF FCD-OPEN-MODE NOT = fcd--open-closed
                DISPLAY "ERRROR - FILE ALREADY OPEN"
                STOP RUN
             END-IF
          END-IF

          move fcd--line-sequential-org to FCD-ORGANIZATION
          move fcd--recmode-fixed       to FCD-RECORDING-MODE
          move 10 to FCD-MIN-REC-LENGTH, FCD-MAX-REC-LENGTH
          SET  FCD-RECORD-ADDRESS     TO ADDRESS OF FCD-RECORD

      * Move fcd--cr-delimiter for CR LF after each record
      *   move fcd--cr-delimiter        to FCD-STATUS-TYPE

          move op-open-output to action-code

          PERFORM 800-CALL-EXTFH
          .

      *----------------------------------------------------------------*
      *    Process the write request
      *
       300-WRITE.

          move 10 to FCD-CURRENT-REC-LEN
          move op-write to action-code
          PERFORM 800-CALL-EXTFH
          .
      *----------------------------------------------------------------*
      *    Process the close request
      *
       400-CLOSE.
          MOVE "00"                   TO FCD-FILE-STATUS
          move op-close               to action-code
          PERFORM 800-CALL-EXTFH
          .
      *----------------------------------------------------------------*
      *    External file handler interface -- all I/O goes through here
      *
        800-CALL-EXTFH.

            CALL "EXTFH" USING ACTION-CODE, FCD-MAP

            IF FCD-STATUS-KEY-1 = "9" AND FCD-BINARY = 199
               MOVE "10" TO FCD-FILE-STATUS
            END-IF
            .
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:9245: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:9245"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9245"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:9247: TESTOUT=TEST-OUT \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "TESTOUT=TEST-OUT $COBCRUN_DIRECT ./prog" "run_file.at:9247"
( $at_check_trace; TESTOUT=TEST-OUT $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "FCD SIZE 00216
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9247"
$at_failed && at_fn_log_failure
$at_traceon; }





# note: currently with the same behaviour as MF
#       (ignoring minimal record length for line-sequential)
#       this may change in the future...
cat >reference <<'_ATEOF'
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:9270: diff reference TEST-OUT"
at_fn_check_prepare_trace "run_file.at:9270"
( $at_check_trace; diff reference TEST-OUT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9270"
$at_failed && at_fn_log_failure  \
"TEST-OUT"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_927
#AT_START_928
at_fn_group_banner 928 'run_file.at:9275' \
  "EXTFH: LINE SEQUENTIAL files (2)" "               " 4
at_xfail=no
(
  $as_echo "928. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       78  PROGRAM-NAME  VALUE 'SEQEXTFH'.
       01  FCDOPCODE.
           02  FILLER             PIC X               VALUE X'FA'.
           02  EXTFH-OPCODE       PIC X.
      *    STANDARD OPERATION CODES
           88  EXTFH-OPCODE-ISOPENINPUT               VALUE X'00'.
           88  EXTFH-OPCODE-ISOPENOUTPUT              VALUE X'01'.
           88  EXTFH-OPCODE-ISREADSEQUENTIAL          VALUE X'8D'.
           88  EXTFH-OPCODE-ISCLOSE                   VALUE X'80'.
           88  EXTFH-OPCODE-ISWRITE                   VALUE X'F3'.
       01  FCD-PARAMETER-BLOCK.
           copy xfhfcd3.
       01  LSEQ-FILENAME PIC X(44)
            VALUE 'FCDLS'.
       01  LSEQ-RECORDAREA PIC X(255).
       01  LSEQ-RECORDS.
           02  LSEQ-COUNT             PIC X    COMP-X  VALUE 3.
           02  LSEQ-RECORD1.
               03  LSEQ-1LENGTH       PIC X    COMP-X  VALUE 22.
               03  LSEQ-1DATA         PIC X(80)
               VALUE 'THERE IS LITTLE LAMB'.
           02  LSEQ-RECORD2.
               03  LSEQ-2LENGTH       PIC X    COMP-X  VALUE 33.
               03  LSEQ-2DATA         PIC X(80)
               VALUE 'THE LAMB WAS GRAND AND A GRANDMA'.
           02  LSEQ-RECORD3.
               03  LSEQ-3LENGTH       PIC X    COMP-X  VALUE 22.
               03  LSEQ-3DATA         PIC X(80)
               VALUE 'THE OLD EWE CHORTLED'.
       01  LSEQ-RECORDTABLE
               REDEFINES LSEQ-RECORDS.
           02  LSEQ-TCOUNT            PIC X    COMP-X.
           02  LSEQ-TENTRY            OCCURS 3 TIMES
                                      INDEXED BY LSEQ-TX.
               03  LSEQ-TEST-LEN      PIC X    COMP-X.
               03  LSEQ-TESTDATA      PIC X(80).
       PROCEDURE DIVISION.
           DISPLAY PROGRAM-NAME ': STARTING.'
           DISPLAY PROGRAM-NAME ': CREATING LINE SEQUENTIAL FILE.'
           SET EXTFH-OPCODE-ISOPENOUTPUT      TO TRUE
           MOVE LENGTH OF FCD-PARAMETER-BLOCK TO FCD-LENGTH
           MOVE fcd--version-number           TO FCD-VERSION
           MOVE fcd--open-closed              TO FCD-OPEN-MODE
           MOVE LENGTH OF LSEQ-FILENAME       TO FCD-NAME-LENGTH
           MOVE fcd--exclusive-bit            TO FCD-LOCK-MODE
           MOVE fcd--format-cobol2            TO FCD-FILE-FORMAT
           MOVE LENGTH OF LSEQ-RECORDAREA TO FCD-MAX-REC-LENGTH
           MOVE fcd--recmode-variable TO FCD-RECORDING-MODE
           MOVE 0 TO FCD-MIN-REC-LENGTH
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF LSEQ-FILENAME
           PERFORM CALL-EXTFH
           PERFORM FCD-CHECK-STAT
           IF FCD-FILE-STATUS = '00'
             DISPLAY PROGRAM-NAME
                 ': LINE SEQUENTIAL FILE IS OPEN OUTPUT.'
             PERFORM WITH TEST AFTER VARYING LSEQ-TX FROM 1 BY 1
                 UNTIL LSEQ-TX = LSEQ-TCOUNT OR FCD-FILE-STATUS <> '00'
               SET EXTFH-OPCODE-ISWRITE       TO TRUE
               MOVE LSEQ-TEST-LEN (LSEQ-TX) TO FCD-CURRENT-REC-LEN
               MOVE 1 TO FCD-LINE-COUNT
               SET FCD-RECORD-ADDRESS TO
                ADDRESS OF LSEQ-TESTDATA (LSEQ-TX)
               PERFORM CALL-EXTFH
               PERFORM FCD-CHECK-STAT
             END-PERFORM
             IF FCD-FILE-STATUS = '00'
               DISPLAY PROGRAM-NAME ': LINE SEQUENTIAL WRITES COMPLETE.'
             ELSE
               DISPLAY PROGRAM-NAME
                   ': UNABLE TO CREATE LINE SEQUENTIAL FILE.'
             END-IF
             SET EXTFH-OPCODE-ISCLOSE       TO TRUE
             PERFORM CALL-EXTFH
             PERFORM FCD-CHECK-STAT
             IF FCD-FILE-STATUS = '00'
              DISPLAY PROGRAM-NAME ': LINE SEQUENTIAL FILE IS CLOSED.'
             ELSE
              DISPLAY PROGRAM-NAME
                  ': UNABLE TO CLOSE LINE SEQUENTIAL FILE.'
             END-IF
           ELSE
             DISPLAY PROGRAM-NAME
                 ': UNABLE TO OPEN LINE SEQUENTIAL FILE AS OUTPUT.'
             STOP RUN
           END-IF
           DISPLAY PROGRAM-NAME ': READING LINE SEQUENTIAL FILE.'
           SET EXTFH-OPCODE-ISOPENINPUT       TO TRUE
           MOVE fcd--open-closed              TO FCD-OPEN-MODE
           MOVE LENGTH OF LSEQ-FILENAME       TO FCD-NAME-LENGTH
           MOVE fcd--exclusive-bit            TO FCD-LOCK-MODE
           MOVE LENGTH OF LSEQ-RECORDAREA     TO FCD-MAX-REC-LENGTH
           MOVE 0 TO FCD-MIN-REC-LENGTH
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF LSEQ-FILENAME
           PERFORM CALL-EXTFH
           PERFORM FCD-CHECK-STAT
           IF FCD-FILE-STATUS = '00'
             SET FCD-RECORD-ADDRESS
              TO ADDRESS OF LSEQ-RECORDAREA
             DISPLAY PROGRAM-NAME
                 ': LINE SEQUENTIAL FILE IS OPEN INPUT.'
             PERFORM WITH TEST AFTER UNTIL FCD-FILE-STATUS <> '00'
               SET EXTFH-OPCODE-ISREADSEQUENTIAL  TO TRUE
               PERFORM CALL-EXTFH
               PERFORM FCD-CHECK-STAT
               IF FCD-FILE-STATUS = '00'
                 DISPLAY PROGRAM-NAME
                     ': RECORD = ' LSEQ-RECORDAREA
                                   (1:FCD-CURRENT-REC-LEN)
               END-IF
             END-PERFORM
             IF FCD-FILE-STATUS = '00' OR '10'
               DISPLAY PROGRAM-NAME ': LINE SEQUENTIAL READS COMPLETE.'
             ELSE
               DISPLAY PROGRAM-NAME
                   ': UNABLE TO READ LINE SEQUENTIAL FILE.'
             END-IF
             SET EXTFH-OPCODE-ISCLOSE       TO TRUE
             PERFORM CALL-EXTFH
             PERFORM FCD-CHECK-STAT
             IF FCD-FILE-STATUS = '00'
               DISPLAY PROGRAM-NAME ': LSEQ FILE IS CLOSED.'
             ELSE
               DISPLAY PROGRAM-NAME
                   ': UNABLE TO CLOSE LINE SEQUENTIAL FILE.'
             END-IF
           ELSE
             DISPLAY PROGRAM-NAME
                 ': UNABLE TO OPEN LINE SEQUENTIAL FILE AS INPUT.'
             STOP RUN
           END-IF
           DISPLAY PROGRAM-NAME ': ENDING.'
           STOP RUN.
       CALL-EXTFH.
           CALL 'EXTFH' USING
                        FCDOPCODE
                        FCD-PARAMETER-BLOCK.
       FCD-CHECK-STAT.
           IF FCD-STATUS-KEY-1 = '9'
             DISPLAY PROGRAM-NAME ': RUN-TIME ERROR 9/' FCD-BINARY
           ELSE
             IF FCD-FILE-STATUS <> '00'
               DISPLAY PROGRAM-NAME ': FILE STATUS = ' FCD-FILE-STATUS
             ELSE
               CONTINUE
             END-IF
           END-IF.
       SEQEXTFH-TERM.
           EXIT.
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:9434: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:9434"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9434"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:9436: DD_FCDLS=./report.txt \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_file.at:9436"
( $at_check_trace; DD_FCDLS=./report.txt \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "SEQEXTFH: STARTING.
SEQEXTFH: CREATING LINE SEQUENTIAL FILE.
SEQEXTFH: LINE SEQUENTIAL FILE IS OPEN OUTPUT.
SEQEXTFH: LINE SEQUENTIAL WRITES COMPLETE.
SEQEXTFH: LINE SEQUENTIAL FILE IS CLOSED.
SEQEXTFH: READING LINE SEQUENTIAL FILE.
SEQEXTFH: LINE SEQUENTIAL FILE IS OPEN INPUT.
SEQEXTFH: RECORD = THERE IS LITTLE LAMB
SEQEXTFH: RECORD = THE LAMB WAS GRAND AND A GRANDMA
SEQEXTFH: RECORD = THE OLD EWE CHORTLED
SEQEXTFH: FILE STATUS = 10
SEQEXTFH: LINE SEQUENTIAL READS COMPLETE.
SEQEXTFH: LSEQ FILE IS CLOSED.
SEQEXTFH: ENDING.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9436"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
THERE IS LITTLE LAMB
THE LAMB WAS GRAND AND A GRANDMA
THE OLD EWE CHORTLED
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:9463: diff reference report.txt"
at_fn_check_prepare_trace "run_file.at:9463"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9463"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_928
#AT_START_929
at_fn_group_banner 929 'run_file.at:9468' \
  "EXTFH: FIXED SEQUENTIAL" "                        " 4
at_xfail=no
(
  $as_echo "929. $at_setup_line: testing $at_desc ..."
  $at_traceon



# CHECKME: Should it really be possible to change the length
# with a line-sequentia file this way?
# If yes: should there be an implied "WRITE FROM" - so
# that an intermediate record field, space padded, is
# internally used?

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      ** TEST FIXED (BLOCK) LENGTH SEQUENTIAL RECORD EXTFH
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       78  PROGRAM-NAME  VALUE 'FBSEXTFH'.
       01  FCDOPCODE.
           02  FILLER              PIC X               VALUE X'FA'.
           02  EXTFH-OPCODE        PIC X.
      *    STANDARD OPERATION CODES
           88  EXTFH-OPCODE-ISOPENINPUT               VALUE X'00'.
           88  EXTFH-OPCODE-ISOPENOUTPUT              VALUE X'01'.
           88  EXTFH-OPCODE-ISREADSEQUENTIAL          VALUE X'8D'.
           88  EXTFH-OPCODE-ISCLOSE                   VALUE X'80'.
           88  EXTFH-OPCODE-ISWRITE                   VALUE X'F3'.
      *
       01  FCD-PARAMETER-BLOCK.
           copy xfhfcd3.
       01  FIX-FILENAME PIC X(44)
            VALUE 'FCDFB'.
       01  FIX-RECORDAREA PIC X(255).
       01  FIX-RECORDS.
           02  FIX-COUNT              PIC X    COMP-X  VALUE 3.
           02  FIX-RECORD1.
               03  FIX-1LENGTH        PIC X    COMP-X  VALUE 22.
               03  FIX-1DATA          PIC X(80)
               VALUE 'THERE IS LITTLE LAMB'.
           02  FIX-RECORD2.
               03  FIX-2LENGTH        PIC X    COMP-X  VALUE 33.
               03  FIX-2DATA          PIC X(80)
               VALUE 'THE LAMB WAS GRAND AND A GRANDMA'.
           02  FIX-RECORD3.
               03  FIX-3LENGTH        PIC X    COMP-X  VALUE 22.
               03  FIX-3DATA          PIC X(80)
               VALUE 'THE OLD EWE CHORTLED'.
       01  FIX-RECORDTABLE
               REDEFINES FIX-RECORDS.
           02  FIX-TCOUNT             PIC X    COMP-X.
           02  FIX-TENTRY             OCCURS 3 TIMES
                                      INDEXED BY FIX-TX.
               03  FIX-TEST-LEN       PIC X    COMP-X.
               03  FIX-TESTDATA       PIC X(80).
       PROCEDURE DIVISION.
           DISPLAY PROGRAM-NAME ': STARTING.'
           DISPLAY PROGRAM-NAME ': CREATING FIXED  SEQ FILE.'
           SET EXTFH-OPCODE-ISOPENOUTPUT      TO TRUE
           MOVE LENGTH OF FCD-PARAMETER-BLOCK TO FCD-LENGTH
           move fcd--version-number TO FCD-VERSION
           MOVE fcd--sequential-org TO FCD-ORGANIZATION
           MOVE fcd--open-closed TO FCD-OPEN-MODE
           MOVE LENGTH OF FIX-FILENAME TO FCD-NAME-LENGTH
           MOVE fcd--exclusive-bit TO FCD-LOCK-MODE
           move fcd--format-cobol2 to FCD-FILE-FORMAT
           MOVE LENGTH OF FIX-RECORDAREA TO FCD-MAX-REC-LENGTH
           MOVE 0 TO FCD-MIN-REC-LENGTH
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF FIX-FILENAME
           MOVE 80 TO FCD-CURRENT-REC-LEN
           MOVE 80 TO FCD-MAX-REC-LENGTH
           MOVE 80 TO FCD-MIN-REC-LENGTH
           PERFORM CALL-EXTFH
           PERFORM FCD-CHECK-STAT
           IF FCD-FILE-STATUS = '00'
             DISPLAY PROGRAM-NAME
                 ': FIXED  SEQ FILE IS OPEN OUTPUT.'
             PERFORM WITH TEST AFTER VARYING FIX-TX FROM 1 BY 1
                 UNTIL FIX-TX = FIX-TCOUNT OR FCD-FILE-STATUS <> '00'
               SET EXTFH-OPCODE-ISWRITE       TO TRUE
               MOVE FIX-TEST-LEN (FIX-TX) TO FCD-CURRENT-REC-LEN
               MOVE 1 TO FCD-LINE-COUNT
               SET FCD-RECORD-ADDRESS TO
                ADDRESS OF FIX-TESTDATA (FIX-TX)
               PERFORM CALL-EXTFH
               PERFORM FCD-CHECK-STAT
             END-PERFORM
             IF FCD-FILE-STATUS = '00'
               DISPLAY PROGRAM-NAME ': FIXED  SEQ WRITES COMPLETE.'
             ELSE
               DISPLAY PROGRAM-NAME
                   ': UNABLE TO CREATE FIXED  SEQ FILE.'
             END-IF
             SET EXTFH-OPCODE-ISCLOSE       TO TRUE
             PERFORM CALL-EXTFH
             PERFORM FCD-CHECK-STAT
             IF FCD-FILE-STATUS = '00'
              DISPLAY PROGRAM-NAME ': FIXED  SEQ FILE IS CLOSED.'
             ELSE
              DISPLAY PROGRAM-NAME
                  ': UNABLE TO CLOSE FIXED  SEQ FILE.'
             END-IF
           ELSE
             DISPLAY PROGRAM-NAME
                 ': UNABLE TO OPEN FIXED  SEQ FILE AS OUTPUT.'
             STOP RUN
           END-IF
           DISPLAY PROGRAM-NAME ': READING FIXED  SEQ FILE.'
           SET EXTFH-OPCODE-ISOPENINPUT       TO TRUE
           MOVE fcd--sequential-org TO FCD-ORGANIZATION
           MOVE fcd--open-closed TO FCD-OPEN-MODE
           MOVE LENGTH OF FIX-FILENAME TO FCD-NAME-LENGTH
           MOVE fcd--exclusive-bit TO FCD-LOCK-MODE
           move fcd--format-cobol2 to FCD-FILE-FORMAT
           MOVE LENGTH OF FIX-RECORDAREA TO FCD-MAX-REC-LENGTH
           MOVE 0 TO FCD-MIN-REC-LENGTH
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF FIX-FILENAME
           MOVE 80 TO FCD-CURRENT-REC-LEN
           MOVE 80 TO FCD-MAX-REC-LENGTH
           MOVE 80 TO FCD-MIN-REC-LENGTH
           PERFORM CALL-EXTFH
           PERFORM FCD-CHECK-STAT
           IF FCD-FILE-STATUS = '00'
             DISPLAY PROGRAM-NAME
                 ': FIXED  SEQ FILE IS OPEN INPUT.'
             PERFORM WITH TEST AFTER UNTIL FCD-FILE-STATUS <> '00'
               SET EXTFH-OPCODE-ISREADSEQUENTIAL  TO TRUE
               SET FCD-RECORD-ADDRESS
                TO ADDRESS OF FIX-RECORDAREA
               PERFORM CALL-EXTFH
               PERFORM FCD-CHECK-STAT
               IF FCD-FILE-STATUS = '00'
                 DISPLAY PROGRAM-NAME
                     ': RECORD = ' FIX-RECORDAREA (1:40) '. '
                     'Size:' FCD-CURRENT-REC-LEN
               END-IF
             END-PERFORM
             IF FCD-FILE-STATUS = '00' OR '10'
               DISPLAY PROGRAM-NAME ': FIXED  SEQ READS COMPLETE.'
             ELSE
               DISPLAY PROGRAM-NAME
                   ': UNABLE TO READ FIXED  SEQ FILE.'
             END-IF
             SET EXTFH-OPCODE-ISCLOSE       TO TRUE
             PERFORM CALL-EXTFH
             PERFORM FCD-CHECK-STAT
             IF FCD-FILE-STATUS = '00'
               DISPLAY PROGRAM-NAME ': LSEQ FILE IS CLOSED.'
             ELSE
               DISPLAY PROGRAM-NAME
                   ': UNABLE TO CLOSE FIXED  SEQ FILE.'
             END-IF
           ELSE
             DISPLAY PROGRAM-NAME
                 ': UNABLE TO OPEN FIXED  SEQ FILE AS INPUT.'
             STOP RUN
           END-IF
           DISPLAY PROGRAM-NAME ': ENDING.'
           STOP RUN.
       CALL-EXTFH.
           CALL 'EXTFH' USING
                        FCDOPCODE
                        FCD-PARAMETER-BLOCK.
       FCD-CHECK-STAT.
           IF FCD-STATUS-KEY-1 = '9'
             DISPLAY PROGRAM-NAME ': RUN-TIME ERROR 9/' FCD-BINARY
           ELSE
             IF FCD-FILE-STATUS <> '00'
               DISPLAY PROGRAM-NAME ': FILE STATUS = ' FCD-FILE-STATUS
             ELSE
               CONTINUE
             END-IF
           END-IF.
       SEQEXTFH-TERM.
           EXIT.
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:9643: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:9643"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9643"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:9645: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:9645"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "FBSEXTFH: STARTING.
FBSEXTFH: CREATING FIXED  SEQ FILE.
FBSEXTFH: FIXED  SEQ FILE IS OPEN OUTPUT.
FBSEXTFH: FIXED  SEQ WRITES COMPLETE.
FBSEXTFH: FIXED  SEQ FILE IS CLOSED.
FBSEXTFH: READING FIXED  SEQ FILE.
FBSEXTFH: FIXED  SEQ FILE IS OPEN INPUT.
FBSEXTFH: RECORD = THERE IS LITTLE LAMB                    . Size:0000000080
FBSEXTFH: RECORD = THE LAMB WAS GRAND AND A GRANDMA        . Size:0000000080
FBSEXTFH: RECORD = THE OLD EWE CHORTLED                    . Size:0000000080
FBSEXTFH: FILE STATUS = 10
FBSEXTFH: FIXED  SEQ READS COMPLETE.
FBSEXTFH: LSEQ FILE IS CLOSED.
FBSEXTFH: ENDING.
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9645"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_929
#AT_START_930
at_fn_group_banner 930 'run_file.at:9665' \
  "EXTFH: operation OP_GETINFO / QUERY-FILE" "       " 4
at_xfail=no
(
  $as_echo "930. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: BDB has no way to get definition until 4.x (filename.dd)
$as_echo "run_file.at:9669" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "db") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:9669"

# TODO: duplicate with line sequential, likely needs update to fileio first
$as_echo "run_file.at:9672" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:9672"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL TSPFILE
           ASSIGN TO FCD-FILENAME
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS CM-CUST-NUM
           ALTERNATE RECORD KEY IS CM-TELEPHONE WITH DUPLICATES
           ALTERNATE RECORD KEY IS SPLIT-KEY3
           SOURCE IS CM-DISK,CM-DP-MGR,CM-MACHINE WITH DUPLICATES
                SUPPRESS WHEN ALL "*"
           FILE STATUS IS CUST-STAT .

       DATA DIVISION.
       FILE SECTION.
       FD  TSPFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           05  TSPFL-REC.
           10  CM-CUST-NUM.
             15  CM-CUST-PRE                   PICTURE X(3).
             15  CM-CUST-NNN                   PICTURE X(5).
           10  CM-STATUS                       PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-ADDRESS-1                    PICTURE X(25).
           10  CM-ADDRESS-2                    PICTURE X(25).
           10  CM-ADDRESS-3                    PICTURE X(25).
           10  CM-TELEPHONE                    PICTURE 9(10).
           10  CM-DP-MGR                       PICTURE X(25).
           10  CM-MACHINE                      PICTURE X(8).
           10  CM-MEMORY                       PICTURE X(4).
           10  CM-DISK                         PICTURE X(8).
           10  CM-TAPE                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).

       WORKING-STORAGE SECTION.

       01  I                       PIC 99.
       01  K                       PIC 99.

       01  CUST-STAT               PIC X(2) VALUE SPACES.
       01  WS-FCD-DDNAME           PIC X(8) VALUE SPACES.
       01  WS-FCD-PTR              POINTER   VALUE NULL.

       01  ACTION-CODE                PIC X(2).
          78  OP-OPEN-INPUT           VALUE x"fa00".
          78  OP-OPEN-OUTPUT          VALUE x"fa01".
          78  OP-OPEN-I-O             VALUE x"fa02".
          78  OP-WRITE                VALUE x"faf3".
          78  OP-RELEASE              VALUE x"faf3".
          78  OP-REWRITE              VALUE x"faf4".
          78  OP-READ-NEXT            VALUE x"faf5".
          78  OP-START-EQUAL          VALUE x"fae9".
          78  OP-CLOSE                VALUE x"fa80".
          78  OP-QUERY-FILE           VALUE x"0006".

       01  FCD-FILENAME               PIC X(80) value "testisam".
       01  FCD-RECORD                 PIC X(512) VALUE SPACES.

       01  FCD-MAP.
           COPY 'xfhfcd3.cpy'.

       01  KEY-DEF.
           03 KDB-LEN             PIC 9(4) COMP-X.
           03 FILLER              PIC X(4).
           03 KEY-NKEYS           PIC 9(4) COMP-X.
           03 FILLER              PIC X(6).
           03 KEY-DEFS OCCURS 16 TIMES.
               05 KEY-COUNT       PIC XX   COMP-X.
               05 KEY-OFFSET      PIC XX   COMP-X.
               05 KEY-FLAGS       PIC X    COMP-X.
               05 KEY-COMPRESSION PIC X    COMP-X.
               05 KEY-SPARSE      PIC X    COMP-X.
               05 FILLER          PIC X(9).
           03 FILLER              PIC X(128).

       LINKAGE SECTION.
       01  KEY-INF.
           03 KEY-DESC            PIC X COMP-X.
           03 KEY-TYPE            PIC X COMP-X.
           03 KEY-POS             PIC X(4) COMP-X.
           03 KEY-LEN             PIC X(4) COMP-X.
      *================================================================*
       PROCEDURE DIVISION.
      *----------------------------------------------------------------*
       000-MAIN.

          DELETE FILE TSPFILE.
          OPEN OUTPUT TSPFILE.
          WRITE TSPFL-RECORD.
          CLOSE TSPFILE.

          SET FCD-KEY-DEF-ADDRESS  TO ADDRESS OF KEY-DEF.
          SET FCD-FILENAME-ADDRESS TO ADDRESS OF FCD-FILENAME.
          MOVE 64 TO FCD-NAME-LENGTH
          MOVE LENGTH OF KEY-DEF TO KDB-LEN.
          SET FCD-RECORD-ADDRESS   TO ADDRESS OF FCD-RECORD.
          MOVE 512 TO FCD-CURRENT-REC-LEN
          MOVE 512 TO FCD-MIN-REC-LENGTH
          MOVE 512 TO FCD-MAX-REC-LENGTH
          MOVE 1 TO FCD-VERSION
          MOVE 255 TO FCD-ORGANIZATION
          MOVE OP-QUERY-FILE TO ACTION-CODE
          PERFORM 800-CALL-EXTFH.
          DISPLAY "Status: " FCD-FILE-STATUS
                  " File: " FCD-FILENAME (1:20) "."
          DISPLAY " Nkeys: " key-nkeys
                  " Recsz: " FCD-MAX-REC-LENGTH.
          DISPLAY "kdblen: " kdb-len.
          PERFORM VARYING I FROM 1 UNTIL I > KEY-NKEYS
             DISPLAY " Index: " i
                     " Parts: " key-count (i)
                     " Offset: " key-offset (i)
                     " Flags: " key-flags (i)
                     " Comp: " key-compression (i)
                     " Sparse: " key-sparse (i)
             SET WS-FCD-PTR TO ADDRESS OF key-def
             SET WS-FCD-PTR UP BY key-offset (i)
             SET ADDRESS OF key-inf TO WS-FCD-PTR
             PERFORM VARYING K FROM 1 UNTIL K > KEY-count (i)
                DISPLAY "   Pos: " key-pos
                        "   Len: " key-len
                        "   Desc: " key-desc
                        " Type: " key-type
                SET WS-FCD-PTR UP BY LENGTH OF key-inf
                SET ADDRESS OF key-inf TO WS-FCD-PTR
             END-PERFORM
          END-PERFORM.

          STOP RUN.

      *----------------------------------------------------------------*
      *    External file handler interface -- all I/O goes through here
      *
        800-CALL-EXTFH.

            CALL "EXTFH" USING ACTION-CODE, FCD-MAP

            IF FCD-STATUS-KEY-1 = "9" AND FCD-BINARY = 199
               MOVE "10" TO FCD-FILE-STATUS
            END-IF
            .
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:9824: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:9824"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9824"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:9826: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:9826"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Status: 00 File: testisam            .
 Nkeys: 0003 Recsz: 0000000177
kdblen: 0398
 Index: 01 Parts: 00001 Offset: 00062 Flags: 000 Comp: 000 Sparse: 000
   Pos: 0000000000   Len: 0000000008   Desc: 000 Type: 000
 Index: 02 Parts: 00001 Offset: 00072 Flags: 064 Comp: 000 Sparse: 000
   Pos: 0000000109   Len: 0000000010   Desc: 032 Type: 032
 Index: 03 Parts: 00003 Offset: 00082 Flags: 066 Comp: 000 Sparse: 042
   Pos: 0000000156   Len: 0000000008   Desc: 000 Type: 000
   Pos: 0000000119   Len: 0000000025   Desc: 000 Type: 000
   Pos: 0000000144   Len: 0000000008   Desc: 000 Type: 000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:9826"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_930
#AT_START_931
at_fn_group_banner 931 'run_file.at:9847' \
  "EXTFH: changing record address" "                 " 4
at_xfail=no
(
  $as_echo "931. $at_setup_line: testing $at_desc ..."
  $at_traceon



# TODO: replace INDEXED with line sequential (or duplicate)
$as_echo "run_file.at:9851" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:9851"

cat >progl.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT  SECTION.
       FILE-CONTROL.
           SELECT OUTFILE
           ASSIGN "TEST1EXTFH"
           ORGANIZATION INDEXED
           RECORD KEY IS PRIME-KEY
           ACCESS IS SEQUENTIAL
           FILE STATUS IS OUT-STAT.

       DATA DIVISION.
       FILE SECTION.
       FD OUTFILE
           BLOCK CONTAINS 5 RECORDS.

       01  OUT-REC.
           05  PRIME-KEY PIC X(25).
           05  IN-DATA   PIC X(10).

       WORKING-STORAGE SECTION.
       01  OUT-STAT             PIC XX    VALUE '00'.
       01  OUT-RECNUM           PIC 9 VALUE 0.

       PROCEDURE DIVISION.
       MAIN-100.
           OPEN OUTPUT OUTFILE.
           IF OUT-STAT NOT = '00'
               DISPLAY 'ERROR ' OUT-STAT ' OPENING OUTPUT FILE'
               STOP RUN
           END-IF.
           INITIALIZE OUT-REC.

       GET-NEXT-100.
           ADD 1  TO OUT-RECNUM.
           MOVE "RECORD-X" TO PRIME-KEY.
           MOVE OUT-RECNUM TO PRIME-KEY (8:1).
           WRITE OUT-REC.
           IF  OUT-STAT NOT = '00'
           AND OUT-STAT NOT = '02'
               DISPLAY 'ERROR ' OUT-STAT ' WRITING OUTPUT'
               GO TO END-PROG-100
           END-IF.
           IF OUT-RECNUM < 5
               GO TO GET-NEXT-100.

       END-PROG-100.
           DISPLAY OUT-RECNUM ' records written'.
           CLOSE OUTFILE.
           STOP RUN.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
      *
       PROGRAM-ID. prog.
       DATA DIVISION.

       WORKING-STORAGE SECTION.

       77  I                               PIC 9(04) COMP-5.
       77  J                               PIC 9(04) COMP-5.
       77  K                               PIC 9(04) COMP-5.
       77  L                               PIC 9(04) COMP-5.
       77  M                               PIC 9(04) COMP-5.
       01  OP-N                            PIC X COMP-X.
       01  OP-X REDEFINES OP-N             PIC X.

       01  ACTION-CODE.
           05  ACTION-TYPE    PIC X(01).
               78  COBOL-TYPE                  VALUE X'FA'.
               78  SPECIAL-TYPE                VALUE X'00'.
           05  COBOL-OP       PIC X(01).
               78  OPEN-INPUT                  VALUE X'00'.
               78  OPEN-OUTPUT                 VALUE X'01'.
               78  OPEN-I-O                    VALUE X'02'.
               78  OPEN-EXTEND                 VALUE X'03'.
               78  OPEN-INPUT-NO-REWIND        VALUE X'04'.
               78  OPEN-OUTPUT-NO-REWIND       VALUE X'05'.
               78  OPEN-INPUT-REVERSED         VALUE X'08'.
               78  CLOSE-FILE                  VALUE X'80'.
               78  CLOSE-LOCK                  VALUE X'81'.
               78  CLOSE-NO-REWIND             VALUE X'82'.
               78  CLOSE-REEL-UNIT             VALUE X'84'.
               78  CLOSE-REEL-UNIT-FOR-REMOVAL VALUE X'85'.
               78  CLOSE-REEL-UNIT-NO-REWIND   VALUE X'86'.
               78  READ-SEQ-NO-LOCK            VALUE X'8D'.
               78  READ-SEQ-LOCK               VALUE X'D8'.
               78  READ-SEQ-KEPT-LOCK          VALUE X'D9'.
               78  READ-SEQ                    VALUE X'F5'.
               78  READ-PREVIOUS-NO-LOCK       VALUE X'8C'.
               78  READ-PREVIOUS-LOCK          VALUE X'DE'.
               78  READ-PREVIOUS-KEPT-LOCK     VALUE X'DF'.
               78  READ-PREVIOUS               VALUE X'F9'.
               78  READ-RANDOM-NO-LOCK         VALUE X'8E'.
               78  READ-RANDOM-LOCK            VALUE X'DA'.
               78  READ-RANDOM-KEPT-LOCK       VALUE X'DB'.
               78  READ-RANDOM                 VALUE X'F6'.
               78  READ-DIRECT-NO-LOCK         VALUE X'8F'.
               78  READ-DIRECT-LOCK            VALUE X'D6'.
               78  READ-DIRECT-KEPT-LOCK       VALUE X'D7'.
               78  READ-DIRECT                 VALUE X'C9'.
               78  READ-POSITION               VALUE X'F1'.
               78  WRITE-BEFORE                VALUE X'E1'.
               78  WRITE-AFTER                 VALUE X'E2'.
               78  WRITE-BEFORE-TAB            VALUE X'E3'.
               78  WRITE-AFTER-TAB             VALUE X'E4'.
               78  WRITE-BEFORE-PAGE           VALUE X'E5'.
               78  WRITE-AFTER-PAGE            VALUE X'E6'.
               78  WRITE-RECORD                VALUE X'F3'.
               78  REWRITE-RECORD              VALUE X'F4'.
               78  START-EQUAL-PRIME-KEY       VALUE X'E8'.
               78  START-EQUAL-KEY             VALUE X'E9'.
               78  START-GREATER               VALUE X'EA'.
               78  START-NOT-LESS              VALUE X'EB'.
               78  START-LESS                  VALUE X'FE'.
               78  START-LESS-OR-EQUAL         VALUE X'FF'.
               78  STEP-NEXT-NO-LOCK           VALUE X'90'.
               78  STEP-NEXT-LOCK              VALUE X'D4'.
               78  STEP-NEXT-KEPT-LOCK         VALUE X'D5'.
               78  STEP-NEXT                   VALUE X'CA'.
               78  STEP-FIRST-NO-LOCK          VALUE X'92'.
               78  STEP-FIRST-LOCK             VALUE X'D0'.
               78  STEP-FIRST-KEPT-LOCK        VALUE X'D1'.
               78  STEP-FIRST                  VALUE X'CC'.
               78  DELETE-RECORD               VALUE X'F7'.
               78  DELETE-FILE                 VALUE X'F8'.
               78  UNLOCK-CURRENT              VALUE X'0E'.
               78  COMMIT-ALL                  VALUE X'DC'.
               78  ROLLBACK-ALL                VALUE X'DD'.
               78  GET-FILE-INFO               VALUE X'06'.
               78  OPEN-NEW-INDEX              VALUE X'07'.
               78  GET-NEXT-RECORD             VALUE X'08'.
               78  ADD-KEY-VALUE               VALUE X'09'.
               78  UNLOCK-RECORD               VALUE X'0F'.

       01  FCD-AREA.
           COPY xfhfcd.

       01  FILE-NAME                       PIC X(64).
       01  FILE-NAME-LEN                   PIC 9(04) COMP-X.

       01  RECORD-AREA.
           05  PRIME-KEY                   PIC X(25).
           05  DATA-AREA                   PIC X(10).

       01  RECORD-AREA2.
           05  PRIME-KEY2                  PIC X(25).
           05  DATA-AREA2                  PIC X(10).

       01  KEY-DEF-AREA.
           05  GLOBAL-INFORMATION-AREA.
               10  LENGTH-OF-KEY-DEF-AREA  PIC 9(04) COMP-X.
               10  FILLER                  PIC X(04).
               10  NUMBER-OF-KEYS          PIC 9(04) COMP-X.
               10  FILLER                  PIC X(06).
           05  KEY-DEF-AREA-PARAM-BLOCK.
               10  COMPONENT-COUNT         PIC 9(04) COMP-X.
               10  OFFSET-TO-COMPONENT     PIC 9(04) COMP-X.
               10  KEY-FLAGS               PIC 9(02) COMP-X.
               10  KEY-COMPRESSION         PIC 9(02) COMP-X.
               10  SPARSE-CHARACTER        PIC X(01).
               10  FILLER                  PIC X(09).
           05  COMPONENT-DEF-AREA.
               10  FILLER                  PIC X(02).
               10  OFFSET-TO-COMPONENT-DEF PIC 9(09) COMP-X.
               10  COMPONENT-LENGTH        PIC 9(09) COMP-X.


      **************************************************************
       PROCEDURE DIVISION.
      **************************************************************
       0000-MAIN.
           PERFORM 1000-OPEN-FILE.
           PERFORM 2000-READ-RECORD.
           DISPLAY 'AFTER READ ------> ' RECORD-AREA '.'.
           MOVE '1234567890' TO DATA-AREA.
           PERFORM 3000-REWRITE-RECORD.
           PERFORM 2000-READ-RECORD.
           DISPLAY 'AFTER WRITE -----> ' RECORD-AREA '.'.
           MOVE SPACES TO DATA-AREA.
           PERFORM 3000-REWRITE-RECORD.
           PERFORM 5000-CLOSE-FILE.
           PERFORM 1000-OPEN-FILE.
           PERFORM 6000-START.
           PERFORM 7000-READ-PREVIOUS.
           DISPLAY 'AFTER READ PREV -> ' RECORD-AREA2 '.'.
           PERFORM 5000-CLOSE-FILE.

           STOP RUN.
      *
      *--------------------------------*
       1000-Open-File.
      *--------------------------------*
      *
           MOVE 'TEST1EXTFH' TO FILE-NAME
           MOVE 10           TO FILE-NAME-LEN

      *    MOVE LOW-VALUES             TO FCD-AREA
           MOVE FCD--VERSION-NUMBER    TO FCD-VERSION

           MOVE FCD--INDEXED-ORG       TO FCD-ORGANIZATION
           MOVE FILE-NAME-LEN          TO FCD-NAME-LENGTH
           SET  FCD-FILENAME-ADDRESS   TO ADDRESS OF FILE-NAME
           SET  FCD-KEY-DEF-ADDRESS    TO ADDRESS OF KEY-DEF-AREA
           MOVE 16                     TO FCD-FS-FLAGS
           MOVE LENGTH OF RECORD-AREA  TO FCD-CURRENT-REC-LEN
           MOVE 1                      TO NUMBER-OF-KEYS
           MOVE LENGTH OF PRIME-KEY    TO COMPONENT-LENGTH
           MOVE 8                      TO FCD-ACCESS-MODE
           MOVE 0                      TO FCD-LOCK-MODE
           MOVE 128                    TO FCD-OPEN-MODE

           MOVE COBOL-TYPE             TO ACTION-TYPE
           MOVE OPEN-I-O               TO COBOL-OP
           PERFORM 1100-CALL-EXTFH.

      *
      *--------------------------------*
       1100-Call-Extfh.
      *--------------------------------*
      *
           CALL 'EXTFH' USING ACTION-CODE
                              FCD-AREA
           IF FCD-FILE-STATUS NOT = '00'
               MOVE COBOL-OP TO OP-X
               IF FCD-STATUS-KEY-1 = '9'
                   DISPLAY "FILE ERROR, STATUS: 9/" FCD-BINARY
                           " OPCODE: " OP-N
               ELSE
                   DISPLAY "FILE ERROR, STATUS: " FCD-FILE-STATUS
                           " OPCODE: " OP-N
               END-IF
               IF FCD-FILE-STATUS = '23'
                   DISPLAY "Record: " RECORD-AREA "."
               END-IF
               STOP RUN
           END-IF.
      *
      *--------------------------------*
       2000-Read-Record.
      *--------------------------------*
      *
           INITIALIZE RECORD-AREA.

           MOVE 'RECORD-3'           TO PRIME-KEY.

           MOVE READ-RANDOM-LOCK     TO COBOL-OP.
           SET FCD-RECORD-ADDRESS    TO ADDRESS OF RECORD-AREA.
           PERFORM 1100-CALL-EXTFH.
      *
      *--------------------------------*
       3000-Rewrite-Record.
      *--------------------------------*
      *
           MOVE COBOL-TYPE     TO ACTION-TYPE.
           MOVE REWRITE-RECORD TO COBOL-OP.

           PERFORM 1100-CALL-EXTFH.
      *
      *--------------------------------*
       5000-Close-File.
      *--------------------------------*
      *
           MOVE COBOL-TYPE     TO ACTION-TYPE.
           MOVE CLOSE-FILE     TO COBOL-OP.

           PERFORM 1100-CALL-EXTFH.
      *
      *--------------------------------*
       6000-Start.
      *--------------------------------*
      *
           SET FCD-RECORD-ADDRESS     TO ADDRESS OF RECORD-AREA.
           MOVE 25                    TO FCD-KEY-LENGTH.
           MOVE HIGH-VALUES           TO PRIME-KEY.

           MOVE COBOL-TYPE            TO ACTION-TYPE.
           MOVE START-LESS            TO COBOL-OP.

           PERFORM 1100-CALL-EXTFH.
      *
      *--------------------------------*
       7000-Read-Previous.
      *--------------------------------*
      *
           MOVE COBOL-TYPE     TO ACTION-TYPE.
           MOVE READ-PREVIOUS  TO COBOL-OP.
           INITIALIZE RECORD-AREA2.
           SET FCD-RECORD-ADDRESS     TO ADDRESS OF RECORD-AREA2.

           PERFORM 1100-CALL-EXTFH.
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:10152: \$COMPILE -fnotrunc progl.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc progl.cob" "run_file.at:10152"
( $at_check_trace; $COMPILE -fnotrunc progl.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10152"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:10153: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:10153"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10153"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:10155: \$COBCRUN_DIRECT ./progl"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progl" "run_file.at:10155"
( $at_check_trace; $COBCRUN_DIRECT ./progl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "5 records written
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10155"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:10159: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:10159"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "AFTER READ ------> RECORD-3                           .
AFTER WRITE -----> RECORD-3                 1234567890.
AFTER READ PREV -> RECORD-5                           .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10159"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_931
#AT_START_932
at_fn_group_banner 932 'run_file.at:10168' \
  "EXTFH: INDEXED with multiple keys" "              " 4
at_xfail=no
(
  $as_echo "932. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:10171" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:10171"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       DATA DIVISION.
       FILE SECTION.
       WORKING-STORAGE SECTION.
       77  CKEYS                           PIC 9(04) COMP-5.
       77  NKEYS                           PIC 9(04) COMP-5.
       77  CURR-OFF                        PIC 9(04) COMP-5.
       77  I                               PIC 9(04) COMP-5.
       01  FH-ACTION                       PIC X(02).
       01  FILLER REDEFINES FH-ACTION.
           05            PIC X COMP-X.
           05 FH-ACTION2 PIC X COMP-X.
       77  FILE-NAME                       PIC X(64).
       77  INDEX-NAME                      PIC X(64).
       77  FILE-NAME-LEN                   PIC 9(04) COMP-X.
       01  ACB-KEY-GROUP.
           05  ACB-CNT          PIC 9(02).
           05  ACB-KEY-TABLE OCCURS 32 TIMES.
               10  ACB-KEY-LEN  PIC 9(04) COMP-4.
               10  ACB-KEY-POS  PIC 9(04) COMP-4.
               10  ACB-KEY-DUPE PIC 9(02) COMP-X.
      *COPY EXTFHOPS.
       01  ACTION-CODE.
           05  ACTION-TYPE    PIC X(01).
               78  COBOL-TYPE                  VALUE X'FA'.
               78  SPECIAL-TYPE                VALUE X'00'.
           05  COBOL-OP       PIC X(01).
               78  OPEN-INPUT                  VALUE X'00'.
               78  OPEN-OUTPUT                 VALUE X'01'.
               78  OPEN-I-O                    VALUE X'02'.
               78  OPEN-EXTEND                 VALUE X'03'.
               78  OPEN-INPUT-NO-REWIND        VALUE X'04'.
               78  OPEN-OUTPUT-NO-REWIND       VALUE X'05'.
               78  OPEN-INPUT-REVERSED         VALUE X'08'.
               78  CLOSE-FILE                  VALUE X'80'.
               78  CLOSE-LOCK                  VALUE X'81'.
               78  CLOSE-NO-REWIND             VALUE X'82'.
               78  CLOSE-REEL-UNIT             VALUE X'84'.
               78  CLOSE-REEL-UNIT-FOR-REMOVAL VALUE X'85'.
               78  CLOSE-REEL-UNIT-NO-REWIND   VALUE X'86'.
               78  READ-SEQ-NO-LOCK            VALUE X'8D'.
               78  READ-SEQ-LOCK               VALUE X'D8'.
               78  READ-SEQ-KEPT-LOCK          VALUE X'D9'.
               78  READ-SEQ                    VALUE X'F5'.
               78  READ-PREVIOUS-NO-LOCK       VALUE X'8C'.
               78  READ-PREVIOUS-LOCK          VALUE X'DE'.
               78  READ-PREVIOUS-KEPT-LOCK     VALUE X'DF'.
               78  READ-PREVIOUS               VALUE X'F9'.
               78  READ-RANDOM-NO-LOCK         VALUE X'8E'.
               78  READ-RANDOM-LOCK            VALUE X'DA'.
               78  READ-RANDOM-KEPT-LOCK       VALUE X'DB'.
               78  READ-RANDOM                 VALUE X'F6'.
               78  READ-DIRECT-NO-LOCK         VALUE X'8F'.
               78  READ-DIRECT-LOCK            VALUE X'D6'.
               78  READ-DIRECT-KEPT-LOCK       VALUE X'D7'.
               78  READ-DIRECT                 VALUE X'C9'.
               78  READ-POSITION               VALUE X'F1'.
               78  WRITE-BEFORE                VALUE X'E1'.
               78  WRITE-AFTER                 VALUE X'E2'.
               78  WRITE-BEFORE-TAB            VALUE X'E3'.
               78  WRITE-AFTER-TAB             VALUE X'E4'.
               78  WRITE-BEFORE-PAGE           VALUE X'E5'.
               78  WRITE-AFTER-PAGE            VALUE X'E6'.
               78  WRITE-RECORD                VALUE X'F3'.
               78  REWRITE-RECORD              VALUE X'F4'.
               78  START-EQUAL-PRIME-KEY       VALUE X'E8'.
               78  START-EQUAL-KEY             VALUE X'E9'.
               78  START-GREATER               VALUE X'EA'.
               78  START-NOT-LESS              VALUE X'EB'.
               78  START-LESS                  VALUE X'FE'.
               78  START-LESS-OR-EQUAL         VALUE X'FF'.
               78  STEP-NEXT-NO-LOCK           VALUE X'90'.
               78  STEP-NEXT-LOCK              VALUE X'D4'.
               78  STEP-NEXT-KEPT-LOCK         VALUE X'D5'.
               78  STEP-NEXT                   VALUE X'CA'.
               78  STEP-FIRST-NO-LOCK          VALUE X'92'.
               78  STEP-FIRST-LOCK             VALUE X'D0'.
               78  STEP-FIRST-KEPT-LOCK        VALUE X'D1'.
               78  STEP-FIRST                  VALUE X'CC'.
               78  DELETE-RECORD               VALUE X'F7'.
               78  DELETE-FILE                 VALUE X'F8'.
               78  UNLOCK-CURRENT              VALUE X'0E'.
               78  COMMIT-ALL                  VALUE X'DC'.
               78  ROLLBACK-ALL                VALUE X'DD'.
               78  GET-FILE-INFO               VALUE X'06'.
               78  OPEN-NEW-INDEX              VALUE X'07'.
               78  GET-NEXT-RECORD             VALUE X'08'.
               78  ADD-KEY-VALUE               VALUE X'09'.
               78  UNLOCK-RECORD               VALUE X'0F'.
       01  FCD-AREA.
           COPY xfhfcd.

       01  RECORD-AREA.
           05  PRIME-KEY                   PIC X(20).
           05  DATA-AREA1                  PIC 9(10).
           05  DATA-AREA2                  PIC 9(15).
           05  DATA-AREA                   PIC X(355).
       01  KEY-DEF-AREA PIC X(512).
       PROCEDURE DIVISION.
       A-000-MAIN.
           PERFORM A-100-OPEN-FILE.
           PERFORM A-300-READ-RECORD.
           DISPLAY 'READ ------> ' RECORD-AREA (1:55) '.'
           MOVE '1234567890' TO RECORD-AREA (46:10)
           PERFORM A-400-REWRITE-RECORD.
           PERFORM A-300-READ-RECORD.
           DISPLAY 'WRITE -----> ' RECORD-AREA (1:55) '.'
           MOVE SPACES TO DATA-AREA.
           PERFORM A-400-REWRITE-RECORD.
           PERFORM A-700-START.
           PERFORM A-800-READ-PREVIOUS.
           DISPLAY 'READ PREV -> ' RECORD-AREA (1:55) '.'
           PERFORM A-600-CLOSE-FILE.
           STOP RUN.
       A-100-Open-File.
           MOVE LOW-VALUES TO FCD-AREA
           MOVE LOW-VALUES TO ACB-KEY-GROUP
           MOVE fcd--version-number TO FCD-VERSION
      ** MAKE 3 KEYS
           MOVE 3 TO ACB-CNT
           MOVE 0 TO ACB-KEY-POS (1)
           MOVE 20 TO ACB-KEY-LEN (1)
           MOVE 0 TO ACB-KEY-DUPE (1)
           MOVE 20 TO ACB-KEY-POS (2)
           MOVE 10 TO ACB-KEY-LEN (2)
           MOVE 1 TO ACB-KEY-DUPE (2)
           MOVE 30 TO ACB-KEY-POS (3)
           MOVE 15 TO ACB-KEY-LEN (3)
           MOVE 1 TO ACB-KEY-DUPE (3)
      ** MAKE MF KEY-DEF
           CALL "EXFHKEYS" USING
                         ACB-KEY-GROUP
                         KEY-DEF-AREA
           MOVE X'FA01' TO FH-ACTION
           SET FCD-KEY-DEF-ADDRESS TO ADDRESS OF KEY-DEF-AREA
           MOVE 'TESTISAM2' TO FILE-NAME
           MOVE 9 TO FILE-NAME-LEN
           MOVE FILE-NAME-LEN TO FCD-NAME-LENGTH
           MOVE 0 TO FCD-ACCESS-MODE
           MOVE 2 TO FCD-ORGANIZATION
           MOVE 128 TO FCD-OPEN-MODE
      **   FIXED OR VARIABLE
           MOVE 1 TO FCD-RECORDING-MODE
           MOVE 0 TO FCD-RECORDING-MODE
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF FILE-NAME
           MOVE 400 TO FCD-MIN-REC-LENGTH
           MOVE 400 TO FCD-MAX-REC-LENGTH
           PERFORM A-200-CALL-EXTFH.
           PERFORM A-600-CLOSE-FILE.
      * Write test data to file
           MOVE X'FA02' TO FH-ACTION
           MOVE 8 TO FCD-ACCESS-MODE
           PERFORM A-200-CALL-EXTFH.
           MOVE SPACES    TO RECORD-AREA
           MOVE 0 TO DATA-AREA1
           MOVE 0 TO DATA-AREA2
           PERFORM 7 TIMES
               ADD 1  TO DATA-AREA1
               ADD 1  TO DATA-AREA2
               MOVE 'RECORD-1'           TO PRIME-KEY
               MOVE DATA-AREA1 (10:1)    TO PRIME-KEY (8:1)
               MOVE X'FAF3'              TO FH-ACTION
               SET FCD-RECORD-ADDRESS    TO ADDRESS OF RECORD-AREA
               PERFORM A-200-CALL-EXTFH
           END-PERFORM.
       A-110-EXIT.
           EXIT.
       A-200-Call-Extfh.
           CALL 'EXTFH' USING FH-ACTION
                              FCD-AREA
           IF FCD-FILE-STATUS NOT = '00' AND NOT = '02'
               IF FCD-STATUS-KEY-1 = '9'
                   DISPLAY "Operation: " FH-ACTION2
                           " FILE ERROR, STATUS: 9/" FCD-BINARY
               ELSE
                   DISPLAY "Operation: " FH-ACTION2
                           " FILE ERROR, STATUS: " FCD-FILE-STATUS
               END-IF
               STOP RUN
           END-IF.
       A-300-READ-RECORD.
           INITIALIZE RECORD-AREA.
           MOVE 'RECORD-3'           TO PRIME-KEY.
           MOVE X'FA8E' TO FH-ACTION
           SET FCD-RECORD-ADDRESS    TO ADDRESS OF RECORD-AREA.
           PERFORM A-200-CALL-EXTFH.
       A-400-REWRITE-RECORD.
           MOVE X'FAF4' TO FH-ACTION
           MOVE REWRITE-RECORD TO COBOL-OP.
           PERFORM A-200-CALL-EXTFH.
       A-600-CLOSE-FILE.
           MOVE X'FA80' TO FH-ACTION.
           PERFORM A-200-CALL-EXTFH.
       A-700-START.
           SET FCD-RECORD-ADDRESS     TO ADDRESS OF RECORD-AREA.
           MOVE 20                    TO FCD-KEY-LENGTH.
           MOVE HIGH-VALUES           TO PRIME-KEY.
           MOVE X'FAFE' TO FH-ACTION
           PERFORM A-200-CALL-EXTFH.
       A-800-READ-PREVIOUS.
           MOVE X'FAF9' TO FH-ACTION
           PERFORM A-200-CALL-EXTFH.

_ATEOF


cat >progs.cob <<'_ATEOF'

      $SET ODOSLIDE
      **  CREATE KEY-DEF-AREA FROM ACB ARRAY
       IDENTIFICATION DIVISION.
       PROGRAM-ID. EXFHKEYS.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  ZX1           PIC X(04).
       77  ZX2           PIC X(04).
       77  ZX4           PIC X(08).
       77  Z91           PIC 9(04) COMP-5.
       77  Z92           PIC 9(04) COMP-5.
       77  Z93           PIC 9(08) COMP-5.
       77  Z94           PIC 9(08) COMP-5.
       77  E4            PIC X(08) VALUE 'E4'.
       77  E6            PIC X(08) VALUE 'E6'.
       77  OFF1          PIC X(4)    COMP-X.
       77  OFF2          PIC X(2)    COMP-X.
       01  PROGRAM-DATA.
           05  I                         PIC 9(4) COMP.
           05  J                         PIC 9(4) COMP.
           05  K                         PIC 9(4) COMP.
           05  L                         PIC 9(4) COMP.
           05  X                         PIC 9(4) COMP.
           05  Y                         PIC 9(4) COMP.
           05  Z                         PIC 9(4) COMP.
       01  KEY-DEF-AREA.
           05  GLOBAL-INFORMATION-AREA.
               10  KEY-DEF-LEN             PIC 9(04) COMP-X.
               10  FILLER                  PIC X(04).
               10  NUMBER-OF-KEYS          PIC 9(04) COMP-X.
               10  FILLER                  PIC X(06).
           05  KEY-DEFINITION-PARAMETER-BLOCK
            OCCURS 1 TO 15 TIMES DEPENDING ON NUMBER-OF-KEYS.
               10 COMPONENT-COUNT     PIC 9(4) COMP-X.
               10 OFFSET-TO-COMPONENT PIC 9(4) COMP-X.
               10 KEY-FLAGS           PIC 9(2) COMP-X.
               10 KEY-COMPRESSION     PIC 9(2) COMP-X.
               10 SPARSE-CHARACTER    PIC X.
               10 FILLER              PIC X(9).
           05  COMPONENT-DEFINITION-AREA
             OCCURS 1 TO 15 TIMES DEPENDING ON NUMBER-OF-KEYS.
               10 FILLER                  PIC X(2).
               10 OFFSET-TO-COMPONENT-DEF PIC 9(9) COMP-X.
               10 COMPONENT-LENGTH        PIC 9(9) COMP-X.
       LINKAGE SECTION.
       01  ACB-KEY-GROUP.
           05  ACB-CNT           PIC 9(02).
           05  ACB-KEY-TABLE OCCURS 32 TIMES.
               10  ACB-KEY-LEN   PIC 9(04) COMP-4.
               10  ACB-KEY-LENX REDEFINES ACB-KEY-LEN  PIC X(02).
               10  ACB-KEY-POS   PIC 9(04) COMP-4.
               10  ACB-KEY-POSX REDEFINES ACB-KEY-POS  PIC X(02).
               10  ACB-KEY-DUP PIC 9(02) COMP-X.
               10  ACB-KEY-DUPX REDEFINES ACB-KEY-DUP PIC X(01).
       01 KEY-DEFS PIC X(512).
       PROCEDURE DIVISION USING
                          ACB-KEY-GROUP
                          KEY-DEFS.
       A-010-MAINLINE.
           MOVE LOW-VALUES TO KEY-DEFS
           MOVE LOW-VALUES TO KEY-DEF-AREA
      ** POPULATE THE GLOBAL AREA
           MOVE ACB-CNT TO NUMBER-OF-KEYS
           COMPUTE KEY-DEF-LEN  = (ACB-CNT * 16) + (ACB-CNT * 10) + 14
      ** POPULATE KEY-DEFINITION-PARAMETER-BLOCK & COMPONENT DEFEINTION
           PERFORM A-020-MAKE-KEY-DEF THRU A-020-EXIT
           MOVE KEY-DEF-AREA (1:KEY-DEF-LEN) TO KEY-DEFS (1:KEY-DEF-LEN)
           GOBACK.
       A-010-EXIT.
           EXIT.
       A-020-MAKE-KEY-DEF.
      ** DO THE PRIMARY KEY
           MOVE 1 TO I
           MOVE 1 TO COMPONENT-COUNT (I)
           MOVE 16 TO KEY-FLAGS (I)
           COMPUTE OFF2 = (ACB-CNT * 16) + ((I - 1) * 10) + 14
           MOVE OFF2 TO OFFSET-TO-COMPONENT (I)
           MOVE ACB-KEY-POS (I) TO OFFSET-TO-COMPONENT-DEF (I)
           MOVE 10 TO COMPONENT-LENGTH (I)
      ** IF THERE ARE NO ALTERNATE KEYS EXIT - KEY DEF IS BUILT
           IF ACB-CNT < 2
               GO TO A-020-EXIT
           END-IF
      ** DO ALTERNATE INDEX(S)
           PERFORM VARYING I FROM 2 BY 1 UNTIL I > ACB-CNT
               MOVE 1 TO COMPONENT-COUNT (I)
               COMPUTE OFF2 = (ACB-CNT * 16) + ((I - 1) * 10) + 14
               MOVE OFF2 TO OFFSET-TO-COMPONENT (I)
               IF ACB-KEY-DUP (I) = 1
                   MOVE 64 TO KEY-FLAGS (I)
               ELSE
                   MOVE 16 TO KEY-FLAGS (I)
                   MOVE 0 TO KEY-FLAGS (I)
               END-IF
               MOVE ACB-KEY-POS (I) TO OFFSET-TO-COMPONENT-DEF (I)
               MOVE ACB-KEY-LEN (I) TO COMPONENT-LENGTH (I)
           END-PERFORM.
       A-020-EXIT.
           EXIT.
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:10488: \$COMPILE -fnotrunc -fodoslide prog.cob progs.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc -fodoslide prog.cob progs.cob" "run_file.at:10488"
( $at_check_trace; $COMPILE -fnotrunc -fodoslide prog.cob progs.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10488"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:10490: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:10490"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "READ ------> RECORD-3            0000000003000000000000003          .
WRITE -----> RECORD-3            00000000030000000000000031234567890.
READ PREV -> RECORD-7            0000000007000000000000007          .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10490"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_932
#AT_START_933
at_fn_group_banner 933 'run_file.at:10499' \
  "EXTFH: RELATIVE files" "                          " 4
at_xfail=no
(
  $as_echo "933. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       DATA DIVISION.
       FILE SECTION.
       WORKING-STORAGE SECTION.
       77  I                               PIC 9(04) COMP-5.
       77  FILE-NAME                       PIC X(64).
       77  FILE-NAME-LEN                   PIC 9(04) COMP-X.
       01  FH-ACTION                       PIC X(02).
       01  FILLER REDEFINES FH-ACTION.
           05            PIC X COMP-X.
           05 FH-ACTION2 PIC X COMP-X.
       01  ACTION-CODE REDEFINES FH-ACTION.
           05  ACTION-TYPE    PIC X(01).
               78  COBOL-TYPE                  VALUE X'FA'.
               78  SPECIAL-TYPE                VALUE X'00'.
           05  COBOL-OP       PIC X(01).
               78  OPEN-INPUT                  VALUE X'00'.
               78  OPEN-OUTPUT                 VALUE X'01'.
               78  OPEN-I-O                    VALUE X'02'.
               78  OPEN-EXTEND                 VALUE X'03'.
               78  OPEN-INPUT-NO-REWIND        VALUE X'04'.
               78  OPEN-OUTPUT-NO-REWIND       VALUE X'05'.
               78  OPEN-INPUT-REVERSED         VALUE X'08'.
               78  CLOSE-FILE                  VALUE X'80'.
               78  CLOSE-LOCK                  VALUE X'81'.
               78  CLOSE-NO-REWIND             VALUE X'82'.
               78  CLOSE-REEL-UNIT             VALUE X'84'.
               78  CLOSE-REEL-UNIT-FOR-REMOVAL VALUE X'85'.
               78  CLOSE-REEL-UNIT-NO-REWIND   VALUE X'86'.
               78  READ-SEQ-NO-LOCK            VALUE X'8D'.
               78  READ-SEQ-LOCK               VALUE X'D8'.
               78  READ-SEQ-KEPT-LOCK          VALUE X'D9'.
               78  READ-SEQ                    VALUE X'F5'.
               78  READ-PREVIOUS-NO-LOCK       VALUE X'8C'.
               78  READ-PREVIOUS-LOCK          VALUE X'DE'.
               78  READ-PREVIOUS-KEPT-LOCK     VALUE X'DF'.
               78  READ-PREVIOUS               VALUE X'F9'.
               78  READ-RANDOM-NO-LOCK         VALUE X'8E'.
               78  READ-RANDOM-LOCK            VALUE X'DA'.
               78  READ-RANDOM-KEPT-LOCK       VALUE X'DB'.
               78  READ-RANDOM                 VALUE X'F6'.
               78  READ-DIRECT-NO-LOCK         VALUE X'8F'.
               78  READ-DIRECT-LOCK            VALUE X'D6'.
               78  READ-DIRECT-KEPT-LOCK       VALUE X'D7'.
               78  READ-DIRECT                 VALUE X'C9'.
               78  READ-POSITION               VALUE X'F1'.
               78  WRITE-BEFORE                VALUE X'E1'.
               78  WRITE-AFTER                 VALUE X'E2'.
               78  WRITE-BEFORE-TAB            VALUE X'E3'.
               78  WRITE-AFTER-TAB             VALUE X'E4'.
               78  WRITE-BEFORE-PAGE           VALUE X'E5'.
               78  WRITE-AFTER-PAGE            VALUE X'E6'.
               78  WRITE-RECORD                VALUE X'F3'.
               78  REWRITE-RECORD              VALUE X'F4'.
               78  START-EQUAL-PRIME-KEY       VALUE X'E8'.
               78  START-EQUAL-KEY             VALUE X'E9'.
               78  START-GREATER               VALUE X'EA'.
               78  START-NOT-LESS              VALUE X'EB'.
               78  START-LESS                  VALUE X'FE'.
               78  START-LESS-OR-EQUAL         VALUE X'FF'.
               78  STEP-NEXT-NO-LOCK           VALUE X'90'.
               78  STEP-NEXT-LOCK              VALUE X'D4'.
               78  STEP-NEXT-KEPT-LOCK         VALUE X'D5'.
               78  STEP-NEXT                   VALUE X'CA'.
               78  STEP-FIRST-NO-LOCK          VALUE X'92'.
               78  STEP-FIRST-LOCK             VALUE X'D0'.
               78  STEP-FIRST-KEPT-LOCK        VALUE X'D1'.
               78  STEP-FIRST                  VALUE X'CC'.
               78  DELETE-RECORD               VALUE X'F7'.
               78  DELETE-FILE                 VALUE X'F8'.
               78  UNLOCK-CURRENT              VALUE X'0E'.
               78  COMMIT-ALL                  VALUE X'DC'.
               78  ROLLBACK-ALL                VALUE X'DD'.
               78  GET-FILE-INFO               VALUE X'06'.
               78  OPEN-NEW-INDEX              VALUE X'07'.
               78  GET-NEXT-RECORD             VALUE X'08'.
               78  ADD-KEY-VALUE               VALUE X'09'.
               78  UNLOCK-RECORD               VALUE X'0F'.

       01  FCD-AREA.
            COPY xfhfcd.

       01  RECORD-AREA.
           05  PRIME-KEY                   PIC X(20).
           05  DATA-AREA1                  PIC 9(10).
           05  RECORD-GROWTH               PIC X(50).

       PROCEDURE DIVISION.
       A-000-MAIN.
           MOVE X'FA01' TO FH-ACTION
           PERFORM A-100-OPEN-FILE.
           MOVE SPACES  TO RECORD-AREA
           MOVE 0 TO DATA-AREA1
           PERFORM 7 TIMES
               ADD 1  TO DATA-AREA1
               MOVE DATA-AREA1 TO FCD-RELATIVE-KEY
               MOVE 'RECORD-1'           TO PRIME-KEY
               MOVE DATA-AREA1 (10:1)    TO PRIME-KEY (8:1)
               MOVE X'FAF3'              TO FH-ACTION
               SET FCD-RECORD-ADDRESS    TO ADDRESS OF RECORD-AREA
               PERFORM A-200-CALL-EXTFH
           END-PERFORM.
           PERFORM A-600-CLOSE-FILE.

           MOVE X'FA02' TO FH-ACTION
           PERFORM A-100-OPEN-FILE.
           MOVE 3 TO FCD-RELATIVE-KEY
           PERFORM A-700-UPDATE.
           MOVE 6 TO FCD-RELATIVE-KEY
           PERFORM A-700-UPDATE.
           PERFORM A-600-CLOSE-FILE.
           STOP RUN.

       A-100-Open-File.
           MOVE LOW-VALUES TO FCD-AREA
           MOVE FCD--VERSION-NUMBER TO FCD-VERSION
           MOVE 'TESTREL.DAT' TO FILE-NAME
           MOVE 11 TO FILE-NAME-LEN
           MOVE FILE-NAME-LEN TO FCD-NAME-LENGTH
      **   ACCESS SEQ(0) RANDOM(4) DYNAMIC(8)
           MOVE 8 TO FCD-ACCESS-MODE
      **   ISAM(2) RELATIVE(3) LSEQ(0) SEQ(1)
           MOVE 3 TO FCD-ORGANIZATION
      **   CLOSED(128) INPUT(0) OUTPUT(1) I-O(2) EXTEND(3)
           MOVE 128 TO FCD-OPEN-MODE
      **   FIXED(0) OR VARIABLE(1)
           MOVE 0 TO FCD-RECORDING-MODE
           SET FCD-FILENAME-ADDRESS TO ADDRESS OF FILE-NAME
           MOVE LENGTH OF RECORD-AREA TO FCD-MIN-REC-LENGTH
           MOVE LENGTH OF RECORD-AREA TO FCD-MAX-REC-LENGTH
           MOVE LENGTH OF RECORD-AREA TO FCD-CURRENT-REC-LEN
           PERFORM A-200-CALL-EXTFH.

       A-200-Call-Extfh.
           CALL 'EXTFH' USING FH-ACTION
                              FCD-AREA
           IF FCD-FILE-STATUS NOT = '00' AND NOT = '02'
               IF FCD-STATUS-KEY-1 = '9'
                   DISPLAY "Operation: " FH-ACTION2
                           " FILE ERROR, STATUS: 9/" FCD-BINARY
               ELSE
                   DISPLAY "Operation: " FH-ACTION2
                           " FILE ERROR, STATUS: " FCD-FILE-STATUS
               END-IF
               STOP RUN
           END-IF.
       A-300-READ-RECORD.
           INITIALIZE RECORD-AREA.
           MOVE READ-RANDOM-LOCK     TO COBOL-OP.
           SET FCD-RECORD-ADDRESS    TO ADDRESS OF RECORD-AREA.
           PERFORM A-200-CALL-EXTFH.
           MOVE FCD-RELATIVE-KEY TO I.
       A-400-REWRITE-RECORD.
           MOVE COBOL-TYPE     TO ACTION-TYPE.
           MOVE REWRITE-RECORD TO COBOL-OP.
           PERFORM A-200-CALL-EXTFH.
       A-600-CLOSE-FILE.
           MOVE X'FA80' TO FH-ACTION.
           PERFORM A-200-CALL-EXTFH.
       A-700-UPDATE.
           PERFORM A-300-READ-RECORD.
           DISPLAY 'READ    ' I ': ' RECORD-AREA (1:41) '.'.
           MOVE '1234567890' TO RECORD-GROWTH.
           PERFORM A-400-REWRITE-RECORD.
           PERFORM A-300-READ-RECORD.
           DISPLAY 'REWRITE ' I ': ' RECORD-AREA (1:41) '.'.
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:10676: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:10676"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10676"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:10678: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:10678"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "READ    00003: RECORD-3            0000000003           .
REWRITE 00003: RECORD-3            00000000031234567890 .
READ    00006: RECORD-6            0000000006           .
REWRITE 00006: RECORD-6            00000000061234567890 .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10678"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_933
#AT_START_934
at_fn_group_banner 934 'run_file.at:10688' \
  "EXTFH: reading two files with one FCD" "          " 4
at_xfail=no
(
  $as_echo "934. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION          DIVISION.
      ****************************************************************
       PROGRAM-ID.             prog.
      *AUTHOR.                 TOKYO-SYSTEM-HOUSE.
      *DATE-WRITTEN.           2023/02/28.
      ****************************************************************
       ENVIRONMENT             DIVISION.
      ****************************************************************
       INPUT-OUTPUT            SECTION.
       FILE-CONTROL.
           SELECT  F-SEQ-FILE  ASSIGN          TO    "F-SEQ"
                               ORGANIZATION    IS    SEQUENTIAL
                               FILE STATUS     IS    F-SEQ-STATUS.
           SELECT  F-TXT-FILE  ASSIGN          TO    "F-TXT"
                               ORGANIZATION    IS    LINE SEQUENTIAL
                               FILE STATUS     IS    F-TXT-STATUS.
      ****************************************************************
       DATA                    DIVISION.
      ****************************************************************
       FILE                    SECTION.
       FD  F-SEQ-FILE.
       01  F-SEQ-RECORD.
         03  F-SEQ-DATA        PIC X(5).
       FD  F-TXT-FILE.
       01  F-TXT-RECORD.
         03  F-TXT-DATA        PIC X(10).
       WORKING-STORAGE         SECTION.
       01  F-SEQ-STATUS        PIC X(2).
       01  F-TXT-STATUS        PIC X(2).

       01  OPCODE              PIC X(2).
       78  OP-QUERY-FILE       VALUE X"0006".
       78  OP-OPEN-INPUT       VALUE X"fa00".
       78  OP-OPEN-OUTPUT      VALUE X"fa01".
       78  OP-OPEN-I-O         VALUE X"fa02".
       78  OP-WRITE            VALUE X"faf3".
       78  OP-RELEASE          VALUE X"faf3".
       78  OP-REWRITE          VALUE X"faf4".
       78  OP-READ-NEXT        VALUE X"faf5".
       78  OP-START-EQUAL      VALUE X"fae9".
       78  OP-CLOSE            VALUE X"fa80".

       01  FCD.
           COPY "xfhfcd3.cpy".
       01  EX-FILENAME         PIC X(260).
       01  EX-RECORD-BUFFER    PIC X(32767).
      ****************************************************************
       PROCEDURE               DIVISION.
      ****************************************************************
       MAIN-RTN.
      *    CREATE FILE
           OPEN OUTPUT F-SEQ-FILE.
           MOVE "SEQ01" TO F-SEQ-DATA.
           WRITE F-SEQ-RECORD.
           MOVE "SEQ02" TO F-SEQ-DATA.
           WRITE F-SEQ-RECORD.
           MOVE "SEQ03" TO F-SEQ-DATA.
           WRITE F-SEQ-RECORD.
           MOVE "SEQ04" TO F-SEQ-DATA.
           WRITE F-SEQ-RECORD.
           MOVE "SEQ05" TO F-SEQ-DATA.
           WRITE F-SEQ-RECORD.
           CLOSE F-SEQ-FILE.
           OPEN OUTPUT F-TXT-FILE.
           MOVE "TXTA123456" TO F-TXT-DATA.
           WRITE F-TXT-RECORD.
           MOVE "TXTB123456" TO F-TXT-DATA.
           WRITE F-TXT-RECORD.
           MOVE "TXTC123456" TO F-TXT-DATA.
           WRITE F-TXT-RECORD.
           MOVE "TXTD123456" TO F-TXT-DATA.
           WRITE F-TXT-RECORD.
           CLOSE F-TXT-FILE.

      *    SET FCD
           MOVE LOW-VALUES TO FCD.
           MOVE FCD--VERSION-NUMBER   TO FCD-VERSION.
           SET  FCD-FILENAME-ADDRESS  TO ADDRESS OF EX-FILENAME.
           MOVE 80                    TO FCD-NAME-LENGTH.
           SET FCD-RECORD-ADDRESS     TO ADDRESS OF EX-RECORD-BUFFER.

      *    OPEN first file
           MOVE fcd--sequential-org   TO FCD-ORGANIZATION.
           MOVE "F-SEQ"               TO EX-FILENAME.
           MOVE OP-OPEN-INPUT         TO OPCODE.
           MOVE FCD--DYNAMIC-ACCESS   TO FCD-ACCESS-MODE.
           MOVE 5                     TO FCD-CURRENT-REC-LEN.
           MOVE 5                     TO FCD-MIN-REC-LENGTH.
           MOVE 5                     TO FCD-MAX-REC-LENGTH.
           CALL "EXTFH" USING OPCODE, FCD.
           DISPLAY "OPEN STATUS:"
                                      FCD-STATUS-KEY-1 "/" FCD-BINARY.

      *    READ RECORD
           MOVE OP-READ-NEXT          TO OPCODE.
           MOVE "00" TO FCD-FILE-STATUS.
           PERFORM UNTIL FCD-STATUS-KEY-1 NOT = "0"
               MOVE SPACE                 TO EX-RECORD-BUFFER
               CALL "EXTFH" USING OPCODE, FCD
               DISPLAY "READ NEXT STATUS:"
                                      FCD-STATUS-KEY-1 "/" FCD-BINARY
               DISPLAY "DATA:" EX-RECORD-BUFFER(1:10) '-'
           END-PERFORM.

      *    CLOSE FILE
           MOVE OP-CLOSE              TO OPCODE.
           CALL "EXTFH" USING OPCODE, FCD.
           DISPLAY "CLOSE STATUS:"
                                      FCD-STATUS-KEY-1 "/" FCD-BINARY.

      *    OPEN second file
           MOVE fcd--line-sequential-org   TO FCD-ORGANIZATION.
           MOVE "F-TXT"               TO EX-FILENAME.
           MOVE OP-OPEN-INPUT         TO OPCODE.
           MOVE FCD--DYNAMIC-ACCESS   TO FCD-ACCESS-MODE.
           MOVE 10                    TO FCD-CURRENT-REC-LEN.
           MOVE 10                    TO FCD-MIN-REC-LENGTH.
           MOVE 10                    TO FCD-MAX-REC-LENGTH.
           CALL "EXTFH" USING OPCODE, FCD.
           DISPLAY "OPEN STATUS:"
                                      FCD-STATUS-KEY-1 "/" FCD-BINARY.

      *    READ RECORD
           MOVE OP-READ-NEXT          TO OPCODE.
           MOVE "00" TO FCD-FILE-STATUS.
           PERFORM UNTIL FCD-STATUS-KEY-1 NOT = "0"
               MOVE SPACE                 TO EX-RECORD-BUFFER
               CALL "EXTFH" USING OPCODE, FCD
               DISPLAY "READ NEXT STATUS:"
                                      FCD-STATUS-KEY-1 "/" FCD-BINARY
               DISPLAY "DATA:" EX-RECORD-BUFFER(1:10) '-'
           END-PERFORM.

      *    CLOSE FILE
           MOVE OP-CLOSE              TO OPCODE.
           CALL "EXTFH" USING OPCODE, FCD.
           DISPLAY "CLOSE STATUS:"
                                      FCD-STATUS-KEY-1 "/" FCD-BINARY.

       MAIN-EXT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:10835: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:10835"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10835"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:10837: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:10837"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OPEN STATUS:0/48
READ NEXT STATUS:0/48
DATA:SEQ01     -
READ NEXT STATUS:0/48
DATA:SEQ02     -
READ NEXT STATUS:0/48
DATA:SEQ03     -
READ NEXT STATUS:0/48
DATA:SEQ04     -
READ NEXT STATUS:0/48
DATA:SEQ05     -
READ NEXT STATUS:1/48
DATA:          -
CLOSE STATUS:0/48
OPEN STATUS:0/48
READ NEXT STATUS:0/48
DATA:TXTA123456-
READ NEXT STATUS:0/48
DATA:TXTB123456-
READ NEXT STATUS:0/48
DATA:TXTC123456-
READ NEXT STATUS:0/48
DATA:TXTD123456-
READ NEXT STATUS:1/48
DATA:          -
CLOSE STATUS:0/48
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:10837"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_934
#AT_START_935
at_fn_group_banner 935 'run_file.at:10869' \
  "EXTFH: auto-conversion FCD2 <-> FCD3 on 32bit" "  " 4
at_xfail=no
(
  $as_echo "935. $at_setup_line: testing $at_desc ..."
  $at_traceon


# FIXME: check for missing record / file pointer address should be
#        moved to general EXTFH test

$as_echo "run_file.at:10874" >"$at_check_line_file"
(test "$COB_HAS_64_BIT_POINTER" = "yes") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:10874"


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       DATA DIVISION.
       FILE SECTION.
       WORKING-STORAGE SECTION.

       01  I                       PIC XX COMP-X.

       01  WS-FCD-DDNAME           PIC X(10) VALUE SPACES.
       01  WS-FCD-PTR              POINTER   VALUE NULL.

       01  WS-FCD-SIZE             PIC 9(04) VALUE   0       COMP-5.
       01  WS-FCD-FLAGS            PIC 9(04) VALUE   0       COMP-5.

       01  DISPLAY-BYTE.
          05  DISPLAY-XXX             PIC X(03).
          05  DISPLAY-ZZ9             REDEFINES DISPLAY-XXX
                                      PIC ZZ9.
       01  ACTION-CODE                 pic x(2).
          78  OP-OPEN-INPUT           value x"fa00".
          78  OP-OPEN-OUTPUT          value x"fa01".
          78  OP-OPEN-I-O             value x"fa02".
          78  OP-WRITE                value x"faf3".
          78  OP-RELEASE              value x"faf3".
          78  OP-REWRITE              value x"faf4".
          78  OP-READ-NEXT            value x"faf5".
          78  OP-START-EQUAL          value x"fae9".
          78  OP-CLOSE                value x"fa80".
          78  OP-QUERY-FILE           value x"0006".

       01  DISPLAY-A1-XXX              PIC X(03).
       01  DISPLAY-A1-ZZ9              REDEFINES DISPLAY-A1-XXX
                                      PIC ZZ9.
       01  DISPLAY-A2-XXX              PIC X(03).
       01  DISPLAY-A2-ZZ9              REDEFINES DISPLAY-A2-XXX
                                       PIC ZZ9.

       01  FCD-FILENAME               PIC X(80) value "test.out".
       01  FCD-RECORD                 PIC X(512) value spaces.

       LINKAGE SECTION.

       01  FCD-MAP.
      *********************************************
      * FCD2 definition for Callable File Handler *
      *********************************************
           05  FCD-FILE-STATUS.
               10  FCD-STATUS-KEY-1 PIC X.
               10  FCD-STATUS-KEY-2 PIC X.
               10  FCD-BINARY       REDEFINES FCD-STATUS-KEY-2
                                    PIC X COMP-X.
           05  FCD-LENGTH            PIC XX COMP-X.
           05  FCD-VERSION           PIC X COMP-X.
              78 FCD-VERSION-NUMBER           VALUE 0.

           05  FCD-ORGANIZATION     PIC 9(2) COMP-X.
             78 fcd--line-sequential-org      value 0.
             78 fcd--sequential-org           value 1.
             78 fcd--indexed-org              value 2.
             78 fcd--relative-org             value 3.
             78 fcd--determine-org            value 255. *> see opcode 0006
           05  FCD-ACCESS-MODE      PIC 9(2) COMP-X.
             78 fcd--sequential-access        value 0.
             78 fcd--dup-prime-access         value 1.
             78 fcd--random-access            value 4.
             78 fcd--dynamic-access           value 8.
             78 fcd--status-defined           value h"80".
           05  FCD-OPEN-MODE        PIC 9(2) COMP-X.
             78 fcd--open-input               value 0.
             78 fcd--open-output              value 1.
             78 fcd--open-i-o                 value 2.
             78 fcd--open-extend              value 3.
             78 fcd--open-max                 value 3.
             78 fcd--open-closed              value 128.
           05  FILLER               PIC X(2).
           05  FCD-BLOCK-SIZE       PIC 9(2) COMP-X.
           05  FCD-NAME-LENGTH      PIC 9(4) COMP-X.
           05  FCD-RELADDR-BIG      PIC X(8) COMP-X.
           05  FILLER               PIC X.
           05  FCD-TRANS-LOG        PIC 9(2) COMP-X.
           05  FILLER               PIC X(1).
           05  FCD-LOCK-MODE        PIC 9(2) COMP-X.
             78 fcd--multilock-bit            value h"80".
             78 fcd--writelock-bit            value h"40".
             78 fcd--retry-open-bit           value h"20".
             78 fcd--skip-lock-bit            value h"10".
             78 fcd--retry-lock-bit           value h"08".
             78 fcd--manual-lock-bit          value h"04".
             78 fcd--auto-lock-bit            value h"02".
             78 fcd--exclusive-bit            value h"01".
             78 fcd--sharing-bits
             value fcd--manual-lock-bit + fcd--auto-lock-bit.
           05  FCD-OTHER-FLAGS      PIC 9(2) COMP-X.
             78 fcd--optional-file            value h"80".
             78 fcd--nodetectlock-input       value h"40".
             78 fcd--not-optional             value h"20".
             78 fcd--external-name            value h"10".
             78 fcd--get-info                 value h"08".
             78 fcd--nodetectlock             value h"04".
             78 fcd--multiple-reel            value h"02".
             78 fcd--line-advancing           value h"01".
             78 fcd--special-sequential
             value fcd--optional-file
             + fcd--multiple-reel + fcd--line-advancing.
           05  FILLER               PIC X(2).
           05  FCD-HANDLE           USAGE POINTER.
           05  FCD-PERCENT          PIC 9(2) COMP-X.
           05  FCD-REC-COUNT-SET    REDEFINES FCD-PERCENT
                                    PIC 9(2) COMP-X.
           05  FCD-STATUS-TYPE      PIC 9(2) COMP-X.
           05  FCD-FILE-FORMAT      PIC 9(2) COMP-X.
           05  FILLER               PIC X(3).
           05  FCD-MAX-REC-LENGTH   PIC XX   COMP-X.
           05  FILLER               PIC X(2).
           05  FCD-MVS-FLAGS        PIC 9(2) COMP-X.
           05  FCD-RELATIVE-KEY     PIC 9(9) COMP-X.
           05  FCD-RECORDING-MODE   PIC 9(2) COMP-X.
               78 fcd--recmode-fixed            value 0.
               78 fcd--recmode-variable         value 1.
           05  FCD-CURRENT-REC-LEN  PIC XX   COMP-X.
           05  FCD-MIN-REC-LENGTH   PIC XX   COMP-X.
           05  FCD-KEY-ID           PIC 9(4) COMP-X.
           05  FCD-LINE-COUNT       REDEFINES FCD-KEY-ID
                                    PIC 9(4) COMP-X.
           05                       REDEFINES FCD-KEY-ID.
               10  FCD-USE-FILES    PIC X COMP-X.
               10  FCD-GIVE-FILES   PIC X COMP-X.
           05  FCD-KEY-LENGTH       PIC 9(4) COMP-X.
           05  FCD-RECORD-ADDRESS   USAGE POINTER.
           05  FCD-FILENAME-ADDRESS USAGE POINTER.
           05  FCD-KEY-DEF-ADDRESS  USAGE POINTER.
           05  FCD-COL-SEQ-ADDRESS  USAGE POINTER.
           05  FCD-RELADDR-OFFSET   PIC 9(9) COMP-X.
           05  FCD-RELADDR          REDEFINES FCD-RELADDR-OFFSET
                                    PIC 9(9) COMP-X.
           05  FCD-FILDEF-ADDRESS   REDEFINES FCD-RELADDR-OFFSET
                                    USAGE POINTER.
           05  FCD-NLS-ID           PIC 9(4) COMP-X.
           05  FCD-DATA-COMPRESS    PIC 9(2) COMP-X.
           05  FCD-SESSION-ID       PIC 9(9) COMP-X.
           05  FCD-FS-FILE-ID       PIC 9(4) COMP-X.
           05  FCD-MAX-REL-KEY      PIC 9(9) COMP-X.
           05  FCD-FLAGS-1          PIC 99   COMP-X.
           05  FCD-BLOCKING         PIC 99   COMP-X.
           05  FCD-ADDITIONAL-STATUS REDEFINES FCD-BLOCKING
                                    PIC X    COMP-X.
           05  FCD-LOCKTYPES        PIC 99   COMP-X.
             78 fcd--interlang-locking        value h"80".
             78 fcd--allow-readers            value h"40".
             78 fcd--separate-lock-file       value h"20".
             78 fcd--single-open              value h"10".
             78 fcd--nfs-file-lock            value h"08".
             78 fcd--nfs-file-lock-hp         value h"04".
             78 fcd--nfs-file-locks
             value fcd--nfs-file-lock + fcd--nfs-file-lock-hp.
           05  FCD-FS-FLAGS         PIC 99   COMP-X.
           05  FCD-CONFIG-FLAGS     PIC 99   COMP-X.
           05  FCD-MISC-FLAGS       PIC 99   COMP-X.
           05  FCD-CONFIG-FLAGS2    PIC 99   COMP-X.
           05  FCD-IDXCACHE-SIZE    PIC 99   COMP-X.
           05  FCD-IDXCACHE-BUFFS   PIC 99   COMP-X.
           05  FCD-INTERNAL-FLAGS-1   PIC X COMP-X.
           05  FCD-INTERNAL-FLAGS-2   PIC X COMP-X.

      *================================================================*
       PROCEDURE DIVISION.
      *----------------------------------------------------------------*
       000-MAIN.

          PERFORM 100-OPEN.

          PERFORM VARYING I FROM 1 BY 1 UNTIL I > 10
            MOVE I TO DISPLAY-A1-ZZ9
            MOVE DISPLAY-A1-ZZ9 TO FCD-RECORD
            MOVE 10 TO FCD-CURRENT-REC-LEN
            IF I = 3 OR 5
                MOVE "Have a great day" TO FCD-RECORD (5:20)
                MOVE 25 TO FCD-CURRENT-REC-LEN
            END-IF
            IF I = 8
                MOVE "Enjoy the show" TO FCD-RECORD (5:20)
                MOVE 19 TO FCD-CURRENT-REC-LEN
            END-IF
            PERFORM 300-WRITE
          END-PERFORM.

          PERFORM 400-CLOSE.

          MOVE OP-OPEN-INPUT TO ACTION-CODE
          PERFORM 800-CALL-EXTFH
          DISPLAY "Listing " WS-FCD-DDNAME '.'.
          PERFORM VARYING I FROM 1 BY 1 UNTIL I > 10
            PERFORM 350-READ
            DISPLAY FCD-CURRENT-REC-LEN ": "
                    FCD-RECORD (1:FCD-CURRENT-REC-LEN) " :"
          END-PERFORM.
          PERFORM 400-CLOSE.
          STOP RUN.

      *----------------------------------------------------------------*
      *    Process the open request
      *
       100-OPEN.

          MOVE "TESTOUT" TO WS-FCD-DDNAME

          MOVE LENGTH OF FCD-MAP TO WS-FCD-SIZE
          DISPLAY "FCD SIZE " WS-FCD-SIZE '.'.
          DISPLAY "Writing " WS-FCD-DDNAME '.'.

          IF WS-FCD-PTR EQUAL NULL
             ALLOCATE ws-fcd-size CHARACTERS
                           returning WS-FCD-PTR

             SET  ADDRESS OF FCD-MAP  TO WS-FCD-PTR
             MOVE LOW-VALUES          TO FCD-MAP
             MOVE WS-FCD-SIZE         TO FCD-LENGTH
             MOVE FCD-VERSION-NUMBER  TO FCD-VERSION
             MOVE "00"                TO FCD-FILE-STATUS
             MOVE FCD--STATUS-DEFINED TO FCD-ACCESS-MODE
             MOVE FCD--OPEN-CLOSED    TO FCD-OPEN-MODE
             MOVE FCD--EXTERNAL-NAME  TO FCD-OTHER-FLAGS
             SET  FCD-HANDLE          TO NULL
             MOVE 8                   TO FCD-NAME-LENGTH
             SET  FCD-FILENAME-ADDRESS TO ADDRESS
                                       OF WS-FCD-DDNAME
             SET  FCD-KEY-DEF-ADDRESS TO NULL
             MOVE FCD--ALLOW-READERS  TO FCD-LOCKTYPES
          ELSE
             SET  ADDRESS OF FCD-MAP  TO WS-FCD-PTR
             IF FCD-OPEN-MODE NOT = fcd--open-closed
                DISPLAY "ERRROR - FILE ALREADY OPEN"
                STOP RUN
             END-IF
          END-IF

          MOVE FCD--LINE-SEQUENTIAL-ORG TO FCD-ORGANIZATION
          MOVE FCD--RECMODE-FIXED       TO FCD-RECORDING-MODE
          MOVE 10 TO FCD-MIN-REC-LENGTH
          MOVE 50 TO FCD-MAX-REC-LENGTH

      *  Check for missing record address
      *   MOVE OP-OPEN-OUTPUT TO ACTION-CODE
      *   PERFORM 800-CALL-EXTFH

          SET  FCD-RECORD-ADDRESS    TO ADDRESS OF FCD-RECORD
          SET  FCD-FILENAME-ADDRESS  TO NULL
      *  Check for missing filename address
          MOVE OP-OPEN-OUTPUT TO ACTION-CODE
          PERFORM 800-CALL-EXTFH

      *  Now set record address
          SET  FCD-RECORD-ADDRESS    TO ADDRESS OF FCD-RECORD
          SET  FCD-FILENAME-ADDRESS  TO ADDRESS OF WS-FCD-DDNAME
          MOVE OP-OPEN-OUTPUT TO ACTION-CODE
          PERFORM 800-CALL-EXTFH
          .

      *----------------------------------------------------------------*
      *    Process the write request
      *----------------------------------------------------------------*
       300-WRITE.
          MOVE OP-WRITE TO ACTION-CODE
          PERFORM 800-CALL-EXTFH
          .

      *----------------------------------------------------------------*
      *    Process the read request
      *----------------------------------------------------------------*
       350-READ.
          MOVE OP-READ-NEXT TO ACTION-CODE
          PERFORM 800-CALL-EXTFH
          .

      *----------------------------------------------------------------*
      *    Process the close request
      *----------------------------------------------------------------*
       400-CLOSE.
          MOVE OP-CLOSE               TO ACTION-CODE
          PERFORM 800-CALL-EXTFH
          .
      *----------------------------------------------------------------*
      *    External file handler interface -- all I/O goes through here
      *
        800-CALL-EXTFH.

           MOVE "00"                   TO FCD-FILE-STATUS
           CALL "EXTFH" USING ACTION-CODE, FCD-MAP

           IF FCD-STATUS-KEY-1 NOT = "0"
               IF FCD-STATUS-KEY-1 = "9"
                  IF FCD-BINARY = 161
                      DISPLAY "EXTFH Status: 9/" FCD-BINARY
                      DISPLAY "FCD2 is not accepted!"
                      STOP RUN
                  END-IF
                  DISPLAY "EXTFH Status: 9/" FCD-BINARY
                  IF FCD-BINARY = 141
                      DISPLAY "FCD2 is missing value(s)!"
                  END-IF
               ELSE
                  DISPLAY "EXTFH Status: " FCD-FILE-STATUS
               END-IF
            END-IF
            IF FCD-STATUS-KEY-1 = "9" AND FCD-BINARY = 199
               MOVE "10" TO FCD-FILE-STATUS
            END-IF
            .
_ATEOF


# FIXME: by default comp-x should not be truncated (see trunk)
{ set +x
$as_echo "$at_srcdir/run_file.at:11193: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "run_file.at:11193"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:11193"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:11195: TESTOUT=TEST-OUT \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "TESTOUT=TEST-OUT $COBCRUN_DIRECT ./prog" "run_file.at:11195"
( $at_check_trace; TESTOUT=TEST-OUT $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:293: warning: ERROR: EXTFH called with no filename pointer
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "FCD SIZE 00100.
Writing TESTOUT   .
EXTFH Status: 9/141
FCD2 is missing value(s)!
Listing TESTOUT   .
00003:   1 :
00003:   2 :
00020:   3 Have a great day :
00003:   4 :
00020:   5 Have a great day :
00003:   6 :
00003:   7 :
00018:   8 Enjoy the show :
00003:   9 :
00003:  10 :
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:11195"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
  1
  2
  3 Have a great day
  4
  5 Have a great day
  6
  7
  8 Enjoy the show
  9
 10
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:11230: diff reference TEST-OUT"
at_fn_check_prepare_trace "run_file.at:11230"
( $at_check_trace; diff reference TEST-OUT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:11230"
$at_failed && at_fn_log_failure  \
"TEST-OUT"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_935
#AT_START_936
at_fn_group_banner 936 'run_file.at:11235' \
  "RELATIVE Multi-Record" "                          " 4
at_xfail=no
(
  $as_echo "936. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE ASSIGN EXTERNAL RELVAR
           ORGANIZATION RELATIVE
           ACCESS IS SEQUENTIAL
           RELATIVE KEY IS REC-NUM
           FILE STATUS IS CUST-STAT.

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-TYPE                         PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(4) COMP-4.
           10  CM-PK-DATE                      PICTURE S9(14) COMP-3.
           10  CM-TRAILER                      PICTURE X(251).

       01  TSP2-RECORD.
           10  C2-CUST-NUM                     PICTURE X(8).
           10  C2-TYPE                         PICTURE X.
           10  C2-COMPANY                      PICTURE X(25).
           10  C2-ADDRESS                      PICTURE X(25).
           10  C2-DISK                         PICTURE X(8).
           10  C2-NO-TERMINALS                 PICTURE 9(4) COMP-4.
           10  C2-PK-DATE                      PICTURE S9(14) COMP-3.


       WORKING-STORAGE SECTION.

       78  MAX-SUB           VALUE  6.
       77  CUST-STAT                           PICTURE X(2).
       77  REC-NUM           VALUE  1          BINARY-SHORT UNSIGNED.

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS   REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.

         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 13.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 10.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 254.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.
       01  WORK-AREA.
           05  SUB                             BINARY-SHORT UNSIGNED.
               88  ODD-RECORD                  VALUE 1 3 5.


       PROCEDURE DIVISION.

           PERFORM LOADFILE.
           OPEN INPUT FLATFILE.
           DISPLAY "Initial Re-Read Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           IF CUST-STAT = "30"
               CLOSE FLATFILE
           STOP RUN
           END-IF
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           DISPLAY "For Rewrite Open I-O Sts:" CUST-STAT
           PERFORM READ-RECORD
           ADD 1 TO C2-NO-TERMINALS
           REWRITE TSP2-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" C2-NO-TERMINALS.
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           DISPLAY "For Rewrite/Delete Open I-O Sts:" CUST-STAT
           PERFORM READ-RECORD
           ADD 1 TO C2-NO-TERMINALS
           REWRITE TSP2-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" C2-NO-TERMINALS.
           PERFORM READ-RECORD
           DELETE FLATFILE
           DISPLAY "DELETE " CM-CUST-NUM " Sts " CUST-STAT.
           CLOSE FLATFILE.

           OPEN INPUT FLATFILE.
           DISPLAY "Re-list Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.

           OPEN EXTEND FLATFILE.
           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > 2.
           CLOSE FLATFILE.

           OPEN INPUT FLATFILE.
           DISPLAY "Re-list afer Extend Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.
           STOP RUN RETURNING 0.

       LOADFILE.
           DISPLAY "Loading sample program data file."
                            UPON CONSOLE.

           OPEN OUTPUT FLATFILE.

           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample program data file load complete."
                            UPON CONSOLE.
           CLOSE FLATFILE.

       READ-RECORD.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE SPACES                       TO TSP2-RECORD.
           READ FLATFILE
           IF CUST-STAT NOT = "00"
             DISPLAY "Read Status: " CUST-STAT
           ELSE
           IF CM-TYPE = SPACES
             DISPLAY "Read  " CM-CUST-NUM " #:" REC-NUM
                     " Trms:" CM-NO-TERMINALS
           ELSE
             DISPLAY "Read2 " C2-CUST-NUM " #:" REC-NUM
                     " Trms:" C2-NO-TERMINALS
           END-IF.
      *
       LOAD-RECORD.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE SPACES                       TO TSP2-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.
           MOVE 20070319                     TO CM-PK-DATE.
           IF SUB = 1 OR 4 OR 6
               MOVE -20070319                 TO CM-PK-DATE.
      *
           IF ODD-RECORD
               MOVE "8417"                   TO C2-DISK
      *        MOVE CM-CUST-NUM              TO C2-CUST-NUM
               MOVE '2'                      TO C2-TYPE
      *        MOVE CM-COMPANY               TO C2-COMPANY
               MOVE CM-PK-DATE               TO C2-PK-DATE
               MOVE CM-NO-TERMINALS          TO C2-NO-TERMINALS
               MOVE DATA-ADDRESS (SUB)       TO C2-ADDRESS
               WRITE TSP2-RECORD
           ELSE
               MOVE "8470"                   TO CM-DISK
               MOVE ' '                      TO CM-TYPE
               WRITE TSPFL-RECORD.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:11443: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:11443"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:11443"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:11445: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:11445"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Loading sample program data file.
Sample program data file load complete.
Initial Re-Read Open Sts:00
Read2 ALP00000 #:00001 Trms:0010
Read  BET00000 #:00002 Trms:0013
Read2 GAM00000 #:00003 Trms:0075
Read  DEL00000 #:00004 Trms:0010
Read2 EPS00000 #:00005 Trms:0090
Read  FOR00000 #:00006 Trms:0254
Read Status: 10
For Rewrite Open I-O Sts:00
Read2 ALP00000 #:00001 Trms:0010
REWRITE ALP00000 Sts 00 Trms:0011
For Rewrite/Delete Open I-O Sts:00
Read2 ALP00000 #:00001 Trms:0011
REWRITE ALP00000 Sts 00 Trms:0012
Read  BET00000 #:00002 Trms:0013
DELETE BET00000 Sts 00
Re-list Open Sts:00
Read2 ALP00000 #:00001 Trms:0012
Read2 GAM00000 #:00003 Trms:0075
Read  DEL00000 #:00004 Trms:0010
Read2 EPS00000 #:00005 Trms:0090
Read  FOR00000 #:00006 Trms:0254
Read Status: 10
Re-list afer Extend Open Sts:00
Read2 ALP00000 #:00001 Trms:0012
Read2 GAM00000 #:00003 Trms:0075
Read  DEL00000 #:00004 Trms:0010
Read2 EPS00000 #:00005 Trms:0090
Read  FOR00000 #:00006 Trms:0254
Read2 ALP00000 #:00007 Trms:0010
Read  BET00000 #:00008 Trms:0013
Read Status: 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:11445"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_936
#AT_START_937
at_fn_group_banner 937 'run_file.at:11485' \
  "INDEXED File READ/DELETE/READ" "                  " 4
at_xfail=no
(
  $as_echo "937. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_file.at:11488" >"$at_check_line_file"
(test "$COB_HAS_ISAM" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_file.at:11488"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.

       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT TSPFILE
           ASSIGN TO EXTERNAL TSPFILE
           ORGANIZATION INDEXED ACCESS DYNAMIC
           RECORD KEY IS CM-CUST-NUM

           ALTERNATE RECORD KEY IS SPLIT-KEY2
           SOURCE IS CM-TELEPHONE WITH DUPLICATES

           ALTERNATE RECORD KEY IS SPLIT-KEY3
           SOURCE IS CM-DISK,CM-TAPE WITH DUPLICATES
      *         SUPPRESS WHEN ALL "*"
           FILE STATUS IS CUST-STAT
           .

       DATA  DIVISION.
       FILE SECTION.
       FD  TSPFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           05  TSPFL-REC.
           10  CM-CUST-NUM.
             15  CM-CUST-PRE                   PICTURE X(3).
             15  CM-CUST-NNN                   PICTURE X(5).
           10  CM-STATUS                       PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-ADDRESS-1                    PICTURE X(25).
           10  CM-ADDRESS-2                    PICTURE X(25).
           10  CM-ADDRESS-3                    PICTURE X(25).
           10  CM-TELEPHONE                    PICTURE 9(10).
           10  CM-DP-MGR                       PICTURE X(25).
           10  CM-MACHINE                      PICTURE X(8).
           10  CM-MEMORY                       PICTURE X(4).
           10  CM-DISK                         PICTURE X(8).
           10  CM-TAPE                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).

       WORKING-STORAGE SECTION.

       01  CUST-STAT.
           05  STAT-1 PICTURE 9(4) COMP SYNC.
           05  FILLER REDEFINES STAT-1.
               10  STAT-X1 PIC X COMP-X.
               10  STAT-X2 PIC X COMP-X.
       77  DATA-STAT                      PICTURE XX.
       77  ISAM-STAT                      PICTURE XX.
       77  BYTE-1  PICTURE 9(3).
       77  BYTE-2  PICTURE 9(3).
       78  MAX-SUB           VALUE  16.
       77  SAV-KEY   PIC X(8).

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".
           05  FILLER PIC X(8) VALUE "GIB00000".
           05  FILLER PIC X(8) VALUE "H&J00000".
           05  FILLER PIC X(8) VALUE "INC00000".
           05  FILLER PIC X(8) VALUE "JOH00000".
           05  FILLER PIC X(8) VALUE "KON00000".
           05  FILLER PIC X(8) VALUE "LEW00000".
           05  FILLER PIC X(8) VALUE "MOR00000".
           05  FILLER PIC X(8) VALUE "NEW00000".
           05  FILLER PIC X(8) VALUE "OLD00000".
           05  FILLER PIC X(8) VALUE "PRE00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
           05  FILLER PIC X(25) VALUE "GIBRALTER LIFE INSURANCE ".
           05  FILLER PIC X(25) VALUE "H & J PLUMBING SUPPLIES  ".
           05  FILLER PIC X(25) VALUE "INCREMENTAL BACKUP CORP. ".
           05  FILLER PIC X(25) VALUE "JOHNSON BOATING SUPPLIES ".
           05  FILLER PIC X(25) VALUE "KONFLAB PLASTIC PRODUCTS.".
           05  FILLER PIC X(25) VALUE "LEWISTON GRAPHICS LTD.   ".
           05  FILLER PIC X(25) VALUE "MORNINGSIDE CARPENTRY.   ".
           05  FILLER PIC X(25) VALUE "NEW WAVE SURF SHOPS INC. ".
           05  FILLER PIC X(25) VALUE "OLD TYME PIZZA MFG. CO.  ".
           05  FILLER PIC X(25) VALUE "PRESTIGE OFFICE FURNITURE".

         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-1-TBL.

           05  FILLER PIC X(25) VALUE "123 MAIN STREET          ".
           05  FILLER PIC X(25) VALUE "1090 2ND AVE. WEST       ".
           05  FILLER PIC X(25) VALUE "1401 JEFFERSON BLVD.     ".
           05  FILLER PIC X(25) VALUE "1620 ARIZONA WAY         ".
           05  FILLER PIC X(25) VALUE "1184 EAST FIRST STREET   ".
           05  FILLER PIC X(25) VALUE "114 JOHN F. KENNEDY AVE. ".
           05  FILLER PIC X(25) VALUE "650 LIBERTY CRESCENT     ".
           05  FILLER PIC X(25) VALUE "77 SUNSET BLVD.          ".
           05  FILLER PIC X(25) VALUE "10908 SANTA MONICA BLVD. ".
           05  FILLER PIC X(25) VALUE "1134 PARIS ROAD          ".
           05  FILLER PIC X(25) VALUE "808 NORTHWEST MAIN ST.   ".
           05  FILLER PIC X(25) VALUE "9904 QUEEN STREET        ".
           05  FILLER PIC X(25) VALUE "1709 DUNDAS CRESCENT W.  ".
           05  FILLER PIC X(25) VALUE "3240 MARIS AVENUE        ".
           05  FILLER PIC X(25) VALUE "1705 WISCONSIN ROAD      ".
           05  FILLER PIC X(25) VALUE "114A MAPLE GROVE         ".

         02  DATA-ADDRESS-1 REDEFINES DATA-ADDRESS-1-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "SAN DIEGO ".
           05  FILLER PIC X(10) VALUE "LOS RIOS  ".
           05  FILLER PIC X(10) VALUE "MADISON   ".
           05  FILLER PIC X(10) VALUE "WILBUR    ".
           05  FILLER PIC X(10) VALUE "TOPEKA    ".
           05  FILLER PIC X(10) VALUE "SEATTLE   ".
           05  FILLER PIC X(10) VALUE "NEW JERSEY".
           05  FILLER PIC X(10) VALUE "FORT WAYNE".
           05  FILLER PIC X(10) VALUE "COLUMBUS  ".
           05  FILLER PIC X(10) VALUE "RICHMOND  ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS-2 REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-ADDRESS-3-TBL.

           05  FILLER PIC X(10) VALUE "N.Y.      ".
           05  FILLER PIC X(10) VALUE "GEORGIA   ".
           05  FILLER PIC X(10) VALUE "D.C.      ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CANADA    ".
           05  FILLER PIC X(10) VALUE "CALIFORNIA".
           05  FILLER PIC X(10) VALUE "NEW MEXICO".
           05  FILLER PIC X(10) VALUE "WISCONSIN ".
           05  FILLER PIC X(10) VALUE "DELAWARE  ".
           05  FILLER PIC X(10) VALUE "KANSAS    ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "N.J.      ".
           05  FILLER PIC X(10) VALUE "COLORADO  ".
           05  FILLER PIC X(10) VALUE "OHIO      ".
           05  FILLER PIC X(10) VALUE "VIRGINIA  ".
           05  FILLER PIC X(10) VALUE "N.Y.      ".

         02  DATA-ADDRESS-3 REDEFINES DATA-ADDRESS-3-TBL
                                       PIC X(10) OCCURS MAX-SUB.
         02  DATA-TELEPHONE-TBL.

           05  FILLER PIC 9(10) VALUE 3131234432.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 8372487274.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 5292398745.
           05  FILLER PIC 9(10) VALUE 8009329492.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 6546456333.
           05  FILLER PIC 9(10) VALUE 3455445444.
           05  FILLER PIC 9(10) VALUE 6456445643.
           05  FILLER PIC 9(10) VALUE 7456434355.
           05  FILLER PIC 9(10) VALUE 6554456433.
           05  FILLER PIC 9(10) VALUE 4169898509.
           05  FILLER PIC 9(10) VALUE 7534587453.
           05  FILLER PIC 9(10) VALUE 8787458374.
           05  FILLER PIC 9(10) VALUE 4169898509.

         02  DATA-TELEPHONE REDEFINES DATA-TELEPHONE-TBL
                                       PIC 9(10) OCCURS MAX-SUB.
         02  DATA-DP-MGR-TBL.

           05  FILLER PIC X(20) VALUE "MR. DAVE HARRIS     ".
           05  FILLER PIC X(20) VALUE "MS. JANICE SILCOX   ".
           05  FILLER PIC X(20) VALUE "MR. ALLAN JONES     ".
           05  FILLER PIC X(20) VALUE "MR. PETER MACKAY    ".
           05  FILLER PIC X(20) VALUE "MRS. DONNA BREWER   ".
           05  FILLER PIC X(20) VALUE "MR. MICHAEL SMYTHE  ".
           05  FILLER PIC X(20) VALUE "MR. D.A. MORRISON   ".
           05  FILLER PIC X(20) VALUE "MR. BRIAN PATTERSON ".
           05  FILLER PIC X(20) VALUE "MR. DARRYL TOWNSEND ".
           05  FILLER PIC X(20) VALUE "MS. VALERIE HARPER  ".
           05  FILLER PIC X(20) VALUE "MR. FRED MILLER     ".
           05  FILLER PIC X(20) VALUE "MR. DONALD FISCHER  ".
           05  FILLER PIC X(20) VALUE "MR. STEVEN YOURDIN  ".
           05  FILLER PIC X(20) VALUE "MS. Goldie Hawn     ".
           05  FILLER PIC X(20) VALUE "MS. ALICE WINSTON   ".
           05  FILLER PIC X(20) VALUE "MR. THOMAS JEFFERSON".

         02  DATA-DP-MGR    REDEFINES DATA-DP-MGR-TBL
                                       PIC X(20) OCCURS MAX-SUB.
         02  DATA-MACHINE-TBL.

           05  FILLER PIC X(8) VALUE "UNI-9030".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-80/3".
           05  FILLER PIC X(8) VALUE "UNI-80/5".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/6".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-80/8".
           05  FILLER PIC X(8) VALUE "UNI-9040".
           05  FILLER PIC X(8) VALUE "UNI-9040".

         02  DATA-MACHINE   REDEFINES DATA-MACHINE-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(3) COMP-3 VALUE 85.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 75.
           05  FILLER PIC 9(3) COMP-3 VALUE 45.
           05  FILLER PIC 9(3) COMP-3 VALUE 90.
           05  FILLER PIC 9(3) COMP-3 VALUE 107.
           05  FILLER PIC 9(3) COMP-3 VALUE 67.
           05  FILLER PIC 9(3) COMP-3 VALUE 32.
           05  FILLER PIC 9(3) COMP-3 VALUE 16.
           05  FILLER PIC 9(3) COMP-3 VALUE 34.
           05  FILLER PIC 9(3) COMP-3 VALUE 128.
           05  FILLER PIC 9(3) COMP-3 VALUE 64.
           05  FILLER PIC 9(3) COMP-3 VALUE 110.
           05  FILLER PIC 9(3) COMP-3 VALUE 324.
           05  FILLER PIC 9(3) COMP-3 VALUE 124.
           05  FILLER PIC 9(3) COMP-3 VALUE 86.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) COMP-3 OCCURS MAX-SUB.

       78  REC-MAX                    VALUE MAX-SUB.
       01  WORK-AREA.
           05  REC-NUM                BINARY-SHORT UNSIGNED VALUE 0.
           05  SUB                    BINARY-SHORT UNSIGNED.
               88  ODD-RECORD         VALUE 1 3 5 7 9 10 11.
               88  NULL-KEY           VALUE 4 5 8 12 14.

           05  TSPFL-KEY              PICTURE X(8).

       PROCEDURE DIVISION.

       MAINFILE.
           DISPLAY "Loading sample data file."
                            UPON CONSOLE.
           PERFORM LOADFILE.
           DISPLAY "Sample data file load complete."
                            UPON CONSOLE.
           PERFORM LIST-FILE.
           PERFORM LIST-PHONE.
           PERFORM DELSEQ-FILE.
           PERFORM LIST-PHONE.
           PERFORM LOADFILE.
           PERFORM LIST-PHONE.
           PERFORM DELPRV-FILE.
           PERFORM LIST-PHONE.
      *    PERFORM DEL-FILE.
           STOP RUN.

       LOADFILE.
           OPEN OUTPUT TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "05"
               DIVIDE STAT-1 BY 256 GIVING BYTE-1 REMAINDER BYTE-2
               DISPLAY "Error " CUST-STAT " " BYTE-1 " " BYTE-2
               " opening 'testisam' file"
                                UPON CONSOLE
               STOP RUN
           END-IF.

           PERFORM 1000-LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           CLOSE TSPFILE.

       DEL-FILE.
           DISPLAY "Rewrite sample data file: " CUST-STAT
                            UPON CONSOLE.

           OPEN I-O TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "05"
               DIVIDE STAT-1 BY 256 GIVING BYTE-1 REMAINDER BYTE-2
               DISPLAY "Error " CUST-STAT " " BYTE-1 " " BYTE-2
               " opening 'testisam' file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           MOVE "DEL00000" TO CM-CUST-NUM
           READ TSPFILE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read lock " CM-CUST-NUM
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           END-IF
           MOVE "INC00000" TO CM-CUST-NUM
           READ TSPFILE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read lock " CM-CUST-NUM
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           END-IF

           DISPLAY "Sample data file rewrite complete."
                            UPON CONSOLE.
           CLOSE TSPFILE.

       DELSEQ-FILE.
           DISPLAY "Test Read/Delete" UPON CONSOLE.
           MOVE "00" TO  CUST-STAT.
           OPEN I-O TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "05"
               DIVIDE STAT-1 BY 256 GIVING BYTE-1 REMAINDER BYTE-2
               DISPLAY "Error " CUST-STAT " " BYTE-1 " " BYTE-2
               " opening 'testisam' file"
                                UPON CONSOLE
               STOP RUN
           END-IF.
           MOVE "INC00000" TO CM-CUST-NUM
           READ TSPFILE
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " random"
           END-IF
           MOVE "ALP00000" TO CM-CUST-NUM
           READ TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " random"
           END-IF
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           ELSE
               DISPLAY "   Read: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           MOVE "PRE00000" TO CM-CUST-NUM
           READ TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " random"
           END-IF
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Expected " CUST-STAT
                       " after delete " CM-CUST-NUM
           ELSE
               DISPLAY "   Read: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF

           MOVE SPACES TO TSPFL-RECORD
           MOVE '4169898509' TO CM-TELEPHONE
           START TSPFILE KEY GREATER THAN OR EQUAL TO SPLIT-KEY2
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           PERFORM 4 TIMES
             READ TSPFILE NEXT RECORD
             IF  CUST-STAT NOT = "00"
             AND CUST-STAT NOT = "02"
                 DISPLAY "Error " CUST-STAT " start " CM-CUST-NUM
             ELSE
                 DISPLAY "Initial: " CM-CUST-NUM " " CM-TELEPHONE
                 IF CM-TELEPHONE = '4169898509'
                    MOVE CM-CUST-NUM TO SAV-KEY
                 END-IF
             END-IF
           END-PERFORM
           MOVE SPACES TO TSPFL-RECORD
           MOVE '4169898509' TO CM-TELEPHONE
           START TSPFILE KEY GREATER THAN OR EQUAL TO SPLIT-KEY2
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " start " CM-CUST-NUM
           ELSE
               DISPLAY "  Start: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           ELSE
               DISPLAY "   Next: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " sequential"
           END-IF
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           ELSE
               DISPLAY "   Next: " CM-CUST-NUM " " CM-TELEPHONE
               IF CM-CUST-NUM NOT = SAV-KEY
                  DISPLAY "Problem! Expected:" SAV-KEY
               END-IF
           END-IF
           READ TSPFILE NEXT RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           ELSE
               DISPLAY "   Next: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " sequential"
           END-IF

           CLOSE TSPFILE.

       DELPRV-FILE.
           DISPLAY "Read Prev/Delete" UPON CONSOLE.
           MOVE "00" TO  CUST-STAT.
           OPEN I-O TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "05"
               DIVIDE STAT-1 BY 256 GIVING BYTE-1 REMAINDER BYTE-2
               DISPLAY "Error " CUST-STAT " " BYTE-1 " " BYTE-2
               " opening 'testisam' file"
                                UPON CONSOLE
               STOP RUN
           END-IF.

           MOVE SPACES TO TSPFL-RECORD
           MOVE '5292398745' TO CM-TELEPHONE
           START TSPFILE KEY LESS THAN SPLIT-KEY2
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           PERFORM VARYING REC-NUM FROM 1 BY 1
                     UNTIL REC-NUM > 4
             READ TSPFILE PREVIOUS RECORD
             IF  CUST-STAT NOT = "00"
             AND CUST-STAT NOT = "02"
                 DISPLAY "Error " CUST-STAT " start " CM-CUST-NUM
             ELSE
                 DISPLAY REC-NUM " Initial: " CM-CUST-NUM
                         " " CM-TELEPHONE
                 IF REC-NUM = 3
                    MOVE CM-CUST-NUM TO SAV-KEY
                 END-IF
             END-IF
           END-PERFORM
           MOVE SPACES TO TSPFL-RECORD
           MOVE '5292398745' TO CM-TELEPHONE
           START TSPFILE KEY LESS THAN SPLIT-KEY2
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           READ TSPFILE PREVIOUS RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " start " CM-CUST-NUM
           ELSE
               DISPLAY "  Start: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           READ TSPFILE PREVIOUS RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           ELSE
               DISPLAY "   Prev: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " sequential"
           END-IF
           READ TSPFILE PREVIOUS RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read prev " CM-CUST-NUM
               CLOSE TSPFILE
               STOP RUN
           ELSE
               DISPLAY "   Prev: " CM-CUST-NUM " " CM-TELEPHONE
               IF CM-CUST-NUM NOT = SAV-KEY
                  DISPLAY "Problem! Expected:" SAV-KEY
                  CLOSE TSPFILE
                  STOP RUN
               END-IF
           END-IF
           READ TSPFILE PREVIOUS RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read prev " CM-CUST-NUM
           ELSE
               DISPLAY "   Prev: " CM-CUST-NUM " " CM-TELEPHONE
           END-IF
           DELETE TSPFILE
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " delete " CM-CUST-NUM
           ELSE
               DISPLAY " Delete: " CM-CUST-NUM " sequential"
           END-IF

           CLOSE TSPFILE.

       LIST-FILE.
           DISPLAY "List sample data file"
                            UPON CONSOLE.
           MOVE "00" TO  CUST-STAT.
           MOVE 0 TO REC-NUM.
           OPEN I-O TSPFILE
           MOVE "        " TO CM-CUST-NUM
           START TSPFILE KEY GREATER THAN OR EQUAL TO CM-CUST-NUM
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           READ TSPFILE NEXT RECORD
                AT END
                    MOVE "99" TO CUST-STAT
           END-READ.
           IF  CUST-STAT NOT = "00"
               DISPLAY "Error " CUST-STAT " first read " CM-CUST-NUM
           END-IF
           PERFORM UNTIL CUST-STAT NOT = "00"
                      OR REC-NUM > REC-MAX
               DISPLAY "Key: " CM-CUST-NUM " is " CM-COMPANY
                        " Disk=" CM-DISK
                        "." UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
               END-READ
               ADD 1 TO REC-NUM
           END-PERFORM.
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File" UPON CONSOLE
           END-IF.
           CLOSE TSPFILE.

       LIST-PHONE.
           DISPLAY "List sample data file by Phone"
                            UPON CONSOLE.
           MOVE "00" TO  CUST-STAT.
           MOVE 0 TO REC-NUM.
           OPEN I-O TSPFILE
           MOVE SPACES TO TSPFL-RECORD
           START TSPFILE KEY GREATER THAN OR EQUAL TO SPLIT-KEY2
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " read " CM-CUST-NUM
           END-IF
           READ TSPFILE NEXT RECORD
                AT END
                    MOVE "99" TO CUST-STAT
           END-READ.
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "Error " CUST-STAT " first read " CM-CUST-NUM
           END-IF
           PERFORM UNTIL CUST-STAT NOT = "00"
                     AND CUST-STAT NOT = "02"
               DISPLAY "Ph=" CM-TELEPHONE
                       " Key: " CM-CUST-NUM " is " CM-COMPANY
                       "." UPON CONSOLE
               READ TSPFILE NEXT RECORD
                    AT END
                        MOVE "99" TO CUST-STAT
               END-READ
               ADD 1 TO REC-NUM
           END-PERFORM.
           IF CUST-STAT = "99"
               DISPLAY "Hit End of File" UPON CONSOLE
           END-IF.
           CLOSE TSPFILE.

      *---------------------------------------------------------------*
      *         LOAD A RECORD FROM DATA TABLES                        *
      *---------------------------------------------------------------*

       1000-LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE CM-CUST-NUM                  TO TSPFL-KEY.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-ADDRESS-1     (SUB)     TO CM-ADDRESS-1.
           MOVE DATA-ADDRESS-2     (SUB)     TO CM-ADDRESS-2.
           MOVE DATA-ADDRESS-3     (SUB)     TO CM-ADDRESS-3.
           MOVE DATA-TELEPHONE     (SUB)     TO CM-TELEPHONE.
           MOVE DATA-DP-MGR        (SUB)     TO CM-DP-MGR.
           MOVE DATA-MACHINE       (SUB)     TO CM-MACHINE.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
               MOVE "1600 BPI"               TO CM-TAPE
               MOVE "1MEG"                   TO CM-MEMORY
           ELSE
               MOVE "8470"                   TO CM-DISK
               MOVE "6250 BPI"               TO CM-TAPE
               MOVE "3MEG"                   TO CM-MEMORY.
           IF  NULL-KEY
               MOVE ALL "*"                  TO CM-DISK
               MOVE ALL "*"                  TO CM-TAPE.

           WRITE TSPFL-RECORD
           IF  CUST-STAT NOT = "00"
           AND CUST-STAT NOT = "02"
               DISPLAY "WRITE: " TSPFL-KEY ", Status: "
                       CUST-STAT UPON CONSOLE
           END-IF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:12161: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:12161"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12161"
$at_failed && at_fn_log_failure
$at_traceon; }




{ set +x
$as_echo "$at_srcdir/run_file.at:12165: \$COBCRUN_DIRECT ./prog 1>prog.out"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog 1>prog.out" "run_file.at:12165"
( $at_check_trace; $COBCRUN_DIRECT ./prog 1>prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12165"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


cat >reference <<'_ATEOF'
Loading sample data file.
Sample data file load complete.
List sample data file
Key: ALP00000 is ALPHA ELECTRICAL CO. LTD. Disk=8417    .
Key: BET00000 is BETA SHOE MFG. INC.       Disk=8470    .
Key: DEL00000 is DELTA LUGGAGE REPAIRS     Disk=********.
Key: EPS00000 is EPSILON EQUIPMENT SUPPLY  Disk=********.
Key: FOR00000 is FORTUNE COOKIE COMPANY    Disk=8470    .
Key: GAM00000 is GAMMA X-RAY TECHNOLOGY    Disk=8417    .
Key: GIB00000 is GIBRALTER LIFE INSURANCE  Disk=8417    .
Key: H&J00000 is H & J PLUMBING SUPPLIES   Disk=********.
Key: INC00000 is INCREMENTAL BACKUP CORP.  Disk=8417    .
Key: JOH00000 is JOHNSON BOATING SUPPLIES  Disk=8417    .
Key: KON00000 is KONFLAB PLASTIC PRODUCTS. Disk=8417    .
Key: LEW00000 is LEWISTON GRAPHICS LTD.    Disk=********.
Key: MOR00000 is MORNINGSIDE CARPENTRY.    Disk=8470    .
Key: NEW00000 is NEW WAVE SURF SHOPS INC.  Disk=********.
Key: OLD00000 is OLD TYME PIZZA MFG. CO.   Disk=8470    .
Key: PRE00000 is PRESTIGE OFFICE FURNITURE Disk=8470    .
Hit End of File
List sample data file by Phone
Ph=3131234432 Key: ALP00000 is ALPHA ELECTRICAL CO. LTD..
Ph=3455445444 Key: INC00000 is INCREMENTAL BACKUP CORP. .
Ph=4169898509 Key: BET00000 is BETA SHOE MFG. INC.      .
Ph=4169898509 Key: DEL00000 is DELTA LUGGAGE REPAIRS    .
Ph=4169898509 Key: MOR00000 is MORNINGSIDE CARPENTRY.   .
Ph=4169898509 Key: PRE00000 is PRESTIGE OFFICE FURNITURE.
Ph=5292398745 Key: EPS00000 is EPSILON EQUIPMENT SUPPLY .
Ph=6456445643 Key: GIB00000 is GIBRALTER LIFE INSURANCE .
Ph=6456445643 Key: JOH00000 is JOHNSON BOATING SUPPLIES .
Ph=6546456333 Key: H&J00000 is H & J PLUMBING SUPPLIES  .
Ph=6554456433 Key: LEW00000 is LEWISTON GRAPHICS LTD.   .
Ph=7456434355 Key: KON00000 is KONFLAB PLASTIC PRODUCTS..
Ph=7534587453 Key: NEW00000 is NEW WAVE SURF SHOPS INC. .
Ph=8009329492 Key: FOR00000 is FORTUNE COOKIE COMPANY   .
Ph=8372487274 Key: GAM00000 is GAMMA X-RAY TECHNOLOGY   .
Ph=8787458374 Key: OLD00000 is OLD TYME PIZZA MFG. CO.  .
Hit End of File
Test Read/Delete
 Delete: INC00000 random
 Delete: ALP00000 random
   Read: BET00000 4169898509
 Delete: PRE00000 random
Expected 10 after delete PRE00000
Initial: BET00000 4169898509
Initial: DEL00000 4169898509
Initial: MOR00000 4169898509
Initial: EPS00000 5292398745
  Start: BET00000 4169898509
   Next: DEL00000 4169898509
 Delete: DEL00000 sequential
   Next: MOR00000 4169898509
   Next: EPS00000 5292398745
 Delete: EPS00000 sequential
List sample data file by Phone
Ph=4169898509 Key: BET00000 is BETA SHOE MFG. INC.      .
Ph=4169898509 Key: MOR00000 is MORNINGSIDE CARPENTRY.   .
Ph=6456445643 Key: GIB00000 is GIBRALTER LIFE INSURANCE .
Ph=6456445643 Key: JOH00000 is JOHNSON BOATING SUPPLIES .
Ph=6546456333 Key: H&J00000 is H & J PLUMBING SUPPLIES  .
Ph=6554456433 Key: LEW00000 is LEWISTON GRAPHICS LTD.   .
Ph=7456434355 Key: KON00000 is KONFLAB PLASTIC PRODUCTS..
Ph=7534587453 Key: NEW00000 is NEW WAVE SURF SHOPS INC. .
Ph=8009329492 Key: FOR00000 is FORTUNE COOKIE COMPANY   .
Ph=8372487274 Key: GAM00000 is GAMMA X-RAY TECHNOLOGY   .
Ph=8787458374 Key: OLD00000 is OLD TYME PIZZA MFG. CO.  .
Hit End of File
List sample data file by Phone
Ph=3131234432 Key: ALP00000 is ALPHA ELECTRICAL CO. LTD..
Ph=3455445444 Key: INC00000 is INCREMENTAL BACKUP CORP. .
Ph=4169898509 Key: BET00000 is BETA SHOE MFG. INC.      .
Ph=4169898509 Key: DEL00000 is DELTA LUGGAGE REPAIRS    .
Ph=4169898509 Key: MOR00000 is MORNINGSIDE CARPENTRY.   .
Ph=4169898509 Key: PRE00000 is PRESTIGE OFFICE FURNITURE.
Ph=5292398745 Key: EPS00000 is EPSILON EQUIPMENT SUPPLY .
Ph=6456445643 Key: GIB00000 is GIBRALTER LIFE INSURANCE .
Ph=6456445643 Key: JOH00000 is JOHNSON BOATING SUPPLIES .
Ph=6546456333 Key: H&J00000 is H & J PLUMBING SUPPLIES  .
Ph=6554456433 Key: LEW00000 is LEWISTON GRAPHICS LTD.   .
Ph=7456434355 Key: KON00000 is KONFLAB PLASTIC PRODUCTS..
Ph=7534587453 Key: NEW00000 is NEW WAVE SURF SHOPS INC. .
Ph=8009329492 Key: FOR00000 is FORTUNE COOKIE COMPANY   .
Ph=8372487274 Key: GAM00000 is GAMMA X-RAY TECHNOLOGY   .
Ph=8787458374 Key: OLD00000 is OLD TYME PIZZA MFG. CO.  .
Hit End of File
Read Prev/Delete
00001 Initial: PRE00000 4169898509
00002 Initial: MOR00000 4169898509
00003 Initial: DEL00000 4169898509
00004 Initial: BET00000 4169898509
  Start: PRE00000 4169898509
   Prev: MOR00000 4169898509
 Delete: MOR00000 sequential
   Prev: DEL00000 4169898509
   Prev: BET00000 4169898509
 Delete: BET00000 sequential
List sample data file by Phone
Ph=3131234432 Key: ALP00000 is ALPHA ELECTRICAL CO. LTD..
Ph=3455445444 Key: INC00000 is INCREMENTAL BACKUP CORP. .
Ph=4169898509 Key: DEL00000 is DELTA LUGGAGE REPAIRS    .
Ph=4169898509 Key: PRE00000 is PRESTIGE OFFICE FURNITURE.
Ph=5292398745 Key: EPS00000 is EPSILON EQUIPMENT SUPPLY .
Ph=6456445643 Key: GIB00000 is GIBRALTER LIFE INSURANCE .
Ph=6456445643 Key: JOH00000 is JOHNSON BOATING SUPPLIES .
Ph=6546456333 Key: H&J00000 is H & J PLUMBING SUPPLIES  .
Ph=6554456433 Key: LEW00000 is LEWISTON GRAPHICS LTD.   .
Ph=7456434355 Key: KON00000 is KONFLAB PLASTIC PRODUCTS..
Ph=7534587453 Key: NEW00000 is NEW WAVE SURF SHOPS INC. .
Ph=8009329492 Key: FOR00000 is FORTUNE COOKIE COMPANY   .
Ph=8372487274 Key: GAM00000 is GAMMA X-RAY TECHNOLOGY   .
Ph=8787458374 Key: OLD00000 is OLD TYME PIZZA MFG. CO.  .
Hit End of File
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:12281: diff reference prog.out"
at_fn_check_prepare_trace "run_file.at:12281"
( $at_check_trace; diff reference prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12281"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:12283: \$COMPILE -fcallfh=EXTFH -o extfh prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=EXTFH -o extfh prog.cob" "run_file.at:12283"
( $at_check_trace; $COMPILE -fcallfh=EXTFH -o extfh prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12283"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:12284: \$COBCRUN_DIRECT ./extfh 1>prog.out"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./extfh 1>prog.out" "run_file.at:12284"
( $at_check_trace; $COBCRUN_DIRECT ./extfh 1>prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12284"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:12286: diff reference prog.out"
at_fn_check_prepare_trace "run_file.at:12286"
( $at_check_trace; diff reference prog.out
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12286"
$at_failed && at_fn_log_failure  \
"prog.out"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_937
#AT_START_938
at_fn_group_banner 938 'run_file.at:12291' \
  "TURN EC-I-O" "                                    " 4
at_xfail=yes
(
  $as_echo "938. $at_setup_line: testing $at_desc ..."
  $at_traceon




# FIXME: FUNCTION EXCEPTION-STATUS should be empty when an EC occurs but has been
#   >>TURN'd off.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT OPTIONAL f ASSIGN "out.txt"
               SEQUENTIAL
               FILE STATUS f-status.

           SELECT g ASSIGN "out.txt"
               SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  f.
       01  f-rec PIC X.

       FD  g.
       01  g-rec PIC X.

       WORKING-STORAGE SECTION.
       01  f-status PIC XX.

       PROCEDURE DIVISION.
           OPEN OUTPUT f
           WRITE f-rec FROM "a"
           CLOSE f

           SET LAST EXCEPTION TO OFF
           >>TURN EC-I-O CHECKING ON
           *> Read f too many times without libcob error
           OPEN INPUT f
           PERFORM 2 TIMES
               READ f
               DISPLAY f-rec
           END-PERFORM

           DISPLAY f-status
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           SET LAST EXCEPTION TO OFF

           CLOSE f

           >>TURN EC-I-O g CHECKING ON

           *> Read f too many times without libcob error
           OPEN INPUT f
           PERFORM 2 TIMES
               READ f
               DISPLAY f-rec
           END-PERFORM

           DISPLAY f-status
           DISPLAY FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           SET LAST EXCEPTION TO OFF

           CLOSE f

           *> Read g too many times with libcob error
           OPEN INPUT g
           PERFORM 2 TIMES
               READ g
               DISPLAY g-rec
           END-PERFORM

           CLOSE g
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:12369: \$COMPILE prog.cob "
at_fn_check_prepare_dynamic "$COMPILE prog.cob " "run_file.at:12369"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12369"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:12370: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:12370"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:61: error: end of file (status = 10) for file g ('out.txt') on READ
libcob: prog.cob:61: warning: implicit CLOSE of g ('out.txt')
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "a
a
10

a
a
10

a
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_file.at:12370"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_938
#AT_START_939
at_fn_group_banner 939 'run_file.at:12388' \
  "LINE SEQUENTIAL REWRITE" "                        " 4
at_xfail=no
(
  $as_echo "939. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE ASSIGN EXTERNAL SEQFIX
           ORGANIZATION LINE SEQUENTIAL
           FILE STATUS IS CUST-STAT .

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(5).
           10  CM-PK-DATE                      PICTURE S9(14).
           10  CM-TRAILER                      PICTURE X(52).

       WORKING-STORAGE SECTION.

       78  MAX-SUB           VALUE  6.
       77  CUST-STAT                           PICTURE X(2).

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.

           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".
           05  FILLER PIC X(8) VALUE "EPS00000".
           05  FILLER PIC X(8) VALUE "FOR00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.

           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
           05  FILLER PIC X(25) VALUE "EPSILON EQUIPMENT SUPPLY ".
           05  FILLER PIC X(25) VALUE "FORTUNE COOKIE COMPANY   ".
         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.

           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
           05  FILLER PIC X(10) VALUE "CALGARY   ".
           05  FILLER PIC X(10) VALUE "WHITEPLAIN".

         02  DATA-ADDRESS   REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.

         02  DATA-NO-TERMINALS-TBL.

           05  FILLER PIC 9(5) VALUE 8240.
           05  FILLER PIC 9(5) VALUE 10.
           05  FILLER PIC 9(5) VALUE 13.
           05  FILLER PIC 9(5) VALUE 65535.
           05  FILLER PIC 9(5) VALUE 10.
           05  FILLER PIC 9(5) VALUE 254.

         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(5) OCCURS MAX-SUB.
       01  WORK-AREA.
           05  SUB                     USAGE BINARY-SHORT UNSIGNED.
               88  ODD-RECORD          VALUE 1 3 5.


       PROCEDURE DIVISION.

           PERFORM LOADFILE.
           OPEN INPUT FLATFILE.
           DISPLAY "Open Sts:" CUST-STAT
           PERFORM READ-RECORD
           PERFORM READ-RECORD
           PERFORM READ-RECORD
           PERFORM READ-RECORD
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           PERFORM READ-RECORD
           MOVE 10 TO CM-NO-TERMINALS
           MOVE "STUFF" TO CM-TRAILER
           REWRITE TSPFL-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" CM-NO-TERMINALS.
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           PERFORM READ-RECORD
           PERFORM READ-RECORD
           ADD 1 TO CM-NO-TERMINALS
           REWRITE TSPFL-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" CM-NO-TERMINALS.
           PERFORM READ-RECORD
           CLOSE FLATFILE.

           OPEN I-O FLATFILE.
           READ FLATFILE
           READ FLATFILE
           READ FLATFILE
           READ FLATFILE
           READ FLATFILE
           DISPLAY "Read " CM-CUST-NUM " Sts:" CUST-STAT.
           MOVE 8240 TO CM-NO-TERMINALS
           REWRITE TSPFL-RECORD
           DISPLAY "REWRITE " CM-CUST-NUM " Sts " CUST-STAT
                   " Trms:" CM-NO-TERMINALS.
           CLOSE FLATFILE.

           OPEN INPUT FLATFILE.
           DISPLAY "List back Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
             PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.

           OPEN EXTEND FLATFILE.
           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > 2
           CLOSE FLATFILE.

           OPEN INPUT FLATFILE.
           DISPLAY "List after extend Open Sts:" CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
             PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.
           STOP RUN RETURNING 0.

       READ-RECORD.
           MOVE SPACES                       TO TSPFL-RECORD.
           READ FLATFILE
           IF CUST-STAT NOT = "00"
             DISPLAY "Read Status: " CUST-STAT
           ELSE
             DISPLAY "Read  " CM-CUST-NUM
                     " Trms:" CM-NO-TERMINALS
           END-IF.

       LOADFILE.
           DISPLAY "Loading sample program data file."
                            UPON CONSOLE.

           OPEN OUTPUT FLATFILE.

           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB.

           DISPLAY "Sample program data file load complete."
                            UPON CONSOLE.
           CLOSE FLATFILE.

       LOAD-RECORD.

           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.
           MOVE 20070319                     TO CM-PK-DATE.
           IF SUB = 5
              MOVE "Freddy Kruger"  TO CM-TRAILER.
           IF SUB = 1 OR 4 OR 6
               MOVE -20070319                 TO CM-PK-DATE.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
           ELSE
               MOVE "8470"                   TO CM-DISK.
           WRITE TSPFL-RECORD.
           IF CUST-STAT NOT = "00"
               DISPLAY "Write Error " CUST-STAT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:12582: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:12582"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12582"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:12584: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:12584"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Loading sample program data file.
Sample program data file load complete.
Open Sts:00
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00010
Read  GAM00000 Trms:00013
Read  DEL00000 Trms:65535
Read  ALP00000 Trms:08240
REWRITE ALP00000 Sts 44 Trms:00010
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00010
REWRITE BET00000 Sts 00 Trms:00011
Read  GAM00000 Trms:00013
Read EPS00000 Sts:00
REWRITE EPS00000 Sts 00 Trms:08240
List back Open Sts:00
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00011
Read  GAM00000 Trms:00013
Read  DEL00000 Trms:65535
Read  EPS00000 Trms:08240
Read  FOR00000 Trms:00254
Read Status: 10
List after extend Open Sts:00
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00011
Read  GAM00000 Trms:00013
Read  DEL00000 Trms:65535
Read  EPS00000 Trms:08240
Read  FOR00000 Trms:00254
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00010
Read Status: 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12584"
$at_failed && at_fn_log_failure
$at_traceon; }


# recheck with COB_SYNC to cover additional code paths
{ set +x
$as_echo "$at_srcdir/run_file.at:12621: COB_SYNC=Y \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SYNC=Y $COBCRUN_DIRECT ./prog" "run_file.at:12621"
( $at_check_trace; COB_SYNC=Y $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Loading sample program data file.
Sample program data file load complete.
Open Sts:00
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00010
Read  GAM00000 Trms:00013
Read  DEL00000 Trms:65535
Read  ALP00000 Trms:08240
REWRITE ALP00000 Sts 44 Trms:00010
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00010
REWRITE BET00000 Sts 00 Trms:00011
Read  GAM00000 Trms:00013
Read EPS00000 Sts:00
REWRITE EPS00000 Sts 00 Trms:08240
List back Open Sts:00
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00011
Read  GAM00000 Trms:00013
Read  DEL00000 Trms:65535
Read  EPS00000 Trms:08240
Read  FOR00000 Trms:00254
Read Status: 10
List after extend Open Sts:00
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00011
Read  GAM00000 Trms:00013
Read  DEL00000 Trms:65535
Read  EPS00000 Trms:08240
Read  FOR00000 Trms:00254
Read  ALP00000 Trms:08240
Read  BET00000 Trms:00010
Read Status: 10
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12621"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_939
#AT_START_940
at_fn_group_banner 940 'run_file.at:12660' \
  "LINE SEQUENTIAL data" "                           " 4
at_xfail=no
(
  $as_echo "940. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE ASSIGN "LS-TEST"
           ORGANIZATION LINE SEQUENTIAL
           FILE STATUS IS CUST-STAT .

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSPFL-RECORD.
           10  CM-CUST-NUM                     PICTURE X(8).
           10  CM-TYPE                         PICTURE X.
           10  CM-COMPANY                      PICTURE X(25).
           10  CM-DISK                         PICTURE X(8).
           10  CM-NO-TERMINALS                 PICTURE 9(4) COMP-4.
           10  CM-PK-DATE                      PICTURE S9(14) COMP-3.

       WORKING-STORAGE SECTION.

       78  MAX-SUB           VALUE  4.
       77  CUST-STAT                           PICTURE X(2).

       01  TEST-DATA.

         02  DATA-CUST-NUM-TBL.
           05  FILLER PIC X(8) VALUE "ALP00000".
           05  FILLER PIC X(8) VALUE "BET00000".
           05  FILLER PIC X(8) VALUE "GAM00000".
           05  FILLER PIC X(8) VALUE "DEL00000".

         02  DATA-CUST-NUM REDEFINES DATA-CUST-NUM-TBL
                                       PIC X(8) OCCURS MAX-SUB.
         02  DATA-COMPANY-TBL.
           05  FILLER PIC X(25) VALUE "ALPHA ELECTRICAL CO. LTD.".
           05  FILLER PIC X(25) VALUE "BETA SHOE MFG. INC.      ".
           05  FILLER PIC X(25) VALUE "GAMMA X-RAY TECHNOLOGY   ".
           05  FILLER PIC X(25) VALUE "DELTA LUGGAGE REPAIRS    ".
         02  DATA-COMPANY  REDEFINES DATA-COMPANY-TBL
                                       PIC X(25) OCCURS MAX-SUB.
         02  DATA-ADDRESS-2-TBL.
           05  FILLER PIC X(10) VALUE "NEW YORK  ".
           05  FILLER PIC X(10) VALUE "ATLANTA   ".
           05  FILLER PIC X(10) VALUE "WASHINGTON".
           05  FILLER PIC X(10) VALUE "TORONTO   ".
         02  DATA-ADDRESS   REDEFINES DATA-ADDRESS-2-TBL
                                       PIC X(10) OCCURS MAX-SUB.

         02  DATA-NO-TERMINALS-TBL.
           05  FILLER PIC 9(3) VALUE 10.
           05  FILLER PIC 9(3) VALUE 13.
           05  FILLER PIC 9(3) VALUE 3.
           05  FILLER PIC 9(3) VALUE 254.
         02  DATA-NO-TERMINALS REDEFINES DATA-NO-TERMINALS-TBL
                                       PIC 9(3) OCCURS MAX-SUB.
       01  WORK-AREA.
           05  SUB                             BINARY-SHORT UNSIGNED.
               88  ODD-RECORD                  VALUE 1 3 5.

       PROCEDURE DIVISION.
      * Load file using MF rules
           SET ENVIRONMENT "COB_LS_VALIDATE" TO "FALSE"
           SET ENVIRONMENT "COB_LS_NULLS"    TO "TRUE"
           DISPLAY "MF Load data"
           PERFORM LOADFILE.

      * Read file using MF rules
           OPEN INPUT FLATFILE.
           DISPLAY "MF Open Sts: " CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.

      * Read file using Std rules
           SET ENVIRONMENT "COB_LS_VALIDATE" TO "true"
           SET ENVIRONMENT "COB_LS_NULLS"    TO "false"
           OPEN INPUT FLATFILE.
           DISPLAY "Std Open Sts: " CUST-STAT
           PERFORM UNTIL CUST-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.

      * Load file using Std rules
           DISPLAY "Std Load data"
           PERFORM LOADFILE.

           STOP RUN RETURNING 0.

       READ-RECORD.
      *    MOVE SPACES                       TO TSPFL-RECORD.
           READ FLATFILE
           IF CUST-STAT NOT = "00"
             DISPLAY "Read Status: " CUST-STAT
           ELSE
             DISPLAY "Read  " CM-CUST-NUM
                     " Trms:" CM-NO-TERMINALS
           END-IF.

       LOADFILE.
           OPEN OUTPUT FLATFILE.
           PERFORM LOAD-RECORD
                        VARYING SUB FROM 1 BY 1
                          UNTIL SUB > MAX-SUB
                              OR CUST-STAT NOT = "00".
           CLOSE FLATFILE.

       LOAD-RECORD.
           MOVE SPACES                       TO TSPFL-RECORD.
           MOVE DATA-CUST-NUM      (SUB)     TO CM-CUST-NUM.
           MOVE DATA-COMPANY       (SUB)     TO CM-COMPANY.
           MOVE DATA-NO-TERMINALS  (SUB)     TO CM-NO-TERMINALS.
           MOVE 20070319                     TO CM-PK-DATE.
           IF SUB = 1 OR 4 OR 6
               MOVE -20070319                 TO CM-PK-DATE.

           IF  ODD-RECORD
               MOVE "8417"                   TO CM-DISK
           ELSE
               MOVE "8470"                   TO CM-DISK.
           WRITE TSPFL-RECORD.
           IF CUST-STAT NOT = "00"
               DISPLAY "Error status " CUST-STAT " writing record "
                       DATA-CUST-NUM (SUB).
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:12798: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:12798"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12798"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:12800: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:12800"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "MF Load data
MF Open Sts: 00
Read  ALP00000 Trms:0010
Read  BET00000 Trms:0013
Read  GAM00000 Trms:0003
Read  DEL00000 Trms:0254
Read Status: 10
Std Open Sts: 00
Read Status: 09
Std Load data
Error status 71 writing record ALP00000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12800"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_940
#AT_START_941
at_fn_group_banner 941 'run_file.at:12817' \
  "Concatenated Files" "                             " 4
at_xfail=no
(
  $as_echo "941. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE
           ASSIGN TO THE-FILE-NAME
           ORGANIZATION LINE SEQUENTIAL
           FILE STATUS IS FLAT-STAT.

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE.
       01  FLAT-RECORD.
           10  FILE-NAME                       PICTURE X(8).
           10  FLAT-MARK                       PICTURE X(6).
           10  FLAT-RECNUM                     PICTURE X(6).
           10  FLAT-NUM                        PICTURE Z9.
           10  FLAT-FILLER                     PICTURE X(2).

       WORKING-STORAGE SECTION.
       77  REC-NUM           VALUE  0          BINARY-SHORT UNSIGNED.
       78  MAX-REC           VALUE  3.
       77  FLAT-STAT                           PICTURE X(2).
       77  THE-FILE-NAME                       PICTURE X(48).

       PROCEDURE DIVISION.
           MOVE "file1" TO THE-FILE-NAME
           PERFORM LOADFILE.

           MOVE "file2" TO THE-FILE-NAME
           PERFORM LOADFILE.

           MOVE "file3" TO THE-FILE-NAME
           PERFORM LOADFILE.

           MOVE "file1+file2+file3" TO THE-FILE-NAME
           PERFORM UPDTFILE.

           SET ENVIRONMENT "COB_SEQ_CONCAT_SEP" TO "&"
           MOVE "file1&file2&file3" TO THE-FILE-NAME
           PERFORM LISTFILE.
           STOP RUN RETURNING 0.

       LISTFILE.
           OPEN INPUT FLATFILE.
           IF FLAT-STAT NOT = "00"
               DISPLAY "OPEN INPUT: " THE-FILE-NAME " Sts:" FLAT-STAT
           END-IF.
           PERFORM UNTIL FLAT-STAT NOT = "00"
               PERFORM READ-RECORD
           END-PERFORM.
           CLOSE FLATFILE.

       UPDTFILE.
           OPEN I-O FLATFILE.
           IF FLAT-STAT NOT = "00"
               DISPLAY "OPEN I-O: " THE-FILE-NAME " Sts:" FLAT-STAT
           END-IF.
           PERFORM VARYING REC-NUM FROM 1 BY 1
                      UNTIL FLAT-STAT NOT = "00"
               MOVE SPACES          TO FLAT-RECORD
               READ FLATFILE
               IF REC-NUM = 5
                  MOVE "Hello" TO FLAT-MARK
                  REWRITE FLAT-RECORD
                  IF FLAT-STAT NOT = "00"
                     DISPLAY "REWRITE5: " THE-FILE-NAME "Sts:" FLAT-STAT
                  END-IF
               END-IF
               IF REC-NUM = 7
                  MOVE "$$" TO FLAT-FILLER
                  REWRITE FLAT-RECORD
                  IF FLAT-STAT NOT = "44"
      *  Cannot change size of LINE SEQ record
                     DISPLAY "REWRITE7: " THE-FILE-NAME "Sts:" FLAT-STAT
                  END-IF
               END-IF
           END-PERFORM.
           CLOSE FLATFILE.

       READ-RECORD.
      *    MOVE SPACES                       TO FLAT-RECORD.
           READ FLATFILE
           IF FLAT-STAT NOT = "00"
               IF FLAT-STAT NOT = "10"
                   DISPLAY "Read Status: " FLAT-STAT
               END-IF
           ELSE
               DISPLAY FLAT-RECORD "."
           END-IF.

       LOADFILE.
           OPEN OUTPUT FLATFILE.
           IF FLAT-STAT NOT = "00"
               DISPLAY "OPEN OUTPUT: " THE-FILE-NAME " Sts:" FLAT-STAT
           END-IF.
           PERFORM LOAD-RECORD VARYING REC-NUM FROM 1 BY 1
                                 UNTIL REC-NUM > MAX-REC.
           CLOSE FLATFILE.

       LOAD-RECORD.
           MOVE SPACES                       TO FLAT-RECORD.
           MOVE "Record"                     TO FLAT-RECNUM.
           MOVE THE-FILE-NAME                TO FILE-NAME.
           MOVE REC-NUM                      TO FLAT-NUM.
           WRITE FLAT-RECORD.
           IF FLAT-STAT NOT = "00"
               DISPLAY "Write: " FILE-NAME " Rec#" REC-NUM
                       " Sts:" FLAT-STAT
           END-IF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:12935: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:12935"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12935"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:12937: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:12937"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OPEN I-O: file1+file2+file3                                Sts:35
OPEN INPUT: file1&file2&file3                                Sts:35
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12937"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:12942: COB_SEQ_CONCAT_NAME=true \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "COB_SEQ_CONCAT_NAME=true $COBCRUN_DIRECT ./prog" "run_file.at:12942"
( $at_check_trace; COB_SEQ_CONCAT_NAME=true $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "file1         Record 1  .
file1         Record 2  .
file1         Record 3  .
file2         Record 1  .
file2   Hello Record 2  .
file2         Record 3  .
file3         Record 1  .
file3         Record 2  .
file3         Record 3  .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:12942"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_941
#AT_START_942
at_fn_group_banner 942 'run_file.at:12961' \
  "File SORT, SEQUENTIAL" "                          " 4
at_xfail=no
(
  $as_echo "942. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: We shouldn't use AT_DATA to create sequential record
# data, because AT_DATA needs a \n at the end

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT SORT-IN   ASSIGN "test.txt".
       SELECT SORT-OUT  ASSIGN "result.txt".
       SELECT SORT-WRK  ASSIGN "SORT-WRK".
       DATA             DIVISION.
       FILE             SECTION.
       FD SORT-IN.
       01 IN-REC        PIC X(6).
       FD SORT-OUT.
       01 OUT-REC       PIC X(6).
       SD SORT-WRK.
       01 WRK-REC       PIC X(6).
       PROCEDURE        DIVISION.

      * Special case: write test data in COBOL, see note above
           OPEN OUTPUT SORT-IN.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM "world " END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM "hello " END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           CLOSE SORT-IN.

           SORT SORT-WRK
                ASCENDING KEY WRK-REC
                USING  SORT-IN
                GIVING SORT-OUT.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13004: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13004"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13004"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13005: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13005"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13005"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13006: cat result.txt"
at_fn_check_prepare_trace "run_file.at:13006"
( $at_check_trace; cat result.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "                              hello world " | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13006"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_942
#AT_START_943
at_fn_group_banner 943 'run_file.at:13011' \
  "File SORT, SEQUENTIAL variable records" "         " 4
at_xfail=no
(
  $as_echo "943. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ORGANIZATION SEQUENTIAL
                    ASSIGN "./file1".
       SELECT file2 ORGANIZATION SEQUENTIAL
                    ASSIGN "./file2".
       SELECT file3 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file1 RECORD VARYING FROM 3 TO 12 DEPENDING rsz.
       1  file1-rec pic x(12).
       FD file2 RECORD VARYING FROM 3 TO 12 DEPENDING rsz.
       1  file2-rec pic x(12).
       SD file3 RECORD VARYING FROM 3 TO 12 DEPENDING rsz.
       1  file3-rec.
          2  file3-key1 pic x.
          2  file3-key2 pic 9.
          2  filler pic x(10).
       WORKING-STORAGE SECTION.
       77 rsz pic 99.
       1  1-data.
          2  filler pic x(14) VALUE "03A4X".
          2  filler pic x(14) VALUE "04A3XX".
          2  filler pic x(14) VALUE "05A2XXX".
          2  filler pic x(14) VALUE "06A1XXXX".
          2  filler pic x(14) VALUE "07A0XXXXX".
          2  filler pic x(14) VALUE "08B2XXXXXX".
          2  filler pic x(14) VALUE "09B1XXXXXXX".
          2  filler pic x(14) VALUE "10C2XXXXXXXX".
          2  filler pic x(14) VALUE "11C1XXXXXXXXX".
          2  filler pic x(14) VALUE "12Z9XXXXXXXXXX".
      *
       1  filler redefines 1-data.
          2  filler occurs 10 times indexed by ix-1.
           3 1-rsz pic 99.
           3 1-rec pic x(12).

       PROCEDURE DIVISION.
          OPEN OUTPUT file1.
          PERFORM VARYING ix-1 FROM 1 BY 2 UNTIL ix-1 > 10
             MOVE 1-rsz(ix-1) TO rsz
             MOVE 1-rec(ix-1) TO file1-rec
             WRITE file1-rec
          END-PERFORM.
          PERFORM VARYING ix-1 FROM 2 BY 2 UNTIL ix-1 > 10
             MOVE 1-rsz(ix-1) TO rsz
             MOVE 1-rec(ix-1) TO file1-rec
             WRITE file1-rec
          END-PERFORM.
          CLOSE file1.
          SORT file3 ON ASCENDING file3-key1
                        DESCENDING file3-key2
             USING file1
             GIVING file2.
          OPEN INPUT file2.
          PERFORM VARYING ix-1 FROM 1 BY 1 UNTIL ix-1 > 10
             READ file2
      *>> fileio-sort currently returns constant length records
             MOVE 1-rsz(ix-1) TO rsz
      *>> END-OF-DETOUR
             IF (1-rsz(ix-1) <> rsz)
                DISPLAY "FAILED Test " ix-1 ": "
                        1-rsz(ix-1) " <> " rsz
             END-IF
             IF (1-rec(ix-1) <> file2-rec)
                DISPLAY "FAILED Test " ix-1 ": "
                        1-rec(ix-1) " <> " file2-rec
             END-IF
          END-PERFORM.
          CLOSE file2.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13091: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13091"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13091"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13092: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13092"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13092"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_943
#AT_START_944
at_fn_group_banner 944 'run_file.at:13097' \
  "File SORT, LINE SEQUENTIAL" "                     " 4
at_xfail=no
(
  $as_echo "944. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Note: We shouldn't use AT_DATA to create sequential record
# data, because AT_DATA needs a \n at the end

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT SORT-IN   ASSIGN "test.txt"
                        ORGANISATION LINE SEQUENTIAL.
       SELECT SORT-OUT  ASSIGN "result.txt"
                        ORGANISATION LINE SEQUENTIAL.
       SELECT SORT-WRK  ASSIGN "SORT-WRK".
       DATA             DIVISION.
       FILE             SECTION.
       FD SORT-IN.
       01 IN-REC        PIC X(20).
       FD SORT-OUT.
       01 OUT-REC       PIC X(20).
       SD SORT-WRK.
       01 WRK-REC       PIC X(6).
       PROCEDURE        DIVISION.

      * Special case: write test data in COBOL, see note above
           OPEN OUTPUT SORT-IN.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM "world " END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM "hello " END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           WRITE IN-REC FROM SPACES   END-WRITE.
           CLOSE SORT-IN.

           SORT SORT-WRK
                ASCENDING KEY WRK-REC
                USING  SORT-IN
                GIVING SORT-OUT.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13142: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13142"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13142"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13143: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13143"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13143"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13144: cat result.txt"
at_fn_check_prepare_trace "run_file.at:13144"
( $at_check_trace; cat result.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "




hello
world
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13144"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_944
#AT_START_945
at_fn_group_banner 945 'run_file.at:13156' \
  "File SORT, LINE SEQUENTIAL same file" "           " 4
at_xfail=no
(
  $as_echo "945. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test.txt <<'_ATEOF'

bla
world
hello

blubb
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT SORT-IN   ASSIGN "test.txt"
                        ORGANISATION LINE SEQUENTIAL.
       SELECT SORT-WRK  ASSIGN "dummy".
       DATA             DIVISION.
       FILE             SECTION.
       FD SORT-IN.
       01 IN-REC        PIC X(6).
       SD SORT-WRK.
       01 sort-entry    PIC X(6).
       PROCEDURE        DIVISION.
           SORT SORT-WRK
                ASCENDING sort-entry
                USING  SORT-IN
                GIVING SORT-IN.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13190: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13190"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13190"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13191: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13191"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13191"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13192: cat test.txt"
at_fn_check_prepare_trace "run_file.at:13192"
( $at_check_trace; cat test.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "

bla
blubb
hello
world
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13192"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_945
#AT_START_946
at_fn_group_banner 946 'run_file.at:13203' \
  "File SORT, LINE SEQUENTIAL variable records" "    " 4
at_xfail=no
(
  $as_echo "946. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >file1 <<'_ATEOF'
A1XXXX
A2XXX
A3XX
Z9XXXXXXXXXX
A4X
B1XXXXXXX
B2XXXXXX
A0XXXXX
C1XXXXXXXXX
C2XXXXXXXX
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file1".
       SELECT file2 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file2".
       SELECT file3 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x(12).
       FD file2.
       1  file2-rec pic x(12).
       SD file3.
       1  file3-rec.
          2  file3-key1 pic x.
          2  file3-key2 pic 9.
          2  filler pic x(10).
       PROCEDURE DIVISION.
          SORT file3 ON ASCENDING file3-key1
                        DESCENDING file3-key2
             USING file1
             GIVING file2.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13249: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13249"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13249"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13250: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13250"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13250"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13251: cat file2"
at_fn_check_prepare_trace "run_file.at:13251"
( $at_check_trace; cat file2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A4X
A3XX
A2XXX
A1XXXX
A0XXXXX
B2XXXXXX
B1XXXXXXX
C2XXXXXXXX
C1XXXXXXXXX
Z9XXXXXXXXXX
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13251"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_946
#AT_START_947
at_fn_group_banner 947 'run_file.at:13267' \
  "EXTFH: File SORT, LINE SEQUENTIAL variable records" "" 4
at_xfail=no
(
  $as_echo "947. $at_setup_line: testing $at_desc ..."
  $at_traceon



# same test as above, but this time using an external file handler
# which in this case is the internal EXTFH handler

cat >file1 <<'_ATEOF'
A1XXXX
A2XXX
A3XX
Z9XXXXXXXXXX
A4X
B1XXXXXXX
B2XXXXXX
A0XXXXX
C1XXXXXXXXX
C2XXXXXXXX
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file1".
       SELECT file2 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file2".
       SELECT file3 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x(12).
       FD file2.
       1  file2-rec pic x(12).
       SD file3.
       1  file3-rec.
          2  file3-key1 pic x.
          2  file3-key2 pic 9.
          2  filler pic x(10).
       PROCEDURE DIVISION.
          SORT file3 ON ASCENDING file3-key1
                        DESCENDING file3-key2
             USING file1
             GIVING file2.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13316: \$COMPILE -fcallfh=EXTFH prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcallfh=EXTFH prog.cob" "run_file.at:13316"
( $at_check_trace; $COMPILE -fcallfh=EXTFH prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13316"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13317: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13317"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13317"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13318: cat file2"
at_fn_check_prepare_trace "run_file.at:13318"
( $at_check_trace; cat file2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A4X
A3XX
A2XXX
A1XXXX
A0XXXXX
B2XXXXXX
B1XXXXXXX
C2XXXXXXXX
C1XXXXXXXXX
Z9XXXXXXXXXX
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13318"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_947
#AT_START_948
at_fn_group_banner 948 'run_file.at:13334' \
  "File MERGE, LINE SEQUENTIAL variable records" "   " 4
at_xfail=no
(
  $as_echo "948. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >file1 <<'_ATEOF'
A1XXXX
A2XXX
A3XX
Z9XXXXXXXXXX
A4X
B1XXXXXXX
B2XXXXXX
A0XXXXX
C1XXXXXXXXX
C2XXXXXXXX
_ATEOF


cat >file2 <<'_ATEOF'
A1****
A2***
A3**
Z9**********
A4*
B1*******
B2******
A0*****
C1*********
C2********
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file1".
       SELECT file2 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file2".
       SELECT file3 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file3".
       SELECT file4 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic x(12).
       FD file2.
       1  file2-rec pic x(12).
       FD file3.
       1  file3-rec pic x(12).
       SD file4.
       1  file4-rec.
          2  file4-key1 pic x.
          2  file4-key2 pic 9.
          2  filler pic x(10).
       PROCEDURE DIVISION.
          MERGE file4 ON ASCENDING file4-key1
                        DESCENDING file4-key2
             USING file1 file2
             GIVING file3.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13397: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13397"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13397"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13398: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13398"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13398"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13399: cat file3"
at_fn_check_prepare_trace "run_file.at:13399"
( $at_check_trace; cat file3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A4X
A4*
A3XX
A3**
A2XXX
A2***
A1XXXX
A1****
A0XXXXX
A0*****
B2XXXXXX
B2******
B1XXXXXXX
B1*******
C2XXXXXXXX
C2********
C1XXXXXXXXX
C1*********
Z9XXXXXXXXXX
Z9**********
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13399"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_948
#AT_START_949
at_fn_group_banner 949 'run_file.at:13425' \
  "SORT nonexistent file" "                          " 4
at_xfail=no
(
  $as_echo "949. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT SORT-IN   ASSIGN "SORT-IN".
       SELECT SORT-OUT  ASSIGN "SORT-OUT".
       SELECT SORT-WRK  ASSIGN "SORT-WRK".
       DATA             DIVISION.
       FILE             SECTION.
       FD SORT-IN.
       01 IN-REC        PIC X(100).
       FD SORT-OUT.
       01 OUT-REC       PIC X(100).
       SD SORT-WRK.
       01 WRK-REC       PIC X(100).
       PROCEDURE        DIVISION.
           SORT SORT-WRK
                ASCENDING KEY WRK-REC
                USING  SORT-IN
                GIVING SORT-OUT.
             STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13453: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13453"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13453"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13454: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13454"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13454"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13455: cat SORT-OUT"
at_fn_check_prepare_trace "run_file.at:13455"
( $at_check_trace; cat SORT-OUT
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13455"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_949
#AT_START_950
at_fn_group_banner 950 'run_file.at:13460' \
  "SORT with INPUT/OUTPUT PROCEDUREs" "              " 4
at_xfail=no
(
  $as_echo "950. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       SD file1.
       1  file1-rec.
          2  file1-key pic 9(4).
          2  file1-data pic x(10).
       WORKING-STORAGE SECTION.
       77 w-eof pic 9 value 0.
       1  1-values.
          2  filler pic x(14) value "0001A--------A".
          2  filler pic x(14) value "0002B--------B".
          2  filler pic x(14) value "0003C--------C".
          2  filler pic x(14) value "0004D--------D".
          2  filler pic x(14) value "0005E--------E".
          2  filler pic x(14) value "0006F--------F".
          2  filler pic x(14) value "0007G--------G".
          2  filler pic x(14) value "0008H--------H".
          2  filler pic x(14) value "0009I--------I".
          2  filler pic x(14) value "0010J--------J".
          2  filler pic x(14) value "0011K--------K".
          2  filler pic x(14) value "0012L--------L".
          2  filler pic x(14) value "0013M--------M".
          2  filler pic x(14) value "0014N--------N".
          2  filler pic x(14) value "0015O--------O".
          2  filler pic x(14) value "0016P--------P".
          2  filler pic x(14) value "0017Q--------Q".
          2  filler pic x(14) value "0018R--------R".
          2  filler pic x(14) value "0019S--------S".
          2  filler pic x(14) value "0020T--------T".
          2  filler pic x(14) value "0021U--------U".
          2  filler pic x(14) value "0022V--------V".
          2  filler pic x(14) value "0023W--------W".
          2  filler pic x(14) value "0024X--------X".
          2  filler pic x(14) value "0025Y--------Y".
          2  filler pic x(14) value "0026Z--------Z".
       1  filler redefines 1-values.
          2  1-record occurs 26 times indexed by ix-1.
           3 1-key pic 9(4).
           3 1-data pic x(10).
       PROCEDURE DIVISION.
       a01-main.
          SORT file1 ON ASCENDING file1-key
             INPUT PROCEDURE a02-release-to-sort
             OUTPUT PROCEDURE a03-return-from-sort.
          STOP RUN.
      *
       a02-release-to-sort.
          PERFORM VARYING ix-1 FROM 1 BY 2 UNTIL ix-1 > 26
             RELEASE file1-rec from 1-record(ix-1)
          END-PERFORM.
          PERFORM VARYING ix-1 FROM 2 BY 2 UNTIL ix-1 > 26
             RELEASE file1-rec from 1-record(ix-1)
          END-PERFORM.
      *
       a03-return-from-sort.
          PERFORM VARYING ix-1 FROM 1 BY 1
             UNTIL (ix-1 > 26) OR (w-eof = 1)
             RETURN file1 RECORD
               AT END MOVE 1 TO w-eof
             END-RETURN
             IF (file1-rec <> 1-record(ix-1))
                MOVE 1 TO w-eof
             END-IF
          END-PERFORM.
          IF (w-eof = 1)
             DISPLAY "FAILED: unexpected eof"
          ELSE
             RETURN file1 RECORD
               AT END CONTINUE
               NOT AT END DISPLAY "FAILED: expected eof"
             END-RETURN
          END-IF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13544: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13544"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13544"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13545: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13545"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13545"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_950
#AT_START_951
at_fn_group_banner 951 'run_file.at:13550' \
  "SORT with key1 ASCENDING, key2 DESCENDING" "      " 4
at_xfail=no
(
  $as_echo "951. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >file1 <<'_ATEOF'
A1
A2
A3
Z9
A4
B1
B2
A0
C1
C2
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT file1 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file1".
       SELECT file2 ORGANIZATION LINE SEQUENTIAL
                    ASSIGN "./file2".
       SELECT file3 ASSIGN DISK.
       DATA DIVISION.
       FILE SECTION.
       FD file1.
       1  file1-rec pic xxx.
       FD file2.
       1  file2-rec pic xxx.
       SD file3.
       1  file3-rec.
          2  file3-key1 pic x.
          2  file3-key2 pic 9.
          2  file3-dot pic x.
       PROCEDURE DIVISION.
          SORT file3 ON ASCENDING file3-key1
                        DESCENDING file3-key2
             USING file1
             GIVING file2.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13596: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13596"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13596"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13597: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13597"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13597"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13598: cat file2"
at_fn_check_prepare_trace "run_file.at:13598"
( $at_check_trace; cat file2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "A4
A3
A2
A1
A0
B2
B1
C2
C1
Z9
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13598"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_951
#AT_START_952
at_fn_group_banner 952 'run_file.at:13617' \
  "Scope of FD GLOBAL in nested programs" "          " 4
at_xfail=no
(
  $as_echo "952. $at_setup_line: testing $at_desc ..."
  $at_traceon


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-FILES.
       PROCEDURE DIVISION.
         CALL    "NESTED-PROGRAM-1".
         CALL    "NESTED-PROGRAM-2".
         STOP RUN.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-1.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
         SELECT FILE-EXT ASSIGN "./TEST-FILE" FILE STATUS IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD FILE-EXT GLOBAL.
       01 FILE-EXT-REC PIC X(5).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
       DECLARATIVES.
       P01 SECTION.
          USE AFTER ERROR PROCEDURE ON FILE-EXT.
       P0101.
          DISPLAY "ERROR ON FILE-EXT".
       P02 SECTION.
          USE AFTER ERROR PROCEDURE ON OUTPUT.
       P0201.
          DISPLAY "ERROR ON OUTPUT".
       END DECLARATIVES.
       MAIN SECTION.
         OPEN OUTPUT FILE-EXT.
         CALL    "NESTED-PROGRAM-1-1".
      * The next line triggers a SILENT error in NESTED-PROGRAM-1-2
         CLOSE FILE-EXT.
         CALL    "NESTED-PROGRAM-1-2".
         GOBACK.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-1-1.
       PROCEDURE DIVISION.
         NESTED-PROGRAM .
         WRITE FILE-EXT-REC FROM "Hello".
	 DISPLAY "1-1 TRIED TO WRITE".
         GOBACK.
       END PROGRAM NESTED-PROGRAM-1-1.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-1-2.
       PROCEDURE DIVISION.
         NESTED-PROGRAM .
         WRITE FILE-EXT-REC FROM "Hello".
	 DISPLAY "1-2 TRIED TO WRITE".
         GOBACK.
       END PROGRAM NESTED-PROGRAM-1-2.

       END PROGRAM NESTED-PROGRAM-1.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-2.
       PROCEDURE DIVISION.
         GOBACK.
       END PROGRAM NESTED-PROGRAM-2.

       END PROGRAM NESTED-FILES.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_file.at:13686: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_file.at:13686"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13686"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13687: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_file.at:13687"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1-1 TRIED TO WRITE
1-2 TRIED TO WRITE
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13687"
$at_failed && at_fn_log_failure
$at_traceon; }

cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-FILES.
       PROCEDURE DIVISION.
         CALL    "NESTED-PROGRAM-1".
         CALL    "NESTED-PROGRAM-2".
         STOP RUN.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-1.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
         SELECT FILE-EXT ASSIGN "./TEST-FILE" FILE STATUS IS WSFS.
       DATA DIVISION.
       FILE SECTION.
       FD FILE-EXT GLOBAL.
       01 FILE-EXT-REC PIC X(5).
       WORKING-STORAGE SECTION.
       01  WSFS              PIC X(2).
       PROCEDURE DIVISION.
       DECLARATIVES.
       P01 SECTION.
      * This one is GLOBAL and should be called from within nested programs
          USE GLOBAL AFTER ERROR PROCEDURE ON FILE-EXT.
       P0101.
          DISPLAY "ERROR ON FILE-EXT".
       P02 SECTION.
          USE AFTER ERROR PROCEDURE ON OUTPUT.
       P0201.
          DISPLAY "ERROR ON OUTPUT".
       END DECLARATIVES.
       MAIN SECTION.
         OPEN OUTPUT FILE-EXT.
         CALL    "NESTED-PROGRAM-1-1".
	 DISPLAY "CLOSING FILE DESCRIPTOR".
         CLOSE FILE-EXT.
         CALL    "NESTED-PROGRAM-1-2".
         GOBACK.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-1-1.
       PROCEDURE DIVISION.
         NESTED-PROGRAM .
	 DISPLAY "ENTERING NESTED-PROGRAM-1-1".
	 DISPLAY "TRYING TO WRITE".
         WRITE FILE-EXT-REC FROM "Hello".
	 DISPLAY "EXITING NESTED-PROGRAM-1-1".
         GOBACK.
       END PROGRAM NESTED-PROGRAM-1-1.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-1-2.
       PROCEDURE DIVISION.
         NESTED-PROGRAM .
	 DISPLAY "ENTERING NESTED-PROGRAM-1-2".
	 DISPLAY "TRYING TO WRITE".
         WRITE FILE-EXT-REC FROM "Hello".
	 DISPLAY "EXITING NESTED-PROGRAM-1-2".
         GOBACK.
       END PROGRAM NESTED-PROGRAM-1-2.

       END PROGRAM NESTED-PROGRAM-1.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. NESTED-PROGRAM-2.
       PROCEDURE DIVISION.
         GOBACK.
       END PROGRAM NESTED-PROGRAM-2.

       END PROGRAM NESTED-FILES.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_file.at:13762: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:13762"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13762"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13763: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_file.at:13763"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "ENTERING NESTED-PROGRAM-1-1
TRYING TO WRITE
EXITING NESTED-PROGRAM-1-1
CLOSING FILE DESCRIPTOR
ENTERING NESTED-PROGRAM-1-2
TRYING TO WRITE
ERROR ON FILE-EXT
EXITING NESTED-PROGRAM-1-2
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13763"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_952
#AT_START_953
at_fn_group_banner 953 'run_file.at:13774' \
  "OPEN / CLOSE with multiple filenames" "           " 4
at_xfail=no
(
  $as_echo "953. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DOUBLE-OPEN.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
          SELECT FILE1 ASSIGN TO "./file1.txt"
            FILE STATUS STAT-FILE1.
          SELECT FILE2 ASSIGN TO "./file2.txt"
            FILE STATUS STAT-FILE2.
       DATA DIVISION.
       FILE SECTION.
       FD FILE1.
         01 FS-FILE1 PIC X(10).
       FD FILE2.
         01 FS-FILE2 PIC X(10).
       WORKING-STORAGE SECTION.
	 01  STAT-FILE1               PIC XX.
	 01  STAT-FILE2               PIC XX.
       PROCEDURE DIVISION.
       DECLARATIVES.
       F-FILE1 SECTION. USE AFTER ERROR PROCEDURE ON FILE1.
       DEB-FILE1.
         DISPLAY "ERROR ON FILE1".
          DISPLAY "  STAT-FILE1: " STAT-FILE1.
          DISPLAY "  STAT-FILE2: " STAT-FILE2.
       F-FILE2 SECTION. USE AFTER ERROR PROCEDURE ON FILE2.
       DEB-FILE2.
         DISPLAY "ERROR ON FILE2".
         DISPLAY "  STAT-FILE1: " STAT-FILE1.
         DISPLAY "  STAT-FILE2: " STAT-FILE2.
       END DECLARATIVES.
       PROGRAMME SECTION.
       MAIN.
          OPEN INPUT FILE1
	  OPEN INPUT FILE2.
          DISPLAY "READ FILE1".
          READ FILE1.
          DISPLAY "READ FILE2".
          READ FILE2.
          DISPLAY "CLOSE FILES".
          CLOSE FILE1.
          CLOSE FILE2.
          DISPLAY "DELETE FILES".
          DELETE FILE FILE1.
          DELETE FILE FILE2.
          STOP RUN.
_ATEOF

cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DOUBLE-OPEN.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
          SELECT FILE1 ASSIGN TO "./file1.txt"
            FILE STATUS STAT-FILE1.
          SELECT FILE2 ASSIGN TO "./file2.txt"
            FILE STATUS STAT-FILE2.
       DATA DIVISION.
       FILE SECTION.
       FD FILE1.
         01 FS-FILE1 PIC X(10).
       FD FILE2.
         01 FS-FILE2 PIC X(10).
       WORKING-STORAGE SECTION.
	 01  STAT-FILE1               PIC XX.
	 01  STAT-FILE2               PIC XX.
       PROCEDURE DIVISION.
       DECLARATIVES.
       F-FILE1 SECTION. USE AFTER ERROR PROCEDURE ON FILE1.
       DEB-FILE1.
         DISPLAY "ERROR ON FILE1".
          DISPLAY "  STAT-FILE1: " STAT-FILE1.
          DISPLAY "  STAT-FILE2: " STAT-FILE2.
       F-FILE2 SECTION. USE AFTER ERROR PROCEDURE ON FILE2.
       DEB-FILE2.
         DISPLAY "ERROR ON FILE2".
         DISPLAY "  STAT-FILE1: " STAT-FILE1.
         DISPLAY "  STAT-FILE2: " STAT-FILE2.
       END DECLARATIVES.
       PROGRAMME SECTION.
       MAIN.
          OPEN INPUT FILE1
	             FILE2.
          DISPLAY "READ FILE1".
          READ FILE1.
          DISPLAY "READ FILE2".
          READ FILE2.
          DISPLAY "CLOSE FILES".
          CLOSE FILE1
                FILE2.
          DISPLAY "DELETE FILES".
          DELETE FILE FILE1
                      FILE2.
          STOP RUN.
_ATEOF


cat >expected.txt <<'_ATEOF'
ERROR ON FILE2
  STAT-FILE1: 00
  STAT-FILE2: 35
READ FILE1
ERROR ON FILE1
  STAT-FILE1: 10
  STAT-FILE2: 35
READ FILE2
ERROR ON FILE2
  STAT-FILE1: 10
  STAT-FILE2: 47
CLOSE FILES
ERROR ON FILE2
  STAT-FILE1: 00
  STAT-FILE2: 42
DELETE FILES
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_file.at:13893: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_file.at:13893"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13893"
$at_failed && at_fn_log_failure
$at_traceon; }

: >file1.txt
{ set +x
$as_echo "$at_srcdir/run_file.at:13895: \$COBCRUN_DIRECT ./prog1 > prog1.txt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1 > prog1.txt" "run_file.at:13895"
( $at_check_trace; $COBCRUN_DIRECT ./prog1 > prog1.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13895"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13896: diff expected.txt prog1.txt"
at_fn_check_prepare_trace "run_file.at:13896"
( $at_check_trace; diff expected.txt prog1.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13896"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_file.at:13898: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_file.at:13898"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13898"
$at_failed && at_fn_log_failure
$at_traceon; }

: >file1.txt
{ set +x
$as_echo "$at_srcdir/run_file.at:13900: \$COBCRUN_DIRECT ./prog2 > prog2.txt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2 > prog2.txt" "run_file.at:13900"
( $at_check_trace; $COBCRUN_DIRECT ./prog2 > prog2.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13900"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_file.at:13901: diff expected.txt prog2.txt"
at_fn_check_prepare_trace "run_file.at:13901"
( $at_check_trace; diff expected.txt prog2.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_file.at:13901"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_953
#AT_START_954
at_fn_group_banner 954 'run_reportwriter.at:23' \
  "Report Line Order" "                              " 4
at_xfail=no
(
  $as_echo "954. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      *>****************************************************************
      *> 11NOV2013 BUG 001 - RWCS Presents RF before it presents the  **
      *>                     last PF                                  **
      *>****************************************************************
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT REPORT-FILE     ASSIGN TO EXTERNAL PRINTOUT
                                       LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD  REPORT-FILE
           REPORT IS RWCS-Report.
       WORKING-STORAGE SECTION.
       REPORT SECTION.
       RD  RWCS-Report
           PAGE LIMIT 12
               HEADING 1
               FIRST DETAIL 4
               LAST DETAIL 7.

       01  TYPE REPORT HEADING LINE 1.
           05 COL 1 VALUE 'RH'.

       01  TYPE PAGE HEADING LINE PLUS 1.
           05 COL 1 VALUE 'PH'.

       01  Detail-Line TYPE DETAIL LINE PLUS 1.
           05 COL 1 VALUE 'DE'.

       01  TYPE PAGE FOOTING LINE NUMBER 10.
           05 COL 1 VALUE 'PF'.

       01  TYPE REPORT FOOTING LINE NUMBER PLUS 1.
           05 COL 1 VALUE 'RF'.

       PROCEDURE DIVISION.
       010-Main SECTION.
       1.  OPEN OUTPUT REPORT-FILE
           INITIATE RWCS-Report
           GENERATE Detail-Line
           GENERATE Detail-Line
           GENERATE Detail-Line
           GENERATE Detail-Line
           GENERATE Detail-Line
           GENERATE Detail-Line
           GENERATE Detail-Line
           GENERATE Detail-Line
           TERMINATE RWCS-Report
           CLOSE REPORT-FILE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:82: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:82"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:82"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:84: DD_PRINTOUT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:84"
( $at_check_trace; DD_PRINTOUT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:84"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
RH
PH

DE
DE
DE
DE


PF

PH


DE
DE
DE
DE



PF

RF
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:115: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:115"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:115"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_954
#AT_START_955
at_fn_group_banner 955 'run_reportwriter.at:120' \
  "REPORT COL PLUS" "                                " 4
at_xfail=no
(
  $as_echo "955. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      *>****************************************************************
      *> 11NOV2013 BUG 002 - RWCS Treats "COL PLUS n" the same as     **
      *>                     "COL n".                                 **
      *>****************************************************************
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT REPORT-FILE          ASSIGN TO EXTERNAL PRINTOUT
                                       LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD  REPORT-FILE
           REPORT IS RWCS-Report.
       WORKING-STORAGE SECTION.
       REPORT SECTION.
       RD  RWCS-Report
           PAGE LIMIT 12
               HEADING 1
               FIRST DETAIL 4
               LAST DETAIL 7.

       01  Detail-Line TYPE DETAIL.
           05 LINE NUMBER PLUS 1.
              10 COL 1      PIC X(20)  VALUE '12345678901234567890'.
              10 COL PLUS 3 PIC X(4)   VALUE 'ABCD'.
              10 COL 30     PIC X(1)   VALUE '!'.

       PROCEDURE DIVISION.
       010-Main SECTION.
       1.  OPEN OUTPUT REPORT-FILE
           INITIATE RWCS-Report
           GENERATE Detail-Line
           TERMINATE RWCS-Report
           CLOSE REPORT-FILE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:163: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:163"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:163"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:165: DD_PRINTOUT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:165"
( $at_check_trace; DD_PRINTOUT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:165"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'



12345678901234567890  ABCD   !








_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:184: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:184"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:184"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_955
#AT_START_956
at_fn_group_banner 956 'run_reportwriter.at:189' \
  "Report Overlapping Fields" "                      " 4
at_xfail=no
(
  $as_echo "956. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      *>****************************************************************
      *> 11NOV2013 BUG 003 - RWCS causes "Abort trap 6" if an attempt **
      *>                     is made to overwrite previous field on   **
      *>                     a line                                   **
      *>****************************************************************
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT REPORT-FILE          ASSIGN TO EXTERNAL PRINTOUT
                                       LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD  REPORT-FILE
           REPORT IS RWCS-Report.
       WORKING-STORAGE SECTION.
       REPORT SECTION.
       RD  RWCS-Report
           PAGE LIMIT 12
               HEADING 1
               FIRST DETAIL 4
               LAST DETAIL 7.

       01  Detail-Line TYPE DETAIL.
           05 LINE NUMBER PLUS 1.
              10 COL 1      PIC X(20)  VALUE '12345678901234567890'.
              10 COL 10     PIC X(4)   VALUE 'ABCD'.

       PROCEDURE DIVISION.
       010-Main SECTION.
       1.  OPEN OUTPUT REPORT-FILE
           INITIATE RWCS-Report
           GENERATE Detail-Line
           TERMINATE RWCS-Report
           CLOSE REPORT-FILE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:232: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:232"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:232"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:234: DD_PRINTOUT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:234"
( $at_check_trace; DD_PRINTOUT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:234"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'



123456789ABCD4567890








_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:253: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:253"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:253"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_956
#AT_START_957
at_fn_group_banner 957 'run_reportwriter.at:258' \
  "EMPTY REPORT" "                                   " 4
at_xfail=no
(
  $as_echo "957. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      *>****************************************************************
      *> 11NOV2013 BUG 004 - RWCS INITIATE TERMINATE W/O GENERATE     **
      *>                     IS NOT SUPPOSED TO PRODUCE ANY OUTPUT    **
      *>****************************************************************
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT REPORT-FILE          ASSIGN TO EXTERNAL PRINTOUT
                                       LINE SEQUENTIAL.
       DATA DIVISION.
       FILE SECTION.
       FD  REPORT-FILE
           REPORT IS RWCS-Report.
       WORKING-STORAGE SECTION.
       REPORT SECTION.
       RD  RWCS-Report
           PAGE LIMIT 12
               HEADING 1
               FIRST DETAIL 4
               LAST DETAIL 7
           CONTROL IS FINAL.

       01  TYPE REPORT HEADING LINE 1.
           05 COL 1 VALUE 'RH'.

       01  TYPE PAGE HEADING LINE PLUS 1.
           05 COL 1 VALUE 'PH'.

       01  Detail-Line TYPE DETAIL LINE PLUS 1.
           05 COL 1 VALUE 'DE'.

       01  TYPE CONTROL FOOTING FINAL.
           05 COL 1 VALUE 'CFF'.

       01  TYPE PAGE FOOTING LINE NUMBER 10.
           05 COL 1 VALUE 'PF'.

       01  TYPE REPORT FOOTING LINE NUMBER 1.
           05 COL 1 VALUE 'RF'.

       PROCEDURE DIVISION.
       010-Main SECTION.
       1.  OPEN OUTPUT REPORT-FILE
           INITIATE RWCS-Report
           TERMINATE RWCS-Report
           CLOSE REPORT-FILE
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:313: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:313"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:313"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:315: DD_PRINTOUT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:315"
( $at_check_trace; DD_PRINTOUT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:315"
$at_failed && at_fn_log_failure
$at_traceon; }





: >reference

{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:322: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:322"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:322"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_957
#AT_START_958
at_fn_group_banner 958 'run_reportwriter.at:327' \
  "PAGE LIMIT REPORT" "                              " 4
at_xfail=no
(
  $as_echo "958. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT report-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  report-file REPORT rp.

       WORKING-STORAGE SECTION.
       01  foo  PIC X(20).
       01  hedpos PIC 99 VALUE 10.

       REPORT SECTION.
       RD  rp PAGE LIMIT 3.

       01  rp-detail TYPE DE.
         02  LINE + 1.
         03     COL 1; SOURCE foo, PIC X(30).
         03     COL + 2            PIC X(6) VALUE "<--->".

       PROCEDURE DIVISION.
           OPEN OUTPUT report-file.
           INITIATE rp.

           MOVE "hello" TO foo.
            GENERATE rp-detail.

           MOVE "goodbye" TO foo.
            GENERATE rp-detail.

           TERMINATE rp.
             CLOSE report-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:371: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:371"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:371"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:373: DD_PRINTOUT=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:373"
( $at_check_trace; DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:373"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
hello                          <--->
goodbye                        <--->

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:383: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:383"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:383"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_958
#AT_START_959
at_fn_group_banner 959 'run_reportwriter.at:388' \
  "PAGE LIMIT REPORT 2" "                            " 4
at_xfail=no
(
  $as_echo "959. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT report-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  report-file REPORT rp.

       WORKING-STORAGE SECTION.
       01  foo  PIC X(20).

       REPORT SECTION.
       RD  rp PAGE LIMIT 3 LINES.

       01  rp-detail TYPE DE.
         02  LINE + 1.
         03            SOURCE foo, PIC X(30).
         03     COL + 2            PIC X(6) VALUE "<--->".

       PROCEDURE DIVISION.
           OPEN OUTPUT report-file.
           INITIATE rp.

           MOVE "hello" TO foo.
           GENERATE rp-detail.

           MOVE "world" TO foo.
           GENERATE rp-detail.

           MOVE "from" TO foo.
           GENERATE rp-detail.

           MOVE "REPORT WRITER" TO foo.
           GENERATE rp-detail.

           MOVE "goodbye" TO foo.
           GENERATE rp-detail.

           TERMINATE rp
           CLOSE report-file.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:440: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:440"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:440"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:442: DD_PRINTOUT=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:442"
( $at_check_trace; DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:442"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
hello                          <--->
world                          <--->
from                           <--->
REPORT WRITER                  <--->
goodbye                        <--->

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:455: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:455"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:455"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_959
#AT_START_960
at_fn_group_banner 960 'run_reportwriter.at:460' \
  "Sample Customer Report" "                         " 4
at_xfail=no
(
  $as_echo "960. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
0152 J. LANGDON       87653 02475
0152 J. LANGDON       64025 00945
0152 J. LANGDON       41915 01370
0152 J. LANGDON       17410 00251
2468 L. MORRISEY      18520 00375
2468 L. MORRISEY      20012 00420
2468 L. MORRISEY      31572 01015
2468 L. MORRISEY      48792 03750
2468 L. MORRISEY      50407 01515
2468 L. MORRISEY      61575 02010
2468 L. MORRISEY      79204 05170
2468 L. MORRISEY      85075 03784
2468 L. MORRISEY      98476 08794
3451 M. JACKSON       37847 02790
3451 M. JACKSON       58492 06850
3451 M. JACKSON       60010 02040
3451 M. JACKSON       85260 07852
3451 M. JACKSON       90520 02752
4512 S. LEVITT        24680 03050
4512 S. LEVITT        56784 05253
4512 S. LEVITT        60410 01215
4512 S. LEVITT        78952 08925
4512 S. LEVITT        85278 04975
4512 S. LEVITT        87492 06425
4512 S. LEVITT        97204 08475
5417 K. CONKLIN       13579 03572
5417 K. CONKLIN       24615 01875
5417 K. CONKLIN       34928 03745
5417 K. CONKLIN       48527 08750
5417 K. CONKLIN       50150 01895
5417 K. CONKLIN       54652 03892
5417 K. CONKLIN       59765 09895
5417 K. CONKLIN       71572 01895
5417 K. CONKLIN       85175 08010
5417 K. CONKLIN       90275 00460
5417 K. CONKLIN       91572 01857
5417 K. CONKLIN       97576 08495
6213 Z. HAMPTON       15792 06425
6213 Z. HAMPTON       19975 09875
6213 Z. HAMPTON       34576 05115
6213 Z. HAMPTON       49512 08520
7545 M. LARSON        14676 03845
7545 M. LARSON        18592 08251
7545 M. LARSON        19994 09898
7545 M. LARSON        21214 01515
7545 M. LARSON        37515 08212
7545 M. LARSON        38592 09615
7545 M. LARSON        48485 08714
7545 M. LARSON        52762 03792
7545 M. LARSON        57684 08015
7545 M. LARSON        79015 09625
7545 M. LARSON        80123 00560
7545 M. LARSON        82462 02015
7545 M. LARSON        91520 01815
7545 M. LARSON        93715 04015
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

      * ************************************************************* *
      * REPORT WRITER EXAMPLE #1.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT TRANSACTION-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  TRANSACTION-DATA.

       01  TRANSACTION-RECORD.
           03  TR-CUSTOMER-NUMBER      PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-CUSTOMER-NAME        PIC X(16).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-NUMBER          PIC 9(05).
           03  FILLER                  REDEFINES TR-ITEM-NUMBER.
               05  TR-ITEM-DEPARTMENT  PIC 9(01).
               05  FILLER              PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-COST            PIC 9(03)V99.
           03  FILLER                  PIC X(47).

       FD  REPORT-FILE
           REPORT IS CUSTOMER-REPORT.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.

       REPORT SECTION.
       RD  CUSTOMER-REPORT
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 5
           LAST DETAIL 58.

       01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 27   PIC X(41) VALUE
                   'C U S T O M E R  C H A R G E  R E P O R T'.
           02  LINE PLUS 2.
               03  COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
               03  COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
               03  COLUMN 30   PIC X(05) VALUE 'DEPT.'.
               03  COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
               03  COLUMN 51   PIC X(09) VALUE 'ITEM COST'.

       01  CHARGE-DETAIL TYPE DETAIL.
           02  LINE PLUS 1.
               03  COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
               03  COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
               03  COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
               03  COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
               03  COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.

       PROCEDURE DIVISION.

       000-INITIATE.

           OPEN INPUT TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

           PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
                 REPORT-FILE.

           STOP RUN.

       100-PROCESS-TRANSACTION-DATA.
           GENERATE CHARGE-DETAIL.
           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

       199-EXIT.
           EXIT.


_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:630: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:630"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:630"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:632: DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:632"
( $at_check_trace; DD_DATAIN="./inp_data" DD_SYSPRINT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:632"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                          C U S T O M E R  C H A R G E  R E P O R T

CUST. NO.     CUST. NAME     DEPT.    ITEM NO.    ITEM COST

   152   J. LANGDON            8       87653       $24.75
   152   J. LANGDON            6       64025        $9.45
   152   J. LANGDON            4       41915       $13.70
   152   J. LANGDON            1       17410        $2.51
  2468   L. MORRISEY           1       18520        $3.75
  2468   L. MORRISEY           2       20012        $4.20
  2468   L. MORRISEY           3       31572       $10.15
  2468   L. MORRISEY           4       48792       $37.50
  2468   L. MORRISEY           5       50407       $15.15
  2468   L. MORRISEY           6       61575       $20.10
  2468   L. MORRISEY           7       79204       $51.70
  2468   L. MORRISEY           8       85075       $37.84
  2468   L. MORRISEY           9       98476       $87.94
  3451   M. JACKSON            3       37847       $27.90
  3451   M. JACKSON            5       58492       $68.50
  3451   M. JACKSON            6       60010       $20.40
  3451   M. JACKSON            8       85260       $78.52
  3451   M. JACKSON            9       90520       $27.52
  4512   S. LEVITT             2       24680       $30.50
  4512   S. LEVITT             5       56784       $52.53
  4512   S. LEVITT             6       60410       $12.15
  4512   S. LEVITT             7       78952       $89.25
  4512   S. LEVITT             8       85278       $49.75
  4512   S. LEVITT             8       87492       $64.25
  4512   S. LEVITT             9       97204       $84.75
  5417   K. CONKLIN            1       13579       $35.72
  5417   K. CONKLIN            2       24615       $18.75
  5417   K. CONKLIN            3       34928       $37.45
  5417   K. CONKLIN            4       48527       $87.50
  5417   K. CONKLIN            5       50150       $18.95
  5417   K. CONKLIN            5       54652       $38.92
  5417   K. CONKLIN            5       59765       $98.95
  5417   K. CONKLIN            7       71572       $18.95
  5417   K. CONKLIN            8       85175       $80.10
  5417   K. CONKLIN            9       90275        $4.60
  5417   K. CONKLIN            9       91572       $18.57
  5417   K. CONKLIN            9       97576       $84.95
  6213   Z. HAMPTON            1       15792       $64.25
  6213   Z. HAMPTON            1       19975       $98.75
  6213   Z. HAMPTON            3       34576       $51.15
  6213   Z. HAMPTON            4       49512       $85.20
  7545   M. LARSON             1       14676       $38.45
  7545   M. LARSON             1       18592       $82.51
  7545   M. LARSON             1       19994       $98.98
  7545   M. LARSON             2       21214       $15.15
  7545   M. LARSON             3       37515       $82.12
  7545   M. LARSON             3       38592       $96.15
  7545   M. LARSON             4       48485       $87.14
  7545   M. LARSON             5       52762       $37.92
  7545   M. LARSON             5       57684       $80.15
  7545   M. LARSON             7       79015       $96.25
  7545   M. LARSON             8       80123        $5.60
  7545   M. LARSON             8       82462       $20.15
  7545   M. LARSON             9       91520       $18.15







                          C U S T O M E R  C H A R G E  R E P O R T

CUST. NO.     CUST. NAME     DEPT.    ITEM NO.    ITEM COST

  7545   M. LARSON             9       93715       $40.15





























































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:770: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:770"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:770"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_960
#AT_START_961
at_fn_group_banner 961 'run_reportwriter.at:775' \
  "Sample Charge Report" "                           " 4
at_xfail=no
(
  $as_echo "961. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
0152 J. LANGDON       87653 02475
0152 J. LANGDON       64025 00945
0152 J. LANGDON       41915 01370
0152 J. LANGDON       17410 00251
2468 L. MORRISEY      18520 00375
2468 L. MORRISEY      20012 00420
2468 L. MORRISEY      31572 01015
2468 L. MORRISEY      48792 03750
2468 L. MORRISEY      50407 01515
2468 L. MORRISEY      61575 02010
2468 L. MORRISEY      79204 05170
2468 L. MORRISEY      85075 03784
2468 L. MORRISEY      98476 08794
3451 M. JACKSON       37847 02790
3451 M. JACKSON       58492 06850
3451 M. JACKSON       60010 02040
3451 M. JACKSON       85260 07852
3451 M. JACKSON       90520 02752
4512 S. LEVITT        24680 03050
4512 S. LEVITT        56784 05253
4512 S. LEVITT        60410 01215
4512 S. LEVITT        78952 08925
4512 S. LEVITT        85278 04975
4512 S. LEVITT        87492 06425
4512 S. LEVITT        97204 08475
5417 K. CONKLIN       13579 03572
5417 K. CONKLIN       24615 01875
5417 K. CONKLIN       34928 03745
5417 K. CONKLIN       48527 08750
5417 K. CONKLIN       50150 01895
5417 K. CONKLIN       54652 03892
5417 K. CONKLIN       59765 09895
5417 K. CONKLIN       71572 01895
5417 K. CONKLIN       85175 08010
5417 K. CONKLIN       90275 00460
5417 K. CONKLIN       91572 01857
5417 K. CONKLIN       97576 08495
6213 Z. HAMPTON       15792 06425
6213 Z. HAMPTON       19975 09875
6213 Z. HAMPTON       34576 05115
6213 Z. HAMPTON       49512 08520
7545 M. LARSON        14676 03845
7545 M. LARSON        18592 08251
7545 M. LARSON        19994 09898
7545 M. LARSON        21214 01515
7545 M. LARSON        37515 08212
7545 M. LARSON        38592 09615
7545 M. LARSON        48485 08714
7545 M. LARSON        52762 03792
7545 M. LARSON        57684 08015
7545 M. LARSON        79015 09625
7545 M. LARSON        80123 00560
7545 M. LARSON        82462 02015
7545 M. LARSON        91520 01815
7545 M. LARSON        93715 04015
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      * ************************************************************* *
      * REPORT WRITER EXAMPLE #2.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT TRANSACTION-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  TRANSACTION-DATA.

       01  TRANSACTION-RECORD.
           03  TR-CUSTOMER-NUMBER      PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-CUSTOMER-NAME        PIC X(16).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-NUMBER          PIC 9(05).
           03  FILLER                  REDEFINES TR-ITEM-NUMBER.
               05  TR-ITEM-DEPARTMENT  PIC 9(01).
               05  FILLER              PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-COST            PIC 9(03)V99.
           03  FILLER                  PIC X(47).

       FD  REPORT-FILE
           REPORT IS CUSTOMER-REPORT.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.

       01  DISCOUNT-TABLE.
           02  FILLER                  PIC 99      VALUE 05.
           02  FILLER                  PIC 99      VALUE 07.
           02  FILLER                  PIC 99      VALUE 10.
           02  FILLER                  PIC 99      VALUE 15.
           02  FILLER                  PIC 99      VALUE 06.
           02  FILLER                  PIC 99      VALUE 22.
           02  FILLER                  PIC 99      VALUE 12.
           02  FILLER                  PIC 99      VALUE 09.
           02  FILLER                  PIC 99      VALUE 20.
       01  FILLER                      REDEFINES DISCOUNT-TABLE.
           02  DISCOUNT                OCCURS 9 TIMES
                                       INDEXED BY DISCOUNT-IX
                                       PIC V99.

       01  CALCULATED-FIELDS.
           03  WS-DISCOUNT-AMT         PIC 9(3)V99.
           03  WS-CHARGE-AMT           PIC 9(3)V99.

       REPORT SECTION.
       RD  CUSTOMER-REPORT
           CONTROL IS TR-CUSTOMER-NUMBER
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 5
           LAST DETAIL 58.

       01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 27   PIC X(41) VALUE
                   'C U S T O M E R  C H A R G E  R E P O R T'.
               03  COLUMN 90   PIC X(04) VALUE 'PAGE'.
               03  COLUMN 95   PIC ZZZZ9 SOURCE PAGE-COUNTER.
           02  LINE PLUS 2.
               03  COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
               03  COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
               03  COLUMN 30   PIC X(05) VALUE 'DEPT.'.
               03  COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
               03  COLUMN 51   PIC X(09) VALUE 'ITEM COST'.
               03  COLUMN 64   PIC X(08) VALUE 'DISCT. %'.
               03  COLUMN 76   PIC X(11) VALUE 'DISCT. AMT.'.
               03  COLUMN 91   PIC X(06) VALUE 'CHARGE'.

       01  CHARGE-DETAIL TYPE DETAIL.
           02  LINE PLUS 1.
               03  COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
               03  COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
               03  COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
               03  COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
               03  COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.
               03  COLUMN 67   PIC V99 SOURCE DISCOUNT (DISCOUNT-IX).
               03  COLUMN 69   PIC X(01) VALUE '%'.
               03  COLUMN 78   PIC $$$$.99 SOURCE WS-DISCOUNT-AMT.
               03  COLUMN 93   PIC $$$$.99 SOURCE WS-CHARGE-AMT.

       01  CUSTOMER-TOTAL TYPE CONTROL FOOTING TR-CUSTOMER-NUMBER
           NEXT GROUP IS PLUS 2.
           02  LINE PLUS 1.
               03  COLUMN 92   PIC $$$$$.99 SUM WS-CHARGE-AMT.
               03  COLUMN 101  PIC X VALUE '*'.

       PROCEDURE DIVISION.

       000-INITIATE.

           OPEN INPUT TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

           PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
                 REPORT-FILE.

           STOP RUN.

       100-PROCESS-TRANSACTION-DATA.
           SET DISCOUNT-IX TO TR-ITEM-DEPARTMENT.
           COMPUTE WS-DISCOUNT-AMT ROUNDED =
               TR-ITEM-COST * DISCOUNT (DISCOUNT-IX).
           COMPUTE WS-CHARGE-AMT =
               TR-ITEM-COST - WS-DISCOUNT-AMT.
           GENERATE CHARGE-DETAIL.
           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

       199-EXIT.
           EXIT.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:983: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:983"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:983"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:985: DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:985"
( $at_check_trace; DD_DATAIN="./inp_data" DD_SYSPRINT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:985"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                          C U S T O M E R  C H A R G E  R E P O R T                      PAGE     1

CUST. NO.     CUST. NAME     DEPT.    ITEM NO.    ITEM COST    DISCT. %    DISCT. AMT.    CHARGE

   152   J. LANGDON            8       87653       $24.75         09%          $2.23         $22.52
   152   J. LANGDON            6       64025        $9.45         22%          $2.08          $7.37
   152   J. LANGDON            4       41915       $13.70         15%          $2.06         $11.64
   152   J. LANGDON            1       17410        $2.51         05%           $.13          $2.38
                                                                                             $43.91 *


  2468   L. MORRISEY           1       18520        $3.75         05%           $.19          $3.56
  2468   L. MORRISEY           2       20012        $4.20         07%           $.29          $3.91
  2468   L. MORRISEY           3       31572       $10.15         10%          $1.02          $9.13
  2468   L. MORRISEY           4       48792       $37.50         15%          $5.63         $31.87
  2468   L. MORRISEY           5       50407       $15.15         06%           $.91         $14.24
  2468   L. MORRISEY           6       61575       $20.10         22%          $4.42         $15.68
  2468   L. MORRISEY           7       79204       $51.70         12%          $6.20         $45.50
  2468   L. MORRISEY           8       85075       $37.84         09%          $3.41         $34.43
  2468   L. MORRISEY           9       98476       $87.94         20%         $17.59         $70.35
                                                                                            $228.67 *


  3451   M. JACKSON            3       37847       $27.90         10%          $2.79         $25.11
  3451   M. JACKSON            5       58492       $68.50         06%          $4.11         $64.39
  3451   M. JACKSON            6       60010       $20.40         22%          $4.49         $15.91
  3451   M. JACKSON            8       85260       $78.52         09%          $7.07         $71.45
  3451   M. JACKSON            9       90520       $27.52         20%          $5.50         $22.02
                                                                                            $198.88 *


  4512   S. LEVITT             2       24680       $30.50         07%          $2.14         $28.36
  4512   S. LEVITT             5       56784       $52.53         06%          $3.15         $49.38
  4512   S. LEVITT             6       60410       $12.15         22%          $2.67          $9.48
  4512   S. LEVITT             7       78952       $89.25         12%         $10.71         $78.54
  4512   S. LEVITT             8       85278       $49.75         09%          $4.48         $45.27
  4512   S. LEVITT             8       87492       $64.25         09%          $5.78         $58.47
  4512   S. LEVITT             9       97204       $84.75         20%         $16.95         $67.80
                                                                                            $337.30 *


  5417   K. CONKLIN            1       13579       $35.72         05%          $1.79         $33.93
  5417   K. CONKLIN            2       24615       $18.75         07%          $1.31         $17.44
  5417   K. CONKLIN            3       34928       $37.45         10%          $3.75         $33.70
  5417   K. CONKLIN            4       48527       $87.50         15%         $13.13         $74.37
  5417   K. CONKLIN            5       50150       $18.95         06%          $1.14         $17.81
  5417   K. CONKLIN            5       54652       $38.92         06%          $2.34         $36.58
  5417   K. CONKLIN            5       59765       $98.95         06%          $5.94         $93.01
  5417   K. CONKLIN            7       71572       $18.95         12%          $2.27         $16.68
  5417   K. CONKLIN            8       85175       $80.10         09%          $7.21         $72.89
  5417   K. CONKLIN            9       90275        $4.60         20%           $.92          $3.68
  5417   K. CONKLIN            9       91572       $18.57         20%          $3.71         $14.86
  5417   K. CONKLIN            9       97576       $84.95         20%         $16.99         $67.96
                                                                                            $482.91 *


  6213   Z. HAMPTON            1       15792       $64.25         05%          $3.21         $61.04
  6213   Z. HAMPTON            1       19975       $98.75         05%          $4.94         $93.81







                          C U S T O M E R  C H A R G E  R E P O R T                      PAGE     2

CUST. NO.     CUST. NAME     DEPT.    ITEM NO.    ITEM COST    DISCT. %    DISCT. AMT.    CHARGE

  6213   Z. HAMPTON            3       34576       $51.15         10%          $5.12         $46.03
  6213   Z. HAMPTON            4       49512       $85.20         15%         $12.78         $72.42
                                                                                            $273.30 *


  7545   M. LARSON             1       14676       $38.45         05%          $1.92         $36.53
  7545   M. LARSON             1       18592       $82.51         05%          $4.13         $78.38
  7545   M. LARSON             1       19994       $98.98         05%          $4.95         $94.03
  7545   M. LARSON             2       21214       $15.15         07%          $1.06         $14.09
  7545   M. LARSON             3       37515       $82.12         10%          $8.21         $73.91
  7545   M. LARSON             3       38592       $96.15         10%          $9.62         $86.53
  7545   M. LARSON             4       48485       $87.14         15%         $13.07         $74.07
  7545   M. LARSON             5       52762       $37.92         06%          $2.28         $35.64
  7545   M. LARSON             5       57684       $80.15         06%          $4.81         $75.34
  7545   M. LARSON             7       79015       $96.25         12%         $11.55         $84.70
  7545   M. LARSON             8       80123        $5.60         09%           $.50          $5.10
  7545   M. LARSON             8       82462       $20.15         09%          $1.81         $18.34
  7545   M. LARSON             9       91520       $18.15         20%          $3.63         $14.52
  7545   M. LARSON             9       93715       $40.15         20%          $8.03         $32.12
                                                                                            $723.30 *










































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1123: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:1123"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1123"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_961
#AT_START_962
at_fn_group_banner 962 'run_reportwriter.at:1128' \
  "Sample Charge Report 2" "                         " 4
at_xfail=no
(
  $as_echo "962. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
0152 J. LANGDON       87653 02475
0152 J. LANGDON       64025 00945
0152 J. LANGDON       41915 01370
0152 J. LANGDON       17410 00251
2468 L. MORRISEY      18520 00375
2468 L. MORRISEY      20012 00420
2468 L. MORRISEY      31572 01015
2468 L. MORRISEY      48792 03750
2468 L. MORRISEY      50407 01515
2468 L. MORRISEY      61575 02010
2468 L. MORRISEY      79204 05170
2468 L. MORRISEY      85075 03784
2468 L. MORRISEY      98476 08794
3451 M. JACKSON       37847 02790
3451 M. JACKSON       58492 06850
3451 M. JACKSON       60010 02040
3451 M. JACKSON       85260 07852
3451 M. JACKSON       90520 02752
4512 S. LEVITT        24680 03050
4512 S. LEVITT        56784 05253
4512 S. LEVITT        60410 01215
4512 S. LEVITT        78952 08925
4512 S. LEVITT        85278 04975
4512 S. LEVITT        87492 06425
4512 S. LEVITT        97204 08475
5417 K. CONKLIN       13579 03572
5417 K. CONKLIN       24615 01875
5417 K. CONKLIN       34928 03745
5417 K. CONKLIN       48527 08750
5417 K. CONKLIN       50150 01895
5417 K. CONKLIN       54652 03892
5417 K. CONKLIN       59765 09895
5417 K. CONKLIN       71572 01895
5417 K. CONKLIN       85175 08010
5417 K. CONKLIN       90275 00460
5417 K. CONKLIN       91572 01857
5417 K. CONKLIN       97576 08495
6213 Z. HAMPTON       15792 06425
6213 Z. HAMPTON       19975 09875
6213 Z. HAMPTON       34576 05115
6213 Z. HAMPTON       49512 08520
7545 M. LARSON        14676 03845
7545 M. LARSON        18592 08251
7545 M. LARSON        19994 09898
7545 M. LARSON        21214 01515
7545 M. LARSON        37515 08212
7545 M. LARSON        38592 09615
7545 M. LARSON        48485 08714
7545 M. LARSON        52762 03792
7545 M. LARSON        57684 08015
7545 M. LARSON        79015 09625
7545 M. LARSON        80123 00560
7545 M. LARSON        82462 02015
7545 M. LARSON        91520 01815
7545 M. LARSON        93715 04015
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      * ************************************************************* *
      * REPORT WRITER EXAMPLE #3.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT TRANSACTION-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  TRANSACTION-DATA.

       01  TRANSACTION-RECORD.
           03  TR-CUSTOMER-NUMBER      PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-CUSTOMER-NAME        PIC X(16).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-NUMBER          PIC 9(05).
           03  FILLER                  REDEFINES TR-ITEM-NUMBER.
               05  TR-ITEM-DEPARTMENT  PIC 9(01).
               05  FILLER              PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-COST            PIC 9(03)V99.
           03  FILLER                  PIC X(47).

       FD  REPORT-FILE
           REPORT IS CUSTOMER-REPORT.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.

       01  DISCOUNT-TABLE.
           02  FILLER                  PIC 99      VALUE 05.
           02  FILLER                  PIC 99      VALUE 07.
           02  FILLER                  PIC 99      VALUE 10.
           02  FILLER                  PIC 99      VALUE 15.
           02  FILLER                  PIC 99      VALUE 06.
           02  FILLER                  PIC 99      VALUE 22.
           02  FILLER                  PIC 99      VALUE 12.
           02  FILLER                  PIC 99      VALUE 09.
           02  FILLER                  PIC 99      VALUE 20.
       01  FILLER                      REDEFINES DISCOUNT-TABLE.
           02  DISCOUNT                OCCURS 9 TIMES
                                       INDEXED BY DISCOUNT-IX
                                       PIC V99.

       01  CALCULATED-FIELDS.
           03  WS-DISCOUNT-AMT         PIC 9(3)V99.
           03  WS-CHARGE-AMT           PIC 9(3)V99.

       REPORT SECTION.
       RD  CUSTOMER-REPORT
           CONTROLS ARE FINAL, TR-CUSTOMER-NUMBER
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 5
           LAST DETAIL 58.

       01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 27   PIC X(41) VALUE
                   'C U S T O M E R  C H A R G E  R E P O R T'.
               03  COLUMN 90   PIC X(04) VALUE 'PAGE'.
               03  COLUMN 95   PIC ZZZZ9 SOURCE PAGE-COUNTER.
           02  LINE PLUS 2.
               03  COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
               03  COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
               03  COLUMN 30   PIC X(05) VALUE 'DEPT.'.
               03  COLUMN 39   PIC X(08) VALUE 'ITEM NO.'.
               03  COLUMN 51   PIC X(09) VALUE 'ITEM COST'.
               03  COLUMN 64   PIC X(08) VALUE 'DISCT. %'.
               03  COLUMN 76   PIC X(11) VALUE 'DISCT. AMT.'.
               03  COLUMN 91   PIC X(06) VALUE 'CHARGE'.

       01  CHARGE-DETAIL TYPE DETAIL.
           02  LINE PLUS 1.
               03  COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER
                                                GROUP INDICATE.
               03  COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME
                                                GROUP INDICATE.
               03  COLUMN 32   PIC 9(01) SOURCE TR-ITEM-DEPARTMENT.
               03  COLUMN 40   PIC 9(05) SOURCE TR-ITEM-NUMBER.
               03  COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.
               03  COLUMN 67   PIC V99 SOURCE DISCOUNT (DISCOUNT-IX).
               03  COLUMN 69   PIC X(01) VALUE '%'.
               03  COLUMN 78   PIC $$$$.99 SOURCE WS-DISCOUNT-AMT.
               03  COLUMN 93   PIC $$$$.99 SOURCE WS-CHARGE-AMT.

       01  CUSTOMER-TOTAL TYPE CONTROL FOOTING TR-CUSTOMER-NUMBER
           NEXT GROUP IS PLUS 2.
           02  LINE PLUS 1.
               03  COLUMN 50   PIC $$$$$.99 SUM TR-ITEM-COST.
               03  COLUMN 59   PIC X VALUE '*'.
               03  COLUMN 77   PIC $$$$$.99 SUM WS-DISCOUNT-AMT.
               03  COLUMN 86   PIC X VALUE '*'.
               03  COLUMN 92   PIC $$$$$.99 SUM WS-CHARGE-AMT.
               03  COLUMN 101  PIC X VALUE '*'.

       01  FINAL-TOTAL TYPE CONTROL FOOTING FINAL.
           02  LINE PLUS 1.
               03  COLUMN 10   PIC X(12) VALUE 'GRAND TOTALS'.
               03  COLUMN 48   PIC $$$,$$$.99 SUM TR-ITEM-COST.
               03  COLUMN 59   PIC XX VALUE '**'.
               03  COLUMN 75   PIC $$$,$$$.99 SUM WS-DISCOUNT-AMT.
               03  COLUMN 86   PIC XX VALUE '**'.
               03  COLUMN 90   PIC $$$,$$$.99 SUM WS-CHARGE-AMT.
               03  COLUMN 101  PIC XX VALUE '**'.

       PROCEDURE DIVISION.

       000-INITIATE.

           OPEN INPUT TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

           PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
               REPORT-FILE.

           STOP RUN.

       100-PROCESS-TRANSACTION-DATA.
           SET DISCOUNT-IX TO TR-ITEM-DEPARTMENT.
           COMPUTE WS-DISCOUNT-AMT ROUNDED =
               TR-ITEM-COST * DISCOUNT (DISCOUNT-IX).
           COMPUTE WS-CHARGE-AMT =
               TR-ITEM-COST - WS-DISCOUNT-AMT.
           GENERATE CHARGE-DETAIL.
           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

       199-EXIT.
           EXIT.


_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1353: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:1353"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1353"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1355: DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:1355"
( $at_check_trace; DD_DATAIN="./inp_data" DD_SYSPRINT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1355"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                          C U S T O M E R  C H A R G E  R E P O R T                      PAGE     1

CUST. NO.     CUST. NAME     DEPT.    ITEM NO.    ITEM COST    DISCT. %    DISCT. AMT.    CHARGE

   152   J. LANGDON            8       87653       $24.75         09%          $2.23         $22.52
                               6       64025        $9.45         22%          $2.08          $7.37
                               4       41915       $13.70         15%          $2.06         $11.64
                               1       17410        $2.51         05%           $.13          $2.38
                                                   $50.41 *                    $6.50 *       $43.91 *


  2468   L. MORRISEY           1       18520        $3.75         05%           $.19          $3.56
                               2       20012        $4.20         07%           $.29          $3.91
                               3       31572       $10.15         10%          $1.02          $9.13
                               4       48792       $37.50         15%          $5.63         $31.87
                               5       50407       $15.15         06%           $.91         $14.24
                               6       61575       $20.10         22%          $4.42         $15.68
                               7       79204       $51.70         12%          $6.20         $45.50
                               8       85075       $37.84         09%          $3.41         $34.43
                               9       98476       $87.94         20%         $17.59         $70.35
                                                  $268.33 *                   $39.66 *      $228.67 *


  3451   M. JACKSON            3       37847       $27.90         10%          $2.79         $25.11
                               5       58492       $68.50         06%          $4.11         $64.39
                               6       60010       $20.40         22%          $4.49         $15.91
                               8       85260       $78.52         09%          $7.07         $71.45
                               9       90520       $27.52         20%          $5.50         $22.02
                                                  $222.84 *                   $23.96 *      $198.88 *


  4512   S. LEVITT             2       24680       $30.50         07%          $2.14         $28.36
                               5       56784       $52.53         06%          $3.15         $49.38
                               6       60410       $12.15         22%          $2.67          $9.48
                               7       78952       $89.25         12%         $10.71         $78.54
                               8       85278       $49.75         09%          $4.48         $45.27
                               8       87492       $64.25         09%          $5.78         $58.47
                               9       97204       $84.75         20%         $16.95         $67.80
                                                  $383.18 *                   $45.88 *      $337.30 *


  5417   K. CONKLIN            1       13579       $35.72         05%          $1.79         $33.93
                               2       24615       $18.75         07%          $1.31         $17.44
                               3       34928       $37.45         10%          $3.75         $33.70
                               4       48527       $87.50         15%         $13.13         $74.37
                               5       50150       $18.95         06%          $1.14         $17.81
                               5       54652       $38.92         06%          $2.34         $36.58
                               5       59765       $98.95         06%          $5.94         $93.01
                               7       71572       $18.95         12%          $2.27         $16.68
                               8       85175       $80.10         09%          $7.21         $72.89
                               9       90275        $4.60         20%           $.92          $3.68
                               9       91572       $18.57         20%          $3.71         $14.86
                               9       97576       $84.95         20%         $16.99         $67.96
                                                  $543.41 *                   $60.50 *      $482.91 *


  6213   Z. HAMPTON            1       15792       $64.25         05%          $3.21         $61.04
                               1       19975       $98.75         05%          $4.94         $93.81







                          C U S T O M E R  C H A R G E  R E P O R T                      PAGE     2

CUST. NO.     CUST. NAME     DEPT.    ITEM NO.    ITEM COST    DISCT. %    DISCT. AMT.    CHARGE

  6213   Z. HAMPTON            3       34576       $51.15         10%          $5.12         $46.03
                               4       49512       $85.20         15%         $12.78         $72.42
                                                  $299.35 *                   $26.05 *      $273.30 *


  7545   M. LARSON             1       14676       $38.45         05%          $1.92         $36.53
                               1       18592       $82.51         05%          $4.13         $78.38
                               1       19994       $98.98         05%          $4.95         $94.03
                               2       21214       $15.15         07%          $1.06         $14.09
                               3       37515       $82.12         10%          $8.21         $73.91
                               3       38592       $96.15         10%          $9.62         $86.53
                               4       48485       $87.14         15%         $13.07         $74.07
                               5       52762       $37.92         06%          $2.28         $35.64
                               5       57684       $80.15         06%          $4.81         $75.34
                               7       79015       $96.25         12%         $11.55         $84.70
                               8       80123        $5.60         09%           $.50          $5.10
                               8       82462       $20.15         09%          $1.81         $18.34
                               9       91520       $18.15         20%          $3.63         $14.52
                               9       93715       $40.15         20%          $8.03         $32.12
                                                  $798.87 *                   $75.57 *      $723.30 *
         GRAND TOTALS                           $2,566.39 **                 $278.12 **   $2,288.27 **









































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1493: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:1493"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1493"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_962
#AT_START_963
at_fn_group_banner 963 'run_reportwriter.at:1498' \
  "Sample Charge Report 3" "                         " 4
at_xfail=no
(
  $as_echo "963. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
0152 J. LANGDON       87653 02475
0152 J. LANGDON       64025 00945
0152 J. LANGDON       41915 01370
0152 J. LANGDON       17410 00251
2468 L. MORRISEY      18520 00375
2468 L. MORRISEY      20012 00420
2468 L. MORRISEY      31572 01015
2468 L. MORRISEY      48792 03750
2468 L. MORRISEY      50407 01515
2468 L. MORRISEY      61575 02010
2468 L. MORRISEY      79204 05170
2468 L. MORRISEY      85075 03784
2468 L. MORRISEY      98476 08794
3451 M. JACKSON       37847 02790
3451 M. JACKSON       58492 06850
3451 M. JACKSON       60010 02040
3451 M. JACKSON       85260 07852
3451 M. JACKSON       90520 02752
4512 S. LEVITT        24680 03050
4512 S. LEVITT        56784 05253
4512 S. LEVITT        60410 01215
4512 S. LEVITT        78952 08925
4512 S. LEVITT        85278 04975
4512 S. LEVITT        87492 06425
4512 S. LEVITT        97204 08475
5417 K. CONKLIN       13579 03572
5417 K. CONKLIN       24615 01875
5417 K. CONKLIN       34928 03745
5417 K. CONKLIN       48527 08750
5417 K. CONKLIN       50150 01895
5417 K. CONKLIN       54652 03892
5417 K. CONKLIN       59765 09895
5417 K. CONKLIN       71572 01895
5417 K. CONKLIN       85175 08010
5417 K. CONKLIN       90275 00460
5417 K. CONKLIN       91572 01857
5417 K. CONKLIN       97576 08495
6213 Z. HAMPTON       15792 06425
6213 Z. HAMPTON       19975 09875
6213 Z. HAMPTON       34576 05115
6213 Z. HAMPTON       49512 08520
7545 M. LARSON        14676 03845
7545 M. LARSON        18592 08251
7545 M. LARSON        19994 09898
7545 M. LARSON        21214 01515
7545 M. LARSON        37515 08212
7545 M. LARSON        38592 09615
7545 M. LARSON        48485 08714
7545 M. LARSON        52762 03792
7545 M. LARSON        57684 08015
7545 M. LARSON        79015 09625
7545 M. LARSON        80123 00560
7545 M. LARSON        82462 02015
7545 M. LARSON        91520 01815
7545 M. LARSON        93715 04015
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      * ************************************************************* *
      * * MODIFICATIONS:                                              *
      * * ADDED GROUP ITEM TO INPUT RECORD DEFINITION AND CHANGED     * 20110227
      * * REPORT SECTION REFERENCES TO ELEMENTS UNDER GROUP TO FIX    * 20110227
      * * MISMATCHED CUSTOMER NAME/NUMBER ON REPORT.                  * 20110227
      * ************************************************************* *

      * ************************************************************* *
      * REPORT WRITER EXAMPLE #4.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT TRANSACTION-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  TRANSACTION-DATA.

       01  TRANSACTION-RECORD.
           03  TR-CUSTOMER.                                             20110227
               05  TR-CUSTOMER-NUMBER  PIC 9(04).                       20110227
               05  FILLER              PIC X(01).                       20110227
               05  TR-CUSTOMER-NAME    PIC X(16).                       20110227
           03  FILLER                  PIC X(01).
           03  TR-ITEM-NUMBER          PIC 9(05).
           03  FILLER                  REDEFINES TR-ITEM-NUMBER.
               05  TR-ITEM-DEPARTMENT  PIC 9(01).
               05  FILLER              PIC 9(04).
           03  FILLER                  PIC X(01).
           03  TR-ITEM-COST            PIC 9(03)V99.
           03  FILLER                  PIC X(47).

       FD  REPORT-FILE
           REPORT IS CUSTOMER-REPORT.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.

       01  DISCOUNT-TABLE.
           02  FILLER                  PIC 99      VALUE 05.
           02  FILLER                  PIC 99      VALUE 07.
           02  FILLER                  PIC 99      VALUE 10.
           02  FILLER                  PIC 99      VALUE 15.
           02  FILLER                  PIC 99      VALUE 06.
           02  FILLER                  PIC 99      VALUE 22.
           02  FILLER                  PIC 99      VALUE 12.
           02  FILLER                  PIC 99      VALUE 09.
           02  FILLER                  PIC 99      VALUE 20.
       01  FILLER                      REDEFINES DISCOUNT-TABLE.
           02  DISCOUNT                OCCURS 9 TIMES
                                       INDEXED BY DISCOUNT-IX
                                       PIC V99.

       01  CALCULATED-FIELDS.
           03  WS-DISCOUNT-AMT         PIC 9(3)V99.
           03  WS-CHARGE-AMT           PIC 9(3)V99.

       REPORT SECTION.
       RD  CUSTOMER-REPORT
           CONTROLS ARE FINAL, TR-CUSTOMER
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 5
           LAST DETAIL 58.

       01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 27   PIC X(41) VALUE
                   'C U S T O M E R  C H A R G E  R E P O R T'.
               03  COLUMN 90   PIC X(04) VALUE 'PAGE'.
               03  COLUMN + 2  PIC ZZZZ9 SOURCE PAGE-COUNTER.
           02  LINE PLUS 2.
               03  COLUMN 01   PIC X(09) VALUE 'CUST. NO.'.
               03  COLUMN 15   PIC X(10) VALUE 'CUST. NAME'.
               03  COLUMN 51   PIC X(09) VALUE 'ITEM COST'.
               03  COLUMN 76   PIC X(11) VALUE 'DISCT. AMT.'.
               03  COLUMN 91   PIC X(06) VALUE 'CHARGE'.

       01  CHARGE-DETAIL TYPE DETAIL.
           02  LINE PLUS 1.
               03  COLUMN 51   PIC $$$$.99 SOURCE TR-ITEM-COST.
               03  COLUMN 78   PIC $$$$.99 SOURCE WS-DISCOUNT-AMT.
               03  COLUMN 93   PIC $$$$.99 SOURCE WS-CHARGE-AMT.

       01  CUSTOMER-TOTAL TYPE CONTROL FOOTING TR-CUSTOMER              20110227
           NEXT GROUP IS PLUS 2.
           02  LINE PLUS 1.
               03  COLUMN 03   PIC Z(04) SOURCE TR-CUSTOMER-NUMBER.
               03  COLUMN 10   PIC X(16) SOURCE TR-CUSTOMER-NAME.
               03  COLUMN 50   PIC $$$$$.99 SUM TR-ITEM-COST.
               03  COLUMN 77   PIC $$$$$.99 SUM WS-DISCOUNT-AMT.
               03  COLUMN 92   PIC $$$$$.99 SUM WS-CHARGE-AMT.

       01  FINAL-TOTAL TYPE CONTROL FOOTING FINAL.
           02  LINE PLUS 1.
               03  COLUMN 10   PIC X(12) VALUE 'GRAND TOTALS'.
               03  COLUMN 48   PIC $$$,$$$.99 SUM TR-ITEM-COST.
               03  COLUMN 59   PIC X VALUE '*'.
               03  COLUMN 75   PIC $$$,$$$.99 SUM WS-DISCOUNT-AMT.
               03  COLUMN 86   PIC X VALUE '*'.
               03  COLUMN 90   PIC $$$,$$$.99 SUM WS-CHARGE-AMT.
               03  COLUMN 101  PIC X VALUE '*'.

       PROCEDURE DIVISION.

       000-INITIATE.

           OPEN INPUT TRANSACTION-DATA,
                OUTPUT REPORT-FILE.

           INITIATE CUSTOMER-REPORT.

           READ TRANSACTION-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

           PERFORM 100-PROCESS-TRANSACTION-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE CUSTOMER-REPORT.

           CLOSE TRANSACTION-DATA,
                 REPORT-FILE.

           STOP RUN.

       100-PROCESS-TRANSACTION-DATA.
           SET DISCOUNT-IX TO TR-ITEM-DEPARTMENT.
           COMPUTE WS-DISCOUNT-AMT ROUNDED =
               TR-ITEM-COST * DISCOUNT (DISCOUNT-IX).
           COMPUTE WS-CHARGE-AMT =
               TR-ITEM-COST - WS-DISCOUNT-AMT.
           GENERATE CUSTOMER-REPORT.
           READ TRANSACTION-DATA
             AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.
      *    END-READ.

       199-EXIT.
           EXIT.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1718: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:1718"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1718"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1720: DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:1720"
( $at_check_trace; DD_DATAIN="./inp_data" DD_SYSPRINT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1720"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                          C U S T O M E R  C H A R G E  R E P O R T                      PAGE     1

CUST. NO.     CUST. NAME                          ITEM COST                DISCT. AMT.    CHARGE

   152   J. LANGDON                                $50.41                      $6.50         $43.91


  2468   L. MORRISEY                              $268.33                     $39.66        $228.67


  3451   M. JACKSON                               $222.84                     $23.96        $198.88


  4512   S. LEVITT                                $383.18                     $45.88        $337.30


  5417   K. CONKLIN                               $543.41                     $60.50        $482.91


  6213   Z. HAMPTON                               $299.35                     $26.05        $273.30


  7545   M. LARSON                                $798.87                     $75.57        $723.30
         GRAND TOTALS                           $2,566.39 *                  $278.12 *    $2,288.27 *










































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:1793: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:1793"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:1793"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_963
#AT_START_964
at_fn_group_banner 964 'run_reportwriter.at:1798' \
  "Sample Charge Report 4" "                         " 4
at_xfail=no
(
  $as_echo "964. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
05 A 007328
05 A 090620
05 A 034602
05 A 017837
13 A 005035
13 A 049851
13 A 012139
22 A 077572
29 A 013491
33 A 050628
33 A 044987
33 A 050162
39 A 068745
39 A 058384
39 A 053005
44 A 085669
44 A 057891
49 A 065134
03 B 032035
03 B 054694
03 B 069591
03 B 046023
03 B 025725
19 B 045550
19 B 099371
19 B 049703
25 B 047000
25 B 087106
31 B 049157
34 B 005994
09 C 007980
14 C 092224
14 C 062942
23 C 002974
28 C 042394
28 C 014745
34 C 053467
34 C 054332
42 C 089295
42 C 073826
04 D 029685
04 D 060676
06 D 013230
06 D 042290
15 D 013076
15 D 024104
15 D 013078
38 D 078771
38 D 085871
11 E 099350
17 E 066301
27 E 038144
27 E 097807
27 E 008055
08 F 073201
09 F 008278
09 F 040898
09 F 039688
16 F 019308
16 F 015173
16 F 022865
16 F 003568
36 F 029276
40 F 078631
40 F 010249
40 F 059583
48 F 043877
48 F 006755
01 G 018347
20 G 098123
21 G 077346
22 G 025953
26 G 009587
41 G 083126
41 G 073046
32 H 038823
32 H 009989
32 H 065838
32 H 024994
32 H 016065
32 H 097042
43 H 077895
45 H 038692
46 H 088151
46 H 069538
09 J 039764
18 J 088890
18 J 039421
37 J 044560
45 J 018770
45 J 032993
45 J 089631
45 J 072659
02 K 075925
02 K 072909
02 K 040544
12 K 002138
12 K 029239
35 K 065936
35 K 093046
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

      * ************************************************************* *
      * REPORT WRITER EXAMPLE #5.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT SALES-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  SALES-DATA.

       01  SALES-RECORD.
           03  SR-SALESMAN-NUMBER      PIC 9(02).
           03  FILLER                  PIC X(01).
           03  SR-DISTRICT-CODE        PIC X(01).
           03  FILLER                  PIC X(01).
           03  SR-SALE-AMOUNT          PIC 9(04)V99.
           03  FILLER                  PIC X(69).

       FD  REPORT-FILE
           REPORT IS DISTRICT-SALES-REPORT.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.

       01  COMMISSION-TABLE.
           02  FILLER                  PIC X(03)   VALUE 'A20'.
           02  FILLER                  PIC X(03)   VALUE 'B18'.
           02  FILLER                  PIC X(03)   VALUE 'C15'.
           02  FILLER                  PIC X(03)   VALUE 'D12'.
           02  FILLER                  PIC X(03)   VALUE 'E10'.
           02  FILLER                  PIC X(03)   VALUE 'F12'.
           02  FILLER                  PIC X(03)   VALUE 'G10'.
           02  FILLER                  PIC X(03)   VALUE 'H08'.
           02  FILLER                  PIC X(03)   VALUE 'J05'.
           02  FILLER                  PIC X(03)   VALUE 'K07'.
       01  FILLER                      REDEFINES COMMISSION-TABLE.
           02  COMMISSION-ENTRY        OCCURS 10 TIMES
                                       INDEXED BY COMMISSION-IX.
               03  CE-DISTRICT         PIC X(01).
               03  CE-RATE             PIC V99.

       01  CALCULATED-FIELDS.
           03  WS-COMMISSION           PIC 9(5)V99.

       REPORT SECTION.
       RD  DISTRICT-SALES-REPORT
           CONTROLS ARE FINAL, SR-DISTRICT-CODE, SR-SALESMAN-NUMBER
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 5
           LAST DETAIL 58.

       01  PAGE-HEAD-GROUP TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 27   PIC X(41) VALUE
                   'D I S T R I C T   S A L E S   R E P O R T'.
               03  COLUMN 90   PIC X(04) VALUE 'PAGE'.
               03  COLUMN 95   PIC ZZZZ9 SOURCE PAGE-COUNTER.
           02  LINE 3.
               03  COLUMN 20   PIC X(26) VALUE
                   '-------- SALESMAN --------'.
               03  COLUMN 54   PIC X(15) VALUE
                   '-- DISTRICT --'.
           02  LINE 4.
               03  COLUMN 20   PIC X(03) VALUE 'NO.'.
               03  COLUMN 28   PIC X(05) VALUE 'SALES'.
               03  COLUMN 37   PIC X(10) VALUE 'COMMISSION'.
               03  COLUMN 54   PIC X(03) VALUE 'NO.'.
               03  COLUMN 61   PIC X(05) VALUE 'SALES'.

       01  SALE-DETAIL TYPE DETAIL.
           02  LINE PLUS 1.
               03  COLUMN 01   PIC 99      SOURCE SR-SALESMAN-NUMBER.
               03  COLUMN 04   PIC X       SOURCE SR-DISTRICT-CODE.
               03  COLUMN 06   PIC 9999.99 SOURCE SR-SALE-AMOUNT.

       01  SALESMAN-TOTAL TYPE CONTROL FOOTING SR-SALESMAN-NUMBER.
           02  LINE PLUS 1.
               03  COLUMN 20   PIC 99    SOURCE SR-SALESMAN-NUMBER.
               03  ST-SALES-AMT COLUMN 24 PIC $$$,$$9.99 SUM
                       SR-SALE-AMOUNT.
               03  COLUMN 37 PIC $$$,$$9.99 SOURCE WS-COMMISSION.

       01  DISTRICT-TOTAL TYPE CONTROL FOOTING SR-DISTRICT-CODE
           NEXT GROUP PLUS 2.
           02  LINE PLUS 1.
               03  COLUMN 54   PIC X     SOURCE SR-DISTRICT-CODE.
               03  COLUMN 58   PIC $$$,$$9.99 SUM ST-SALES-AMT.

       01  FINAL-TOTAL TYPE CONTROL FOOTING FINAL.
           02  LINE PLUS 2.
               03  COLUMN 15   PIC X(19) VALUE
                   'MONTHLY TOTAL SALES'.
               03  COLUMN 57   PIC $$$$,$$9.99 SUM ST-SALES-AMT.
               03  COLUMN 69   PIC XX VALUE '**'.

       PROCEDURE DIVISION.

       DECLARATIVES.
       USE-SALESMAN-TOTAL SECTION. USE BEFORE REPORTING SALESMAN-TOTAL.
       USE-SALESMAN-TOTAL-PROC.
           SET COMMISSION-IX TO 1.
           SEARCH COMMISSION-ENTRY
               AT END
                   MOVE 0.00 TO WS-COMMISSION
               WHEN CE-DISTRICT (COMMISSION-IX) = SR-DISTRICT-CODE
                   COMPUTE WS-COMMISSION ROUNDED =
                       CE-RATE (COMMISSION-IX) * ST-SALES-AMT.

       USE-SALESMAN-TOTAL-EXIT.
           EXIT.

       END DECLARATIVES.

       000-INITIATE.

           OPEN INPUT SALES-DATA,
                OUTPUT REPORT-FILE.

           INITIATE DISTRICT-SALES-REPORT.

           READ SALES-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

           PERFORM 100-PROCESS-SALES-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE DISTRICT-SALES-REPORT.

           CLOSE SALES-DATA,
                 REPORT-FILE.

           STOP RUN.

       100-PROCESS-SALES-DATA.
           GENERATE DISTRICT-SALES-REPORT.
           READ SALES-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH
           END-READ.

       199-EXIT.
           EXIT.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:2069: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:2069"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:2069"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:2071: DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:2071"
( $at_check_trace; DD_DATAIN="./inp_data" DD_SYSPRINT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:2071"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                          D I S T R I C T   S A L E S   R E P O R T                      PAGE     1

                   -------- SALESMAN --------        -- DISTRICT --
                   NO.     SALES    COMMISSION       NO.    SALES
                   05   $1,503.87      $300.77
                   13     $670.25      $134.05
                   22     $775.72      $155.14
                   29     $134.91       $26.98
                   33   $1,457.77      $291.55
                   39   $1,801.34      $360.27
                   44   $1,435.60      $287.12
                   49     $651.34      $130.27
                                                     A    $8,430.80


                   03   $2,280.68      $410.52
                   19   $1,946.24      $350.32
                   25   $1,341.06      $241.39
                   31     $491.57       $88.48
                   34      $59.94       $10.79
                                                     B    $6,119.49


                   09      $79.80       $11.97
                   14   $1,551.66      $232.75
                   23      $29.74        $4.46
                   28     $571.39       $85.71
                   34   $1,077.99      $161.70
                   42   $1,631.21      $244.68
                                                     C    $4,941.79


                   04     $903.61      $108.43
                   06     $555.20       $66.62
                   15     $502.58       $60.31
                   38   $1,646.42      $197.57
                                                     D    $3,607.81


                   11     $993.50       $99.35
                   17     $663.01       $66.30
                   27   $1,440.06      $144.01
                                                     E    $3,096.57


                   08     $732.01       $87.84
                   09     $888.64      $106.64
                   16     $609.14       $73.10
                   36     $292.76       $35.13
                   40   $1,484.63      $178.16
                   48     $506.32       $60.76
                                                     F    $4,513.50


                   01     $183.47       $18.35
                   20     $981.23       $98.12
                   21     $773.46       $77.35
                   22     $259.53       $25.95







                          D I S T R I C T   S A L E S   R E P O R T                      PAGE     2

                   -------- SALESMAN --------        -- DISTRICT --
                   NO.     SALES    COMMISSION       NO.    SALES
                   26      $95.87        $9.59
                   41   $1,561.72      $156.17
                                                     G    $3,855.28


                   32   $2,527.51      $202.20
                   43     $778.95       $62.32
                   45     $386.92       $30.95
                   46   $1,576.89      $126.15
                                                     H    $5,270.27


                   09     $397.64       $19.88
                   18   $1,283.11       $64.16
                   37     $445.60       $22.28
                   45   $2,140.53      $107.03
                                                     J    $4,266.88


                   02   $1,893.78      $132.56
                   12     $313.77       $21.96
                   35   $1,589.82      $111.29
                                                     K    $3,797.37

              MONTHLY TOTAL SALES                        $47,899.76 **





































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:2209: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:2209"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:2209"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_964
#AT_START_965
at_fn_group_banner 965 'run_reportwriter.at:2214' \
  "Sample Payroll Report" "                          " 4
at_xfail=no
(
  $as_echo "965. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
01 6622 M GAVIN SHAFER         19740201 026000 01521 03362 00075 021042
01 6622 M GAVIN SHAFER         19740215 026000 01521 03362 00175 020942
01 6622 M GAVIN SHAFER         19740301 026000 01521 03362 00175 020942
01 6622 M GAVIN SHAFER         19740315 026000 01521 03362 00050 021067
01 7078 F VERA ALSTON          19740101 030000 01755 02304 00050 025891
01 7078 F VERA ALSTON          19740115 030000 01755 02304 00100 025841
01 7078 F VERA ALSTON          19740201 030000 01755 02304 00050 025891
01 7078 F VERA ALSTON          19740215 030000 01755 02304 00000 025941
01 7078 F VERA ALSTON          19740301 030000 01755 02304 00075 025866
01 7078 F VERA ALSTON          19740315 030000 01755 02304 00100 025841
01 8093 M GRADY KAISER         19740101 045000 02633 05819 00175 036374
01 8093 M GRADY KAISER         19740115 045000 02633 05819 00100 036449
01 8093 M GRADY KAISER         19740201 045000 02633 05819 00100 036449
01 8093 M GRADY KAISER         19740215 047500 02779 03648 00100 040973
01 8093 M GRADY KAISER         19740301 047500 02779 03648 00175 040898
05 1720 F PAULINE WINSTON      19740101 013000 00761 20110 00050 010080
05 1720 F PAULINE WINSTON      19740115 013000 00761 02110 00000 010130
05 1720 F PAULINE WINSTON      19740201 014000 00819 02272 00075 010834
05 1720 F PAULINE WINSTON      19740215 014000 00819 02272 00175 010734
05 1720 F PAULINE WINSTON      19740301 014000 00819 02272 00050 010859
05 2116 M HERMAN COX           19740101 010000 00585 01293 00175 007947
05 2116 M HERMAN COX           19740115 010000 00585 01293 00175 007947
05 2116 M HERMAN COX           19740201 010000 00585 01293 00100 008022
05 2116 M HERMAN COX           19740215 010000 00585 01293 00100 008022
05 2116 M HERMAN COX           19740301 010000 00585 01293 00075 008047
05 2116 M HERMAN COX           19740315 011000 00644 01187 00100 009070
05 6925 M ADOLF TRUJILLO       19740115 012500 00731 02379 00050 009340
05 6925 M ADOLF TRUJILLO       19740201 012500 00731 02379 00100 009290
05 6925 M ADOLF TRUJILLO       19740215 012500 00731 02379 00175 009215
05 6925 M ADOLF TRUJILLO       19740301 012500 00731 02379 00075 009315
05 6925 M ADOLF TRUJILLO       19740315 012500 00731 02379 00000 009390
10 1504 F TIFFANY KEIR         19740101 029000 01697 03129 00050 024124
10 1504 F TIFFANY KEIR         19740115 029000 01697 03129 00000 024174
10 1504 F TIFFANY KEIR         19740201 029000 01697 03129 00075 024099
10 1504 F TIFFANY KEIR         19740215 029000 01697 03129 00000 024174
10 1504 F TIFFANY KEIR         19740301 029000 01697 03129 00000 024174
10 1504 F TIFFANY KEIR         19740315 029000 01697 03129 00050 024124
10 6640 M ALEXANDER CATHEY     19740101 032500 01901 06185 00000 024414
10 6640 M ALEXANDER CATHEY     19740115 032500 01901 06185 00175 024239
10 6640 M ALEXANDER CATHEY     19740201 032500 01901 06185 00175 024239
10 6640 M ALEXANDER CATHEY     19740215 032500 01901 06185 00175 024239
10 6640 M ALEXANDER CATHEY     19740301 032500 01901 06185 00100 024314
10 6640 M ALEXANDER CATHEY     19740315 032500 01901 06185 00100 024314
10 9465 M STEVE HUGHES         19740101 029500 01726 04788 00175 022811
10 9465 M STEVE HUGHES         19740115 029500 01726 04788 00000 022986
10 9465 M STEVE HUGHES         19740201 029500 01726 04788 00000 022986
10 9465 M STEVE HUGHES         19740215 029500 01726 04788 00050 022936
10 9465 M STEVE HUGHES         19740301 029500 01726 04788 00075 022911
15 2903 F KAYLA VERBECK        19740101 014000 00819 02272 00050 010859
15 2903 F KAYLA VERBECK        19740115 014000 00819 02272 00175 010734
15 2903 F KAYLA VERBECK        19740201 014000 00819 02272 00050 010859
15 2903 F KAYLA VERBECK        19740215 014000 00819 02272 00175 010734
15 2903 F KAYLA VERBECK        19740301 014000 00819 02272 00000 010909
15 2903 F KAYLA VERBECK        19740315 014000 00819 02272 00075 010834
15 5196 F CLAIRE KELLAR        19740101 014500 00848 01114 00075 012463
15 5196 F CLAIRE KELLAR        19740115 014500 00848 01114 00100 012438
15 5196 F CLAIRE KELLAR        19740201 014500 00848 01114 00175 012363
15 5196 F CLAIRE KELLAR        19740215 014500 00848 01114 00050 012488
15 5196 F CLAIRE KELLAR        19740301 015300 00895 02912 00175 011318
15 5196 F CLAIRE KELLAR        19740315 015300 00895 02912 00100 011393
20 5190 F MARYANN GLAZENER     19740101 009000 00527 01164 00050 007260
20 5190 F MARYANN GLAZENER     19740115 009000 00527 01164 00075 007235
20 5190 F MARYANN GLAZENER     19740201 009000 00527 01164 00000 007310
20 5190 F MARYANN GLAZENER     19740215 009000 00527 01164 00075 007235
20 5190 F MARYANN GLAZENER     19740301 009000 00527 01164 00050 007260
20 5190 F MARYANN GLAZENER     19740315 009000 00527 01164 00100 007210
20 6580 F CAROLINE TROMBETTA   19740101 008000 00468 00863 00000 006669
20 6580 F CAROLINE TROMBETTA   19740115 008000 00468 00863 00075 006594
20 6580 F CAROLINE TROMBETTA   19740201 008000 00468 00863 00000 006569
20 6580 F CAROLINE TROMBETTA   19740215 008000 00468 00863 00075 006594
20 6580 F CAROLINE TROMBETTA   19740301 008000 00468 00863 00050 006619
20 6580 F CAROLINE TROMBETTA   19740315 008000 00468 00863 00075 006594
20 9507 F ADRIANA CHANGAZI     19740101 008300 00486 01347 00075 006392
20 9507 F ADRIANA CHANGAZI     19740115 008300 00486 01347 00175 006292
20 9507 F ADRIANA CHANGAZI     19740201 008300 00486 01347 00075 006392
20 9507 F ADRIANA CHANGAZI     19740215 008300 00486 01347 00175 006292
20 9507 F ADRIANA CHANGAZI     19740301 008300 00486 01347 00000 006467
20 9507 F ADRIANA CHANGAZI     19740315 008300 00486 01347 00175 006292
25 0428 M MELVIN BEHRENS       19740101 007800 00456 00842 00000 006502
25 0428 M MELVIN BEHRENS       19740115 007800 00456 00842 00175 006327
25 0428 M MELVIN BEHRENS       19740201 007800 00456 00842 00175 006327
25 0428 M MELVIN BEHRENS       19740215 007800 00456 00842 00075 006427
25 0428 M MELVIN BEHRENS       19740301 007800 00456 00842 00000 006502
25 0428 M MELVIN BEHRENS       19740315 007800 00456 00842 00075 006427
25 2003 M BALDWIN SIMONSEN     19740101 011000 00644 02093 00050 008213
25 2003 M BALDWIN SIMONSEN     19740115 011000 00644 02093 00075 008188
25 2003 M BALDWIN SIMONSEN     19740201 011000 00644 02093 00000 008263
25 2003 M BALDWIN SIMONSEN     19740215 011000 00644 02093 00100 008163
25 2003 M BALDWIN SIMONSEN     19740301 011500 00673 01487 00075 009265
25 2003 M BALDWIN SIMONSEN     19740315 011500 00673 01487 00175 009165
25 6491 M LEO TILLEY           19740101 010100 00591 00776 00050 008683
25 6491 M LEO TILLEY           19740115 010100 00591 00776 00075 008658
25 6491 M LEO TILLEY           19740201 010100 00591 00776 00050 008683
25 6491 M LEO TILLEY           19740215 010100 00591 00776 00075 008658
25 6491 M LEO TILLEY           19740301 010100 00591 00776 00100 008633
25 6491 M LEO TILLEY           19740315 010100 00591 00776 00000 008733
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      * ************************************************************* *
      * * MODIFICATIONS:                                              *
      * * CORRECT PARAGRAPH NAME AND GO TO CODING ERRORS.             *
      * ************************************************************* *

      * ************************************************************* *
      * REPORT WRITER EXAMPLE #6.                                     *
      * ************************************************************* *

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.

       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT PAYROLL-REGISTER-DATA
               ASSIGN TO EXTERNAL DATAIN
                         ORGANIZATION IS LINE SEQUENTIAL.

           SELECT REPORT-FILE
               ASSIGN TO EXTERNAL LINE ADVANCING SYSPRINT.

       DATA DIVISION.
       FILE SECTION.

       FD  PAYROLL-REGISTER-DATA.

       01  PAYROLL-REGISTER-RECORD.
           03  PRR-DEPARTMENT-NUMBER   PIC 9(02).
           03  FILLER                  PIC X(01).
           03  PRR-EMPLOYEE-KEY.
               05  PRR-EMPLOYEE-NO     PIC 9(04).
               05  FILLER              PIC X(01).
               05  PRR-GENDER          PIC X(01).
               05  FILLER              PIC X(01).
               05  PRR-EMPLOYEE-NAME   PIC X(20).
           03  FILLER                  PIC X(01).
           03  PRR-PAY-DATE            PIC 9(08).
           03  FILLER                  REDEFINES PRR-PAY-DATE.
               05  PRR-PAY-DATE-YEAR   PIC 9(04).
               05  PRR-PAY-DATE-MONTH  PIC 9(02).
               05  PRR-PAY-DATE-DAY    PIC 9(02).
           03  FILLER                  PIC X(01).
           03  PRR-GROSS-PAY           PIC 9(04)V99.
           03  FILLER                  PIC X(01).
           03  PRR-FICA-WH             PIC 9(03)V99.
           03  FILLER                  PIC X(01).
           03  PRR-FED-WH              PIC 9(03)V99.
           03  FILLER                  PIC X(01).
           03  PRR-MISC-DED            PIC 9(03)V99.
           03  FILLER                  PIC X(01).
           03  PRR-NET-PAY             PIC 9(04)V99.
           03  FILLER                  PIC X(09).

       FD  REPORT-FILE
           REPORT IS QUARTERLY-PAY-REGISTER.

       WORKING-STORAGE SECTION.
       77  END-OF-FILE-SWITCH          PIC X(1)    VALUE 'N'.
           88  END-OF-FILE                         VALUE 'Y'.
       77  PR-SW                       PIC X(1)    VALUE 'N'.
       77  SUM-FED-WH                  PIC 9(04)V99 VALUE 0.
       77  HI-GROSS                    PIC 9(05) VALUE 2000.

       01  WS-EMPLOYEE-KEY.
           03  WS-EMPLOYEE-NUMBER      PIC 9(04).
           03  FILLER                  PIC X(03).
           03  WS-EMPLOYEE-NAME        PIC X(20).

       01  WS-PERCENTS-COMPUTED.
           03  WPC-DEPT                OCCURS 6 TIMES
                                       INDEXED BY WPCD-IX.
               05  WPC-PERCENT         OCCURS 5 TIMES
                                       INDEXED BY WPCC-IX
                                       PIC 9(3)V99.

       01  DEPARTMENT-TABLE.
           03  FILLER PIC X(17) VALUE '01MANAGEMENT     '.
           03  FILLER PIC X(50) VALUE ZEROS.
           03  FILLER PIC X(17) VALUE '05ADMINISTRATIVE '.
           03  FILLER PIC X(50) VALUE ZEROS.
           03  FILLER PIC X(17) VALUE '10SKILLED NURSING'.
           03  FILLER PIC X(50) VALUE ZEROS.
           03  FILLER PIC X(17) VALUE '15PATIENT SUPPORT'.
           03  FILLER PIC X(50) VALUE ZEROS.
           03  FILLER PIC X(17) VALUE '20HOUSEKEEPING   '.
           03  FILLER PIC X(50) VALUE ZEROS.
           03  FILLER PIC X(17) VALUE '25MAINTENANCE    '.
           03  FILLER PIC X(50) VALUE ZEROS.
       01  FILLER REDEFINES DEPARTMENT-TABLE.
           03  DEPARTMENT-ENTRY      OCCURS 6 TIMES
                                     INDEXED BY DE-IX.
               05  DE-NUMBER         PIC 9(02).
               05  DE-NAME           PIC X(15).
               05  DE-GROSS          PIC 9(08)V99.
               05  DE-FICA           PIC 9(08)V99.
               05  DE-FWT            PIC 9(08)V99.
               05  DE-MISC           PIC 9(08)V99.
               05  DE-NET            PIC 9(08)V99.

       REPORT SECTION.
       RD  QUARTERLY-PAY-REGISTER
           CONTROLS ARE FINAL, PRR-DEPARTMENT-NUMBER,
               PRR-EMPLOYEE-KEY
           PAGE LIMIT IS 66 LINES
           HEADING 1
           FIRST DETAIL 7
           LAST DETAIL 60.

       01  TYPE PAGE HEADING.
           02  LINE 1.
               03  COLUMN 39   PIC X(13) VALUE 'C E N T U R Y'.
               03  COLUMN 55   PIC X(13) VALUE 'M E D I C A L'.
               03  COLUMN 71   PIC X(11) VALUE 'C E N T E R'.
           02  LINE 2.
               03  COLUMN 35   PIC X(17) VALUE 'Q U A R T E R L Y'.
               03  COLUMN 55   PIC X(13) VALUE 'P A Y R O L L'.
               03  COLUMN 71   PIC X(15) VALUE 'R E G I S T E R'.
               03  COLUMN 111  PIC X(04) VALUE 'PAGE'.
               03  COLUMN 116  PIC ZZZZ9 SOURCE PAGE-COUNTER.
           02  LINE 4.
               03  COLUMN 06   PIC X(9) VALUE ALL '-'.
               03  COLUMN 15   PIC X(28) VALUE
                   ' EMPLOYEE ---------'.
               03  COLUMN 40   PIC X(05) VALUE 'GROSS'.
               03  COLUMN 54   PIC X(04) VALUE 'FICA'.
               03  COLUMN 66   PIC X(07) VALUE 'FED W/H'.
               03  COLUMN 80   PIC X(05) VALUE 'MISC.'.
               03  COLUMN 95   PIC X(03) VALUE 'NET'.
           02  LINE 5.
               03  COLUMN 07   PIC X(02) VALUE 'NO'.
               03  COLUMN 22   PIC X(04) VALUE 'NAME'.
               03  COLUMN 41   PIC X(03) VALUE 'PAY'.
               03  COLUMN 55   PIC X(03) VALUE 'TAX'.
               03  COLUMN 68   PIC X(03) VALUE 'TAX'.
               03  COLUMN 79   PIC X(07) VALUE 'DEDUCT.'.
               03  COLUMN 95   PIC X(03) VALUE 'PAY'.

       01  DEPT-HEAD TYPE CONTROL HEADING PRR-DEPARTMENT-NUMBER
           NEXT GROUP + 1.
           02  LINE PLUS 1.
               03  COLUMN 01   PIC X(18) VALUE
                     'DEPARTMENT NUMBER:'.
               03  COLUMN 21   PIC 9(02) SOURCE PRR-DEPARTMENT-NUMBER.
               03  COLUMN 24   PIC X(15) SOURCE DE-NAME (DE-IX).

       01  EMPLOYEE-DETAIL TYPE DETAIL.
           02  LINE + 1.
               03  COLUMN 01   PIC X(27) SOURCE PRR-EMPLOYEE-KEY.
               03  COLUMN 30   PIC X(5) VALUE "Hello"
                               PRESENT AFTER NEW PRR-EMPLOYEE-KEY
                                              OR PAGE.
               03  COLUMN 30   PIC X(5) VALUE " ''  "
                               ABSENT AFTER NEW PRR-EMPLOYEE-KEY
                                              OR PAGE.
               03  COLUMN 50   PIC 9(04).99 SOURCE PRR-GROSS-PAY.
               03  COLUMN 60   PIC 9(03).99 SOURCE PRR-FICA-WH.
               03  COLUMN 70   PIC 9(03).99 SOURCE PRR-FED-WH.
               03  COLUMN 80   PIC 9(03).99 SOURCE PRR-MISC-DED.
               03  COLUMN 90   PIC 9(04).99 SOURCE PRR-NET-PAY.

       01  EMPL-FOOT TYPE CONTROL FOOTING PRR-EMPLOYEE-KEY.
           02  LINE PLUS 1
                      PRESENT WHEN SUM-FED-WH > 80.00
                  .
               03  COLUMN 06   PIC ZZZ9  SOURCE WS-EMPLOYEE-NUMBER.
               03  COLUMN 14   PIC X(20) SOURCE WS-EMPLOYEE-NAME.
               03  COLUMN 38   PIC $$,$$9.99 SUM PRR-GROSS-PAY.
               03  COLUMN 53   PIC $$$9.99 SUM PRR-FICA-WH.
               03  COLUMN 66   PIC $$$9.99 SUM PRR-FED-WH.
               03  COLUMN 79   PIC $$$9.99 SUM PRR-MISC-DED.
               03  COLUMN 92   PIC $$,$$9.99 SUM PRR-NET-PAY.

       01  DEPT-FOOT TYPE CONTROL FOOTING PRR-DEPARTMENT-NUMBER
           NEXT GROUP PLUS 2.
           02  LINE PLUS 2.
               03  COLUMN 14   PIC X(20) VALUE
                   'DEPARTMENT TOTALS'.
               03  DEPT-FOOT-GROSS       COLUMN 38   PIC $$,$$9.99
                                         SUM PRR-GROSS-PAY.
               03  COLUMN 48   PIC X         VALUE '*'.
               03  DEPT-FOOT-FICA        COLUMN 53   PIC $$$9.99
                                         SUM PRR-FICA-WH.
               03  COLUMN 61   PIC X         VALUE '*'.
               03  DEPT-FOOT-FWT         COLUMN 66   PIC $$$9.99
                                         SUM PRR-FED-WH.
               03  COLUMN 74   PIC X         VALUE '*'.
               03  DEPT-FOOT-MISC        COLUMN 79   PIC $$$9.99
                                         SUM PRR-MISC-DED.
               03  COLUMN 87   PIC X         VALUE '*'.
               03  DEPT-FOOT-NET         COLUMN 92   PIC $$,$$9.99
                                         SUM PRR-NET-PAY.
               03  COLUMN 102  PIC X         VALUE '*'.

       01  COMP-FOOT TYPE CONTROL FOOTING FINAL.
           02  LINE PLUS 2.
               03  COLUMN 14   PIC X(20) VALUE
                   'COMPANY TOTALS'.
               03  CO-GROSS    COLUMN 37   PIC $$$,$$9.99
                               SUM PRR-GROSS-PAY.
               03  COLUMN 48   PIC XX        VALUE '**'.
               03  CO-FICA     COLUMN 51   PIC $$,$$9.99
                               SUM PRR-FICA-WH.
               03  COLUMN 61   PIC XX        VALUE '**'.
               03  CO-FWT      COLUMN 64   PIC $$,$$9.99
                               SUM PRR-FED-WH.
               03  COLUMN 74   PIC XX        VALUE '**'.
               03  CO-MISC     COLUMN 77   PIC $$,$$9.99
                               SUM PRR-MISC-DED.
               03  COLUMN 87   PIC XX        VALUE '**'.
               03  CO-NET      COLUMN 91   PIC $$$,$$9.99
                               SUM PRR-NET-PAY.
               03  COLUMN 102  PIC XX        VALUE '**'.

       01  REPORT-FOOT TYPE REPORT FOOTING.
           02  LINE 1.
               03  COLUMN 39   PIC X(13) VALUE 'C e n t u r y'.
               03  COLUMN 55   PIC X(13) VALUE 'M e d i c a l'.
               03  COLUMN 71   PIC X(11) VALUE 'C e n t e r'.
           02  LINE 2.
               03  COLUMN 35   PIC X(17) VALUE 'Q u a r t e r l y'.
               03  COLUMN 55   PIC X(13) VALUE 'P a y r o l l'.
               03  COLUMN 71   PIC X(15) VALUE 'R e g i s t e r'.
               03  COLUMN 111  PIC X(04) VALUE 'PAGE'.
               03  COLUMN 116  PIC ZZZZ9 SOURCE PAGE-COUNTER.
           02  LINE 4.
               03  COLUMN 40   PIC X(05) VALUE 'GROSS'.
               03  COLUMN 58   PIC X(04) VALUE 'FICA'.
               03  COLUMN 74   PIC X(07) VALUE 'FED W/H'.
               03  COLUMN 92   PIC X(05) VALUE 'MISC.'.
               03  COLUMN 111  PIC X(03) VALUE 'NET'.
           02  LINE 5.
               03  COLUMN 41   PIC X(03) VALUE 'PAY'.
               03  COLUMN 59   PIC X(03) VALUE 'TAX'.
               03  COLUMN 76   PIC X(03) VALUE 'TAX'.
               03  COLUMN 91   PIC X(07) VALUE 'DEDUCT.'.
               03  COLUMN 111  PIC X(03) VALUE 'PAY'.

           02  LINE PLUS 2.
               03  COLUMN 05   PIC X(29) VALUE
                   '* * * DEPARTMENT TOTALS * * *'.
           02  LINE PLUS 2.
               03  COLUMN 05   PIC 9(02) SOURCE DE-NUMBER (1).
               03  COLUMN 08   PIC X(15) SOURCE DE-NAME (1).
               03  FILLER      PRESENT WHEN DE-GROSS (1) > HI-GROSS.
                 05  COLUMN 30 PIC X(4) VALUE "High".
               03  COLUMN 38   PIC $$,$$9.99 SOURCE DE-GROSS (1).
               03  COLUMN 48   PIC ZZ9 SOURCE WPC-PERCENT (1 1).
               03  COLUMN 51   PIC X VALUE '%'.
               03  COLUMN 57   PIC $$$9.99   SOURCE DE-FICA (1).
               03  COLUMN 65   PIC ZZ9 SOURCE WPC-PERCENT (1 2).
               03  COLUMN 68   PIC X VALUE '%'.
               03  COLUMN 74   PIC $$$9.99   SOURCE DE-FWT (1).
               03  COLUMN 82   PIC ZZ9 SOURCE WPC-PERCENT (1 3).
               03  COLUMN 85   PIC X VALUE '%'.
               03  COLUMN 91   PIC $$$9.99   SOURCE DE-MISC (1).
               03  COLUMN 99   PIC ZZ9 SOURCE WPC-PERCENT (1 4).
               03  COLUMN 102  PIC X VALUE '%'.
               03  COLUMN 108  PIC $$,$$9.99 SOURCE DE-NET (1).
               03  COLUMN 118  PIC ZZ9 SOURCE WPC-PERCENT (1 5).
               03  COLUMN 121  PIC X VALUE '%'.
               03  FILLER      PRESENT WHEN WPC-PERCENT (1 5) < 15 .
                 05  COLUMN PLUS 2 PIC X(2) VALUE "Lo".
           02  LINE PLUS 2.
               03  COLUMN 05   PIC 9(02) SOURCE DE-NUMBER (2).
               03  COLUMN 08   PIC X(15) SOURCE DE-NAME (2).
               03  FILLER      PRESENT WHEN DE-GROSS (2) > HI-GROSS.
                 05  COLUMN 30 PIC X(4) VALUE "High".
               03  COLUMN 38   PIC $$,$$9.99 SOURCE DE-GROSS (2).
               03  COLUMN 48   PIC ZZ9 SOURCE WPC-PERCENT (2 1).
               03  COLUMN 51   PIC X VALUE '%'.
               03  COLUMN 57   PIC $$$9.99   SOURCE DE-FICA (2).
               03  COLUMN 65   PIC ZZ9 SOURCE WPC-PERCENT (2 2).
               03  COLUMN 68   PIC X VALUE '%'.
               03  COLUMN 74   PIC $$$9.99   SOURCE DE-FWT (2).
               03  COLUMN 82   PIC ZZ9 SOURCE WPC-PERCENT (2 3).
               03  COLUMN 85   PIC X VALUE '%'.
               03  COLUMN 91   PIC $$$9.99   SOURCE DE-MISC (2).
               03  COLUMN 99   PIC ZZ9 SOURCE WPC-PERCENT (2 4).
               03  COLUMN 102  PIC X VALUE '%'.
               03  COLUMN 108  PIC $$,$$9.99 SOURCE DE-NET (2).
               03  COLUMN 118  PIC ZZ9 SOURCE WPC-PERCENT (2 5).
               03  COLUMN 121  PIC X VALUE '%'.
               03  FILLER      PRESENT WHEN WPC-PERCENT (2 5) < 15 .
                 05  COLUMN PLUS 2 PIC X(2) VALUE "Lo".
           02  LINE PLUS 2.
               03  COLUMN 05   PIC 9(02) SOURCE DE-NUMBER (3).
               03  COLUMN 08   PIC X(15) SOURCE DE-NAME (3).
               03  FILLER      PRESENT WHEN DE-GROSS (3) > HI-GROSS.
                 05  COLUMN 30 PIC X(4) VALUE "High".
               03  COLUMN 38   PIC $$,$$9.99 SOURCE DE-GROSS (3).
               03  COLUMN 48   PIC ZZ9 SOURCE WPC-PERCENT (3 1).
               03  COLUMN 51   PIC X VALUE '%'.
               03  COLUMN 57   PIC $$$9.99   SOURCE DE-FICA (3).
               03  COLUMN 65   PIC ZZ9 SOURCE WPC-PERCENT (3 2).
               03  COLUMN 68   PIC X VALUE '%'.
               03  COLUMN 74   PIC $$$9.99   SOURCE DE-FWT (3).
               03  COLUMN 82   PIC ZZ9 SOURCE WPC-PERCENT (3 3).
               03  COLUMN 85   PIC X VALUE '%'.
               03  COLUMN 91   PIC $$$9.99   SOURCE DE-MISC (3).
               03  COLUMN 99   PIC ZZ9 SOURCE WPC-PERCENT (3 4).
               03  COLUMN 102  PIC X VALUE '%'.
               03  COLUMN 108  PIC $$,$$9.99 SOURCE DE-NET (3).
               03  COLUMN 118  PIC ZZ9 SOURCE WPC-PERCENT (3 5).
               03  COLUMN 121  PIC X VALUE '%'.
               03  FILLER      PRESENT WHEN WPC-PERCENT (3 5) < 15 .
                 05  COLUMN PLUS 2 PIC X(2) VALUE "Lo".
           02  LINE PLUS 2.
               03  COLUMN 05   PIC 9(02) SOURCE DE-NUMBER (4).
               03  COLUMN 08   PIC X(15) SOURCE DE-NAME (4).
               03  COLUMN 38   PIC $$,$$9.99 SOURCE DE-GROSS (4).
               03  COLUMN 48   PIC ZZ9 SOURCE WPC-PERCENT (4 1).
               03  COLUMN 51   PIC X VALUE '%'.
               03  COLUMN 57   PIC $$$9.99   SOURCE DE-FICA (4).
               03  COLUMN 65   PIC ZZ9 SOURCE WPC-PERCENT (4 2).
               03  COLUMN 68   PIC X VALUE '%'.
               03  COLUMN 74   PIC $$$9.99   SOURCE DE-FWT (4).
               03  COLUMN 82   PIC ZZ9 SOURCE WPC-PERCENT (4 3).
               03  COLUMN 85   PIC X VALUE '%'.
               03  COLUMN 91   PIC $$$9.99   SOURCE DE-MISC (4).
               03  COLUMN 99   PIC ZZ9 SOURCE WPC-PERCENT (4 4).
               03  COLUMN 102  PIC X VALUE '%'.
               03  COLUMN 108  PIC $$,$$9.99 SOURCE DE-NET (4).
               03  COLUMN 118  PIC ZZ9 SOURCE WPC-PERCENT (4 5).
               03  COLUMN 121  PIC X VALUE '%'.
           02  LINE PLUS 2.
               03  COLUMN 05   PIC 9(02) SOURCE DE-NUMBER (5).
               03  COLUMN 08   PIC X(15) SOURCE DE-NAME (5).
               03  COLUMN 38   PIC $$,$$9.99 SOURCE DE-GROSS (5).
               03  COLUMN 48   PIC ZZ9 SOURCE WPC-PERCENT (5 1).
               03  COLUMN 51   PIC X VALUE '%'.
               03  COLUMN 57   PIC $$$9.99   SOURCE DE-FICA (5).
               03  COLUMN 65   PIC ZZ9 SOURCE WPC-PERCENT (5 2).
               03  COLUMN 68   PIC X VALUE '%'.
               03  COLUMN 74   PIC $$$9.99   SOURCE DE-FWT (5).
               03  COLUMN 82   PIC ZZ9 SOURCE WPC-PERCENT (5 3).
               03  COLUMN 85   PIC X VALUE '%'.
               03  COLUMN 91   PIC $$$9.99   SOURCE DE-MISC (5).
               03  COLUMN 99   PIC ZZ9 SOURCE WPC-PERCENT (5 4).
               03  COLUMN 102  PIC X VALUE '%'.
               03  COLUMN 108  PIC $$,$$9.99 SOURCE DE-NET (5).
               03  COLUMN 118  PIC ZZ9 SOURCE WPC-PERCENT (5 5).
               03  COLUMN 121  PIC X VALUE '%'.
           02  LINE PLUS 2.
               03  COLUMN 05   PIC 9(02) SOURCE DE-NUMBER (6).
               03  COLUMN 08   PIC X(15) SOURCE DE-NAME (6).
               03  COLUMN 38   PIC $$,$$9.99 SOURCE DE-GROSS (6).
               03  COLUMN 48   PIC ZZ9 SOURCE WPC-PERCENT (6 1).
               03  COLUMN 51   PIC X VALUE '%'.
               03  COLUMN 57   PIC $$$9.99   SOURCE DE-FICA (6).
               03  COLUMN 65   PIC ZZ9 SOURCE WPC-PERCENT (6 2).
               03  COLUMN 68   PIC X VALUE '%'.
               03  COLUMN 74   PIC $$$9.99   SOURCE DE-FWT (6).
               03  COLUMN 82   PIC ZZ9 SOURCE WPC-PERCENT (6 3).
               03  COLUMN 85   PIC X VALUE '%'.
               03  COLUMN 91   PIC $$$9.99   SOURCE DE-MISC (6).
               03  COLUMN 99   PIC ZZ9 SOURCE WPC-PERCENT (6 4).
               03  COLUMN 102  PIC X VALUE '%'.
               03  COLUMN 108  PIC $$,$$9.99 SOURCE DE-NET (6).
               03  COLUMN 118  PIC ZZ9 SOURCE WPC-PERCENT (6 5).
               03  COLUMN 121  PIC X VALUE '%'.
           02  LINE PLUS 2.
               03  COLUMN 37   PIC $$$,$$9.99 SOURCE CO-GROSS.
               03  COLUMN 48   PIC X(5) VALUE '100%'.
               03  COLUMN 55   PIC $$,$$9.99  SOURCE CO-FICA.
               03  COLUMN 65   PIC X(5) VALUE '100%'.
               03  COLUMN 72   PIC $$,$$9.99  SOURCE CO-FWT.
               03  COLUMN 82   PIC X(5) VALUE '100%'.
               03  COLUMN 89   PIC $$,$$9.99  SOURCE CO-MISC.
               03  COLUMN 99   PIC X(5) VALUE '100%'.
               03  COLUMN 107  PIC $$$,$$9.99 SOURCE CO-NET.
               03  COLUMN 118  PIC X(5) VALUE '100%'.

       PROCEDURE DIVISION.

       DECLARATIVES.

       DEPT-HEAD-USE SECTION. USE BEFORE REPORTING DEPT-HEAD.
       DEPT-HEAD-PROC.
           SET DE-IX TO +1.
           SEARCH DEPARTMENT-ENTRY
               WHEN DE-NUMBER (DE-IX) = PRR-DEPARTMENT-NUMBER
                   MOVE ZEROS TO DE-GROSS (DE-IX), DE-FICA (DE-IX),
                                 DE-FWT (DE-IX), DE-MISC (DE-IX),
                                 DE-NET (DE-IX).

       DEPT-HEAD-EXIT.
           EXIT.

       EMPL-FOOT-USE SECTION. USE BEFORE REPORTING EMPL-FOOT.
       EMPL-FOOT-PROC.
           MOVE PRR-EMPLOYEE-KEY TO WS-EMPLOYEE-KEY.
           MOVE 'Y' TO PR-SW.

       EMPL-FOOT-EXIT.
           EXIT.

       DEPT-FOOT-USE SECTION. USE BEFORE REPORTING DEPT-FOOT.
       DEPT-FOOT-PROC.
           MOVE DEPT-FOOT-GROSS TO DE-GROSS (DE-IX).
           MOVE DEPT-FOOT-FICA TO DE-FICA (DE-IX).
           MOVE DEPT-FOOT-FWT TO DE-FWT (DE-IX).
           MOVE DEPT-FOOT-MISC TO DE-MISC (DE-IX).
           MOVE DEPT-FOOT-NET TO DE-NET (DE-IX).
      *     SUPPRESS PRINTING.

       DEPT-FOOT-EXIT.
           EXIT.

       COMP-FOOT-USE SECTION. USE BEFORE REPORTING COMP-FOOT.
       COMP-FOOT-PROC.
           PERFORM COMP-FOOT-CALC
               VARYING WPCD-IX FROM +1 BY +1
               UNTIL WPCD-IX > +6.
           GO TO COMP-FOOT-EXIT.

       COMP-FOOT-CALC.
           SET DE-IX TO WPCD-IX.
           SET WPCC-IX TO +1.
           COMPUTE WPC-PERCENT (WPCD-IX WPCC-IX) ROUNDED =
               ((DE-GROSS (DE-IX) / CO-GROSS) * 100) + .5.
           SET WPCC-IX TO +2.
           COMPUTE WPC-PERCENT (WPCD-IX WPCC-IX) ROUNDED =
               ((DE-FICA (DE-IX) / CO-FICA) * 100) + .5.
           SET WPCC-IX TO +3.
           COMPUTE WPC-PERCENT (WPCD-IX WPCC-IX) ROUNDED =
               ((DE-FWT (DE-IX) / CO-FWT) * 100) + .5.
           SET WPCC-IX TO +4.
           COMPUTE WPC-PERCENT (WPCD-IX WPCC-IX) ROUNDED =
               ((DE-MISC (DE-IX) / CO-MISC) * 100) + .5.
           SET WPCC-IX TO +5.
           COMPUTE WPC-PERCENT (WPCD-IX WPCC-IX) ROUNDED =
               ((DE-NET (DE-IX) / CO-NET) * 100) + .5.

       COMP-FOOT-EXIT.
           EXIT.

       END DECLARATIVES.

       000-INITIATE.

           OPEN INPUT PAYROLL-REGISTER-DATA,
                OUTPUT REPORT-FILE.

           INITIATE QUARTERLY-PAY-REGISTER.

           READ PAYROLL-REGISTER-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.

           PERFORM 100-PROCESS-PAYROLL-DATA THRU 199-EXIT
               UNTIL END-OF-FILE.

       000-TERMINATE.
           TERMINATE QUARTERLY-PAY-REGISTER.

           CLOSE PAYROLL-REGISTER-DATA,
                 REPORT-FILE.

           STOP RUN.

       100-PROCESS-PAYROLL-DATA.
           ADD PRR-FED-WH TO SUM-FED-WH.
           GENERATE QUARTERLY-PAY-REGISTER.
           IF PR-SW = 'Y'
               MOVE 'N' TO PR-SW
               MOVE ZERO TO SUM-FED-WH.
           READ PAYROLL-REGISTER-DATA
               AT END
                   MOVE 'Y' TO END-OF-FILE-SWITCH.

       199-EXIT.
           EXIT.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:2794: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:2794"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:2794"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:2796: DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DATAIN=\"./inp_data\" DD_SYSPRINT=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:2796"
( $at_check_trace; DD_DATAIN="./inp_data" DD_SYSPRINT="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:2796"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                                      C E N T U R Y   M E D I C A L   C E N T E R
                                  Q U A R T E R L Y   P A Y R O L L   R E G I S T E R                         PAGE     1

     --------- EMPLOYEE ---------      GROSS         FICA        FED W/H       MISC.          NET
      NO             NAME               PAY           TAX          TAX        DEDUCT.         PAY

DEPARTMENT NUMBER:  01 MANAGEMENT

     6622    GAVIN SHAFER            $1,040.00       $60.84      $134.48        $4.75        $839.93
     7078    VERA ALSTON             $1,800.00      $105.30      $138.24        $3.75      $1,552.71
     8093    GRADY KAISER            $2,300.00      $134.57      $247.53        $6.50      $1,911.43

             DEPARTMENT TOTALS       $5,140.00 *    $300.71 *    $520.25 *     $15.00 *    $4,304.07 *


DEPARTMENT NUMBER:  05 ADMINISTRATIVE

     1720    PAULINE WINSTON           $680.00       $39.79      $290.36        $3.50        $526.37
     2116    HERMAN COX                $610.00       $35.69       $76.52        $7.25        $490.55
     6925    ADOLF TRUJILLO            $625.00       $36.55      $118.95        $4.00        $465.50

             DEPARTMENT TOTALS       $1,915.00 *    $112.03 *    $485.83 *     $14.75 *    $1,482.42 *


DEPARTMENT NUMBER:  10 SKILLED NURSING

     1504    TIFFANY KEIR            $1,740.00      $101.82      $187.74        $1.75      $1,448.69
     6640    ALEXANDER CATHEY        $1,950.00      $114.06      $371.10        $7.25      $1,457.59
     9465    STEVE HUGHES            $1,475.00       $86.30      $239.40        $3.00      $1,146.30

             DEPARTMENT TOTALS       $5,165.00 *    $302.18 *    $798.24 *     $12.00 *    $4,052.58 *


DEPARTMENT NUMBER:  15 PATIENT SUPPORT

     2903    KAYLA VERBECK             $840.00       $49.14      $136.32        $5.25        $649.29
     5196    CLAIRE KELLAR             $886.00       $51.82      $102.80        $6.75        $724.63

             DEPARTMENT TOTALS       $1,726.00 *    $100.96 *    $239.12 *     $12.00 *    $1,373.92 *


DEPARTMENT NUMBER:  20 HOUSEKEEPING


             DEPARTMENT TOTALS       $1,518.00 *     $88.86 *    $202.44 *     $13.00 *    $1,212.76 *


DEPARTMENT NUMBER:  25 MAINTENANCE

     2003    BALDWIN SIMONSEN          $670.00       $39.22      $113.46        $4.75        $512.57

             DEPARTMENT TOTALS       $1,744.00 *    $102.04 *    $210.54 *     $13.25 *    $1,418.17 *

             COMPANY TOTALS         $17,208.00 ** $1,006.78 ** $2,456.42 **    $80.00 **  $13,843.92 **












                                      C e n t u r y   M e d i c a l   C e n t e r
                                  Q u a r t e r l y   P a y r o l l   R e g i s t e r                         PAGE     2

                                       GROSS             FICA            FED W/H           MISC.              NET
                                        PAY               TAX              TAX            DEDUCT.             PAY

    * * * DEPARTMENT TOTALS * * *

    01 MANAGEMENT            High    $5,140.00  30%     $300.71  30%     $520.25  21%      $15.00  19%     $4,304.07  31%

    05 ADMINISTRATIVE                $1,915.00  11%     $112.03  11%     $485.83  20%      $14.75  18%     $1,482.42  11% Lo

    10 SKILLED NURSING       High    $5,165.00  30%     $302.18  30%     $798.24  33%      $12.00  15%     $4,052.58  29%

    15 PATIENT SUPPORT               $1,726.00  10%     $100.96  10%     $239.12  10%      $12.00  15%     $1,373.92  10%

    20 HOUSEKEEPING                  $1,518.00   9%      $88.86   9%     $202.44   8%      $13.00  16%     $1,212.76   9%

    25 MAINTENANCE                   $1,744.00  10%     $102.04  10%     $210.54   9%      $13.25  17%     $1,418.17  10%

                                    $17,208.00 100%   $1,006.78 100%   $2,456.42 100%      $80.00 100%    $13,843.92 100%
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:2890: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:2890"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:2890"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_965
#AT_START_966
at_fn_group_banner 966 'run_reportwriter.at:2895' \
  "Sample REPORT with RIGHT/CENTER" "                " 4
at_xfail=no
(
  $as_echo "966. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
00099Dorken, Keith       CS 000008
00007Allinson, Sandy     MA 000118
00125Allinson, Nina      MA 012308
00126Allinson, Natalia   MA 000008
00127Allinson, Kristina  MBA000008
00131Norman, Nancy       SC 000006
00132Norman, Becky       SC 000116
00133Norman, Michelle    SC 112306
00134Norman, James       AM 000006
12345Norman, Ron         CS 000008
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.

       FILE-CONTROL.
               SELECT INPUT-FILE ASSIGN TO EXTERNAL STUDENT
                              ORGANIZATION IS LINE SEQUENTIAL.
               SELECT PRINT-FILE ASSIGN TO EXTERNAL
                              LINE ADVANCING REPORT1.

       DATA DIVISION.
       FILE SECTION.
       FD   INPUT-FILE.
       01   INPUT-REC.
               05  STUDENT-ID               PIC  9(5).
               05  STUDENT-NAME             PIC  X(20).
               05  MAJOR                    PIC  XXX.
               05  NUM-COURSES              PIC  9(6).

       FD   PRINT-FILE
             BLOCK CONTAINS 0 RECORDS
             RECORDING MODE IS F
             RECORD CONTAINS 132 CHARACTERS
            REPORT IS STUDENT-REPORT.
       01   RW-REC  PIC X(90).

       WORKING-STORAGE SECTION.
       01   ARE-THERE-MORE-RECORDS       PIC  XXX   VALUE  "YES".

       REPORT SECTION.
       RD   STUDENT-REPORT
           PAGE LIMIT 30
           HEADING 1
           FIRST DETAIL  5
           LAST  DETAIL 25
           FOOTING 28
           LINE LIMIT 90
           .
       01 HEADING-LINE.
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "         1         2         3         4         5".
            05  COLUMN 51     PIC X(20) VALUE "         6         7".
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "12345678901234567890123456789012345678901234567890".
            05  COLUMN 51     PIC X(20) VALUE "12345678901234567890".
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(2)  VALUE "Ln".
            05  COLUMN 5      PIC X(6)  VALUE "--ID--".
            05  COLUMN 16     PIC X(20) VALUE "--------Name--------".
            05  COLUMN 39     PIC X(5)  VALUE "Major".
            05  COLUMN 45     PIC XXX   VALUE "*-*".
            05  COLUMN 54     PIC X(5)  VALUE "+Odd+".
            05  COLUMN 61     PIC X(6)  VALUE "+Even+".

       01 REPORT-LINE
          TYPE DETAIL LINE PLUS  1.
            05  COLUMN PLUS 1 PIC Z9
                  SOURCE LINE-COUNTER OF STUDENT-REPORT.
            05  COLUMN LEFT PLUS 3   PIC Z(5)9 SOURCE STUDENT-ID.
            05  COLUMN CENTER 25     PIC X(20) SOURCE STUDENT-NAME.
            05  COLUMN RIGHT  43     PIC X(5)  SOURCE MAJOR.
            05  COLUMN        45     PIC XXX   VALUE ":-:".
            05  COLUMN CENTER 56     PIC Z(4)9 SOURCE NUM-COURSES.
            05  COLUMN CENTER 63     PIC Z(5)9 SOURCE NUM-COURSES.
            05  COLUMN        68     PIC X   VALUE ":".

       PROCEDURE DIVISION.
       A000-MAINLINE.
           OPEN  INPUT  INPUT-FILE
                 OUTPUT PRINT-FILE
           PERFORM DO-INIT.
           READ INPUT-FILE
               AT END
                   MOVE "NO" TO ARE-THERE-MORE-RECORDS.
           PERFORM A001-LOOP
               UNTIL ARE-THERE-MORE-RECORDS = "NO ".
           PERFORM DO-TERM.
           CLOSE INPUT-FILE
                 PRINT-FILE.
           STOP RUN.

       A001-LOOP.
           GENERATE REPORT-LINE.
           READ INPUT-FILE
               AT END
                   MOVE "NO " TO ARE-THERE-MORE-RECORDS.
       DO-INIT.
           INITIATE STUDENT-REPORT.

       DO-TERM.
           TERMINATE STUDENT-REPORT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3009: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:3009"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:62: warning: PLUS is ignored on first field of line
prog.cob:64: error: PLUS is not allowed with LEFT, RIGHT or CENTER
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_reportwriter.at:3009"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3014: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_reportwriter.at:3014"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:62: warning: PLUS is ignored on first field of line
prog.cob:64: warning: PLUS is not recommended with LEFT, RIGHT or CENTER
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3014"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3019: DD_STUDENT=./inp_data DD_REPORT1=./report.txt \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_reportwriter.at:3019"
( $at_check_trace; DD_STUDENT=./inp_data DD_REPORT1=./report.txt \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3019"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
         1         2         3         4         5         6         7
1234567890123456789012345678901234567890123456789012345678901234567890
Ln  --ID--     --------Name--------   Major *-*      +Odd+  +Even+

 5  99            Dorken, Keith          CS :-:        8      8    :
 6  7            Allinson, Sandy         MA :-:       118    118   :
 7  125          Allinson, Nina          MA :-:      12308  12308  :
 8  126         Allinson, Natalia        MA :-:        8      8    :
 9  127        Allinson, Kristina       MBA :-:        8      8    :
10  131           Norman, Nancy          SC :-:        6      6    :
11  132           Norman, Becky          SC :-:       116    116   :
12  133         Norman, Michelle         SC :-:      12306  112306 :
13  134           Norman, James          AM :-:        6      6    :
14  12345          Norman, Ron           CS :-:        8      8    :
















_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3058: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:3058"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3058"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_966
#AT_START_967
at_fn_group_banner 967 'run_reportwriter.at:3063' \
  "STUDENT REPORT with INITIAL" "                    " 4
at_xfail=no
(
  $as_echo "967. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
00123Dorken, Keith       CS 08
00124Allinson, Sandy     MA 08
00125Allinson, Nina      MA 08
00126Allinson, Natalia   MA 08
00127Allinson, Kristina  MBA08
00131Norman, Nancy       SC 06
00132Norman, Becky       SC 06
00133Norman, Michelle    SC 06
00134Norman, James       AM 06
12345Norman, Ron         CS 08
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog INITIAL.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
               SELECT INPUT-FILE ASSIGN TO EXTERNAL STUDENT
                              ORGANIZATION IS LINE SEQUENTIAL.
               SELECT PRINT-FILE ASSIGN TO EXTERNAL
                              LINE ADVANCING REPORT1.

       DATA DIVISION.
       FILE SECTION.
       FD   INPUT-FILE.
       01   INPUT-REC.
               05  STUDENT-ID               PIC  9(5).
               05  STUDENT-NAME             PIC  X(20).
               05  MAJOR                    PIC  XXX.
               05  NUM-COURSES              PIC  99.

       FD   PRINT-FILE
             REPORT IS STUDENT-REPORT STUDENT-REPORT2.

       WORKING-STORAGE SECTION.
       01   ARE-THERE-MORE-RECORDS       PIC  XXX   VALUE  "YES".

       REPORT SECTION.
       RD   STUDENT-REPORT
           PAGE LIMIT 30 LINES
           HEADING 2
           FIRST DETAIL 3
           LAST DETAIL 25
           FOOTING 28.
       01   REPORT-LINE
            TYPE DETAIL
             LINE PLUS  1.
            05  COLUMN 1 PIC 9(2)
                  SOURCE LINE-COUNTER OF STUDENT-REPORT.
            05  COLUMN 4      PIC 9(6)     SOURCE    STUDENT-ID.
            05  COLUMN 15     PIC X(20)    SOURCE    STUDENT-NAME.
            05  COLUMN 40     PIC XXX      SOURCE    MAJOR.
            05  COLUMN 45     PIC XXX      VALUE "-*-".
            05  COLUMN 52     PIC 99       SOURCE    NUM-COURSES.

       RD  STUDENT-REPORT2
           PAGE LIMIT 60 LINES
           HEADING 2
           FIRST DETAIL 5
           LAST DETAIL 55
           FOOTING 58.
       01   REPORT-LINE2
            TYPE DETAIL
             LINE PLUS  1.
            05  COLUMN 4      PIC 9(6)     SOURCE    STUDENT-ID.
            05  COLUMN 15     PIC X(20)    SOURCE    STUDENT-NAME.
            05  COLUMN 40     PIC XXX      SOURCE    MAJOR.
            05  COLUMN 45     PIC 99       SOURCE    NUM-COURSES.
       01   REPORT-LINE3
            TYPE DETAIL
             LINE PLUS  2.
            05  COLUMN 4      PIC 9(6)     SOURCE    STUDENT-ID.
            05  COLUMN 15     PIC X(20)    SOURCE    STUDENT-NAME.
            05  COLUMN 40     PIC XXX      SOURCE    MAJOR.

       PROCEDURE DIVISION.
       A000-MAINLINE.
           OPEN  INPUT  INPUT-FILE
                 OUTPUT PRINT-FILE
           PERFORM DO-INIT.
           READ INPUT-FILE
               AT END
                   MOVE "NO" TO ARE-THERE-MORE-RECORDS.
           PERFORM A001-LOOP
               UNTIL ARE-THERE-MORE-RECORDS = "NO ".
           PERFORM DO-TERM.
           CLOSE INPUT-FILE
                 PRINT-FILE.
           STOP RUN.

       A001-LOOP.
           GENERATE REPORT-LINE.
           READ INPUT-FILE
               AT END
                   MOVE "NO " TO ARE-THERE-MORE-RECORDS.
       DO-INIT.
           INITIATE STUDENT-REPORT.

       DO-TERM.
           TERMINATE STUDENT-REPORT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3171: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:3171"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3171"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3173: DD_STUDENT=\"./inp_data\" DD_REPORT1=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_STUDENT=\"./inp_data\" DD_REPORT1=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:3173"
( $at_check_trace; DD_STUDENT="./inp_data" DD_REPORT1="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3173"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'


03 000123     Dorken, Keith            CS   -*-    08
04 000124     Allinson, Sandy          MA   -*-    08
05 000125     Allinson, Nina           MA   -*-    08
06 000126     Allinson, Natalia        MA   -*-    08
07 000127     Allinson, Kristina       MBA  -*-    08
08 000131     Norman, Nancy            SC   -*-    06
09 000132     Norman, Becky            SC   -*-    06
10 000133     Norman, Michelle         SC   -*-    06
11 000134     Norman, James            AM   -*-    06
12 012345     Norman, Ron              CS   -*-    08


















_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3210: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:3210"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3210"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_967
#AT_START_968
at_fn_group_banner 968 'run_reportwriter.at:3215' \
  "ORDER REPORT; Test substring" "                   " 4
at_xfail=no
(
  $as_echo "968. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
10001090001012010590416      $
10001090002013016950416      $
10002090002023016950416      $
10002090001022010590416      $
10003090007023016950417      $
10003090008032010590417      $
10003090009023016950417      $
10003090010032010590417      $
10004090007023016950417      $
10004090008032010590417      $
10004090009023016950417      $
10004090010032010590417      $
10004090011032010590417      $
10004090012032010590417      $
10004090013032010590417      $
10004090014032010590417      $
10004090015032010590417      $
10005090007023016950417      $
10005090008032010590417      $
10005090009023016950417      $
10005090010032010590417      $
10005090011032010590417      $
10005090012032010590417      $
10005090013032010590417      $
10005090014032010590417      $
10005090015032010590417      $
10005090016032010590417      $
10005090017032010590417      $
10005090018032010590417      $
10006090007023016950417      $
10006090008032010590417      $
10006090009023016950417      $
10006090010032010590417      $
10006090011032010590417      $
10006090012032010590417      $
10006090013032010590417      $
10006090014032010590417      $
10006090015032010590417      $
10006090016032010590417      $
10006090017032010590417      $
10006090018032010590417      $
10006090019032010590417      $
10006090020032010590417      $
10007090007023016950417      $
10007090008032010590417      $
10007090009023016950417      $
10007090010032010590417      $
10007090011032010590417      $
10007090012032010590417      $
10007090013032010590417      $
10007090014032010590417      $
10007090015032010590417      $
10007090016032010590417      $
10007090017032010590417      $
10007090018032010590417      $
10007090019032010590417      $
10007090020032010590417      $
10007090021032010590417      $
10007090022032010590417      $
10008090007023016950417      $
10008090008032010590417      $
10008090009023016950417      $
10008090010032010590417      $
10008090011032010590417      $
10008090012032010590417      $
10008090013032010590417      $
10008090014032010590417      $
10008090015032010590417      $
10008090016032010590417      $
10008090017032010590417      $
10008090018032010590417      $
10008090019032010590417      $
10008090020032010590417      $
10008090021032010590417      $
10008090022032010590417      $
10009090007023016950417      $
10009090008032010590417      $
10009090009023016950417      $
10009090010032010590417      $
10009090011032010590417      $
10009090012032010590417      $
10009090013032010590417      $
10009090014032010590417      $
10009090015032010590417      $
10009090016032010590417      $
10009090017032010590417      $
10009090018032010590417      $
10009090019032010590417      $
10009090020032010590417      $
10009090021032010590417      $
10009090022032010590417      $
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT CUST-ORDER-FILE ASSIGN TO EXTERNAL CUSTORD
                          ORGANIZATION IS LINE SEQUENTIAL.
           SELECT CUST-PRINT-FILE ASSIGN TO EXTERNAL
                          LINE ADVANCING REPORT2.

       DATA DIVISION.
       FILE SECTION.
       FD  CUST-ORDER-FILE.
       01  CUST-ORDER-REC.
           05  CUST-NUM      PIC 9(5).
           05  ITEM-NUM      PIC 9(6).
           05  NUM-ORD       PIC 999.
           05  PRICE         PIC 999V99.
           05  SHIPPING      PIC 99V99.
           05  FILLER        PIC X(7).

       FD  CUST-PRINT-FILE
            REPORT IS ORDER-REPORT.

       WORKING-STORAGE SECTION.
       01    INDICATORS.
           05  ARE-THERE-MORE-RECORDS     PIC XXX   VALUE 'YES'.
               88  THERE-ARE-NO-MORE-RECORDS        VALUE 'NO '.
       01    CONSTANTS.
           05  SALES-TAX     PIC 9V99       VALUE 0.05.
       01      WORK-AREAS.
           05  AMT-TAX       PIC 9999V99    VALUE 0.
           05  AMT-ORDER     PIC 9(5)V99    VALUE 0.
           05  TOT-ORDER     PIC 9(6)V99    VALUE 0.
           05  CURRENT-TIME  PIC 9(8)       VALUE 14301275.

       REPORT SECTION.
       RD    ORDER-REPORT
           CONTROLS ARE FINAL
           PAGE 55 LINES
           FIRST DETAIL 6.
       01    TYPE REPORT HEADING
                  LINE 1.
           10    COLUMN 44    PIC X(21)
                                  VALUE 'CUSTOMER ORDER REPORT'.
       01  TYPE PAGE HEADING.
           05  LINE 2.
               10  COLUMN  10   PIC X(8) VALUE " Time:".
               10  COLUMN  20   PIC 99  SOURCE CURRENT-TIME (1:2).
               10  COLUMN  22   PIC X VALUE ':'.
               10  COLUMN  23   PIC 99  SOURCE CURRENT-TIME (3:2).
               10  COLUMN  25   PIC X VALUE ':'.
               10  COLUMN  26   PIC 99  SOURCE CURRENT-TIME (5:2).
               10  COLUMN  94   PIC X(5) VALUE 'Page'.
               10  COLUMN 106    PIC ZZ9
                      SOURCE PAGE-COUNTER.
           05  LINE 4.
               10  COLUMN 11    PIC X(8) VALUE 'CUST NUM'.
               10  COLUMN 26    PIC XXXX VALUE 'PART'.
               10  COLUMN 39    PIC X(7) VALUE '# ITEMS'.
               10  COLUMN 50    PIC X(5) VALUE 'PRICE'.
               10  COLUMN 66    PIC X(8) VALUE 'QUANTITY'.
               10  COLUMN 82    PIC XXX  VALUE 'TAX'.
               10  COLUMN 91    PIC X(8) VALUE 'SHIPPING'.
               10  COLUMN 108   PIC X(5) VALUE 'TOTAL'.

       01    DETAIL-LINE TYPE IS DETAIL
             LINE PLUS 1.
           05  COLUMN 12        PIC 9(5)
                      SOURCE CUST-NUM.
           05  COLUMN 25        PIC 9(6)
                      SOURCE ITEM-NUM.
           05  COLUMN 41        PIC 999
                      SOURCE NUM-ORD.
           05  COLUMN 49        PIC ZZZ.99
                      SOURCE PRICE.
           05  COLUMN 64        PIC ZZ,ZZZ.99
                      SOURCE AMT-ORDER.
           05  COLUMN 80        PIC Z,ZZZ.99
                      SOURCE AMT-TAX.
           05  COLUMN 93        PIC ZZ.99
                      SOURCE SHIPPING.
           05  COLUMN 104        PIC ZZZ,ZZZ.99
                      SOURCE TOT-ORDER.


       01     TYPE CONTROL FOOTING FINAL
           LINE PLUS 2.
           05  COLUMN 42        PIC X(12)
                      VALUE 'FINAL TOTALS'.
           05  COLUMN 63        PIC ZZZ,ZZZ.99
                      SOURCE AMT-ORDER.
           05  COLUMN 79        PIC ZZ,ZZZ.99
                      SUM AMT-TAX.
           05  COLUMN 92        PIC ZZZ.99
                      SUM SHIPPING.
           05  COLUMN 102        PIC Z,ZZZ,ZZZ.99
                      SUM TOT-ORDER.

       PROCEDURE DIVISION.
       A000-MAINLINE.
      * Use hard coded time value so test is repeatable
      *    ACCEPT CURRENT-TIME FROM TIME.
           OPEN INPUT  CUST-ORDER-FILE
                OUTPUT CUST-PRINT-FILE.
           INITIATE ORDER-REPORT.
           READ CUST-ORDER-FILE
                AT END
                    MOVE 'NO' TO ARE-THERE-MORE-RECORDS.
           PERFORM A001-LOOP
                UNTIL THERE-ARE-NO-MORE-RECORDS.
           TERMINATE ORDER-REPORT.
           CLOSE CUST-ORDER-FILE
                  CUST-PRINT-FILE.
           STOP RUN.
       A001-LOOP.
           MULTIPLY NUM-ORD BY PRICE GIVING AMT-ORDER.
           MULTIPLY AMT-ORDER BY SALES-TAX GIVING AMT-TAX.
           ADD AMT-ORDER SHIPPING AMT-TAX GIVING TOT-ORDER.
           GENERATE DETAIL-LINE.
           READ CUST-ORDER-FILE
                AT END
                    MOVE 'NO' TO ARE-THERE-MORE-RECORDS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3439: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:3439"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3439"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3441: DD_CUSTORD=\"./inp_data\" DD_REPORT2=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_CUSTORD=\"./inp_data\" DD_REPORT2=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:3441"
( $at_check_trace; DD_CUSTORD="./inp_data" DD_REPORT2="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3441"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                                           CUSTOMER ORDER REPORT
          Time:    14:30:12                                                                  Page          1

          CUST NUM       PART         # ITEMS    PRICE           QUANTITY        TAX      SHIPPING         TOTAL

           10001        090001          012      10.59            127.08           6.35      4.16          137.59
           10001        090002          013      16.95            220.35          11.01      4.16          235.52
           10002        090002          023      16.95            389.85          19.49      4.16          413.50
           10002        090001          022      10.59            232.98          11.64      4.16          248.78
           10003        090007          023      16.95            389.85          19.49      4.17          413.51
           10003        090008          032      10.59            338.88          16.94      4.17          359.99
           10003        090009          023      16.95            389.85          19.49      4.17          413.51
           10003        090010          032      10.59            338.88          16.94      4.17          359.99
           10004        090007          023      16.95            389.85          19.49      4.17          413.51
           10004        090008          032      10.59            338.88          16.94      4.17          359.99
           10004        090009          023      16.95            389.85          19.49      4.17          413.51
           10004        090010          032      10.59            338.88          16.94      4.17          359.99
           10004        090011          032      10.59            338.88          16.94      4.17          359.99
           10004        090012          032      10.59            338.88          16.94      4.17          359.99
           10004        090013          032      10.59            338.88          16.94      4.17          359.99
           10004        090014          032      10.59            338.88          16.94      4.17          359.99
           10004        090015          032      10.59            338.88          16.94      4.17          359.99
           10005        090007          023      16.95            389.85          19.49      4.17          413.51
           10005        090008          032      10.59            338.88          16.94      4.17          359.99
           10005        090009          023      16.95            389.85          19.49      4.17          413.51
           10005        090010          032      10.59            338.88          16.94      4.17          359.99
           10005        090011          032      10.59            338.88          16.94      4.17          359.99
           10005        090012          032      10.59            338.88          16.94      4.17          359.99
           10005        090013          032      10.59            338.88          16.94      4.17          359.99
           10005        090014          032      10.59            338.88          16.94      4.17          359.99
           10005        090015          032      10.59            338.88          16.94      4.17          359.99
           10005        090016          032      10.59            338.88          16.94      4.17          359.99
           10005        090017          032      10.59            338.88          16.94      4.17          359.99
           10005        090018          032      10.59            338.88          16.94      4.17          359.99
           10006        090007          023      16.95            389.85          19.49      4.17          413.51
           10006        090008          032      10.59            338.88          16.94      4.17          359.99
           10006        090009          023      16.95            389.85          19.49      4.17          413.51
           10006        090010          032      10.59            338.88          16.94      4.17          359.99
           10006        090011          032      10.59            338.88          16.94      4.17          359.99
           10006        090012          032      10.59            338.88          16.94      4.17          359.99
           10006        090013          032      10.59            338.88          16.94      4.17          359.99
           10006        090014          032      10.59            338.88          16.94      4.17          359.99
           10006        090015          032      10.59            338.88          16.94      4.17          359.99
           10006        090016          032      10.59            338.88          16.94      4.17          359.99
           10006        090017          032      10.59            338.88          16.94      4.17          359.99
           10006        090018          032      10.59            338.88          16.94      4.17          359.99
           10006        090019          032      10.59            338.88          16.94      4.17          359.99
           10006        090020          032      10.59            338.88          16.94      4.17          359.99
           10007        090007          023      16.95            389.85          19.49      4.17          413.51
           10007        090008          032      10.59            338.88          16.94      4.17          359.99
           10007        090009          023      16.95            389.85          19.49      4.17          413.51
           10007        090010          032      10.59            338.88          16.94      4.17          359.99
           10007        090011          032      10.59            338.88          16.94      4.17          359.99
           10007        090012          032      10.59            338.88          16.94      4.17          359.99
           10007        090013          032      10.59            338.88          16.94      4.17          359.99

          Time:    14:30:12                                                                  Page          2

          CUST NUM       PART         # ITEMS    PRICE           QUANTITY        TAX      SHIPPING         TOTAL

           10007        090014          032      10.59            338.88          16.94      4.17          359.99
           10007        090015          032      10.59            338.88          16.94      4.17          359.99
           10007        090016          032      10.59            338.88          16.94      4.17          359.99
           10007        090017          032      10.59            338.88          16.94      4.17          359.99
           10007        090018          032      10.59            338.88          16.94      4.17          359.99
           10007        090019          032      10.59            338.88          16.94      4.17          359.99
           10007        090020          032      10.59            338.88          16.94      4.17          359.99
           10007        090021          032      10.59            338.88          16.94      4.17          359.99
           10007        090022          032      10.59            338.88          16.94      4.17          359.99
           10008        090007          023      16.95            389.85          19.49      4.17          413.51
           10008        090008          032      10.59            338.88          16.94      4.17          359.99
           10008        090009          023      16.95            389.85          19.49      4.17          413.51
           10008        090010          032      10.59            338.88          16.94      4.17          359.99
           10008        090011          032      10.59            338.88          16.94      4.17          359.99
           10008        090012          032      10.59            338.88          16.94      4.17          359.99
           10008        090013          032      10.59            338.88          16.94      4.17          359.99
           10008        090014          032      10.59            338.88          16.94      4.17          359.99
           10008        090015          032      10.59            338.88          16.94      4.17          359.99
           10008        090016          032      10.59            338.88          16.94      4.17          359.99
           10008        090017          032      10.59            338.88          16.94      4.17          359.99
           10008        090018          032      10.59            338.88          16.94      4.17          359.99
           10008        090019          032      10.59            338.88          16.94      4.17          359.99
           10008        090020          032      10.59            338.88          16.94      4.17          359.99
           10008        090021          032      10.59            338.88          16.94      4.17          359.99
           10008        090022          032      10.59            338.88          16.94      4.17          359.99
           10009        090007          023      16.95            389.85          19.49      4.17          413.51
           10009        090008          032      10.59            338.88          16.94      4.17          359.99
           10009        090009          023      16.95            389.85          19.49      4.17          413.51
           10009        090010          032      10.59            338.88          16.94      4.17          359.99
           10009        090011          032      10.59            338.88          16.94      4.17          359.99
           10009        090012          032      10.59            338.88          16.94      4.17          359.99
           10009        090013          032      10.59            338.88          16.94      4.17          359.99
           10009        090014          032      10.59            338.88          16.94      4.17          359.99
           10009        090015          032      10.59            338.88          16.94      4.17          359.99
           10009        090016          032      10.59            338.88          16.94      4.17          359.99
           10009        090017          032      10.59            338.88          16.94      4.17          359.99
           10009        090018          032      10.59            338.88          16.94      4.17          359.99
           10009        090019          032      10.59            338.88          16.94      4.17          359.99
           10009        090020          032      10.59            338.88          16.94      4.17          359.99
           10009        090021          032      10.59            338.88          16.94      4.17          359.99
           10009        090022          032      10.59            338.88          16.94      4.17          359.99

                                         FINAL TOTALS             338.88       1,557.97    379.43       33,103.80







_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3558: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:3558"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3558"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_968
#AT_START_969
at_fn_group_banner 969 'run_reportwriter.at:3563' \
  "Sample Control Break" "                           " 4
at_xfail=no
(
  $as_echo "969. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
Norman, Ronald J    25CS Malcolm, Mike        Waterloo
Dorken, Keith A     35CS Malcolm, Mike        Waterloo
Norman, James J     25CS Manning, Eric        Waterloo
Dorken, Kevin       35CS Manning, Eric        Waterloo
Allinson, A R       25EC Manning, Eric        Whistler
Norman, Michelle    27EC Manning, Donna       Toronto
Dorken, Melissa     37EC Manning, Donna       Toronto
Norseman, Ben01     27EC DiMetri, Gary        Toronto
Norseman, Ben02     27EC DiMetri, Gary        Toronto
Norseman, Ben03     27EC DiMetri, Gary        Toronto
Norseman, Ben04     27EC DiMetri, Gary        Toronto
Norseman, Ben05     27EC DiMetri, Gary        Toronto
Norseman, Ben06     27EC DiMetri, Gary        Toronto
Norseman, Ben07     27EC DiMetri, Gary        Toronto
Norseman, Ben08     27EC DiMetri, Gary        Toronto
Norseman, Ben09     27EC DiMetri, Gary        Toronto
Norseman, Ben10     27EC DiMetri, Gary        Toronto
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT STUDENT-FILE ASSIGN TO EXTERNAL STUDREC
                          ORGANIZATION IS LINE SEQUENTIAL.
           SELECT PRINT-FILE ASSIGN TO EXTERNAL
                          LINE ADVANCING REPORT3.

       DATA DIVISION.
       FILE SECTION.
       FD    STUDENT-FILE.
       01    STUDENT-REC        PIC X(60).

       FD    PRINT-FILE
           REPORT IS CONTROL-BREAK.

       WORKING-STORAGE SECTION.
       01    INDICATORS.
           05  ARE-THERE-MORE-RECORDS PIC XXX VALUE 'YES'.
             88 THERE-ARE-NO-MORE-RECORDS VALUE 'NO'.

       01     CONSTANTS.
           05  NUM        PIC 99 VALUE 1.

       01    STUDENT-AREA.
           05  STUDENT-NAME   PIC X(20).
           05  COURSE-PTS     PIC 99.
           05  MAJOR          PIC XXX.
           05  ADVISOR        PIC X(20).
           05  CAMPUS         PIC X(15).

       REPORT SECTION.
       RD    CONTROL-BREAK
           CONTROLS ARE MAJOR ADVISOR
           PAGE LIMIT 25 LINES
           HEADING 1
           FIRST DETAIL 5
           FOOTING 23.
       01  TYPE IS PAGE HEADING.
           05  LINE 1.
                10  COLUMN 61    PIC X(4) VALUE 'PAGE'.
                10  COLUMN 66    PIC ZZZ9 SOURCE PAGE-COUNTER.
           05  LINE PLUS 2.
                10  COLUMN 26     PIC X(23)
                       VALUE 'STUDENT ADVISEMENT LIST'.

       01  TYPE IS CONTROL HEADING MAJOR.
           05     LINE 5 ON NEXT PAGE .
                10  COLUMN 37    PIC X(5)  VALUE 'MAJOR'.
                10  COLUMN 44    PIC X(20) SOURCE MAJOR.

           05     LINE 7.
                10  COLUMN  4    PIC X(12) VALUE 'STUDENT NAME'.
                10  COLUMN 25    PIC XXX   VALUE 'PTS'.
                10  COLUMN 34    PIC X(6)  VALUE 'CAMPUS'.
                10  COLUMN 60    PIC X(8)  VALUE 'ADVISOR'.
           05     LINE PLUS 1.
                10  COLUMN  4    PIC X(68) VALUE ALL '-'.

       01    TRANS-LINE TYPE IS DETAIL.
           05     LINE NUMBER PLUS 1.
                10  COLUMN  3    PIC X(20) SOURCE STUDENT-NAME.
                10  COLUMN 26    PIC 99    SOURCE COURSE-PTS.
                10  COLUMN 34    PIC X(15) SOURCE CAMPUS.
                10  COLUMN 51    PIC X(5) VALUE "Hello"
                              PRESENT AFTER PAGE OR ADVISOR.
                10  COLUMN 51    PIC X(5) VALUE '  "  '
                              ABSENT AFTER PAGE OR ADVISOR.
                10  COLUMN 60    PIC X(20) SOURCE ADVISOR
                                       GROUP INDICATE.

       01    TYPE IS CONTROL FOOTING ADVISOR.
           05     LINE PLUS 2.
                10  COLUMN 5     PIC X(8)  VALUE 'ADVISOR'.
                10  COLUMN 13    PIC X(20) SOURCE ADVISOR.
                10  COLUMN 34    PIC X(6)  VALUE 'TOTAL'.
                10  ADV-TOTAL
                    COLUMN 40    PIC ZZ9   SUM NUM.
           05     LINE PLUS 1.
                10  COLUMN 1     PIC X(8)  VALUE ' '.

       01    TYPE IS CONTROL FOOTING MAJOR.
           05     LINE PLUS 2.
                10  COLUMN 5    PIC X(11)  VALUE 'MAJOR TOTAL'.
                10  MAJ-TOTAL
                    COLUMN 22    PIC ZZ9   SUM ADV-TOTAL.

       01    TYPE IS CONTROL FOOTING FINAL.
           05  LINE PLUS 3.
                10  COLUMN 10    PIC X(11) VALUE 'FINAL TOTAL'.
                10  STU-TOTAL
                    COLUMN 21    PIC ZZZ9 SUM MAJ-TOTAL.

       PROCEDURE DIVISION.
       A000-CREATE-REPORTS.
           OPEN INPUT STUDENT-FILE
                OUTPUT PRINT-FILE.
           INITIATE CONTROL-BREAK.
           READ STUDENT-FILE INTO STUDENT-AREA
                AT END
                    MOVE 'NO ' TO ARE-THERE-MORE-RECORDS.
           PERFORM A001-LOOP
                UNTIL THERE-ARE-NO-MORE-RECORDS.
           TERMINATE CONTROL-BREAK.
           CLOSE STUDENT-FILE
                   PRINT-FILE.
           STOP RUN.

       A001-LOOP.
           GENERATE TRANS-LINE.
           READ STUDENT-FILE INTO STUDENT-AREA
                AT END
                    MOVE 'NO ' TO ARE-THERE-MORE-RECORDS.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3704: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:3704"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3704"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3706: DD_STUDREC=\"./inp_data\" DD_REPORT3=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_STUDREC=\"./inp_data\" DD_REPORT3=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:3706"
( $at_check_trace; DD_STUDREC="./inp_data" DD_REPORT3="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3706"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                                                            PAGE    1

                         STUDENT ADVISEMENT LIST

                                    MAJOR  CS

   STUDENT NAME         PTS      CAMPUS                    ADVISOR
   --------------------------------------------------------------------
  Norman, Ronald J       25       Waterloo        Hello    Malcolm, Mike
  Dorken, Keith A        35       Waterloo          "

    ADVISOR Malcolm, Mike        TOTAL   2

  Norman, James J        25       Waterloo        Hello    Manning, Eric
  Dorken, Kevin          35       Waterloo          "

    ADVISOR Manning, Eric        TOTAL   2


    MAJOR TOTAL        4





                                                            PAGE    2

                         STUDENT ADVISEMENT LIST

                                    MAJOR  EC

   STUDENT NAME         PTS      CAMPUS                    ADVISOR
   --------------------------------------------------------------------
  Allinson, A R          25       Whistler        Hello    Manning, Eric

    ADVISOR Manning, Eric        TOTAL   1

  Norman, Michelle       27       Toronto         Hello    Manning, Donna
  Dorken, Melissa        37       Toronto           "

    ADVISOR Manning, Donna       TOTAL   2

  Norseman, Ben01        27       Toronto         Hello    DiMetri, Gary
  Norseman, Ben02        27       Toronto           "
  Norseman, Ben03        27       Toronto           "
  Norseman, Ben04        27       Toronto           "
  Norseman, Ben05        27       Toronto           "
  Norseman, Ben06        27       Toronto           "

                                                            PAGE    3

                         STUDENT ADVISEMENT LIST

  Norseman, Ben07        27       Toronto         Hello    DiMetri, Gary
  Norseman, Ben08        27       Toronto           "
  Norseman, Ben09        27       Toronto           "
  Norseman, Ben10        27       Toronto           "

    ADVISOR DiMetri, Gary        TOTAL  10


    MAJOR TOTAL       13


         FINAL TOTAL  17









_ATEOF

#" <- fix code highlighting
{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3787: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:3787"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3787"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_969
#AT_START_970
at_fn_group_banner 970 'run_reportwriter.at:3792' \
  "Sample Inventory Report" "                        " 4
at_xfail=no
(
  $as_echo "970. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
01Data Processing   02000500012388
02Cow Milking       02000600054398
03Grass Cutting     03000600054397
03Lawn mowing       03000600054397
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT INV-FILE ASSIGN TO EXTERNAL INVFILE
                          ORGANIZATION IS LINE SEQUENTIAL.
           SELECT REPORT-FILE ASSIGN TO EXTERNAL
                              LINE ADVANCING REPORT4.

       DATA DIVISION.
       FILE SECTION.
       FD    INV-FILE.
       01    INV-REC.
           05     DEPT-IN        PIC 99.
           05     DEPT-NAM-IN    PIC X(18).
           05     MONTH-IN       PIC 99.
           05     ITEM-NO-IN     PIC 9(5).
           05     INV-TOT-IN     PIC 9(6)V99.

       FD    REPORT-FILE
           REPORT IS INV-REPORT.

       WORKING-STORAGE SECTION.
       01  INDICATORS.
           05  ARE-THERE-MORE-RECORDS    PIC XXX VALUE 'YES'.

       REPORT SECTION.
       RD  INV-REPORT
           CONTROLS ARE FINAL DEPT-IN MONTH-IN
           PAGE LIMIT 25 LINES
           HEADING 2
           FIRST DETAIL 5
           LAST DETAIL 18
           FOOTING 20.
       01  TYPE IS REPORT HEADING.
           05 LINE 2  COLUMN  50  PIC X(16) VALUE 'INVENTORY REPORT'.
           05 LINE 2  COLUMN  80  PIC X     VALUE ' '.

       01  TYPE IS CONTROL HEADING DEPT-IN
           LINE NUMBER IS PLUS 2
           NEXT GROUP IS PLUS 2.
           05 COLUMN 2        PIC X(13) VALUE 'DEPARTMENT #:'.
           05 COLUMN 27       PIC 99    SOURCE DEPT-IN.
           05 COLUMN 31       PIC X(16) VALUE 'DEPARTMENT NAME:'.
           05 COLUMN 50       PIC X(18) SOURCE DEPT-NAM-IN.

       01  INV-DETAIL TYPE IS DETAIL
           LINE PLUS 2.
           05 COLUMN 10       PIC 99  SOURCE MONTH-IN GROUP INDICATE.
           05 COLUMN 25       PIC 9(5) SOURCE ITEM-NO-IN.
           05 COLUMN 40       PIC ZZZ,ZZZ.99 SOURCE IS INV-TOT-IN.

       01  TYPE IS CONTROL FOOTING MONTH-IN
           LINE PLUS 2.
           05 MONTH-TOTAL COLUMN 55 PIC Z,ZZZ,ZZZ.99 SUM INV-TOT-IN.

       01  TYPE IS CONTROL FOOTING DEPT-IN
           LINE PLUS 2.
           05 DEPT-TOTAL COLUMN 75 PIC ZZ,ZZZ,ZZZ.99 SUM MONTH-TOTAL.

       01  TYPE IS CONTROL FOOTING FINAL
           LINE PLUS 2.
           05 FINAL-TOTAL COLUMN 95 PIC ZZZ,ZZZ,ZZZ.99 SUM DEPT-TOTAL.

       01  TYPE IS PAGE FOOTING LINE 24.
           05  COLUMN 30      PIC X(30) VALUE "-+* End of Page *+-".
           05  COLUMN 55      PIC X(12) VALUE "************".
           05  COLUMN 75      PIC X(13) VALUE "*************".
           05  COLUMN 95      PIC X(14) VALUE "**************".

       PROCEDURE DIVISION.
       A000-MAINLINE.
           OPEN INPUT INV-FILE
                OUTPUT REPORT-FILE.
           INITIATE INV-REPORT.
           READ INV-FILE
                AT END
                    MOVE 'NO ' TO ARE-THERE-MORE-RECORDS.
           PERFORM A001-LOOP
                UNTIL ARE-THERE-MORE-RECORDS = 'NO '.
           TERMINATE INV-REPORT.
           CLOSE INV-FILE
                REPORT-FILE.
           STOP RUN.
       A001-LOOP.
           GENERATE INV-DETAIL.
           READ INV-FILE
                AT END
                    MOVE 'NO ' TO ARE-THERE-MORE-RECORDS.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3896: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:3896"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:40: warning: duplicate LINE 2 ignored
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3896"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3900: DD_INVFILE=\"./inp_data\" DD_REPORT4=\"./report.txt\" \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_INVFILE=\"./inp_data\" DD_REPORT4=\"./report.txt\" $COBCRUN_DIRECT ./prog" "run_reportwriter.at:3900"
( $at_check_trace; DD_INVFILE="./inp_data" DD_REPORT4="./report.txt" $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3900"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'

                                                 INVENTORY REPORT


 DEPARTMENT #:            01  DEPARTMENT NAME:   Data Processing



         02             00050            1,238.80

                                                          1,238.80

                                                                               1,238.80

 DEPARTMENT #:            02  DEPARTMENT NAME:   Cow Milking








                             -+* End of Page *+-      ************        *************       **************




         02             00060            5,439.80

                                                          5,439.80

                                                                               5,439.80

 DEPARTMENT #:            03  DEPARTMENT NAME:   Grass Cutting



         03             00060            5,439.70

                        00060            5,439.70

                                                         10,879.40





                             -+* End of Page *+-      ************        *************       **************




                                                                              10,879.40

                                                                                                   17,558.00
















                             -+* End of Page *+-      ************        *************       **************
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:3980: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:3980"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:3980"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_970
#AT_START_971
at_fn_group_banner 971 'run_reportwriter.at:3985' \
  "Duplicate Detail Line" "                          " 4
at_xfail=no
(
  $as_echo "971. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT REPORT-FILE
           LINE SEQUENTIAL
           ASSIGN TO EXTERNAL DUPDTL.
       DATA DIVISION.
       FILE SECTION.
       FD REPORT-FILE
           REPORT IS MYREPORT.
       WORKING-STORAGE SECTION.
       01 SAVE-ITEM PIC  X.

       REPORT SECTION.
       RD MYREPORT
           CONTROLS ARE SAVE-ITEM
           PAGE LIMIT IS 15 LINES
           FIRST DETAIL 1
           LAST DETAIL 12.

       01 TYPE IS CONTROL HEADING SAVE-ITEM.
          05 LINE NUMBER IS 1.
            10 COLUMN 1 PIC X(20) VALUE "HEADING SAVE-ITEM".

       01 DETAIL-LINE TYPE IS DETAIL.
          05 LINE NUMBER PLUS 1.
            10 COLUMN 1 PIC X SOURCE SAVE-ITEM.
            10 COLUMN 10 PIC X(15) VALUE "1st Detail".

       01 SND-DETAIL-LINE TYPE IS DETAIL.
          05 LINE NUMBER PLUS 1.
            10 COLUMN 1 PIC X SOURCE SAVE-ITEM.
            10 COLUMN 10 PIC X(15) VALUE "2nd Detail".

       01 TRD-DETAIL-LINE TYPE IS DETAIL.
          05 LINE NUMBER PLUS 1.
            10 COLUMN 1 PIC X SOURCE SAVE-ITEM.
            10 COLUMN 10 PIC X(15) VALUE "3rd Detail 1".
          05 LINE NUMBER PLUS 1.
            10 COLUMN 1 PIC X SOURCE SAVE-ITEM.
            10 COLUMN 10 PIC X(15) VALUE "3rd Detail 2".

       01 TYPE IS CONTROL FOOTING SAVE-ITEM.
          03  LINE NUMBER IS PLUS 1.
           05 COLUMN 07    PIC X(27)  VALUE "FOOTING SAVE-ITEM".

       PROCEDURE DIVISION.
           OPEN OUTPUT REPORT-FILE.
           INITIATE MYREPORT.
           MOVE "A" TO SAVE-ITEM.
           GENERATE DETAIL-LINE.
           MOVE "B" TO SAVE-ITEM.
           GENERATE DETAIL-LINE.
           GENERATE SND-DETAIL-LINE.
           GENERATE TRD-DETAIL-LINE.
           MOVE "C" TO SAVE-ITEM.
           GENERATE TRD-DETAIL-LINE.
           TERMINATE MYREPORT.
           CLOSE REPORT-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4054: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:4054"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4054"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4056: DD_DUPDTL=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_DUPDTL=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:4056"
( $at_check_trace; DD_DUPDTL=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4056"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
HEADING SAVE-ITEM
A        1st Detail
      FOOTING SAVE-ITEM












HEADING SAVE-ITEM
B        1st Detail
B        2nd Detail
B        3rd Detail 1
B        3rd Detail 2
      FOOTING SAVE-ITEM









HEADING SAVE-ITEM
C        3rd Detail 1
C        3rd Detail 2
      FOOTING SAVE-ITEM











_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4108: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4108"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4108"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_971
#AT_START_972
at_fn_group_banner 972 'run_reportwriter.at:4113' \
  "Report with OCCURS" "                             " 4
at_xfail=no
(
  $as_echo "972. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT rp-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  rp-file REPORT rp.

       REPORT SECTION.
       RD  RP
           PAGE LIMIT 10 LINES
           HEADING 1
           FIRST DETAIL 4.
       01 HEADING-LINE.
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "         1         2         3         4         5".
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "12345678901234567890123456789012345678901234567890".

       01  RP-DTL1 TYPE DETAIL,  LINE + 1.
            03  NUMS  COLUMN 1   PIC 999 OCCURS 3 TIMES STEP 10.
            03  MARK  COLUMN + 3 PIC X(4).

       01  rp-dtl2 TYPE DETAIL, LINE + 1.
            03  grps  COLUMN 1 OCCURS 3 TIMES.
               05  tag1      PIC X(5).
               05  FILLER    PIC X.
               05  tag2      PIC X(5).
               05  FILLER    PIC XX.

       01  RP-DTL3 TYPE DETAIL, LINE + 1.
            03  NNNS  COLUMN 1, 11, 21, 27 PIC 999.
            03  TAGP  COLUMN PLUS 4 PIC X(4).

       01  RP-DTL4 TYPE DETAIL, LINE + 1.
            03  NUM4A                PIC 999.
            03  NUM4B COLUMN PLUS 8  PIC 999 OCCURS 3 STEP 10.
            03  MRK4  COLUMN + 3     PIC X(4).

       PROCEDURE DIVISION.
           OPEN OUTPUT rp-file
           INITIATE rp

           MOVE 100 TO NUMS (1), NUMS (2), NUMS (3)
           MOVE "<1>" TO MARK.
           GENERATE rp-dtl1

           MOVE ALL '*' TO grps(1), grps(2), grps(3)
           MOVE "Tag1" to tag1 (1), tag1 (2), tag1 (3)
           MOVE "Tag2" to tag2 (1), tag2 (2), tag2 (3)
           GENERATE rp-dtl2

           MOVE 200 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
           MOVE "<3>" TO TAGP.
           GENERATE RP-DTL3.

           MOVE 400 TO NUM4A
           MOVE 401 TO NUM4B (1)
           MOVE 402 TO NUM4B (2)
           MOVE 403 TO NUM4B (3)
           MOVE "<4>" TO MRK4.
           GENERATE RP-DTL4

           TERMINATE rp
           CLOSE rp-file

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4193: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:4193"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4193"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4195: DD_PRINTOUT=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:4195"
( $at_check_trace; DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4195"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
         1         2         3         4         5
12345678901234567890123456789012345678901234567890

100       100       100         <1>
Tag1 *Tag2 **Tag1 *Tag2 **Tag1 *Tag2 **
200       200       200   200   <3>
400       401       402       403         <4>



_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4212: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4212"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4212"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_972
#AT_START_973
at_fn_group_banner 973 'run_reportwriter.at:4217' \
  "Report CODE and LIMIT COLUMNS" "                  " 4
at_xfail=no
(
  $as_echo "973. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >progv.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. progv.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT RP-FILE ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  RP-FILE REPORT RP.

       WORKING-STORAGE SECTION.
       01  MAXCOL    PIC 99 VALUE 50.
       01  MYCODE    PIC X(6) VALUE "Hi-Q:".
       01  DIGX      PIC X(50) VALUE
                "123456789b123456789c123456789d123456789e123456789f".
       01  FILLER REDEFINES DIGX.
           05  DIGS  PIC X(10) OCCURS 5 TIMES.

       REPORT SECTION.
       RD  RP
           CODE IS MYCODE *> variable
           PAGE LIMIT 10 LINES
                      MAXCOL COLUMNS *> variable
           HEADING 1
           FIRST DETAIL 4.
       01 HEADING-LINE.
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "         1         2         3         4         5".
          02 TYPE PAGE HEADING LINE PLUS 1.
      *     05  COLUMN 1      PIC X(50) VALUE
      *         "12345678901234567890123456789012345678901234567890".
            05  COLUMN 1      OCCURS 5 TIMES
                  VARYING IDX1 FROM 1 BY 1.
                10  FILLER    PIC X(10) SOURCE DIGS (IDX1).

       01  RP-DTL1 TYPE DETAIL, LINE + 1.
            03  NUMS  COLUMN 1   PIC 999 OCCURS 3 TIMES STEP 10.
            03  MARK  COLUMN + 3 PIC X(4).

       01  RP-DTL2 TYPE DETAIL, LINE + 1.
            03  GRPS  COLUMN 1 OCCURS 3 TIMES.
               05  TAG1      PIC X(5).
               05  FILLER    PIC X.
               05  TAG2      PIC X(5).
               05  FILLER    PIC XX.

       01  RP-DTL3 TYPE DETAIL, LINE + 1.
            03  NNNS  COLUMN 1, 11, 21, 27 PIC 999.
            03  TAGP  COLUMN PLUS 4 PIC X(4).

       01  RP-DTL4 TYPE DETAIL, LINE + 1.
            03  NUM4A               PIC 999.
            03  NUM4B COLUMN 11     PIC 999 OCCURS 3 STEP 10.
            03  MRK4  COLUMN + 3    PIC X(4).

       PROCEDURE DIVISION.
           OPEN OUTPUT RP-FILE
           INITIATE RP

           MOVE 100 TO NUMS (1), NUMS (2), NUMS (3)
           MOVE "<1>" TO MARK.
           GENERATE rp-dtl1

           MOVE ALL '*' TO GRPS(1), GRPS(2), GRPS(3)
           MOVE "Tag1" TO TAG1 (1), TAG1 (2), TAG1 (3)
           MOVE "Tag2" TO TAG2 (1), TAG2 (2), TAG2 (3)
           GENERATE RP-DTL2

           MOVE 200 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
           MOVE "<3>" TO TAGP.
           GENERATE RP-DTL3.

           MOVE 400 TO NUM4A
           MOVE 401 TO NUM4B (1)
           MOVE 402 TO NUM4B (2)
           MOVE 403 TO NUM4B (3)
           MOVE "<4>" TO MRK4.
           GENERATE RP-DTL4

           TERMINATE rp
           CLOSE RP-FILE

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4310: \$COMPILE -std=cobol2002 -fassign-ext-dyn=ok progv.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2002 -fassign-ext-dyn=ok progv.cob" "run_reportwriter.at:4310"
( $at_check_trace; $COMPILE -std=cobol2002 -fassign-ext-dyn=ok progv.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "progv.cob:38: warning: RW VARYING clause is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4310"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4314: DD_PRINTOUT=./report_var.txt \\
\$COBCRUN_DIRECT ./progv"
at_fn_check_prepare_notrace 'an embedded newline' "run_reportwriter.at:4314"
( $at_check_trace; DD_PRINTOUT=./report_var.txt \
$COBCRUN_DIRECT ./progv
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4314"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >progl.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. progl.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT RP-FILE ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  RP-FILE REPORT RP.

       WORKING-STORAGE SECTION.
       01  DIGX      PIC X(50) VALUE
                "123456789b123456789c123456789d123456789e123456789f".
       01  FILLER REDEFINES DIGX.
           05  DIGS  PIC X(10) OCCURS 5 TIMES.

       REPORT SECTION.
       RD  RP
           CODE IS "Hi-Q: " *> literal
           PAGE LIMIT 10 LINES
                      50 COLUMNS *> literal
           HEADING 1
           FIRST DETAIL 4.
       01 HEADING-LINE.
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "         1         2         3         4         5".
          02 TYPE PAGE HEADING LINE PLUS 1.
      *     05  COLUMN 1      PIC X(50) VALUE
      *         "12345678901234567890123456789012345678901234567890".
            05  COLUMN 1      OCCURS 5 TIMES
                  VARYING IDX1 FROM 1 BY 1.
                10  FILLER    PIC X(10) SOURCE DIGS (IDX1).

       01  RP-DTL1 TYPE DETAIL,  LINE + 1.
            03  NUMS  COLUMN 1   PIC 999 OCCURS 3 TIMES STEP 10.
            03  MARK  COLUMN + 3 PIC X(4).

       01  RP-DTL2 TYPE DETAIL, LINE + 1.
            03  GRPS  COLUMN 1 OCCURS 3 TIMES.
               05  TAG1      PIC X(5).
               05  FILLER    PIC X.
               05  TAG2      PIC X(5).
               05  FILLER    PIC XX.

       01  RP-DTL3 TYPE DETAIL, LINE + 1.
            03  NNNS  COLUMN 1, 11, 21, 27 PIC 999.
            03  TAGP  COLUMN PLUS 4 PIC X(4).

       01  RP-DTL4 TYPE DETAIL, LINE + 1.
            03  NUM4A               PIC 999.
            03  NUM4B COLUMN 11     PIC 999 OCCURS 3 STEP 10.
            03  MRK4  COLUMN + 3    PIC X(4).

       PROCEDURE DIVISION.
           OPEN OUTPUT RP-FILE
           INITIATE RP

           MOVE 100 TO NUMS (1), NUMS (2), NUMS (3)
           MOVE "<1>" TO MARK.
           GENERATE rp-dtl1

           MOVE ALL '*' TO GRPS(1), GRPS(2), GRPS(3)
           MOVE "Tag1" TO TAG1 (1), TAG1 (2), TAG1 (3)
           MOVE "Tag2" TO TAG2 (1), TAG2 (2), TAG2 (3)
           GENERATE RP-DTL2

           MOVE 200 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
           MOVE "<3>" TO TAGP.
           GENERATE RP-DTL3.

           MOVE 400 TO NUM4A
           MOVE 401 TO NUM4B (1)
           MOVE 402 TO NUM4B (2)
           MOVE 403 TO NUM4B (3)
           MOVE "<4>" TO MRK4.
           GENERATE RP-DTL4

           TERMINATE rp
           CLOSE RP-FILE

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4405: \$COMPILE -std=cobol2002 -fdump=all -fassign-ext-dyn=ok progl.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2002 -fdump=all -fassign-ext-dyn=ok progl.cob" "run_reportwriter.at:4405"
( $at_check_trace; $COMPILE -std=cobol2002 -fdump=all -fassign-ext-dyn=ok progl.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "progl.cob:36: warning: RW VARYING clause is not implemented
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4405"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4409: DD_PRINTOUT=./report_lit.txt \\
\$COBCRUN_DIRECT ./progl"
at_fn_check_prepare_notrace 'an embedded newline' "run_reportwriter.at:4409"
( $at_check_trace; DD_PRINTOUT=./report_lit.txt \
$COBCRUN_DIRECT ./progl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4409"
$at_failed && at_fn_log_failure
$at_traceon; }






cat >reference <<'_ATEOF'
Hi-Q:          1         2         3         4         5
Hi-Q:          1         2         3         4         5
Hi-Q:
Hi-Q: 100       100       100         <1>
Hi-Q: Tag1 *Tag2 **Tag1 *Tag2 **Tag1 *Tag2 **
Hi-Q: 200       200       200   200   <3>
Hi-Q: 400       401       402       403         <4>
Hi-Q:
Hi-Q:
Hi-Q:
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4429: diff reference report_var.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4429"
( $at_check_trace; diff reference report_var.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4429"
$at_failed && at_fn_log_failure  \
"report_var.txt" \
"report_lit.txt"
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4430: diff reference report_lit.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4430"
( $at_check_trace; diff reference report_lit.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4430"
$at_failed && at_fn_log_failure  \
"report_var.txt" \
"report_lit.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_973
#AT_START_974
at_fn_group_banner 974 'run_reportwriter.at:4435' \
  "Test Report dump DECLARATIVES" "                  " 4
at_xfail=no
(
  $as_echo "974. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT RP-FILE ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  RP-FILE REPORT RP.

       WORKING-STORAGE SECTION.
       01  DIGX      PIC X(50) VALUE
                "123456789b123456789c123456789d123456789e123456789f".
       01  FILLER REDEFINES DIGX.
           05  DIGS  PIC X(10) OCCURS 5 TIMES.

       01 error-messages.
          05 bad-ending           pic x(50) value
             "Should have exactly 3 digits !".
          05 bad-param            pic x(50) value
             "Bad param!".
      *
       78 test-date value 123.
    *
       01 floating-data.
          05 dbl        usage float-long      value -3.40282e+038.
          05 flt        usage float-short     value 3.40282e+038.

       REPORT SECTION.
       RD  RP
           CODE IS "Hi-Q: "
           PAGE LIMIT 10 LINES
                      50 COLUMNS
           HEADING 1
           FIRST DETAIL 4.
       01 HEADING-LINE.
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "         1         2         3         4         5".
          02 TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "12345678901234567890123456789012345678901234567890".
      *     05  COLUMN 1      OCCURS 5 TIMES
      *           VARYING IDX1 FROM 1 BY 1.
      *         10  FILLER    PIC X(10) SOURCE DIGS (IDX1).

       01  RP-DTL1 TYPE DETAIL, LINE + 1.
            03  NUMS  COLUMN 1   PIC 999 OCCURS 3 TIMES STEP 10.
            03  MARK  COLUMN + 2 PIC X(4).

       01  RP-DTL2 TYPE DETAIL, LINE + 1.
            03  GRPS  COLUMN 1 OCCURS 3 TIMES.
               05  TAG1      PIC X(5).
               05  DTL2      PIC X.
               05  TAG2      PIC X(5).
               05  FILLER    PIC XX.
      *     03  MRK2  COLUMN + 2    PIC X(4).
            03  MRK2  COLUMN  42    PIC X(4).

       01  RP-DTL3 TYPE DETAIL, LINE + 1.
            03  NNNS  COLUMN 1, 11, 21, 27 PIC 999.
            03  TAGP  COLUMN PLUS 3 PIC X(4).

       01  RP-DTL4 TYPE DETAIL, LINE + 1.
            03  NUM4A               PIC 999.
            03  NUM4B COLUMN PLUS 7 PIC 999 OCCURS 3.
            03  MRK4  COLUMN + 2    PIC X(4).

       PROCEDURE DIVISION.
       DECLARATIVES.
       BEFORE-DETAIL SECTION.
           USE BEFORE REPORTING RP-DTL2.
       DOIT-1.
           DISPLAY "Hello World"
           MOVE '_' TO DTL2 (2).
       END DECLARATIVES.

           OPEN OUTPUT RP-FILE
           INITIATE RP

           MOVE 169 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
           MOVE "NOT" TO TAGP.
           MOVE "NOW" TO MRK4.

           MOVE 100 TO NUMS (1), NUMS (2), NUMS (3)
           MOVE "<1>" TO MARK.
           GENERATE rp-dtl1

           MOVE ALL '*' TO GRPS(1), GRPS(2), GRPS(3)
           MOVE "Tag1" TO TAG1 (1), TAG1 (2), TAG1 (3)
           MOVE "Tag2" TO TAG2 (1), TAG2 (2), TAG2 (3)
           MOVE "<2>" TO MRK2.
           GENERATE RP-DTL2

           MOVE 200 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
           MOVE "<3>" TO TAGP.
           GENERATE RP-DTL3.

           MOVE 400 TO NUM4A
           MOVE 401 TO NUM4B (1)
           MOVE 402 TO NUM4B (2)
           MOVE 403 TO NUM4B (3)
           MOVE "<4>" TO MRK4.
           GENERATE RP-DTL4

           TERMINATE rp
           CLOSE RP-FILE

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4553: \$COMPILE -debug -fdump=ALL prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -debug -fdump=ALL prog.cob" "run_reportwriter.at:4553"
( $at_check_trace; $COMPILE -debug -fdump=ALL prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4553"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4555: export PRINTOUT=tstdmrp.txt
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_reportwriter.at:4555"
( $at_check_trace; export PRINTOUT=tstdmrp.txt
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello World
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4555"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
Hi-Q:          1         2         3         4         5
Hi-Q: 12345678901234567890123456789012345678901234567890
Hi-Q:
Hi-Q: 100       100       100        <1>
Hi-Q: Tag1 *Tag2 **Tag1 _Tag2 **Tag1 *Tag2 **  <2>
Hi-Q: 200       200       200   200  <3>
Hi-Q: 400      401402403 <4>
Hi-Q:
Hi-Q:
Hi-Q:
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4575: diff reference tstdmrp.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4575"
( $at_check_trace; diff reference tstdmrp.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4575"
$at_failed && at_fn_log_failure  \
"tstdmrp.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_974
#AT_START_975
at_fn_group_banner 975 'run_reportwriter.at:4580' \
  "Duplicate INITIATE" "                             " 4
at_xfail=no
(
  $as_echo "975. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT report-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  report-file REPORT rp.

       WORKING-STORAGE SECTION.
       01  foo  PIC X(20).
       01  hedpos PIC 99 VALUE 10.

       REPORT SECTION.
       RD  rp PAGE LIMIT 3.

       01  rp-detail TYPE DE.
         02  LINE + 1.
         03     COL 1; SOURCE foo, PIC X(30).
         03     COL + 1            PIC X(6) VALUE "<--->".

       PROCEDURE DIVISION.
           OPEN OUTPUT report-file.
           INITIATE rp.

           MOVE "hello" TO foo.
            GENERATE rp-detail.

           INITIATE rp.

           MOVE "goodbye" TO foo.
            GENERATE rp-detail.

           TERMINATE rp.
             CLOSE report-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4626: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:4626"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4626"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4628: DD_PRINTOUT=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:4628"
( $at_check_trace; DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:34: error: INITIATE rp was already done
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4628"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
hello                         <--->
goodbye                       <--->

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4641: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4641"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4641"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_975
#AT_START_976
at_fn_group_banner 976 'run_reportwriter.at:4646' \
  "Missing INITIATE and GENERATE" "                  " 4
at_xfail=no
(
  $as_echo "976. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT report-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  report-file REPORT rp.

       WORKING-STORAGE SECTION.
       01  foo  PIC X(20).
       01  hedpos PIC 99 VALUE 10.

       REPORT SECTION.
       RD  rp PAGE LIMIT 3.

       01  rp-detail TYPE DE.
         02  LINE + 1.
         03     COL 1; SOURCE foo, PIC X(30).
         03     COL + 1            PIC X(6) VALUE "<--->".

       PROCEDURE DIVISION.
           OPEN OUTPUT report-file.

           MOVE "hello" TO foo.
           GENERATE rp-detail.

           MOVE "goodbye" TO foo.
           GENERATE rp-detail.

           TERMINATE rp.
           CLOSE report-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4689: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:4689"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4689"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4691: DD_PRINTOUT=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:4691"
( $at_check_trace; DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:31: error: GENERATE rp but no INITIATE was done
libcob: prog.cob:31: warning: implicit CLOSE of report-file ('PRINTOUT')
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_reportwriter.at:4691"
$at_failed && at_fn_log_failure
$at_traceon; }





: >reference

{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4701: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4701"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4701"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_976
#AT_START_977
at_fn_group_banner 977 'run_reportwriter.at:4706' \
  "Missing INITIATE and TERMINATE" "                 " 4
at_xfail=no
(
  $as_echo "977. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
       SELECT report-file ASSIGN EXTERNAL PRINTOUT
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  report-file REPORT rp.

       WORKING-STORAGE SECTION.
       01  foo  PIC X(20).
       01  hedpos PIC 99 VALUE 10.

       REPORT SECTION.
       RD  rp PAGE LIMIT 3.

       01  rp-detail TYPE DE.
         02  LINE + 1.
         03     COL 1; SOURCE foo, PIC X(30).
         03     COL + 2            PIC X(6) VALUE "<--->".

       PROCEDURE DIVISION.
           OPEN OUTPUT report-file.

           TERMINATE rp.
           CLOSE report-file.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4743: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:4743"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4743"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4745: DD_PRINTOUT=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:4745"
( $at_check_trace; DD_PRINTOUT=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:30: error: TERMINATE rp but no INITIATE was done
libcob: prog.cob:30: warning: implicit CLOSE of report-file ('PRINTOUT')
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_reportwriter.at:4745"
$at_failed && at_fn_log_failure
$at_traceon; }





: >reference

{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:4755: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:4755"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:4755"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_977
#AT_START_978
at_fn_group_banner 978 'run_reportwriter.at:4760' \
  "Next Group Next Page" "                           " 4
at_xfail=no
(
  $as_echo "978. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
MW1000051IN15021220150212OR150212043ITEM_NUMBER_22      0000002800002999
MW1000051IN15022220150222OR150226020ITEM_NUMBER_06      0000004300000999
MW1000071IN15021420150214OR150212057ITEM_NUMBER_51      0000007000005999
MW1000071IN15022820150228OR150225098ITEM_NUMBER_92      0000001400009999
MW1000201IN15020920150209OR150216083ITEM_NUMBER_77      0000007700007999
MW1000201IN15022720150227OR150223079ITEM_NUMBER_20      0000009600002999
MW1000291IN15021720150217OR150218088ITEM_NUMBER_86      0000001900008999
MW1000411IN15022320150223OR150210063ITEM_NUMBER_66      0000008800006999
MW1000451IN15021720150217OR150202053ITEM_NUMBER_60      0000005100006999
MW1000471IN15022420150224OR150201036ITEM_NUMBER_45      0000003800004999
MW1000831IN15021020150210OR150227042ITEM_NUMBER_70      0000007200007999
MW1000831IN15021420150214OR150228090ITEM_NUMBER_07      0000002300000999
MW1000831IN15022020150220OR150226048ITEM_NUMBER_61      0000005900006999
MW1000891IN15022120150221OR150219018ITEM_NUMBER_72      0000007300007999
MW1000891IN15022320150223OR150227069ITEM_NUMBER_73      0000007400007999
NE1000001IN15021020150210OR150217060ITEM_NUMBER_38      0000009800003999
NE1000201IN15021920150219OR150209035ITEM_NUMBER_94      0000009600009999
NE1000431IN15021520150215OR150227047ITEM_NUMBER_64      0000008700006999
NE1000431IN15022220150222OR150213062ITEM_NUMBER_97      0000007300009999
NE1000451IN15020320150203OR150213087ITEM_NUMBER_85      0000005300008999
NE1000471IN15022120150221OR150222034ITEM_NUMBER_74      0000008400007999
NE1000471IN15022120150221OR150225077ITEM_NUMBER_78      0000002400007999
NE1000491IN15021720150217OR150210037ITEM_NUMBER_17      0000000700001999
NE1000601IN15021520150215OR150211070ITEM_NUMBER_06      0000004400000999
NE1000631IN15022720150227OR150209051ITEM_NUMBER_09      0000005400000999
NE1000671IN15020620150206OR150220045ITEM_NUMBER_56      0000006600005999
NE1000811IN15022020150220OR150212086ITEM_NUMBER_27      0000001700002999
NE1000811IN15022820150228OR150222075ITEM_NUMBER_66      0000008600006999
NE1000831IN15021620150216OR150224004ITEM_NUMBER_52      0000004200005999
NW1000001IN15022420150224OR150215029ITEM_NUMBER_79      0000003500007999
NW1000011IN15022820150228OR150209023ITEM_NUMBER_62      0000009800006999
NW1000051IN15021020150210OR150225076ITEM_NUMBER_50      0000003900005999
NW1000051IN15021820150218OR150229093ITEM_NUMBER_94      0000003700009999
NW1000051IN15022020150220OR150221050ITEM_NUMBER_89      0000003800008999
NW1000071IN15020220150202OR150223014ITEM_NUMBER_54      0000004800005999
NW1000091IN15020820150208OR150229094ITEM_NUMBER_17      0000007200001999
NW1000091IN15021220150212OR150222096ITEM_NUMBER_89      0000004900008999
NW1000091IN15022420150224OR150211074ITEM_NUMBER_90      0000004300009999
NW1000091IN15022720150227OR150219030ITEM_NUMBER_12      0000001900001999
NW1000201IN15020820150208OR150210061ITEM_NUMBER_34      0000001200003999
NW1000231IN15021420150214OR150210044ITEM_NUMBER_89      0000005400008999
NW1000251IN15021220150212OR150204059ITEM_NUMBER_39      0000006000003999
NW1000401IN15021520150215OR150222049ITEM_NUMBER_40      0000008100004999
NW1000401IN15021720150217OR150203085ITEM_NUMBER_77      0000003700007999
NW1000411IN15020720150207OR150224056ITEM_NUMBER_99      0000005400009999
NW1000411IN15022820150228OR150221008ITEM_NUMBER_68      0000009000006999
NW1000491IN15022820150228OR150201002ITEM_NUMBER_47      0000008600004999
NW1000611IN15022720150227OR150224097ITEM_NUMBER_11      0000008000001999
NW1000631IN15020720150207OR150206031ITEM_NUMBER_49      0000001500004999
NW1000631IN15021420150214OR150210054ITEM_NUMBER_40      0000004200004999
NW1000631IN15022420150224OR150218024ITEM_NUMBER_84      0000003300008999
NW1000651IN15020620150206OR150225099ITEM_NUMBER_57      0000004300005999
NW1000671IN15021320150213OR150224041ITEM_NUMBER_22      0000000200002999
NW1000691IN15020420150204OR150211092ITEM_NUMBER_13      0000009400001999
NW1000811IN15022720150227OR150217081ITEM_NUMBER_45      0000001600004999
NW1000851IN15020820150208OR150203091ITEM_NUMBER_63      0000006600006999
NW1000871IN15021820150218OR150209082ITEM_NUMBER_30      0000005500003999
NW1000871IN15022820150228OR150222015ITEM_NUMBER_73      0000005100007999
NW1000891IN15022520150225OR150201026ITEM_NUMBER_80      0000004700008999
SE1000001IN15022320150223OR150203064ITEM_NUMBER_03      0000007100000999
SE1000011IN15020120150201OR150213017ITEM_NUMBER_09      0000000600000999
SE1000011IN15021220150212OR150209066ITEM_NUMBER_06      0000004000000999
SE1000091IN15020420150204OR150201001ITEM_NUMBER_68      0000001900006999
SE1000091IN15021020150210OR150223084ITEM_NUMBER_11      0000009300001999
SE1000091IN15022620150226OR150219038ITEM_NUMBER_97      0000003700009999
SE1000211IN15020620150206OR150221089ITEM_NUMBER_05      0000004500000999
SE1000411IN15021220150212OR150208012ITEM_NUMBER_46      0000002300004999
SE1000431IN15020720150207OR150214072ITEM_NUMBER_25      0000004600002999
SE1000431IN15022520150225OR150220040ITEM_NUMBER_01      0000006100000999
SE1000451IN15021420150214OR150204022ITEM_NUMBER_34      0000004700003999
SE1000471IN15020320150203OR150217010ITEM_NUMBER_25      0000003400002999
SE1000471IN15021120150211OR150213025ITEM_NUMBER_54      0000009200005999
SE1000491IN15020220150202OR150202013ITEM_NUMBER_19      0000007800001999
SE1000601IN15022420150224OR150210039ITEM_NUMBER_19      0000005600001999
SE1000631IN15020120150201OR150216003ITEM_NUMBER_65      0000001100006999
SE1000671IN15020320150203OR150205071ITEM_NUMBER_64      0000009400006999
SE1000671IN15022020150220OR150214032ITEM_NUMBER_53      0000005900005999
SE1000891IN15022620150226OR150229068ITEM_NUMBER_75      0000008400007999
SW1000011IN15020220150202OR150206000ITEM_NUMBER_30      0000005900003999
SW1000031IN15020320150203OR150214033ITEM_NUMBER_09      0000006000000999
SW1000031IN15020620150206OR150206021ITEM_NUMBER_91      0000005400009999
SW1000091IN15022320150223OR150221028ITEM_NUMBER_67      0000003900006999
SW1000201IN15020920150209OR150205065ITEM_NUMBER_21      0000007000002999
SW1000201IN15022520150225OR150203052ITEM_NUMBER_55      0000007500005999
SW1000201IN15022520150225OR150210067ITEM_NUMBER_83      0000001500008999
SW1000211IN15020220150202OR150221055ITEM_NUMBER_16      0000001300001999
SW1000211IN15020820150208OR150215007ITEM_NUMBER_97      0000008900009999
SW1000271IN15021120150211OR150228080ITEM_NUMBER_45      0000005200004999
SW1000271IN15021320150213OR150207095ITEM_NUMBER_09      0000005400000999
SW1000401IN15022820150228OR150202027ITEM_NUMBER_83      0000000100008999
SW1000411IN15021020150210OR150220073ITEM_NUMBER_63      0000001400006999
SW1000431IN15020820150208OR150227078ITEM_NUMBER_23      0000005200002999
SW1000431IN15022020150220OR150227006ITEM_NUMBER_50      0000008500005999
SW1000601IN15020620150206OR150201011ITEM_NUMBER_73      0000008400007999
SW1000611IN15020620150206OR150218019ITEM_NUMBER_67      0000006100006999
SW1000651IN15020920150209OR150224009ITEM_NUMBER_23      0000001800002999
SW1000831IN15020120150201OR150221046ITEM_NUMBER_44      0000006900004999
SW1000831IN15022020150220OR150213005ITEM_NUMBER_44      0000003700004999
SW1000831IN15022220150222OR150213058ITEM_NUMBER_86      0000008300008999
SW1000871IN15020220150202OR150216016ITEM_NUMBER_62      0000008300006999
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
      *AUTHOR.          Gerard Robinson.
      *DATE-WRITTEN.    February 25, 2015.

       ENVIRONMENT DIVISION.

       INPUT-OUTPUT SECTION.

       FILE-CONTROL.

       SELECT REPORT-FILE
              ASSIGN TO EXTERNAL REPORTFILE
              ORGANIZATION IS LINE SEQUENTIAL.

       SELECT TEMP-FILE
              ASSIGN TO EXTERNAL TEMPFILE
              ORGANIZATION IS LINE SEQUENTIAL.

       DATA DIVISION.

       FILE SECTION.

       FD  REPORT-FILE
           REPORT IS RPTA.

       FD  TEMP-FILE.

       01  TEMP-REC.
         03  TEMP-REGION        PIC X(2).
         03  TEMP-BRANCH        PIC X(7).
         03  TEMP-INVOICE       PIC X(8).
         03  TEMP-DATE          PIC X(8).
         03  TEMP-ORDER         PIC X(8).
         03  TEMP-LINE-NO       PIC X(3).
         03  TEMP-ITEM          PIC X(20).
         03  TEMP-TX-QTY        PIC S9(8).
         03  TEMP-COST          PIC 999999V99.

       WORKING-STORAGE SECTION.

       01 WS-CURRENT-DATE PIC X(23).

       01 WS-SYSTEM-DATE-R REDEFINES WS-CURRENT-DATE.
          05 WS-DATE-YYYY          PIC X(4).
          05 WS-DATE-MM            PIC X(2).
          05 WS-DATE-DD            PIC X(2).
          05 WS-TIME               PIC X(6).
          05 WS-REST               PIC X(9).

       01 TEMP-FILE-EOF        PIC 9 VALUE 0.

       REPORT SECTION.

       RD  RPTA
           CONTROLS ARE
             FINAL,
             TEMP-REGION,
             TEMP-BRANCH,
             TEMP-INVOICE

           PAGE LIMIT IS 60 LINES
           HEADING 1
           FIRST DETAIL 8
           LAST DETAIL  48.

       01 RPTA-PAGE-HEADING TYPE PAGE HEADING.
          03 LINE NUMBER IS 1.
             05 COLUMN 1    PIC X(4)    VALUE "Run:".
             05 COLUMN 5    PIC X(2)    SOURCE WS-DATE-MM.
             05 COLUMN 7    PIC X       VALUE "/".
             05 COLUMN 8    PIC X(2)    SOURCE WS-DATE-DD.
             05 COLUMN 10   PIC X       VALUE "/".
             05 COLUMN 11   PIC X(4)    SOURCE WS-DATE-YYYY.
             05 COLUMN 16   PIC X(6)    SOURCE WS-TIME.
             05 COLUMN 40   PIC X(16)   VALUE "NEXT PAGE ISSUE".
             05 COLUMN 61   PIC X(4)    VALUE 'Page'.
             05 COLUMN 66   PIC ZZZ9    SOURCE PAGE-COUNTER.

          03 LINE NUMBER IS 2.
             05 COLUMN 1     PIC X(08)     VALUE "Region: ".
             05 COLUMN 12    PIC XX        SOURCE TEMP-REGION.

          03 LINE NUMBER IS 3.
             05 COLUMN 1   PIC X(21)         VALUE "Location: ".
             05 COLUMN 22  PIC X(7)          SOURCE TEMP-BRANCH.

          03 LINE NUMBER IS 4.
             05 COLUMN 1       PIC X(8)     VALUE "Invoice#".
             05 COLUMN 12      PIC X(4)     VALUE "Date".
             05 COLUMN 46      PIC X(6)     VALUE "Order#".
             05 COLUMN 62      PIC X(5)     VALUE "Line#".
             05 COLUMN 69      PIC X(5)     VALUE "Item#".
             05 COLUMN 102     PIC X(6)     VALUE "TX Qty".
             05 COLUMN 114     PIC X(4)     VALUE "Cost".

          03 LINE NUMBER IS 5.
             05 COLUMN 1       PIC X(128)   VALUE ALL "-".

       01 RPTA-DETAIL-LINE TYPE DETAIL.
             05 LINE PLUS 1.
                07 COLUMN  1   PIC X(8)       GROUP INDICATE
                                              SOURCE TEMP-INVOICE.
                07 COLUMN 12   PIC X(8)       GROUP INDICATE
                                              SOURCE TEMP-DATE.
                07 COLUMN 46   PIC X(8)       GROUP INDICATE
                                              SOURCE TEMP-ORDER.
                07 COLUMN 64   PIC X(3)       SOURCE TEMP-LINE-NO.
                07 COLUMN 69   PIC X(20)      SOURCE TEMP-ITEM.
                07 COLUMN 102  PIC S9(8)      SOURCE TEMP-TX-QTY.
                07 COLUMN 114  PIC ZZZZZZ9.99 SOURCE TEMP-COST.

       01 RPTA-INVOICE-FOOTING TYPE CONTROL FOOTING TEMP-INVOICE
                                 NEXT GROUP PLUS 1.
          03  LINE NUMBER IS PLUS 1.
             05 COLUMN  69        PIC X(15)    VALUE "Invoice Total: ".
             05 COLUMN 101        PIC S9(9)    SUM TEMP-TX-QTY.
             05 COLUMN 113        PIC ZZZZZZZ9.99 SUM TEMP-COST.

       01 RPTA-BRANCH-FOOTING TYPE CONTROL FOOTING TEMP-BRANCH
                                 NEXT GROUP NEXT PAGE.
          03  LINE NUMBER IS PLUS 2.
             05 COLUMN  69        PIC X(15)    VALUE "Branch Total: ".
             05 COLUMN 101        PIC S9(9)    SUM TEMP-TX-QTY.
             05 COLUMN 113        PIC ZZZZZZZ9.99 SUM TEMP-COST.

       01 RPTA-REGION-FOOTING TYPE CONTROL FOOTING TEMP-REGION
                                 NEXT GROUP NEXT PAGE.
          03  LINE NUMBER IS PLUS 2.
             05 COLUMN  69        PIC X(15)    VALUE "Region Total: ".
             05 COLUMN 101        PIC S9(9)    SUM TEMP-TX-QTY.
             05 COLUMN 113        PIC ZZZZZZZ9.99 SUM TEMP-COST.

       01 RPTA-FINAL-FOOTING TYPE CONTROL FOOTING FINAL.
          03  LINE NUMBER IS PLUS 2.
             05 COLUMN  69        PIC X(15)    VALUE "Grand Total: ".
             05 COLUMN 101        PIC S9(9)    SUM TEMP-TX-QTY.
             05 COLUMN 113        PIC ZZZZZZZ9.99 SUM TEMP-COST.

       PROCEDURE DIVISION.

           OPEN INPUT TEMP-FILE.
           OPEN OUTPUT REPORT-FILE.

           MOVE "20150225153000000000000" TO WS-CURRENT-DATE.

           INITIATE RPTA.

           PERFORM PROCESS-DETAIL-LEVEL-REPORT THRU PDLR-EXIT.

           TERMINATE RPTA.

           CLOSE TEMP-FILE.
           CLOSE REPORT-FILE.

           STOP RUN.


       PROCESS-DETAIL-LEVEL-REPORT.
           PERFORM READ-NEXT-TEMP-REC THRU RNTR-EXIT.

           IF TEMP-FILE-EOF EQUALS 1
              GO TO PDLR-EXIT
           END-IF.

           GENERATE RPTA-DETAIL-LINE.

           GO TO PROCESS-DETAIL-LEVEL-REPORT.

       PDLR-EXIT.
           EXIT.


       READ-NEXT-TEMP-REC.
           READ TEMP-FILE NEXT RECORD
             AT END
                MOVE 1 TO TEMP-FILE-EOF
           END-READ.

       RNTR-EXIT.
           EXIT.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:5049: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:5049"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:5049"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:5051: DD_TEMPFILE=./inp_data DD_REPORTFILE=./report.txt \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "DD_TEMPFILE=./inp_data DD_REPORTFILE=./report.txt $COBCRUN_DIRECT ./prog" "run_reportwriter.at:5051"
( $at_check_trace; DD_TEMPFILE=./inp_data DD_REPORTFILE=./report.txt $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:5051"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    1
Region:    MW
Location:            1000051
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150212   20150212                          OR150212          043  ITEM_NUMBER_22                   00000028         29.99
                                                                    Invoice Total:                  000000028         29.99

IN150222   20150222                          OR150226          020  ITEM_NUMBER_06                   00000043          9.99
                                                                    Invoice Total:                  000000043          9.99


                                                                    Branch Total:                   000000071         39.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    2
Region:    MW
Location:            1000071
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150214   20150214                          OR150212          057  ITEM_NUMBER_51                   00000070         59.99
                                                                    Invoice Total:                  000000070         59.99

IN150228   20150228                          OR150225          098  ITEM_NUMBER_92                   00000014         99.99
                                                                    Invoice Total:                  000000014         99.99


                                                                    Branch Total:                   000000084        159.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    3
Region:    MW
Location:            1000201
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150209   20150209                          OR150216          083  ITEM_NUMBER_77                   00000077         79.99
                                                                    Invoice Total:                  000000077         79.99

IN150227   20150227                          OR150223          079  ITEM_NUMBER_20                   00000096         29.99
                                                                    Invoice Total:                  000000096         29.99


                                                                    Branch Total:                   000000173        109.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    4
Region:    MW
Location:            1000291
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150217   20150217                          OR150218          088  ITEM_NUMBER_86                   00000019         89.99
                                                                    Invoice Total:                  000000019         89.99


                                                                    Branch Total:                   000000019         89.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    5
Region:    MW
Location:            1000411
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150223   20150223                          OR150210          063  ITEM_NUMBER_66                   00000088         69.99
                                                                    Invoice Total:                  000000088         69.99


                                                                    Branch Total:                   000000088         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    6
Region:    MW
Location:            1000451
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150217   20150217                          OR150202          053  ITEM_NUMBER_60                   00000051         69.99
                                                                    Invoice Total:                  000000051         69.99


                                                                    Branch Total:                   000000051         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    7
Region:    MW
Location:            1000471
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150224   20150224                          OR150201          036  ITEM_NUMBER_45                   00000038         49.99
                                                                    Invoice Total:                  000000038         49.99


                                                                    Branch Total:                   000000038         49.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    8
Region:    MW
Location:            1000831
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150210   20150210                          OR150227          042  ITEM_NUMBER_70                   00000072         79.99
                                                                    Invoice Total:                  000000072         79.99

IN150214   20150214                          OR150228          090  ITEM_NUMBER_07                   00000023          9.99
                                                                    Invoice Total:                  000000023          9.99

IN150220   20150220                          OR150226          048  ITEM_NUMBER_61                   00000059         69.99
                                                                    Invoice Total:                  000000059         69.99


                                                                    Branch Total:                   000000154        159.97










































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page    9
Region:    MW
Location:            1000891
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150221   20150221                          OR150219          018  ITEM_NUMBER_72                   00000073         79.99
                                                                    Invoice Total:                  000000073         79.99

IN150223   20150223                          OR150227          069  ITEM_NUMBER_73                   00000074         79.99
                                                                    Invoice Total:                  000000074         79.99


                                                                    Branch Total:                   000000147        159.98

                                                                    Region Total:                   000000825        909.85











































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   10
Region:    NE
Location:            1000001
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150210   20150210                          OR150217          060  ITEM_NUMBER_38                   00000098         39.99
                                                                    Invoice Total:                  000000098         39.99


                                                                    Branch Total:                   000000098         39.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   11
Region:    NE
Location:            1000201
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150219   20150219                          OR150209          035  ITEM_NUMBER_94                   00000096         99.99
                                                                    Invoice Total:                  000000096         99.99


                                                                    Branch Total:                   000000096         99.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   12
Region:    NE
Location:            1000431
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150215   20150215                          OR150227          047  ITEM_NUMBER_64                   00000087         69.99
                                                                    Invoice Total:                  000000087         69.99

IN150222   20150222                          OR150213          062  ITEM_NUMBER_97                   00000073         99.99
                                                                    Invoice Total:                  000000073         99.99


                                                                    Branch Total:                   000000160        169.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   13
Region:    NE
Location:            1000451
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150203   20150203                          OR150213          087  ITEM_NUMBER_85                   00000053         89.99
                                                                    Invoice Total:                  000000053         89.99


                                                                    Branch Total:                   000000053         89.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   14
Region:    NE
Location:            1000471
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150221   20150221                          OR150222          034  ITEM_NUMBER_74                   00000084         79.99
                                                               077  ITEM_NUMBER_78                   00000024         79.99
                                                                    Invoice Total:                  000000108        159.98


                                                                    Branch Total:                   000000108        159.98















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   15
Region:    NE
Location:            1000491
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150217   20150217                          OR150210          037  ITEM_NUMBER_17                   00000007         19.99
                                                                    Invoice Total:                  000000007         19.99


                                                                    Branch Total:                   000000007         19.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   16
Region:    NE
Location:            1000601
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150215   20150215                          OR150211          070  ITEM_NUMBER_06                   00000044          9.99
                                                                    Invoice Total:                  000000044          9.99


                                                                    Branch Total:                   000000044          9.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   17
Region:    NE
Location:            1000631
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150227   20150227                          OR150209          051  ITEM_NUMBER_09                   00000054          9.99
                                                                    Invoice Total:                  000000054          9.99


                                                                    Branch Total:                   000000054          9.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   18
Region:    NE
Location:            1000671
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150206   20150206                          OR150220          045  ITEM_NUMBER_56                   00000066         59.99
                                                                    Invoice Total:                  000000066         59.99


                                                                    Branch Total:                   000000066         59.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   19
Region:    NE
Location:            1000811
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150220   20150220                          OR150212          086  ITEM_NUMBER_27                   00000017         29.99
                                                                    Invoice Total:                  000000017         29.99

IN150228   20150228                          OR150222          075  ITEM_NUMBER_66                   00000086         69.99
                                                                    Invoice Total:                  000000086         69.99


                                                                    Branch Total:                   000000103         99.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   20
Region:    NE
Location:            1000831
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150216   20150216                          OR150224          004  ITEM_NUMBER_52                   00000042         59.99
                                                                    Invoice Total:                  000000042         59.99


                                                                    Branch Total:                   000000042         59.99

                                                                    Region Total:                   000000831        819.86














































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   21
Region:    NW
Location:            1000001
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150224   20150224                          OR150215          029  ITEM_NUMBER_79                   00000035         79.99
                                                                    Invoice Total:                  000000035         79.99


                                                                    Branch Total:                   000000035         79.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   22
Region:    NW
Location:            1000011
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150228   20150228                          OR150209          023  ITEM_NUMBER_62                   00000098         69.99
                                                                    Invoice Total:                  000000098         69.99


                                                                    Branch Total:                   000000098         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   23
Region:    NW
Location:            1000051
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150210   20150210                          OR150225          076  ITEM_NUMBER_50                   00000039         59.99
                                                                    Invoice Total:                  000000039         59.99

IN150218   20150218                          OR150229          093  ITEM_NUMBER_94                   00000037         99.99
                                                                    Invoice Total:                  000000037         99.99

IN150220   20150220                          OR150221          050  ITEM_NUMBER_89                   00000038         89.99
                                                                    Invoice Total:                  000000038         89.99


                                                                    Branch Total:                   000000114        249.97










































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   24
Region:    NW
Location:            1000071
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150202   20150202                          OR150223          014  ITEM_NUMBER_54                   00000048         59.99
                                                                    Invoice Total:                  000000048         59.99


                                                                    Branch Total:                   000000048         59.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   25
Region:    NW
Location:            1000091
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150208   20150208                          OR150229          094  ITEM_NUMBER_17                   00000072         19.99
                                                                    Invoice Total:                  000000072         19.99

IN150212   20150212                          OR150222          096  ITEM_NUMBER_89                   00000049         89.99
                                                                    Invoice Total:                  000000049         89.99

IN150224   20150224                          OR150211          074  ITEM_NUMBER_90                   00000043         99.99
                                                                    Invoice Total:                  000000043         99.99

IN150227   20150227                          OR150219          030  ITEM_NUMBER_12                   00000019         19.99
                                                                    Invoice Total:                  000000019         19.99


                                                                    Branch Total:                   000000183        229.96







































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   26
Region:    NW
Location:            1000201
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150208   20150208                          OR150210          061  ITEM_NUMBER_34                   00000012         39.99
                                                                    Invoice Total:                  000000012         39.99


                                                                    Branch Total:                   000000012         39.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   27
Region:    NW
Location:            1000231
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150214   20150214                          OR150210          044  ITEM_NUMBER_89                   00000054         89.99
                                                                    Invoice Total:                  000000054         89.99


                                                                    Branch Total:                   000000054         89.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   28
Region:    NW
Location:            1000251
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150212   20150212                          OR150204          059  ITEM_NUMBER_39                   00000060         39.99
                                                                    Invoice Total:                  000000060         39.99


                                                                    Branch Total:                   000000060         39.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   29
Region:    NW
Location:            1000401
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150215   20150215                          OR150222          049  ITEM_NUMBER_40                   00000081         49.99
                                                                    Invoice Total:                  000000081         49.99

IN150217   20150217                          OR150203          085  ITEM_NUMBER_77                   00000037         79.99
                                                                    Invoice Total:                  000000037         79.99


                                                                    Branch Total:                   000000118        129.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   30
Region:    NW
Location:            1000411
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150207   20150207                          OR150224          056  ITEM_NUMBER_99                   00000054         99.99
                                                                    Invoice Total:                  000000054         99.99

IN150228   20150228                          OR150221          008  ITEM_NUMBER_68                   00000090         69.99
                                                                    Invoice Total:                  000000090         69.99


                                                                    Branch Total:                   000000144        169.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   31
Region:    NW
Location:            1000491
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150228   20150228                          OR150201          002  ITEM_NUMBER_47                   00000086         49.99
                                                                    Invoice Total:                  000000086         49.99


                                                                    Branch Total:                   000000086         49.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   32
Region:    NW
Location:            1000611
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150227   20150227                          OR150224          097  ITEM_NUMBER_11                   00000080         19.99
                                                                    Invoice Total:                  000000080         19.99


                                                                    Branch Total:                   000000080         19.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   33
Region:    NW
Location:            1000631
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150207   20150207                          OR150206          031  ITEM_NUMBER_49                   00000015         49.99
                                                                    Invoice Total:                  000000015         49.99

IN150214   20150214                          OR150210          054  ITEM_NUMBER_40                   00000042         49.99
                                                                    Invoice Total:                  000000042         49.99

IN150224   20150224                          OR150218          024  ITEM_NUMBER_84                   00000033         89.99
                                                                    Invoice Total:                  000000033         89.99


                                                                    Branch Total:                   000000090        189.97










































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   34
Region:    NW
Location:            1000651
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150206   20150206                          OR150225          099  ITEM_NUMBER_57                   00000043         59.99
                                                                    Invoice Total:                  000000043         59.99


                                                                    Branch Total:                   000000043         59.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   35
Region:    NW
Location:            1000671
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150213   20150213                          OR150224          041  ITEM_NUMBER_22                   00000002         29.99
                                                                    Invoice Total:                  000000002         29.99


                                                                    Branch Total:                   000000002         29.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   36
Region:    NW
Location:            1000691
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150204   20150204                          OR150211          092  ITEM_NUMBER_13                   00000094         19.99
                                                                    Invoice Total:                  000000094         19.99


                                                                    Branch Total:                   000000094         19.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   37
Region:    NW
Location:            1000811
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150227   20150227                          OR150217          081  ITEM_NUMBER_45                   00000016         49.99
                                                                    Invoice Total:                  000000016         49.99


                                                                    Branch Total:                   000000016         49.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   38
Region:    NW
Location:            1000851
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150208   20150208                          OR150203          091  ITEM_NUMBER_63                   00000066         69.99
                                                                    Invoice Total:                  000000066         69.99


                                                                    Branch Total:                   000000066         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   39
Region:    NW
Location:            1000871
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150218   20150218                          OR150209          082  ITEM_NUMBER_30                   00000055         39.99
                                                                    Invoice Total:                  000000055         39.99

IN150228   20150228                          OR150222          015  ITEM_NUMBER_73                   00000051         79.99
                                                                    Invoice Total:                  000000051         79.99


                                                                    Branch Total:                   000000106        119.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   40
Region:    NW
Location:            1000891
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150225   20150225                          OR150201          026  ITEM_NUMBER_80                   00000047         89.99
                                                                    Invoice Total:                  000000047         89.99


                                                                    Branch Total:                   000000047         89.99

                                                                    Region Total:                   000001496       1859.70














































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   41
Region:    SE
Location:            1000001
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150223   20150223                          OR150203          064  ITEM_NUMBER_03                   00000071          9.99
                                                                    Invoice Total:                  000000071          9.99


                                                                    Branch Total:                   000000071          9.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   42
Region:    SE
Location:            1000011
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150201   20150201                          OR150213          017  ITEM_NUMBER_09                   00000006          9.99
                                                                    Invoice Total:                  000000006          9.99

IN150212   20150212                          OR150209          066  ITEM_NUMBER_06                   00000040          9.99
                                                                    Invoice Total:                  000000040          9.99


                                                                    Branch Total:                   000000046         19.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   43
Region:    SE
Location:            1000091
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150204   20150204                          OR150201          001  ITEM_NUMBER_68                   00000019         69.99
                                                                    Invoice Total:                  000000019         69.99

IN150210   20150210                          OR150223          084  ITEM_NUMBER_11                   00000093         19.99
                                                                    Invoice Total:                  000000093         19.99

IN150226   20150226                          OR150219          038  ITEM_NUMBER_97                   00000037         99.99
                                                                    Invoice Total:                  000000037         99.99


                                                                    Branch Total:                   000000149        189.97










































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   44
Region:    SE
Location:            1000211
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150206   20150206                          OR150221          089  ITEM_NUMBER_05                   00000045          9.99
                                                                    Invoice Total:                  000000045          9.99


                                                                    Branch Total:                   000000045          9.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   45
Region:    SE
Location:            1000411
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150212   20150212                          OR150208          012  ITEM_NUMBER_46                   00000023         49.99
                                                                    Invoice Total:                  000000023         49.99


                                                                    Branch Total:                   000000023         49.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   46
Region:    SE
Location:            1000431
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150207   20150207                          OR150214          072  ITEM_NUMBER_25                   00000046         29.99
                                                                    Invoice Total:                  000000046         29.99

IN150225   20150225                          OR150220          040  ITEM_NUMBER_01                   00000061          9.99
                                                                    Invoice Total:                  000000061          9.99


                                                                    Branch Total:                   000000107         39.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   47
Region:    SE
Location:            1000451
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150214   20150214                          OR150204          022  ITEM_NUMBER_34                   00000047         39.99
                                                                    Invoice Total:                  000000047         39.99


                                                                    Branch Total:                   000000047         39.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   48
Region:    SE
Location:            1000471
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150203   20150203                          OR150217          010  ITEM_NUMBER_25                   00000034         29.99
                                                                    Invoice Total:                  000000034         29.99

IN150211   20150211                          OR150213          025  ITEM_NUMBER_54                   00000092         59.99
                                                                    Invoice Total:                  000000092         59.99


                                                                    Branch Total:                   000000126         89.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   49
Region:    SE
Location:            1000491
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150202   20150202                          OR150202          013  ITEM_NUMBER_19                   00000078         19.99
                                                                    Invoice Total:                  000000078         19.99


                                                                    Branch Total:                   000000078         19.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   50
Region:    SE
Location:            1000601
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150224   20150224                          OR150210          039  ITEM_NUMBER_19                   00000056         19.99
                                                                    Invoice Total:                  000000056         19.99


                                                                    Branch Total:                   000000056         19.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   51
Region:    SE
Location:            1000631
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150201   20150201                          OR150216          003  ITEM_NUMBER_65                   00000011         69.99
                                                                    Invoice Total:                  000000011         69.99


                                                                    Branch Total:                   000000011         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   52
Region:    SE
Location:            1000671
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150203   20150203                          OR150205          071  ITEM_NUMBER_64                   00000094         69.99
                                                                    Invoice Total:                  000000094         69.99

IN150220   20150220                          OR150214          032  ITEM_NUMBER_53                   00000059         59.99
                                                                    Invoice Total:                  000000059         59.99


                                                                    Branch Total:                   000000153        129.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   53
Region:    SE
Location:            1000891
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150226   20150226                          OR150229          068  ITEM_NUMBER_75                   00000084         79.99
                                                                    Invoice Total:                  000000084         79.99


                                                                    Branch Total:                   000000084         79.99

                                                                    Region Total:                   000000996        769.81














































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   54
Region:    SW
Location:            1000011
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150202   20150202                          OR150206          000  ITEM_NUMBER_30                   00000059         39.99
                                                                    Invoice Total:                  000000059         39.99


                                                                    Branch Total:                   000000059         39.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   55
Region:    SW
Location:            1000031
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150203   20150203                          OR150214          033  ITEM_NUMBER_09                   00000060          9.99
                                                                    Invoice Total:                  000000060          9.99

IN150206   20150206                          OR150206          021  ITEM_NUMBER_91                   00000054         99.99
                                                                    Invoice Total:                  000000054         99.99


                                                                    Branch Total:                   000000114        109.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   56
Region:    SW
Location:            1000091
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150223   20150223                          OR150221          028  ITEM_NUMBER_67                   00000039         69.99
                                                                    Invoice Total:                  000000039         69.99


                                                                    Branch Total:                   000000039         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   57
Region:    SW
Location:            1000201
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150209   20150209                          OR150205          065  ITEM_NUMBER_21                   00000070         29.99
                                                                    Invoice Total:                  000000070         29.99

IN150225   20150225                          OR150203          052  ITEM_NUMBER_55                   00000075         59.99
                                                               067  ITEM_NUMBER_83                   00000015         89.99
                                                                    Invoice Total:                  000000090        149.98


                                                                    Branch Total:                   000000160        179.97












































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   58
Region:    SW
Location:            1000211
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150202   20150202                          OR150221          055  ITEM_NUMBER_16                   00000013         19.99
                                                                    Invoice Total:                  000000013         19.99

IN150208   20150208                          OR150215          007  ITEM_NUMBER_97                   00000089         99.99
                                                                    Invoice Total:                  000000089         99.99


                                                                    Branch Total:                   000000102        119.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   59
Region:    SW
Location:            1000271
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150211   20150211                          OR150228          080  ITEM_NUMBER_45                   00000052         49.99
                                                                    Invoice Total:                  000000052         49.99

IN150213   20150213                          OR150207          095  ITEM_NUMBER_09                   00000054          9.99
                                                                    Invoice Total:                  000000054          9.99


                                                                    Branch Total:                   000000106         59.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   60
Region:    SW
Location:            1000401
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150228   20150228                          OR150202          027  ITEM_NUMBER_83                   00000001         89.99
                                                                    Invoice Total:                  000000001         89.99


                                                                    Branch Total:                   000000001         89.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   61
Region:    SW
Location:            1000411
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150210   20150210                          OR150220          073  ITEM_NUMBER_63                   00000014         69.99
                                                                    Invoice Total:                  000000014         69.99


                                                                    Branch Total:                   000000014         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   62
Region:    SW
Location:            1000431
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150208   20150208                          OR150227          078  ITEM_NUMBER_23                   00000052         29.99
                                                                    Invoice Total:                  000000052         29.99

IN150220   20150220                          OR150227          006  ITEM_NUMBER_50                   00000085         59.99
                                                                    Invoice Total:                  000000085         59.99


                                                                    Branch Total:                   000000137         89.98













































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   63
Region:    SW
Location:            1000601
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150206   20150206                          OR150201          011  ITEM_NUMBER_73                   00000084         79.99
                                                                    Invoice Total:                  000000084         79.99


                                                                    Branch Total:                   000000084         79.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   64
Region:    SW
Location:            1000611
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150206   20150206                          OR150218          019  ITEM_NUMBER_67                   00000061         69.99
                                                                    Invoice Total:                  000000061         69.99


                                                                    Branch Total:                   000000061         69.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   65
Region:    SW
Location:            1000651
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150209   20150209                          OR150224          009  ITEM_NUMBER_23                   00000018         29.99
                                                                    Invoice Total:                  000000018         29.99


                                                                    Branch Total:                   000000018         29.99
















































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   66
Region:    SW
Location:            1000831
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150201   20150201                          OR150221          046  ITEM_NUMBER_44                   00000069         49.99
                                                                    Invoice Total:                  000000069         49.99

IN150220   20150220                          OR150213          005  ITEM_NUMBER_44                   00000037         49.99
                                                                    Invoice Total:                  000000037         49.99

IN150222   20150222                          OR150213          058  ITEM_NUMBER_86                   00000083         89.99
                                                                    Invoice Total:                  000000083         89.99


                                                                    Branch Total:                   000000189        189.97










































Run:02/25/2015 153000                  NEXT PAGE ISSUE      Page   67
Region:    SW
Location:            1000871
Invoice#   Date                              Order#          Line#  Item#                            TX Qty      Cost
--------------------------------------------------------------------------------------------------------------------------------


IN150202   20150202                          OR150216          016  ITEM_NUMBER_62                   00000083         69.99
                                                                    Invoice Total:                  000000083         69.99

                                                                    Branch Total:                   000000083         69.99

                                                                    Region Total:                   000001167       1269.78

                                                                    Grand Total:                    000005315       5629.00













































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9078: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:9078"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9078"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_978
#AT_START_979
at_fn_group_banner 979 'run_reportwriter.at:9083' \
  "Report PRESENT AFTER" "                           " 4
at_xfail=no
(
  $as_echo "979. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >inp_data <<'_ATEOF'
SAINATH KOTGIRE          30/03/201611029473  20 00100000                          00000100
UDAY PRATIVADI           30/03/201604547552  20 00100000                          00000200
MILIND PARDESHI          30/03/201611256856  20 00100000                          00000300
AJIT PATIL               30/03/201610503086  20 00000500                          00000400
VINOD KAMBLE             30/03/201615487558  20 00100000                          00000500
SACHIN TENDUNLKAR        30/03/201614645425  20 00500000                          00000600
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.

           SELECT IN-FILE   ASSIGN TO EXTERNAL INFILE
                  LINE SEQUENTIAL
                  FILE STATUS IS WS-INPUT-STATUS.

           SELECT OUT-FILE  ASSIGN TO EXTERNAL OREPORT
                  LINE SEQUENTIAL
                  FILE STATUS IS WS-OUTPUT-STATUS.

       DATA DIVISION.

       FILE SECTION.

       FD  IN-FILE
           RECORDING MODE IS F
           BLOCK 0.

       01  IN-REC.
           05 IN-EMP-NAME                  PIC X(25).
           05 IN-REPORT-PERIOD             PIC X(10).
           05 IN-EMP-USERID                PIC X(10).
           05 IN-BILL-DAYS                 PIC X(3).
           05 IN-SALARY                    PIC 9(8).
           05 FILLER                       PIC X(34).

       FD  OUT-FILE
           RECORDING MODE IS F
           REPORT IS REPORT1.

       01  REP-REC                         PIC X(100).

       WORKING-STORAGE SECTION.
       01  WS-FILE-FLAGS.
           05 WS-INPUT-STATUS              PIC XX.
              88  WS-INPUT-OK                        VALUE '00'.
              88  WS-INPUT-EOF                       VALUE '10'.
           05 WS-OUTPUT-STATUS             PIC XX.
              88  WS-OUTPUT-OK                       VALUE '00'.
      *-----------------------------------------------------------*
      * MISCELLANOUS FIELDS                                       *
      *-----------------------------------------------------------*
       01  WS-MISC.
           05 WS-EMP-NAME                  PIC X(25).
           05 WS-REPORT-PERIOD             PIC X(10).
           05 WS-EMP-USERID                PIC X(10).
           05 WS-BILL-DAYS                 PIC X(3).
           05 WS-SALARY                    PIC 9(8).

       01  WS-MISC-DATE.
           05 WS-DATE                      PIC 9(8) VALUE 20160422.
           05 WS-TIME                      PIC 9(8) VALUE 10550000.
           05 FILLER REDEFINES WS-TIME.
              10 WS-HH                     PIC 99.
              10 WS-MI                     PIC 99.
              10 WS-SS                     PIC 99.
              10 WS-HU                     PIC 99.

       REPORT SECTION.

       RD REPORT1
          PAGE LIMIT IS 65 LINES
          LINE LIMIT 132
          HEADING 1
          CONTROL ARE WS-SALARY.

       01  MAIN-HEADER TYPE IS PAGE HEADING.
           05 LINE 1.
              10 COLUMN CENTER 45  PIC X(35)  VALUE
                 'STARK TECHNOLOGIES MONTHLY REPORT'.

           05 LINE 2.
              10 COLUMN CENTER 45  PIC X(50)  VALUE ALL '-'.

           05 LINE 3.
              10 COLUMN 02  PIC X(14)  VALUE 'REPORT PERIOD:'.
              10 COLUMN 20  PIC 9999/99/99 SOURCE WS-DATE.
              10 COLUMN 32  PIC 99    SOURCE WS-HH.
              10 COLUMN 34  PIC X     VALUE ':'.
              10 COLUMN 35  PIC 99    SOURCE WS-MI.

       01  TYPE IS CONTROL HEADING
                FOR WS-SALARY OR PAGE.
           05 LINE PLUS 2 PRESENT AFTER NEW WS-SALARY.
              10 COLUMN 6   PIC X(9)   VALUE 'EMP NAME:'.
              10 COLUMN 30  PIC X(13)  VALUE 'EMP USERID:'.
              10 COLUMN 60  PIC X(13)  VALUE 'BILLING DAYS'.
              10 COLUMN 80  PIC X(15)  VALUE 'SALARY CREDITED'.
           05 LINE PLUS 1 PRESENT AFTER NEW WS-SALARY.
              10 COLUMN 2   PIC X(100)  VALUE ALL '+'.

       01  DETAIL-1 TYPE DETAIL.
           05 LINE PLUS 1.
              10 COLUMN 6   PIC X(25)  SOURCE WS-EMP-NAME.
              10 COLUMN 30  PIC X(08)  SOURCE WS-EMP-USERID.
              10 COLUMN 60  PIC X(3)   SOURCE WS-BILL-DAYS.
              10 COLUMN 80  PIC Z(7)9  SOURCE WS-SALARY.

       01  REP-FOOTER TYPE DETAIL.
           05 LINE PLUS 2.
              10 COLUMN 2   PIC X(100) VALUE ALL '*'.
           05 LINE PLUS 1.
              10 COLUMN 30  PIC X(23)  VALUE 'END OF SALARY REPORT'.
           05 LINE PLUS 1.
              10 COLUMN 2   PIC X(100) VALUE ALL '*'.

       PROCEDURE DIVISION.

      *    ACCEPT WS-DATE FROM DATE YYYYMMDD.
      *    ACCEPT WS-TIME FROM TIME.

           INITIATE REPORT1

      *    GENERATE MAIN-HEADER

           PERFORM 100-OPEN-FILES
           PERFORM 200-MAIN-PROCESS

           TERMINATE REPORT1

           CLOSE IN-FILE
           CLOSE OUT-FILE
           STOP RUN.

       100-OPEN-FILES.

           OPEN INPUT IN-FILE

           IF WS-INPUT-OK
              CONTINUE
           ELSE
              DISPLAY 'ERROR OPENING INFILE FILE.STATUS = '
                     WS-INPUT-STATUS
              STOP RUN
           END-IF

           OPEN OUTPUT OUT-FILE

           IF WS-OUTPUT-OK
              INITIALIZE REP-REC
           ELSE
              DISPLAY 'ERROR OPENING OREPORT FILE.STATUS = '
                     WS-OUTPUT-STATUS
              STOP RUN
           END-IF.

       200-MAIN-PROCESS.
      *    GENERATE HEADER-1

           PERFORM UNTIL WS-INPUT-EOF
               READ IN-FILE
               MOVE IN-REC  TO WS-MISC
               EVALUATE WS-INPUT-STATUS
                 WHEN '00'
                   GENERATE DETAIL-1
                 WHEN '10'
                   GENERATE REP-FOOTER
                 WHEN OTHER
                   DISPLAY ':ERROR READING INFILE FILE.STATUS = '
                           WS-INPUT-STATUS
                   STOP RUN
               END-EVALUATE
           END-PERFORM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9265: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:9265"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9265"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9267: DD_INFILE=./inp_data DD_OREPORT=./report.txt \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_reportwriter.at:9267"
( $at_check_trace; DD_INFILE=./inp_data DD_OREPORT=./report.txt \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9267"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
                           STARK TECHNOLOGIES MONTHLY REPORT
                    --------------------------------------------------
 REPORT PERIOD:    2016/04/22  10:55

     EMP NAME:               EMP USERID:                   BILLING DAYS        SALARY CREDITED
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
     SAINATH KOTGIRE         11029473                      20                    100000
     UDAY PRATIVADI          04547552                      20                    100000
     MILIND PARDESHI         11256856                      20                    100000

     EMP NAME:               EMP USERID:                   BILLING DAYS        SALARY CREDITED
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
     AJIT PATIL              10503086                      20                       500

     EMP NAME:               EMP USERID:                   BILLING DAYS        SALARY CREDITED
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
     VINOD KAMBLE            15487558                      20                    100000

     EMP NAME:               EMP USERID:                   BILLING DAYS        SALARY CREDITED
 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
     SACHIN TENDUNLKAR       14645425                      20                    500000

 ****************************************************************************************************
                             END OF SALARY REPORT
 ****************************************************************************************************








































_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9340: diff reference report.txt"
at_fn_check_prepare_trace "run_reportwriter.at:9340"
( $at_check_trace; diff reference report.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9340"
$at_failed && at_fn_log_failure  \
"report.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_979
#AT_START_980
at_fn_group_banner 980 'run_reportwriter.at:9345' \
  "Varying and Nested OCCURS" "                      " 4
at_xfail=yes
(
  $as_echo "980. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME - needs bigger changes -> 4.x


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
            SELECT RP-FILE
            ASSIGN TO "PRINTOUT"
            ORGANIZATION LINE SEQUENTIAL.

       DATA DIVISION.
       FILE SECTION.
       FD  RP-FILE REPORT RP.

       WORKING-STORAGE SECTION.
       77  RPT       PIC 99 VALUE 1.
       77  NUM       PIC 9 VALUE 0.
       77  TAG1V     PIC X(5) VALUE "Tag1".
       77  TAG2V     PIC X(5) VALUE "Tag2".
       01  MARKX     PIC X(16) VALUE
                "<1> <2> <3> <4> ".
       01  FILLER REDEFINES MARKX.
           05  MARKIT  PIC X(4) OCCURS 4 TIMES.
       01  DIGX      PIC X(50) VALUE
                "123456789b123456789c123456789d123456789e123456789f".
       01  FILLER REDEFINES DIGX.
           05  DIGS  PIC X(10) OCCURS 5 TIMES.

       REPORT SECTION.
       RD  RP
           CODE IS "VarQ: "
           PAGE LIMIT 10 LINES
                      60 COLUMNS
           HEADING 1
           FIRST DETAIL 4.
       01 HEADING-LINE.
          02  TYPE PAGE HEADING LINE PLUS 1.
            05  COLUMN 1      PIC X(50) VALUE
                "H        1         2         3         4         5".
            05                PIC X(7) VALUE "  Page".
            05                PIC ZZ9  SOURCE PAGE-COUNTER.
          02  TYPE PAGE HEADING LINE PLUS 1.
      *     05  COLUMN 1      PIC X(50) VALUE
      *         "12345678901234567890123456789012345678901234567890".
            05  COLUMN 1      OCCURS 5 TIMES
                  VARYING IX1 FROM 1 BY 1.
                10  H2-DIGS   PIC X(10) SOURCE DIGS (IX1).

       01  RP-DTL1 TYPE DETAIL, LINE + 2.
            03  NUMS  COLUMN 1   PIC 999 OCCURS 3 TIMES STEP 10.
            03  MARK  COLUMN + 2 PIC X(4) SOURCE MARKIT(1).

       01  RP-DTL2 TYPE DETAIL, LINE + 1.
            03  GRPS  COLUMN 1 OCCURS 3 TIMES VARYING IX1 FROM 1.
               05  TAG1        PIC X(5) SOURCE TAG1V.
               05  FILLER      PIC X.
               05  DTL2        OCCURS 3 TIMES VARYING IX2.
                  10  DTL2X    PIC X SOURCE DIGX (IX1:1).
               05  FILLER      PIC X.
               05  TAG2        PIC X(5) SOURCE TAG2V.
               05  FILLER      PIC X.
            03  MRK2  COLUMN + 3    PIC X(4) SOURCE MARKIT(2).

       01  RP-DTL3 TYPE DETAIL, LINE + 1.
            03  NNNS  COLUMN 1, 11, 21, 27 PIC 999.
            03  MRK3  COLUMN PLUS 3 PIC X(4) SOURCE MARKIT(3).

       01  RP-DTL4 TYPE DETAIL, LINE + 1.
            03  NUM4A               PIC 999.
            03  FILLER              PIC X.
            03  NUM4B COLUMN PLUS 7 PIC 999 OCCURS 3 STEP 6.
            03  MRK4  COLUMN + 4    PIC X(4) SOURCE MARKIT(4).

       PROCEDURE DIVISION.
       DECLARATIVES.
       BEFORE-DETAIL SECTION.
           USE BEFORE REPORTING RP-DTL2.
       DOIT-1.
           ADD 1 TO NUM
           DISPLAY "Hello World " NUM
           MOVE '$' TO DTL2 (2, 2).
       END DECLARATIVES.

           OPEN OUTPUT RP-FILE
           INITIATE RP

           MOVE 149 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
           MOVE 100 TO NUMS (1), NUMS (2), NUMS (3)

           PERFORM VARYING RPT FROM 1 BY 1
                     UNTIL RPT > 4
               GENERATE RP-DTL1

               PERFORM DOIT-NOW
               GENERATE RP-DTL2

               MOVE 200 TO NNNS (1), NNNS (2), NNNS (3) NNNS (4)
               GENERATE RP-DTL3

               MOVE 400 TO NUM4A
               MOVE 401 TO NUM4B (1)
               MOVE 402 TO NUM4B (2)
               MOVE 403 TO NUM4B (3)
               GENERATE RP-DTL4
           END-PERFORM.

           TERMINATE rp.
           CLOSE RP-FILE.

           STOP RUN.

       DOIT-NOW.
           MOVE ALL '*' TO GRPS(1), GRPS(2), GRPS(3)
           MOVE "WAG1" TO TAG1 (1), TAG1 (2), TAG1 (3)
           MOVE "WAG2" TO TAG2 (1), TAG2 (2), TAG2 (3).
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9469: \$COMPILE -std=cobol2002 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2002 prog.cob" "run_reportwriter.at:9469"
( $at_check_trace; $COMPILE -std=cobol2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9469"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9471: PRINTOUT=tstdmrp.txt \\
\$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'an embedded newline' "run_reportwriter.at:9471"
( $at_check_trace; PRINTOUT=tstdmrp.txt \
$COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello World 1
Hello World 2
Hello World 3
Hello World 4
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9471"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
VarQ: H        1         2         3         4         5  Page   1
VarQ: 123456789b123456789c123456789d123456789e123456789f
VarQ:
VarQ: 100       100       100        <1>
VarQ: Tag1 *123*Tag2 *Tag1 *123*Tag2 *Tag1 *123*Tag2 *  <2>
VarQ: 200       200       200   200  <3>
VarQ: 400       401   402   403      <4>
VarQ:
VarQ:                                <1>
VarQ: Tag1 *123*Tag2 *Tag1 *123*Tag2 *Tag1 *123*Tag2 *  <2>
VarQ: H        1         2         3         4         5  Page   2
VarQ: 123456789b123456789c123456789d123456789e123456789f
VarQ:
VarQ: 200       200       200   200  <3>
VarQ: 400       401   402   403      <4>
VarQ:
VarQ:                                <1>
VarQ: Tag1 *123*Tag2 *Tag1 *123*Tag2 *Tag1 *123*Tag2 *  <2>
VarQ: 200       200       200   200  <3>
VarQ: 400       401   402   403      <4>
VarQ: H        1         2         3         4         5  Page   3
VarQ: 123456789b123456789c123456789d123456789e123456789f
VarQ:
VarQ:                                <1>
VarQ: Tag1 *123*Tag2 *Tag1 *123*Tag2 *Tag1 *123*Tag2 *  <2>
VarQ: 200       200       200   200  <3>
VarQ: 400       401   402   403      <4>
VarQ:
VarQ:
VarQ:
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9514: diff reference tstdmrp.txt"
at_fn_check_prepare_trace "run_reportwriter.at:9514"
( $at_check_trace; diff reference tstdmrp.txt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9514"
$at_failed && at_fn_log_failure  \
"tstdmrp.txt"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_980
#AT_START_981
at_fn_group_banner 981 'run_reportwriter.at:9519' \
  "BEFORE REPORTING" "                               " 4
at_xfail=no
(
  $as_echo "981. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT    DIVISION.
       CONFIGURATION  SECTION.
       INPUT-OUTPUT   SECTION.
       FILE-CONTROL.

       SELECT PRINT-FILE ASSIGN TO "SUM.TXT"
             ORGANIZATION IS LINE SEQUENTIAL.

       DATA          DIVISION.
       FILE          SECTION.
       FD  PRINT-FILE
           REPORT IS REPORT-1.
      *> --------------------------------------------------------------
       WORKING-STORAGE SECTION.
      *>---------------------------------------------------------------

       01   WS-IN-REC.

                05  WS-STUDENT-NAME           PIC  X(8).
                05  WS-BOOK-PAY               PIC  999V99.
                05  WS-TUTION-PAY             PIC  999V99.
                05  WS-TRANSPORT-PAY          PIC  999V99.

      *>===============================================================
          REPORT  SECTION.

           RD  REPORT-1
               CONTROLS ARE     FINAL
               PAGE     LIMIT   IS 21
               LINE     LIMIT   IS 71
               FIRST    DETAIL  IS 08
               LAST     DETAIL  IS 18
               FOOTING          IS 20
              .
      *>---------------------------------------------------------------
           01  PAGE-HEADING
               TYPE PAGE HEADING.
               02 LINE 01.
                  03 COLUMN 1        VALUE "PAGE HEADING".

           01  REPORT-LINE
               TYPE DETAIL.
               02 LINE PLUS 1.
                03 COLUMN 1        PIC X(13)     VALUE "Detail:".
                03 COLUMN 36       PIC $999.99 SOURCE WS-TUTION-PAY.
                03 COLUMN 47       PIC $999.99 SOURCE WS-BOOK-PAY.
                03 COLUMN 58       PIC $999.99 SOURCE WS-TRANSPORT-PAY.

          01 FINAL-FOOTING TYPE CONTROL FOOTING FINAL.

             02 LINE PLUS 1.
               03 COLUMN 1          PIC X(13)     VALUE "TOTALS     :".
               03 FSM-1 COLUMN 34   PIC $9(5).99  SUM WS-TUTION-PAY.
               03 FSM-2 COLUMN 45   PIC $9(5).99  SUM WS-BOOK-PAY.
               03 FSM-3 COLUMN 56   PIC $9(5).99  SUM WS-TRANSPORT-PAY.


       PROCEDURE DIVISION.
       DECLARATIVES.

       BEFORE-DETAIL1  SECTION.
           USE BEFORE REPORTING REPORT-LINE.

           DISPLAY "BEFORE DETAIL - SHOULD DISPLAY"
           DISPLAY "==============================".

       BEFORE-FINAL1   SECTION.
           USE BEFORE REPORTING FINAL-FOOTING.

       CALC-GRAND-SUM-AND-AVERAGE.

           DISPLAY "BEFORE FINAL - SHOULD DISPLAY".
       END DECLARATIVES.


           OPEN OUTPUT PRINT-FILE

           INITIATE REPORT-1

           MOVE 105 TO WS-TRANSPORT-PAY, WS-BOOK-PAY, WS-TUTION-PAY.
           GENERATE REPORT-LINE

           MOVE 106 TO WS-TRANSPORT-PAY, WS-BOOK-PAY, WS-TUTION-PAY.
           GENERATE REPORT-LINE

           TERMINATE REPORT-1

           CLOSE PRINT-FILE.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9617: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_reportwriter.at:9617"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9617"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_reportwriter.at:9619: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_reportwriter.at:9619"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "BEFORE DETAIL - SHOULD DISPLAY
==============================
BEFORE DETAIL - SHOULD DISPLAY
==============================
BEFORE FINAL - SHOULD DISPLAY
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_reportwriter.at:9619"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_981
#AT_START_982
at_fn_group_banner 982 'run_returncode.at:23' \
  "RETURN-CODE moving" "                             " 4
at_xfail=no
(
  $as_echo "982. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 I             PIC 99 COMP.
       PROCEDURE        DIVISION.
           INITIALIZE RETURN-CODE.
           MOVE ZERO TO RETURN-CODE.
           MOVE 1 TO RETURN-CODE.
           MOVE RETURN-CODE TO I.
           IF I NOT = 1
              DISPLAY I NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_returncode.at:44: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_returncode.at:44"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_returncode.at:45: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_returncode.at:45"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_returncode.at:45"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_982
#AT_START_983
at_fn_group_banner 983 'run_returncode.at:49' \
  "RETURN-CODE passing" "                            " 4
at_xfail=no
(
  $as_echo "983. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >mod1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      mod1.
       PROCEDURE        DIVISION.
           IF RETURN-CODE NOT = 0
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           MOVE 1 TO RETURN-CODE.
           IF RETURN-CODE NOT = 1
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           EXIT PROGRAM.
_ATEOF


cat >mod2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      mod2.
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           CALL "mod1"
           END-CALL.
           IF RETURN-CODE NOT = 1
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           CALL "mod2"
           END-CALL.
           IF RETURN-CODE NOT = 0
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_returncode.at:94: \$COMPILE_MODULE mod1.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE mod1.cob" "run_returncode.at:94"
( $at_check_trace; $COMPILE_MODULE mod1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:94"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_returncode.at:95: \$COMPILE_MODULE mod2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE mod2.cob" "run_returncode.at:95"
( $at_check_trace; $COMPILE_MODULE mod2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:95"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_returncode.at:96: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_returncode.at:96"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:96"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_returncode.at:97: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_returncode.at:97"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_983
#AT_START_984
at_fn_group_banner 984 'run_returncode.at:101' \
  "RETURN-CODE nested" "                             " 4
at_xfail=no
(
  $as_echo "984. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           MOVE 1 TO RETURN-CODE.
           IF RETURN-CODE NOT = 1
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           CALL "mod1"
           END-CALL.
           IF RETURN-CODE NOT = 2
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           MOVE ZERO TO RETURN-CODE.
           STOP RUN.
       PROGRAM-ID.      mod1.
       PROCEDURE        DIVISION.
           IF RETURN-CODE NOT = 1
              DISPLAY RETURN-CODE NO ADVANCING
              END-DISPLAY
           END-IF.
           MOVE 2 TO RETURN-CODE.
           EXIT PROGRAM.
       END PROGRAM mod1.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_returncode.at:133: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_returncode.at:133"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:133"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_returncode.at:134: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_returncode.at:134"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_returncode.at:134"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_984
#AT_START_985
at_fn_group_banner 985 'run_functions.at:24' \
  "FUNCTION ABS" "                                   " 4
at_xfail=no
(
  $as_echo "985. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   S9(4)V9(4) VALUE -1.2345.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION ABS ( X ) NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:39: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:39"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:39"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:40: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:40"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+0001.2345" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:40"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_985
#AT_START_986
at_fn_group_banner 986 'run_functions.at:46' \
  "FUNCTION ACOS" "                                  " 4
at_xfail=no
(
  $as_echo "986. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z   PIC   S9V9(35).
       01  P   PIC   S9V9(35) PACKED-DECIMAL.
       01  S   PIC    9V9(35) COMP-6.
      *01  N   PIC   S9V9(35) COMP-5.  big binary support pending
       PROCEDURE        DIVISION.
           MOVE FUNCTION ACOS ( -0.2345 ) TO Z.
           IF Z NOT = 1.80750052110824343510150043852321026
              DISPLAY "DISPLAY: " Z.
           MOVE FUNCTION ACOS ( -0.2345 ) TO P.
           IF P NOT = 1.80750052110824343510150043852321026
              DISPLAY "PACKED: " P.
           MOVE FUNCTION ACOS ( -0.2345 ) TO S.
           IF S NOT = 1.80750052110824343510150043852321026
              DISPLAY "COMP-6: " S.
      *    MOVE FUNCTION ACOS ( -0.2345 ) TO N.
      *    IF N NOT = 1.80750052110824343510150043852321026
      *       DISPLAY "PACKED: " N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:74: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:74"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:74"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:75: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:75"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:75"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_986
#AT_START_987
at_fn_group_banner 987 'run_functions.at:80' \
  "FUNCTION ANNUITY" "                               " 4
at_xfail=no
(
  $as_echo "987. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION ANNUITY ( 3, 5 ) TO Z.
           IF Z NOT = 3.00293255131964809384164222873900293
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:96: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:96"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:96"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:97: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:97"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:97"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_987
#AT_START_988
at_fn_group_banner 988 'run_functions.at:102' \
  "FUNCTION ASIN" "                                  " 4
at_xfail=no
(
  $as_echo "988. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       01  P   PIC   S9V9(35) PACKED-DECIMAL.
       01  S   PIC    9V9(35) COMP-6.
      *>01  N   PIC   S9V9(35) COMP-5.  big binary support pending
       PROCEDURE        DIVISION.
           MOVE FUNCTION ASIN ( -0.2345 ) TO Y.
           IF Y NOT = -0.23670419431334681587017874688345882
              DISPLAY "DISPLAY: " Y.
           MOVE FUNCTION ASIN ( -0.2345 ) TO P.
           IF P NOT = -0.23670419431334681587017874688345882
              DISPLAY "PACKED:  " P.
           MOVE FUNCTION ASIN ( -0.2345 ) TO S.
           IF S NOT = 0.23670419431334681587017874688345882
              DISPLAY "COMP-6:  " S.
      *>    MOVE FUNCTION ASIN ( -0.2345 ) TO N.
      *>    IF N NOT = -0.23670419431334681587017874688345882
      *>       DISPLAY "DISPLAY: " N.
      *>   cheating: we compare a huge internal field
      *>             (96 digits) here for the testsuite
           IF FUNCTION ASIN ( -00000.2345 ) NOT =
              FUNCTION ASIN ( -.234500000 )
              DISPLAY "ASIN IS NOT ITSELF".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:135: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:135"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:135"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:136: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:136"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:136"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_988
#AT_START_989
at_fn_group_banner 989 'run_functions.at:141' \
  "FUNCTION ATAN" "                                  " 4
at_xfail=no
(
  $as_echo "989. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION ATAN ( 1 ) TO Y.
           IF Y NOT = 0.78539816339744830961566084581987572
              DISPLAY Y
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:159: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:159"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:159"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:160: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:160"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:160"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_989
#AT_START_990
at_fn_group_banner 990 'run_functions.at:165' \
  "FUNCTION BYTE-LENGTH" "                           " 4
at_xfail=no
(
  $as_echo "990. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC      X(4).
       01  Z   PIC      N(4).
       01  TEST-FLD     PIC S9(04)V9(08).
       PROCEDURE        DIVISION.
           MOVE FUNCTION BYTE-LENGTH ( X )
             TO TEST-FLD.
           IF TEST-FLD NOT = 4
              DISPLAY 'BYTE-LENGTH X(4) wrong: ' TEST-FLD.
           MOVE FUNCTION BYTE-LENGTH ( Z )
             TO TEST-FLD
           IF TEST-FLD NOT = 8
              DISPLAY 'BYTE-LENGTH N(4) wrong: ' TEST-FLD.

           MOVE FUNCTION BYTE-LENGTH ( '00128' )
             TO TEST-FLD
           IF TEST-FLD NOT = 5
              DISPLAY 'BYTE-LENGTH "00128" wrong: ' TEST-FLD.
      *    note: we currently do not support items of category boolean...
      *>   MOVE FUNCTION BYTE-LENGTH ( b'100' )
      *>     TO TEST-FLD
      *>   IF TEST-FLD NOT = 3
      *>      DISPLAY 'BYTE-LENGTH b"100" wrong: ' TEST-FLD.
           MOVE FUNCTION BYTE-LENGTH ( x'a0' )
             TO TEST-FLD
           IF TEST-FLD NOT = 1
              DISPLAY 'BYTE-LENGTH x"a0" wrong: ' TEST-FLD.
           MOVE FUNCTION BYTE-LENGTH ( z'a0' )
             TO TEST-FLD
           IF TEST-FLD NOT = 3
              DISPLAY 'BYTE-LENGTH z"a0" wrong: ' TEST-FLD.
      *    we currently generate national constants as
      *    alphanumeric constants...
      *    MOVE FUNCTION BYTE-LENGTH ( n'a0' )
      *      TO TEST-FLD
      *    IF TEST-FLD NOT = 4
      *       DISPLAY 'BYTE-LENGTH n"a0" wrong: ' TEST-FLD.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:213: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:213"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:7: warning: handling of USAGE NATIONAL is unfinished; implementation is likely to be changed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:213"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:216: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:216"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:216"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_990
#AT_START_991
at_fn_group_banner 991 'run_functions.at:221' \
  "FUNCTION CHAR" "                                  " 4
at_xfail=no
(
  $as_echo "991. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC   S9(4)V9(4) VALUE 108.
       01  TEST-FLD.
           05  TEST-DATA  PIC X(01).
               88  VALID-DATA   VALUE 'k'.
           05  TEST-UNSET PIC X VALUE '_'.
               88  VALID-UNSET  VALUE '_'.
       PROCEDURE        DIVISION.
           STRING FUNCTION CHAR ( X )
                  DELIMITED BY SIZE
                  INTO TEST-FLD
           END-STRING.
           EVALUATE TRUE
              WHEN NOT VALID-UNSET
                 DISPLAY "FUNCTION result too long"
                 END-DISPLAY
              WHEN VALID-DATA
                 CONTINUE
              WHEN OTHER
                 DISPLAY TEST-DATA
                 END-DISPLAY
           END-EVALUATE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:253: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:253"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:253"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:254: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:254"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:254"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_991
#AT_START_992
at_fn_group_banner 992 'run_functions.at:259' \
  "FUNCTION COMBINED-DATETIME" "                     " 4
at_xfail=no
(
  $as_echo "992. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(04)V9(08).
       PROCEDURE        DIVISION.
           MOVE FUNCTION COMBINED-DATETIME ( 987, 345.6 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 987.003456
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:278: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:278"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:278"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:279: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:279"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:279"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_992
#AT_START_993
at_fn_group_banner 993 'run_functions.at:284' \
  "FUNCTION CONCAT / CONCATENATE" "                  " 4
at_xfail=no
(
  $as_echo "993. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: CONCAT was added in COBOL 202x with GnuCOBOL's CONCATENATE
#       as blueprint
cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y            PIC   X(4).
       01  TEST-FLD.
           05  TEST-DATA  PIC X(14).
               88  VALID-DATA   VALUE 'defxabczz55666'.
           05  TEST-UNSET PIC X VALUE '_'.
               88  VALID-UNSET  VALUE '_'.
       PROCEDURE        DIVISION.
           MOVE "defx" TO Y.
           STRING FUNCTION CONCATENATE ( Y "abc" "zz" "55" "666" )
                  DELIMITED BY SIZE
                  INTO TEST-FLD
           END-STRING.
           EVALUATE TRUE
              WHEN NOT VALID-UNSET
                 DISPLAY "FUNCTION result too long"
                 END-DISPLAY
              WHEN TEST-DATA
                <> FUNCTION CONCAT ( Y "abc" "zz" "55" "666" )
                 DISPLAY "CONCAT issue, '" TEST-DATA
                     "' vs. '"
                     FUNCTION CONCAT ( Y "abc" "zz" "55" "666" ) "'"
                 END-DISPLAY
              WHEN VALID-DATA
                 CONTINUE
              WHEN OTHER
                 DISPLAY TEST-DATA
                 END-DISPLAY
           END-EVALUATE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:325: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:325"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:325"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:326: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:326"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:326"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_993
#AT_START_994
at_fn_group_banner 994 'run_functions.at:331' \
  "FUNCTION CONCATENATE with reference modding" "    " 4
at_xfail=no
(
  $as_echo "994. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y            PIC X(4).
       01  TEST-FLD     PIC X(9) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE 'defx' TO Y.
           MOVE FUNCTION CONCATENATE
                ( Y "abc" "zz" "55" "666" ) (2 : 9)
             TO TEST-FLD.
           IF TEST-FLD NOT = 'efxabczz5'
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:353: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:353"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:353"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:354: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:354"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:354"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_994
#AT_START_995
at_fn_group_banner 995 'run_functions.at:359' \
  "FUNCTION BIT-OF and BIT-TO-CHAR" "                " 4
at_xfail=no
(
  $as_echo "995. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  PAC    PIC   9(4) VALUE 12 COMP-3.
       01  TXT    PIC   X(4) VALUE "HI.".
       01  BITX   PIC   X(34).
           88 BITX-FILLER VALUE ALL "-".
       PROCEDURE        DIVISION.
           SET  BITX-FILLER TO TRUE
           STRING FUNCTION BIT-OF (PAC) DELIMITED BY SIZE INTO BITX.
           IF BITX NOT = "000000000000000100101111----------"
              DISPLAY "UNEXPECTED BIT-VALUE OF PAC 0012: " BITX.

           SET  BITX-FILLER TO TRUE
           STRING FUNCTION BIT-OF (TXT) DELIMITED BY SIZE INTO BITX.
      *> Discover if running ASCII or EBCDIC
       >>IF   CHARSET = 'ASCII'
           IF BITX NOT = "01001000010010010010111000100000--"
       >>ELIF CHARSET = 'EBCDIC'
           IF BITX NOT = "11001000110010010100101101000000--"
       >>ELSE
           IF 1 = 1 DISPLAY 'CHARSET UNKNOWN! PLEASE REPORT!'
       >>END-IF
              DISPLAY "UNEXPECTED BIT-VALUE OF 'HI. ': " BITX.

           SET  BITX-FILLER TO TRUE
           STRING FUNCTION BIT-OF (z"01") DELIMITED BY SIZE INTO BITX.
       >>IF   CHARSET = 'ASCII'
           IF BITX NOT = "001100000011000100000000----------"
       >>ELSE
           IF BITX NOT = "111100001111000100000000----------"
       >>END-IF

           IF FUNCTION BIT-TO-CHAR (BITX(1:24)) NOT = z"01"
              DISPLAY "UNEXPECTED CHAR VALUE, does not match z'01': "
                      BITX (1:24).
           SET  BITX-FILLER TO TRUE
           STRING FUNCTION BIT-TO-CHAR ("0011000100110010")
                  DELIMITED BY SIZE INTO BITX.
           IF NOT (BITX (1:2) = x"3132" AND
                   BITX (3: ) = "--------------------------------")
              DISPLAY "UNEXPECTED CHAR VALUE, expected 12-* got: " BITX.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:410: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:410"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:410"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:411: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:411"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_995
#AT_START_996
at_fn_group_banner 996 'run_functions.at:416' \
  "FUNCTION HEX-OF and HEX-TO-CHAR" "                " 4
at_xfail=no
(
  $as_echo "996. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X.
         03       PIC     X  VALUE SPACE.
         03       PIC   9(3) VALUE 12.
       01  Y      PIC   X(4) VALUE "HI.".
       01  BIN    PIC   9(9) BINARY VALUE 12.
       01  PAC    PIC   9(5) COMP-3 VALUE 1234.
       01  N9     PIC   9(2) USAGE NATIONAL VALUE 12.
       01  NX     PIC   N(2) VALUE N"!".
       01  HEXX   PIC   X(10).
           88 HEXX-FILLER VALUE ALL "-".
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==,
               ==END-DISPLAY== BY ==END-DISPLAY END-IF==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 300000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (X) DELIMITED BY SIZE INTO HEXX.
      *> Discover if running ASCII or EBCDIC
       >>IF   CHARSET = 'ASCII'
           IF HEXX NOT = "20303132--"
       >>ELIF CHARSET = 'EBCDIC'
           IF HEXX NOT = "40F0F1F2--"
       >>ELSE
           IF 1 = 1 DISPLAY 'CHARSET UNKNOWN! PLEASE REPORT!'
       >>END-IF
              DISPLAY "UNEXPECTED HEX-VALUE OF '0012': " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (Y) DELIMITED BY SIZE INTO HEXX.
       >>IF   CHARSET = 'ASCII'
           IF HEXX NOT = "48492E20--"
       >> ELSE
           IF HEXX NOT = "C8C94B40--"
       >> END-IF
              DISPLAY "UNEXPECTED HEX-VALUE OF 'HI! ': " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (BIN) DELIMITED BY SIZE INTO HEXX.
           IF HEXX NOT = "0000000C--"
              DISPLAY "UNEXPECTED HEX-VALUE OF BIN 12: " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (PAC) DELIMITED BY SIZE INTO HEXX.
           IF HEXX NOT = "01234F----"
              DISPLAY "UNEXPECTED HEX-VALUE OF PACKED 1234: " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (z"01") DELIMITED BY SIZE INTO HEXX.
       >>IF   CHARSET = 'ASCII'
           IF HEXX NOT = "303100----"
       >> ELSE
           IF HEXX NOT = "F0F100----"
       >> END-IF
              DISPLAY "UNEXPECTED HEX-VALUE OF z'01': " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (' ') DELIMITED BY SIZE INTO HEXX.
       >>IF   CHARSET = 'ASCII'
           IF HEXX NOT = "20--------"
       >> ELSE
           IF HEXX NOT = "40--------"
       >> END-IF
              DISPLAY "UNEXPECTED HEX-VALUE OF ' ': " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (n' ') DELIMITED BY SIZE INTO HEXX.
           IF HEXX NOT = "0020------"
              DISPLAY "UNEXPECTED HEX-VALUE OF n' ': " HEXX.

       *>  FIXME: Failing with "3132------" -> missing padding
       *>         -> codegen issue for initialization / move
       *>            and libcob issue at least for MOVE
       *>  SET  HEXX-FILLER TO TRUE
       *>  STRING FUNCTION HEX-OF (N9) DELIMITED BY SIZE INTO HEXX.
       *>  IF HEXX NOT = "00310032--"
       *>     DISPLAY "UNEXPECTED HEX-VALUE OF N9: " HEXX.

       *>  FIXME: Failing with "00212020--" -> bad padding
       *>         -> codegen issue for initialization / move
       *>            and libcob issue at least for MOVE
       *>  SET  HEXX-FILLER TO TRUE
       *>  STRING FUNCTION HEX-OF (NX) DELIMITED BY SIZE INTO HEXX.
       *>  IF HEXX NOT = "00210020--"
       *>     DISPLAY "UNEXPECTED HEX-VALUE OF NX: " HEXX.

       *>  setting up test data:
           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-OF (z"01") DELIMITED BY SIZE INTO HEXX.

           IF FUNCTION HEX-TO-CHAR (HEXX(1:6)) NOT = z"01"
              DISPLAY "UNEXPECTED CHAR VALUE, does not match z'01': "
                      HEXX (1:6).
           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-TO-CHAR ("3132")
                  DELIMITED BY SIZE INTO HEXX.
           IF NOT (HEXX (1:2) = x"3132" AND HEXX (3:) = "--------")
              DISPLAY "UNEXPECTED CHAR VALUE, expected 12-* got: " HEXX.

           SET  HEXX-FILLER TO TRUE
           STRING FUNCTION HEX-TO-CHAR ("3132")
                  DELIMITED BY SIZE INTO HEXX.
           IF NOT (HEXX (1:2) = x"3132" AND HEXX (3:) = "--------")
              DISPLAY "UNEXPECTED CHAR VALUE, expected 12-* got: " HEXX.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:541: \$COMPILE -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob" "run_functions.at:541"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:541"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:542: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:542"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:542"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_996
#AT_START_997
at_fn_group_banner 997 'run_functions.at:547' \
  "FUNCTION CONTENT-LENGTH" "                        " 4
at_xfail=no
(
  $as_echo "997. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  P            USAGE    POINTER.
       01  X            PIC      X(4) VALUE Z"ABC".
       01  TEST-FLD     USAGE    BINARY-LONG.
       PROCEDURE        DIVISION.
           MOVE FUNCTION CONTENT-LENGTH ( P )
             TO TEST-FLD.
           IF TEST-FLD NOT = 0
              DISPLAY 'CONTENT-LENGTH NULL wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
           SET P TO ADDRESS OF X
           MOVE FUNCTION CONTENT-LENGTH ( P )
             TO TEST-FLD
           IF TEST-FLD NOT = 3
              DISPLAY 'CONTENT-LENGTH z"abc" wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:575: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:575"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:575"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:576: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:576"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:576"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_997
#AT_START_998
at_fn_group_banner 998 'run_functions.at:581' \
  "FUNCTION CONTENT-OF" "                            " 4
at_xfail=no
(
  $as_echo "998. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  P   USAGE    POINTER.
       01  X   PIC      X(4) VALUE Z"ABC".
       01  B   PIC      X(10) BASED.
       PROCEDURE        DIVISION.
           SET P TO ADDRESS OF X
           IF FUNCTION CONTENT-OF ( P ) NOT EQUAL 'ABC' THEN
              DISPLAY 'CONTENT-OF(ptr) wrong' END-DISPLAY
           END-IF
           IF FUNCTION CONTENT-OF ( P, 2 ) NOT EQUAL 'AB' THEN
              DISPLAY 'CONTENT-OF(ptr, len) wrong' END-DISPLAY
           END-IF
           IF FUNCTION EXCEPTION-STATUS NOT = SPACES THEN
              DISPLAY 'unexpected exception (1): '
                       FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           SET  P      TO NULL
           MOVE 'PPPP' TO X
           STRING FUNCTION CONTENT-OF ( P )
                  DELIMITED BY SIZE
                  INTO X
           END-STRING
      *>   Note: result *should* depend on dialect option zero-length literals
           IF X NOT EQUAL 'PPPP' THEN
              DISPLAY 'CONTENT-OF empty POINTER wrong: "' X "'"
              END-DISPLAY
           END-IF
           IF FUNCTION EXCEPTION-STATUS NOT = "EC-DATA-PTR-NULL" THEN
              DISPLAY 'missing exception (1)'
              END-DISPLAY
           END-IF
           ALLOCATE B INITIALIZED
           SET  P      TO ADDRESS OF B
           IF FUNCTION CONTENT-OF ( P, 1 ) NOT EQUAL SPACES THEN
              DISPLAY 'CONTENT-OF allocated BASED item wrong'
              END-DISPLAY
           END-IF
           IF FUNCTION EXCEPTION-STATUS NOT = SPACES THEN
              DISPLAY 'unexpected exception (2): '
                       FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           FREE B
           SET  P      TO ADDRESS OF B
           MOVE 'BBBB' TO X
           STRING FUNCTION CONTENT-OF ( P )
                  DELIMITED BY SIZE
                  INTO X
           END-STRING
      *>   Note: result *should* depend on dialect option zero-length literals
           IF X NOT EQUAL 'BBBB' THEN
              DISPLAY 'CONTENT-OF unallocated BASED item wrong: "' X '"'
              END-DISPLAY
           END-IF
           IF FUNCTION EXCEPTION-STATUS NOT = "EC-DATA-PTR-NULL" THEN
              DISPLAY 'missing exception (2)'
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:650: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:650"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:650"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:651: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:651"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:651"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_998
#AT_START_999
at_fn_group_banner 999 'run_functions.at:656' \
  "FUNCTION as CALL parameter BY CONTENT" "          " 4
at_xfail=no
(
  $as_echo "999. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       PROCEDURE DIVISION.
       PROG-MAIN.
           CALL "subprog" USING BY CONTENT
                                FUNCTION CONCATENATE("Abc" "D")
           STOP RUN.
           END PROGRAM prog.

       *> *****************************
       IDENTIFICATION DIVISION.
       PROGRAM-ID. subprog.

       DATA DIVISION.
       LINKAGE SECTION.
       01 TESTING PIC X ANY LENGTH.

       PROCEDURE DIVISION USING TESTING.
       SUBPROG-MAIN.
           DISPLAY TESTING
           GOBACK.
       END PROGRAM subprog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:685: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:685"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:685"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:686: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:686"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "AbcD
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:686"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_999
#AT_START_1000
at_fn_group_banner 1000 'run_functions.at:692' \
  "FUNCTION COS" "                                   " 4
at_xfail=no
(
  $as_echo "1000. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y            PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION COS ( -0.2345 ) TO Y.
           IF Y NOT = 0.97263064125625818471341696241456141
              DISPLAY Y
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:710: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:710"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:710"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:711: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:711"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:711"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1000
#AT_START_1001
at_fn_group_banner 1001 'run_functions.at:716' \
  "FUNCTION CURRENCY-SYMBOL" "                       " 4
at_xfail=no
(
  $as_echo "1001. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-FLD     PIC X(8) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION CURRENCY-SYMBOL TO TEST-FLD.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:733: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:733"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:733"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:734: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:734"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:734"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1001
#AT_START_1002
at_fn_group_banner 1002 'run_functions.at:739' \
  "FUNCTION CURRENT-DATE" "                          " 4
at_xfail=no
(
  $as_echo "1002. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-FLD.
           02  WS-YEAR            PIC 9(04).
               88 VALID-YEAR      VALUE 1980 THRU 9999.
           02  WS-MONTH           PIC 9(02).
               88 VALID-MONTH     VALUE 01 THRU 12.
           02  WS-DAY             PIC 9(02).
               88 VALID-DAY       VALUE 01 THRU 31.
           02  WS-HOUR            PIC 9(02).
               88 VALID-HOUR      VALUE 00 THRU 23.
           02  WS-MIN             PIC 9(02).
               88 VALID-MIN       VALUE 00 THRU 59.
           02  WS-SEVALIDD        PIC 9(02).
               88 VALID-SEC       VALUE 00 THRU 59.
           02  WS-HUNDSEC         PIC 9(02).
               88 VALID-HUNDSEC   VALUE 00 THRU 99.
           02  WS-GREENW          PIC X.
               88 VALID-GREENW    VALUE "-", "+", "0".
               88 ZERO-GREENW     VALUE "0".
           02  WS-OFFSET          PIC 9(02).
               88 VALID-OFFSET    VALUE 00 THRU 13.
               88 ZERO-OFFSET     VALUE 00.
           02  WS-OFFSET2         PIC 9(02).
               88 VALID-OFFSET2   VALUE 00 THRU 59.
               88 ZERO-OFFSET2    VALUE 00.
           02  WS-UNSET           PIC X VALUE '_'.
               88 VALID-UNSET     VALUE '_'.
       PROCEDURE        DIVISION.
           STRING FUNCTION CURRENT-DATE
                  DELIMITED BY SIZE
                  INTO TEST-FLD
           END-STRING.
           EVALUATE TRUE
              WHEN NOT VALID-UNSET
                 DISPLAY "FUNCTION result too long"
                 END-DISPLAY
              WHEN VALID-YEAR     AND
                 VALID-MONTH    AND
                 VALID-DAY      AND
                 VALID-HOUR     AND
                 VALID-MIN      AND
                 VALID-SEC      AND
                 VALID-HUNDSEC  AND
                 VALID-GREENW   AND
                 VALID-OFFSET   AND
                 VALID-OFFSET2  AND
                 VALID-UNSET    AND
                 ((NOT ZERO-GREENW) OR (ZERO-OFFSET AND ZERO-OFFSET2))
                 CONTINUE
              WHEN OTHER
                 DISPLAY "CURRENT-DATE with wrong format: "
                         TEST-FLD (01:21)
                 END-DISPLAY
           END-EVALUATE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:804: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:804"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:804"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:805: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:805"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:805"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1002
#AT_START_1003
at_fn_group_banner 1003 'run_functions.at:810' \
  "FUNCTION DATE-OF-INTEGER" "                       " 4
at_xfail=no
(
  $as_echo "1003. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION DATE-OF-INTEGER ( 146000 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 20000925
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:829: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:829"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:829"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:830: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:830"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:830"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1003
#AT_START_1004
at_fn_group_banner 1004 'run_functions.at:835' \
  "FUNCTION DATE-TO-YYYYMMDD" "                      " 4
at_xfail=no
(
  $as_echo "1004. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION DATE-TO-YYYYMMDD ( 981002, -10, 1994 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 018981002
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:854: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:854"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:854"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:855: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:855"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:855"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1004
#AT_START_1005
at_fn_group_banner 1005 'run_functions.at:860' \
  "FUNCTION DAY-OF-INTEGER" "                        " 4
at_xfail=no
(
  $as_echo "1005. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION DAY-OF-INTEGER ( 146000 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 2000269
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:879: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:879"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:879"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:880: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:880"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:880"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1005
#AT_START_1006
at_fn_group_banner 1006 'run_functions.at:885' \
  "FUNCTION DAY-TO-YYYYDDD" "                        " 4
at_xfail=no
(
  $as_echo "1006. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION DAY-TO-YYYYDDD ( 95005, -10, 2013 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 001995005
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:904: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:904"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:904"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:905: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:905"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:905"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1006
#AT_START_1007
at_fn_group_banner 1007 'run_functions.at:910' \
  "FUNCTION E" "                                     " 4
at_xfail=no
(
  $as_echo "1007. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   9V9(35).
       PROCEDURE        DIVISION.
           MOVE    FUNCTION E TO Y.
           IF Y NOT = 2.71828182845904523536028747135266249
              DISPLAY Y
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:928: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:928"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:928"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:929: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:929"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:929"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1007
#AT_START_1008
at_fn_group_banner 1008 'run_functions.at:934' \
  "FUNCTION EXCEPTION-FILE" "                        " 4
at_xfail=no
(
  $as_echo "1008. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TEST-FILE ASSIGN "NOTEXIST"
           FILE STATUS IS TEST-STATUS.
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC      PIC X(4).
       WORKING-STORAGE SECTION.
       01  TEST-STATUS  PIC XX.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION EXCEPTION-FILE '|'
                   NO ADVANCING
           END-DISPLAY.
           OPEN INPUT TEST-FILE.
           DISPLAY FUNCTION EXCEPTION-FILE
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:962: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:962"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:962"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:963: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:963"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00|35TEST-FILE" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:963"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1008
#AT_START_1009
at_fn_group_banner 1009 'run_functions.at:969' \
  "FUNCTION EXCEPTION-LOCATION" "                    " 4
at_xfail=no
(
  $as_echo "1009. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TEST-FILE ASSIGN "NOTEXIST"
           FILE STATUS IS TEST-STATUS.
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC      PIC X(4).
       WORKING-STORAGE SECTION.
       01  TEST-STATUS  PIC XX.
       PROCEDURE        DIVISION.
       A00-MAIN SECTION.
       A00.
           DISPLAY FUNCTION EXCEPTION-LOCATION '|'
                   NO ADVANCING
           END-DISPLAY.
           OPEN INPUT TEST-FILE.
           PERFORM B00-MAIN.

       B00-MAIN SECTION.
       B00.
           DISPLAY FUNCTION EXCEPTION-LOCATION
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1003: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1003"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1003"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1004: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1004"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " |prog; A00 OF A00-MAIN; 21" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1004"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
       A00-MAIN SECTION.
       A00.
           DISPLAY FUNCTION EXCEPTION-LOCATION '|'
                   NO ADVANCING
           END-DISPLAY.
           CALL "sub".
           CANCEL "sub".
           PERFORM B00-MAIN.

       B00-MAIN SECTION.
       B00.
           DISPLAY FUNCTION EXCEPTION-LOCATION
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


cat >sub.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      sub.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TEST-FILE ASSIGN "NOTEXIST"
           FILE STATUS IS TEST-STATUS.
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC      PIC X(4).
       WORKING-STORAGE SECTION.
       01  TEST-STATUS  PIC XX.
       PROCEDURE        DIVISION.
       A00-MAIN SECTION.
       A00.
           OPEN INPUT TEST-FILE.
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1049: \$COMPILE_MODULE sub.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE sub.cob" "run_functions.at:1049"
( $at_check_trace; $COMPILE_MODULE sub.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1049"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1050: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_functions.at:1050"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1050"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1051: COB_PHYSICAL_CANCEL=1 \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "COB_PHYSICAL_CANCEL=1 $COBCRUN_DIRECT ./caller" "run_functions.at:1051"
( $at_check_trace; COB_PHYSICAL_CANCEL=1 $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo " |sub; A00 OF A00-MAIN; 18" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1051"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1009
#AT_START_1010
at_fn_group_banner 1010 'run_functions.at:1057' \
  "FUNCTION EXCEPTION-STATEMENT" "                   " 4
at_xfail=no
(
  $as_echo "1010. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TEST-FILE ASSIGN "NOTEXIST"
           FILE STATUS IS TEST-STATUS.
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC      PIC X(4).
       WORKING-STORAGE SECTION.
       01  TEST-STATUS  PIC XX.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION EXCEPTION-STATEMENT '|'
                   NO ADVANCING
           END-DISPLAY.
           OPEN INPUT TEST-FILE.
           DISPLAY FUNCTION EXCEPTION-STATEMENT
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1085: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1085"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1085"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1086: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1086"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "                               |OPEN                           " | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1086"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1010
#AT_START_1011
at_fn_group_banner 1011 'run_functions.at:1092' \
  "FUNCTION EXCEPTION-STATUS" "                      " 4
at_xfail=no
(
  $as_echo "1011. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
           SELECT TEST-FILE ASSIGN "NOTEXIST"
           FILE STATUS IS TEST-STATUS.
       DATA             DIVISION.
       FILE             SECTION.
       FD  TEST-FILE.
       01  TEST-REC      PIC X(4).
       WORKING-STORAGE SECTION.
       01  TEST-STATUS  PIC XX.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION EXCEPTION-STATUS '|'
                   NO ADVANCING
           END-DISPLAY.
           OPEN INPUT TEST-FILE.
           DISPLAY FUNCTION EXCEPTION-STATUS
                   NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1120: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1120"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1120"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1121: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1121"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "                               |EC-I-O-PERMANENT-ERROR         " | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1121"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1011
#AT_START_1012
at_fn_group_banner 1012 'run_functions.at:1127' \
  "FUNCTION EXP" "                                   " 4
at_xfail=no
(
  $as_echo "1012. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S99V9(34).
       PROCEDURE        DIVISION.
           MOVE FUNCTION EXP ( 3 ) TO Y.
           IF Y NOT = 20.0855369231876677409285296545817178
              DISPLAY Y
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1145: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1145"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1145"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1146: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1146"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1146"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1012
#AT_START_1013
at_fn_group_banner 1013 'run_functions.at:1151' \
  "FUNCTION EXP10" "                                 " 4
at_xfail=no
(
  $as_echo "1013. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION EXP10 ( 4 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 000010000
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1170: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1170"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1170"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1171: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1171"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1171"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1013
#AT_START_1014
at_fn_group_banner 1014 'run_functions.at:1176' \
  "FUNCTION FACTORIAL" "                             " 4
at_xfail=no
(
  $as_echo "1014. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION FACTORIAL ( 6 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 000000720
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1195: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1195"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1195"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1196: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1196"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1196"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1014
#AT_START_1015
at_fn_group_banner 1015 'run_functions.at:1201' \
  "FUNCTION FORMATTED-CURRENT-DATE" "                " 4
at_xfail=no
(
  $as_echo "1015. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Datetime-Format CONSTANT "YYYYMMDDThhmmss.ss+hhmm".
       01  str             PIC X(25).
       PROCEDURE        DIVISION.
      *>   Test normal inputs.
           MOVE FUNCTION FORMATTED-CURRENT-DATE ( Datetime-Format )
             TO str
           IF FUNCTION TEST-FORMATTED-DATETIME ( Datetime-Format, str)
                   <> 0
              DISPLAY "Test 1 failed: " str END-DISPLAY
           END-IF.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1223: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1223"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1223"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1224: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1224"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1224"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1015
#AT_START_1016
at_fn_group_banner 1016 'run_functions.at:1229' \
  "FUNCTION FORMATTED-DATE" "                        " 4
at_xfail=no
(
  $as_echo "1016. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(10).
       PROCEDURE        DIVISION.
      *>   Test normal inputs.
           MOVE FUNCTION FORMATTED-DATE ( "YYYYMMDD", 1 ) TO str
           IF str <> "16010101"
              DISPLAY "Test 1 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATE ( "YYYY-MM-DD", 1 ) TO str
           IF str <> "1601-01-01"
              DISPLAY "Test 2 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATE ( "YYYYDDD", 1 ) TO str
           IF str <> "1601001"
              DISPLAY "Test 3 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATE ( "YYYY-DDD", 1 ) TO str
           IF str <> "1601-001"
              DISPLAY "Test 4 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATE ( "YYYYWwwD", 1 ) TO str
           IF str <> "1601W011"
              DISPLAY "Test 5 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATE ( "YYYY-Www-D", 1 ) TO str
           IF str <> "1601-W01-1"
              DISPLAY "Test 6 failed: " str END-DISPLAY
           END-IF

      *>   Test week number edge cases.
      *>   For 2012-01-01.
           MOVE FUNCTION FORMATTED-DATE ( "YYYYWwwD", 150115 ) TO str
           IF str <> "2011W527"
              DISPLAY "Test 7 failed: " str END-DISPLAY
           END-IF

      *>   and for 2013-12-30.
           MOVE FUNCTION FORMATTED-DATE ( "YYYYWwwD", 150844 ) TO str
           IF str <> "2014W011"
              DISPLAY "Test 8 failed: " str END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1286: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1286"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1286"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1287: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1287"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1287"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1016
#AT_START_1017
at_fn_group_banner 1017 'run_functions.at:1292' \
  "FUNCTION FORMATTED-DATE with ref modding" "       " 4
at_xfail=no
(
  $as_echo "1017. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(04).
       PROCEDURE        DIVISION.
           MOVE FUNCTION FORMATTED-DATE ("YYYYMMDD", 1) (3:4)
             TO STR
           IF STR NOT = '0101'
              DISPLAY STR
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1311: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1311"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1311"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1312: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1312"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1312"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1017
#AT_START_1018
at_fn_group_banner 1018 'run_functions.at:1317' \
  "FUNCTION FORMATTED-DATETIME" "                    " 4
at_xfail=no
(
  $as_echo "1018. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(40).
       PROCEDURE        DIVISION.
      *>   Test normal inputs.
           MOVE FUNCTION FORMATTED-DATETIME
                   ("YYYYMMDDThhmmss", 1, 45296)
               TO str
           IF str <> "16010101T123456"
               DISPLAY "Test 1 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATETIME
                   ("YYYY-MM-DDThh:mm:ss", 1, 45296)
               TO str
           IF str <> "1601-01-01T12:34:56"
               DISPLAY "Test 2 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATETIME
                    ("YYYYDDDThhmmss+hhmm", 1, 45296, -754)
               TO str
           IF str <> "1601001T123456-1234"
               DISPLAY "Test 3 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-DATETIME
                    ("YYYYDDDThhmmss+hhmm", 1, 45296)
               TO str
           IF str <> "1601001T123456+0000"
               DISPLAY "Test 4 failed: " str END-DISPLAY
           END-IF

           *> Test underflow to next day due to offset
           MOVE FUNCTION FORMATTED-DATETIME
                    ("YYYYDDDThhmmss.sssssssssZ", 150846, 0,
                     1)
               TO str
           IF str <> "2013365T235900.000000000Z"
               DISPLAY "Test 5 failed: " str END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1368: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1368"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1368"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1369: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1369"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1369"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1018
#AT_START_1019
at_fn_group_banner 1019 'run_functions.at:1374' \
  "FUNCTION FORMATTED-DATETIME with ref modding" "   " 4
at_xfail=no
(
  $as_echo "1019. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(04).
       PROCEDURE        DIVISION.
           MOVE FUNCTION FORMATTED-DATETIME
               ("YYYYMMDDThhmmss", 1, 1) (3:4)
             TO STR
           IF STR NOT = '0101'
              DISPLAY STR
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1394: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1394"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1394"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1395: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1395"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1395"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1019
#AT_START_1020
at_fn_group_banner 1020 'run_functions.at:1400' \
  "FUNCTION FORMATTED-TIME" "                        " 4
at_xfail=no
(
  $as_echo "1020. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(20).
       PROCEDURE        DIVISION.
      *>   Test normal inputs.
           MOVE FUNCTION FORMATTED-TIME ( "hhmmss", 45296 ) TO str
           IF str <> "123456"
               DISPLAY "Test 1 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hh:mm:ss", 45296 ) TO str
           IF str <> "12:34:56"
               DISPLAY "Test 2 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hhmmssZ", 86399, -1 ) TO str
           IF str <> "000059Z"
               DISPLAY "Test 3 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hh:mm:ssZ", 45296)
               TO str
           IF str <> "12:34:56Z"
               DISPLAY "Test 4 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hhmmss.ss", 45296.78 ) TO str
           IF str <> "123456.78"
               DISPLAY "Test 5 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hh:mm:ss.ssZ", 0, 120)
               TO str
           IF str <> "22:00:00.00Z"
               DISPLAY "Test 6 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hhmmss+hhmm", 45296)
               TO str
           IF str <> "123456+0000"
               DISPLAY "Test 7 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hh:mm:ss+hh:mm", 45296, 0 )
               TO str
           IF str <> "12:34:56+00:00"
               DISPLAY "Test 8 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hhmmss+hhmm", 45296, -754)
               TO str
           IF str <> "123456-1234"
               DISPLAY "Test 9 failed: " str END-DISPLAY
           END-IF

      *>   Test with invalid/missing offset times.
           MOVE FUNCTION FORMATTED-TIME ( "hhmmss+hhmm", 1, 3000 )
               TO str
           IF str <> SPACES
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 60"
               DISPLAY "Test 10 failed: " str END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME ( "hhmmss+hhmm", 1, -3000 )
               TO str
           IF str <> SPACES
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 68"
               DISPLAY "Test 11 failed: " str END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1481: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1481"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1481"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1482: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1482"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1482"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1020
#AT_START_1021
at_fn_group_banner 1021 'run_functions.at:1487' \
  "FUNCTION FORMATTED-TIME DP.COMMA" "               " 4
at_xfail=no
(
  $as_echo "1021. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.

       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA.

       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(11).

       PROCEDURE        DIVISION.
           MOVE FUNCTION FORMATTED-TIME ("hh:mm:ss,ss", 45296) TO str
           IF str <> "12:34:56,00"
               DISPLAY "Test 1 failed: " str END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1512: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1512"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1512"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1513: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1513"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1513"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1021
#AT_START_1022
at_fn_group_banner 1022 'run_functions.at:1518' \
  "FUNCTION FORMATTED-TIME with ref modding" "       " 4
at_xfail=no
(
  $as_echo "1022. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  str          PIC X(04).
       PROCEDURE        DIVISION.
           MOVE FUNCTION FORMATTED-TIME ("hhmmss", 45296) (3:4)
             TO STR
           IF STR NOT = '3456'
              DISPLAY STR
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1537: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1537"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1537"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1538: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1538"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1538"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1022
#AT_START_1023
at_fn_group_banner 1023 'run_functions.at:1543' \
  "FUNCTION FRACTION-PART" "                         " 4
at_xfail=no
(
  $as_echo "1023. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(04)V9(08).
       PROCEDURE        DIVISION.
           MOVE FUNCTION FRACTION-PART ( 3.12345 )
             TO TEST-FLD.
           IF TEST-FLD NOT = +0000.12345
              DISPLAY 'FRACTION-PART ( +3.12345 ) wrong: ' TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION FRACTION-PART ( -3.12345 )
             TO TEST-FLD.
           IF TEST-FLD NOT = -0000.12345
              DISPLAY 'FRACTION-PART ( -3.12345 ) wrong: ' TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1568: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1568"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1568"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1569: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1569"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1569"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1023
#AT_START_1024
at_fn_group_banner 1024 'run_functions.at:1574' \
  "FUNCTION HIGHEST-ALGEBRAIC" "                     " 4
at_xfail=no
(
  $as_echo "1024. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  F1           PIC S999.
       01  F2           PIC S9(4) BINARY.
       01  F3           PIC 99V9(3).
       01  F4           PIC $**,**9.99BCR.
       01  F5           PIC $**,**9.99.
       01  F6           USAGE BINARY-CHAR SIGNED.
       01  F7           USAGE BINARY-CHAR UNSIGNED.
       01  TEST-FLD     PIC S9(08)V9(04).
       PROCEDURE        DIVISION.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F1)
             TO TEST-FLD.
           IF TEST-FLD NOT = 999
              DISPLAY "Test 1 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F2)
             TO TEST-FLD.
           IF TEST-FLD NOT = 9999
              DISPLAY "Test 2 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F3)
             TO TEST-FLD.
           IF TEST-FLD NOT = 99.999
              DISPLAY "Test 3 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F4)
             TO TEST-FLD.
           IF TEST-FLD NOT = 99999.99
              DISPLAY "Test 4 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F5)
             TO TEST-FLD.
           IF TEST-FLD NOT = 99999.99
              DISPLAY "Test 5 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F6)
             TO TEST-FLD.
           IF TEST-FLD NOT = 127
              DISPLAY "Test 6 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION HIGHEST-ALGEBRAIC (F7)
             TO TEST-FLD.
           IF TEST-FLD NOT = 255
              DISPLAY "Test 7 fail: " TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1636: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1636"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1636"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1637: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1637"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1637"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1024
#AT_START_1025
at_fn_group_banner 1025 'run_functions.at:1642' \
  "FUNCTION INTEGER" "                               " 4
at_xfail=no
(
  $as_echo "1025. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC   S9(4)V9(4) VALUE -1.5.
       01  Y            PIC   9(12)      VALUE 600851475143.
       01  TEST-FLD     PIC S9(14)V9(08).
       PROCEDURE        DIVISION.
           MOVE FUNCTION INTEGER ( X )
             TO TEST-FLD.
           IF TEST-FLD NOT = -2
              DISPLAY 'INTEGER ( X ) wrong: ' TEST-FLD
              END-DISPLAY
           END-IF.
           MOVE FUNCTION INTEGER ( Y / 71 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 8462696833
              DISPLAY 'INTEGER ( Y / 71 ) wrong: ' TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1669: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1669"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1669"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1670: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1670"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1670"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1025
#AT_START_1026
at_fn_group_banner 1026 'run_functions.at:1675' \
  "FUNCTION INTEGER-OF-DATE" "                       " 4
at_xfail=no
(
  $as_echo "1026. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION INTEGER-OF-DATE ( 20000925 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 000146000
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1694: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1694"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1694"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1695: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1695"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1695"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1026
#AT_START_1027
at_fn_group_banner 1027 'run_functions.at:1700' \
  "FUNCTION INTEGER-OF-DAY" "                        " 4
at_xfail=no
(
  $as_echo "1027. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TEST-FLD     PIC S9(09)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION INTEGER-OF-DAY ( 2000269 )
             TO TEST-FLD.
           IF TEST-FLD NOT = 000146000
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1719: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1719"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1719"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1720: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1720"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1720"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1027
#AT_START_1028
at_fn_group_banner 1028 'run_functions.at:1725' \
  "FUNCTION INTEGER-OF-FORMATTED-DATE" "             " 4
at_xfail=no
(
  $as_echo "1028. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  day-int      PIC 9(9).

       PROCEDURE        DIVISION.
           *> The date 2013-12-30 is used as it can also be used to
           *> check the conversion of dates in week form.
           MOVE FUNCTION INTEGER-OF-FORMATTED-DATE
                   ("YYYY-MM-DD", "2013-12-30")
               TO day-int
           IF day-int <> 150844
               DISPLAY "Test 1 failed: " day-int END-DISPLAY
           END-IF

           MOVE FUNCTION INTEGER-OF-FORMATTED-DATE
                   ("YYYY-DDD", "2013-364")
               TO day-int
           IF day-int <> 150844
               DISPLAY "Test 2 failed: " day-int END-DISPLAY
           END-IF

           MOVE FUNCTION INTEGER-OF-FORMATTED-DATE
                   ("YYYY-Www-D", "2014-W01-1")
               TO day-int
           IF day-int <> 150844
               DISPLAY "Test 3 failed: " day-int END-DISPLAY
           END-IF

           MOVE FUNCTION INTEGER-OF-FORMATTED-DATE
                   ("YYYY-MM-DDThh:mm:ss", "2013-12-30T12:34:56")
               TO day-int
           IF day-int <> 150844
               DISPLAY "Test 4 failed: " day-int END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1769: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1769"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1769"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1770: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1770"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1770"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1028
#AT_START_1029
at_fn_group_banner 1029 'run_functions.at:1775' \
  "FUNCTION INTEGER-PART" "                          " 4
at_xfail=no
(
  $as_echo "1029. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   S9(4)V9(4) VALUE -1.5.
       01  TEST-FLD     PIC S9(04)V9(02).
       PROCEDURE        DIVISION.
           MOVE FUNCTION INTEGER-PART ( X )
             TO TEST-FLD.
           IF TEST-FLD NOT = -1
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1795: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1795"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1795"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1796: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1796"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1796"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1029
#AT_START_1030
at_fn_group_banner 1030 'run_functions.at:1801' \
  "FUNCTION LENGTH" "                                " 4
at_xfail=no
(
  $as_echo "1030. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC      S9(4)V9(4) VALUE -1.5.
       01  N   PIC      N(9).
       01  TEST-FLD     PIC S9(04)V9(02).
       01  TEST-TAB.
           05 T-ENTRIES   PIC 99 VALUE 10.
           05 TEST-ENTRY  PIC X OCCURS 1 TO 10 DEPENDING ON T-ENTRIES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION LENGTH ( X )
             TO TEST-FLD
           IF TEST-FLD NOT = 8
              DISPLAY 'LENGTH "00128" wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
           MOVE FUNCTION LENGTH ( N )
             TO TEST-FLD
           IF TEST-FLD NOT = 9
              DISPLAY 'LENGTH N(9) wrong: ' TEST-FLD
              END-DISPLAY
           END-IF

           MOVE FUNCTION LENGTH ( '00128' )
             TO TEST-FLD
           IF TEST-FLD NOT = 5
              DISPLAY 'LENGTH "00128" wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
      *    note: we currently do not support items of category boolean...
      *>   MOVE FUNCTION LENGTH ( b'100' )
      *>     TO TEST-FLD
      *>   IF TEST-FLD NOT = 3
      *>      DISPLAY 'LENGTH b"100" wrong: ' TEST-FLD
      *>      END-DISPLAY
      *>   END-IF
           MOVE FUNCTION LENGTH ( x'a0' )
             TO TEST-FLD
           IF TEST-FLD NOT = 1
              DISPLAY 'LENGTH x"a0" wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
           MOVE FUNCTION LENGTH ( z'a0' )
             TO TEST-FLD
           IF TEST-FLD NOT = 3
              DISPLAY 'LENGTH z"a0" wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
           MOVE FUNCTION LENGTH ( n'a0' )
             TO TEST-FLD
           IF TEST-FLD NOT = 2
              DISPLAY 'LENGTH n"a0" wrong: ' TEST-FLD
              END-DISPLAY
           END-IF
           MOVE 10 TO T-ENTRIES
           MOVE FUNCTION LENGTH ( TEST-TAB)
             TO TEST-FLD
           IF TEST-FLD NOT = 12
              DISPLAY 'LENGTH TEST-TAB (10 entries): ' TEST-FLD
              END-DISPLAY
           END-IF
           MOVE 1 TO T-ENTRIES
           MOVE FUNCTION LENGTH ( TEST-TAB)
             TO TEST-FLD
           IF TEST-FLD NOT = 3
              DISPLAY 'LENGTH TEST-TAB (1 entry): ' TEST-FLD
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1877: \$COMPILE -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob" "run_functions.at:1877"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1877"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1878: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1878"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1878"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1030
#AT_START_1031
at_fn_group_banner 1031 'run_functions.at:1883' \
  "FUNCTION LOCALE-COMPARE" "                        " 4
at_xfail=no
(
  $as_echo "1031. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           IF FUNCTION LOCALE-COMPARE ("A", "B") NOT = "<"
              DISPLAY "Test 1 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOCALE-COMPARE ("B", "A") NOT = ">"
              DISPLAY "Test 2 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOCALE-COMPARE ("A", "A") NOT = "="
              DISPLAY "Test 3 fail"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1907: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1907"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1907"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1908: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1908"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1908"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1031
#AT_START_1032
at_fn_group_banner 1032 'run_functions.at:1913' \
  "FUNCTION LOCALE-DATE" "                           " 4
at_xfail=no
(
  $as_echo "1032. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(32)   VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION LOCALE-DATE ( "19630302" ) TO X.
           IF X NOT = SPACES
                DISPLAY "OK"
                END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1931: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1931"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1931"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1932: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1932"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1932"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1032
#AT_START_1033
at_fn_group_banner 1033 'run_functions.at:1939' \
  "FUNCTION LOCALE-TIME" "                           " 4
at_xfail=no
(
  $as_echo "1033. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(32)   VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION LOCALE-TIME ( "233012" ) TO X.
           IF X NOT = SPACES
                DISPLAY "OK"
                END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1957: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1957"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1957"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1958: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1958"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1958"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1033
#AT_START_1034
at_fn_group_banner 1034 'run_functions.at:1965' \
  "FUNCTION LOCALE-TIME-FROM-SECONDS" "              " 4
at_xfail=no
(
  $as_echo "1034. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(32)   VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION LOCALE-TIME-FROM-SECONDS ( 33012 ) TO X.
           IF X NOT = SPACES
              DISPLAY "OK"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:1983: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:1983"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1983"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:1984: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:1984"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:1984"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1034
#AT_START_1035
at_fn_group_banner 1035 'run_functions.at:1991' \
  "FUNCTION LOG" "                                   " 4
at_xfail=no
(
  $as_echo "1035. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION LOG ( 1.5 ) TO Y.
           IF Y NOT = 0.40546510810816438197801311546434913
              DISPLAY Y
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2009: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2009"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2009"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2010: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2010"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2010"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1035
#AT_START_1036
at_fn_group_banner 1036 'run_functions.at:2015' \
  "FUNCTION LOG10" "                                 " 4
at_xfail=no
(
  $as_echo "1036. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION LOG10 ( 1.5 ) TO Y.
           IF Y NOT = 0.17609125905568124208128900853062228
              DISPLAY Y
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2033: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2033"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2033"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2034: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2034"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2034"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1036
#AT_START_1037
at_fn_group_banner 1037 'run_functions.at:2039' \
  "FUNCTION LOWER-CASE" "                            " 4
at_xfail=no
(
  $as_echo "1037. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(10) VALUE "A#B.C%D+E$".
       01  TEST-FLD     PIC X(12) VALUE ALL '_'.
       PROCEDURE        DIVISION.
           STRING FUNCTION LOWER-CASE ( X )
                  DELIMITED BY SIZE
                  INTO TEST-FLD
           END-STRING
           IF TEST-FLD NOT = 'a#b.c%d+e$__'
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2061: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2061"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2061"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2062: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2062"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2062"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1037
#AT_START_1038
at_fn_group_banner 1038 'run_functions.at:2067' \
  "FUNCTION LOWER-CASE with reference modding" "     " 4
at_xfail=no
(
  $as_echo "1038. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(10) VALUE "A#B.C%D+E$".
       01  TEST-FLD     PIC X(03).
       PROCEDURE        DIVISION.
           MOVE FUNCTION LOWER-CASE ( X ) (1 : 3)
             TO TEST-FLD
           IF TEST-FLD NOT = 'a#b'
              DISPLAY TEST-FLD
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2087: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2087"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2087"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2088: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2088"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2088"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1038
#AT_START_1039
at_fn_group_banner 1039 'run_functions.at:2093' \
  "FUNCTION LOWEST-ALGEBRAIC" "                      " 4
at_xfail=no
(
  $as_echo "1039. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  F1           PIC S999.
       01  F2           PIC S9(4) BINARY.
       01  F3           PIC 99V9(3).
       01  F4           PIC $**,**9.99BCR.
       01  F5           PIC $**,**9.99.
       01  F6           USAGE BINARY-CHAR SIGNED.
       01  F7           USAGE BINARY-CHAR UNSIGNED.
       PROCEDURE        DIVISION.
           IF FUNCTION LOWEST-ALGEBRAIC (F1) NOT = -999
              DISPLAY "Test 1 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOWEST-ALGEBRAIC (F2) NOT = -9999
              DISPLAY "Test 2 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOWEST-ALGEBRAIC (F3) NOT = 0
              DISPLAY "Test 3 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOWEST-ALGEBRAIC (F4) NOT = -99999.99
              DISPLAY "Test 4 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOWEST-ALGEBRAIC (F5) NOT = 0
              DISPLAY "Test 5 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOWEST-ALGEBRAIC (F6) NOT = -128
              DISPLAY "Test 6 fail"
              END-DISPLAY
           END-IF.
           IF FUNCTION LOWEST-ALGEBRAIC (F7) NOT = 0
              DISPLAY "Test 7 fail"
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2140: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2140"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2140"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2141: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2141"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2141"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1039
#AT_START_1040
at_fn_group_banner 1040 'run_functions.at:2146' \
  "FUNCTION MAX" "                                   " 4
at_xfail=no
(
  $as_echo "1040. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MAX ( 3 -14 0 8 -3 )
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2160: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2160"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2160"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2161: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2161"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "8
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2161"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1040
#AT_START_1041
at_fn_group_banner 1041 'run_functions.at:2168' \
  "FUNCTION MEAN" "                                  " 4
at_xfail=no
(
  $as_echo "1041. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MEAN ( 3 -14 0 8 -3 )
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2182: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2182"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2182"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2183: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2183"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-00000001.2
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2183"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1041
#AT_START_1042
at_fn_group_banner 1042 'run_functions.at:2190' \
  "FUNCTION MEDIAN" "                                " 4
at_xfail=no
(
  $as_echo "1042. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MEDIAN ( 3 -14 0 8 -3 )
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2204: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2204"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2204"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2205: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2205"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2205"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1042
#AT_START_1043
at_fn_group_banner 1043 'run_functions.at:2212' \
  "FUNCTION MIDRANGE" "                              " 4
at_xfail=no
(
  $as_echo "1043. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MIDRANGE ( 3 -14 0 8 -3 )
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2226: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2226"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2226"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2227: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2227"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-000000003
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2227"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1043
#AT_START_1044
at_fn_group_banner 1044 'run_functions.at:2234' \
  "FUNCTION MIN" "                                   " 4
at_xfail=no
(
  $as_echo "1044. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MIN ( 3 -14 0 8 -3 )
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2248: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2248"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2248"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2249: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2249"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-14
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2249"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1044
#AT_START_1045
at_fn_group_banner 1045 'run_functions.at:2256' \
  "FUNCTION MOD (valid)" "                           " 4
at_xfail=no
(
  $as_echo "1045. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y            PIC 9(12)      VALUE 600851475143.
       01  R            PIC S9(4)V9(4) VALUE 0.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MOD ( -11 5 ) TO R
           IF R NOT = 4
              DISPLAY 'first one wrong: ' R
              END-DISPLAY
           END-IF
           MOVE FUNCTION MOD ( Y, 71 ) TO R
           IF R NOT = 0
              DISPLAY 'second one wrong: ' R
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2280: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2280"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2280"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2281: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2281"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2281"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1045
#AT_START_1046
at_fn_group_banner 1046 'run_functions.at:2286' \
  "FUNCTION MOD (invalid)" "                         " 4
at_xfail=no
(
  $as_echo "1046. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC 9          VALUE 0.
       01  R            PIC S9(4)V9(4) VALUE 1.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MOD ( -11 Z ) TO R
           IF FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           NOT = 'EC-ARGUMENT-FUNCTION'
              DISPLAY 'Wrong/missing exception: '
                      FUNCTION EXCEPTION-STATUS
              END-DISPLAY
           END-IF
           IF R NOT = 0
              DISPLAY 'result is not zero: ' R
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2311: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2311"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2311"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2312: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2312"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2312"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1046
#AT_START_1047
at_fn_group_banner 1047 'run_functions.at:2317' \
  "FUNCTION MODULE-CALLER-ID" "                      " 4
at_xfail=no
(
  $as_echo "1047. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           CALL "prog2"
           END-CALL.
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MODULE-CALLER-ID NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2344: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2344"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2344"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2345: \$COMPILE_MODULE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog2.cob" "run_functions.at:2345"
( $at_check_trace; $COMPILE_MODULE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2345"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2346: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2346"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "prog" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2346"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1047
#AT_START_1048
at_fn_group_banner 1048 'run_functions.at:2351' \
  "FUNCTION MODULE-DATE" "                           " 4
at_xfail=no
(
  $as_echo "1048. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-DATE    PIC 9(8) VALUE 0.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MODULE-DATE TO TEST-DATE.
           IF   TEST-DATE NOT = 0
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2370: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2370"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2370"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2371: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2371"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2371"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1048
#AT_START_1049
at_fn_group_banner 1049 'run_functions.at:2376' \
  "FUNCTION MODULE-FORMATTED-DATE" "                 " 4
at_xfail=no
(
  $as_echo "1049. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-DATE    PIC X(16) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MODULE-FORMATTED-DATE TO TEST-DATE.
           IF   TEST-DATE NOT = SPACES
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2395: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2395"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2395"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2396: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2396"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2396"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1049
#AT_START_1050
at_fn_group_banner 1050 'run_functions.at:2401' \
  "FUNCTION MODULE-ID" "                             " 4
at_xfail=no
(
  $as_echo "1050. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MODULE-ID NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2416: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2416"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2416"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2417: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2417"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "prog" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2417"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1050
#AT_START_1051
at_fn_group_banner 1051 'run_functions.at:2422' \
  "FUNCTION MODULE-PATH" "                           " 4
at_xfail=no
(
  $as_echo "1051. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-PATH    PIC X(16) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MODULE-PATH TO TEST-PATH.
           IF   TEST-PATH NOT = SPACES
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2441: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2441"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2441"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2442: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2442"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2442"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1051
#AT_START_1052
at_fn_group_banner 1052 'run_functions.at:2447' \
  "FUNCTION MODULE-SOURCE" "                         " 4
at_xfail=no
(
  $as_echo "1052. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION MODULE-SOURCE NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2462: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2462"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2462"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2463: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2463"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "prog.cob" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2463"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1052
#AT_START_1053
at_fn_group_banner 1053 'run_functions.at:2468' \
  "FUNCTION MODULE-TIME" "                           " 4
at_xfail=no
(
  $as_echo "1053. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-TIME    PIC 9(6) VALUE 0.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MODULE-TIME TO TEST-TIME.
           IF   TEST-TIME NOT = 0
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2487: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2487"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2487"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2488: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2488"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2488"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1053
#AT_START_1054
at_fn_group_banner 1054 'run_functions.at:2493' \
  "FUNCTION MONETARY-DECIMAL-POINT" "                " 4
at_xfail=no
(
  $as_echo "1054. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-FLD     PIC X(8) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MONETARY-DECIMAL-POINT TO TEST-FLD.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2510: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2510"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2510"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2511: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2511"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2511"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1054
#AT_START_1055
at_fn_group_banner 1055 'run_functions.at:2516' \
  "FUNCTION MONETARY-THOUSANDS-SEPARATOR" "          " 4
at_xfail=no
(
  $as_echo "1055. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-FLD     PIC X(8) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION MONETARY-THOUSANDS-SEPARATOR TO TEST-FLD.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2533: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2533"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2533"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2534: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2534"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2534"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1055
#AT_START_1056
at_fn_group_banner 1056 'run_functions.at:2539' \
  "FUNCTION NUMERIC-DECIMAL-POINT" "                 " 4
at_xfail=no
(
  $as_echo "1056. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-FLD     PIC X(8) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION NUMERIC-DECIMAL-POINT TO TEST-FLD.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2556: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2556"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2556"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2557: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2557"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2557"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1056
#AT_START_1057
at_fn_group_banner 1057 'run_functions.at:2562' \
  "FUNCTION NUMERIC-THOUSANDS-SEPARATOR" "           " 4
at_xfail=no
(
  $as_echo "1057. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE SECTION.
       01  TEST-FLD     PIC X(8) VALUE SPACES.
       PROCEDURE        DIVISION.
           MOVE FUNCTION NUMERIC-THOUSANDS-SEPARATOR TO TEST-FLD.
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2579: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2579"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2579"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2580: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2580"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2580"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1057
#AT_START_1058
at_fn_group_banner 1058 'run_functions.at:2585' \
  "FUNCTION NUMVAL" "                                " 4
at_xfail=no
(
  $as_echo "1058. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X1     PIC   X(12) VALUE " -9876.1234 ".
       01  X2     PIC   X(18) VALUE " 19876.1234 CR".
       01  X2b    PIC   X(18) VALUE " 19876.1234 cR".
       01  X2c    PIC   X(18) VALUE " 19876.1234 cr".
       01  X2d    PIC   X(18) VALUE " 19876.1234 Cr".
       01  X3     PIC   X(09) VALUE "-042.3240".
       01  X4     PIC   X(09) VALUE "+04232400".
       01  X5     PIC   X(09) VALUE " 00.00430".
       01  BAD1   PIC   X(18) VALUE " 1. A-0B4.5".
       01  BAD2   PIC   X(20) VALUE "+0@0%0=0*0!0&0^0)10-".
       01  EMPT   PIC   X(20) VALUE SPACE.
       77  CSZE   PIC   9     VALUE 0.
       01  VSIZED.
           03 FILLER  PIC X OCCURS 0 TO 10 DEPENDING ON CSZE.
       01  N      PIC   s9(8)v9(5).
       PROCEDURE        DIVISION.
           MOVE FUNCTION NUMVAL ( X1 ) TO N
           IF N <> -9876.1234
              DISPLAY "X1 '" X1 "' : " N.
           MOVE FUNCTION NUMVAL ( X2 ) TO N
           IF N <> -19876.1234
              DISPLAY "X2 '" X2 "' : " N
           ELSE IF N
            <> FUNCTION NUMVAL ( X2b )
           OR  N
            <> FUNCTION NUMVAL ( X2c )
           OR  N
            <> FUNCTION NUMVAL ( X2d )
              DISPLAY "NUMVAL not case-insensitive!".
           MOVE FUNCTION NUMVAL ( X3 ) TO N
           IF N <> -42.324
              DISPLAY "X3 '" X3 "' : " N.
           MOVE FUNCTION NUMVAL ( X4 ) TO N
           IF N <> 4232400
              DISPLAY "X4 '" X4 "' : " N.
           MOVE FUNCTION NUMVAL ( X5 ) TO N
           IF N <> .0043
              DISPLAY "X5 '" X5 "' : " N.

      *    Note: the following are "empty" tests
           MOVE FUNCTION NUMVAL ( EMPT ) TO N
           IF N <> 0
              DISPLAY "EMPT '" EMPT "' :  " N.
           MOVE FUNCTION NUMVAL ( VSIZED ) TO N
           IF N <> 0
              DISPLAY "VSIZED '" VSIZED "' :  " N.

      *    Note: the following tests with invalid data, pre 3.2
      *          return zero, 3.2+ get "whatever is valid there
      *          (which seem to be what MF is doing)
           MOVE FUNCTION NUMVAL ( BAD1 ) TO N
           IF N <> 0 AND N <> -1.045
              DISPLAY "BAD1 '" BAD1 "' : " N.
           MOVE FUNCTION NUMVAL ( BAD2 ) TO N
           IF N <> 0 AND N <> 10
              DISPLAY "BAD2 '" BAD2 "' : " N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2652: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2652"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2652"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2653: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2653"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2653"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1058
#AT_START_1059
at_fn_group_banner 1059 'run_functions.at:2658' \
  "FUNCTION NUMVAL-C" "                              " 4
at_xfail=no
(
  $as_echo "1059. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X1     PIC   X(14) VALUE " % -9876.1234 ".
       01  X2     PIC   X(18) VALUE " % 19,876.1234 DB".
       01  X2b    PIC   X(18) VALUE " % 19,876.1234 db".
       01  X2c    PIC   X(18) VALUE " % 19,876.1234 Db".
       01  X2d    PIC   X(18) VALUE " % 19,876.1234 dB".
       01  X3     PIC   X(12) VALUE "% -9876.1234".
       01  X4     PIC   X(12) VALUE "019,876.1234".
       01  BAD1   PIC   X(18) VALUE " -19,876.1234 %".
       01  BAD2   PIC   X(18) VALUE "19,87,56.12.34 ".
       01  BAD3   PIC   X(18) VALUE "+19,8756CR1234".
       01  N      PIC   s9(8)v9(5).
       PROCEDURE        DIVISION.
           MOVE FUNCTION NUMVAL-C ( X1 , "%" ) TO N
           IF N NOT = -9876.1234
              DISPLAY "X1 '" X1 "' : " N.
           MOVE FUNCTION NUMVAL-C ( X2 , "%" ) TO N
           IF N NOT = -19876.1234
              DISPLAY "X2 '" X2 "' : " N
           ELSE IF N
            <> FUNCTION NUMVAL ( X2b )
           OR  N
            <> FUNCTION NUMVAL ( X2c )
           OR  N
            <> FUNCTION NUMVAL ( X2d )
              DISPLAY "NUMVAL not case-insensitive!".
           MOVE FUNCTION NUMVAL-C ( X3 , "%" ) TO N
           IF N NOT = -9876.1234
              DISPLAY "X3 '" X3 "' : " N.
           MOVE FUNCTION NUMVAL-C ( X4 , "%" ) TO N
           IF N NOT = 19876.1234
              DISPLAY "X4 '" X4 "' : " N.

      *    Note: the following tests with invalid data, pre 3.2
      *          return zero, 3.2+ get "whatever is valid there
      *          (which seem to be what MF is doing)
           MOVE FUNCTION NUMVAL ( BAD1 ) TO N
           IF N <> 0 AND N <> -19876.1234
              DISPLAY "BAD1 '" BAD1 "' : " N.
           MOVE FUNCTION NUMVAL ( BAD2 ) TO N
           IF N <> 0 AND N <> 198756.1234
              DISPLAY "BAD2 '" BAD2 "' : " N.
           MOVE FUNCTION NUMVAL ( BAD3 ) TO N
           IF N <> 0 AND N <> -198756
              DISPLAY "BAD3 '" BAD3 "' : " N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2713: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2713"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2713"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2714: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2714"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2714"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1059
#AT_START_1060
at_fn_group_banner 1060 'run_functions.at:2719' \
  "FUNCTION NUMVAL-C DP.COMMA" "                     " 4
at_xfail=no
(
  $as_echo "1060. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X1     PIC   X(20) VALUE " % 19.876,1234 DB".
       01  N      PIC   s9(5)v9(5).
       PROCEDURE        DIVISION.
           MOVE FUNCTION NUMVAL-C ( X1 , "%" ) TO N
           IF N NOT = -19876,1234
              DISPLAY "X1 '" X1 "' : " N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2741: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2741"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2741"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2742: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2742"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2742"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1060
#AT_START_1061
at_fn_group_banner 1061 'run_functions.at:2747' \
  "FUNCTION NUMVAL-F" "                              " 4
at_xfail=no
(
  $as_echo "1061. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X1     PIC   X(12) VALUE " -0.1234E+4 ".
       01  X2     PIC   X(12) VALUE " .1234e-2 ".
       01  BAD1   PIC   X(18) VALUE " -000E-12".
       01  N      PIC   s9(8)v9(10).
       PROCEDURE        DIVISION.
           MOVE FUNCTION NUMVAL-F ( X1 ) TO N
           IF N NOT = -1234
              DISPLAY "X1 '" X1 "' : " N.
           MOVE FUNCTION NUMVAL-F ( X2 ) TO N
           IF N NOT = .001234
              DISPLAY "X2 '" X2 "' : " N.

      *    Note: the following tests with invalid data, pre 3.2
      *          return zero, 3.2+ get "whatever is valid there
      *          (which seem to be what MF is doing)
           MOVE FUNCTION NUMVAL-F ( BAD1 ) TO N
           IF N <> 0
              DISPLAY "BAD1 '" BAD1 "' : " N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2776: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2776"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2776"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2777: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2777"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2777"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1061
#AT_START_1062
at_fn_group_banner 1062 'run_functions.at:2782' \
  "FUNCTION ORD" "                                   " 4
at_xfail=no
(
  $as_echo "1062. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION ORD ( "k" )
                   WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2796: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2796"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2796"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2797: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2797"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000000108" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2797"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1062
#AT_START_1063
at_fn_group_banner 1063 'run_functions.at:2803' \
  "FUNCTION ORD-MAX" "                               " 4
at_xfail=no
(
  $as_echo "1063. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION ORD-MAX ( 3 -14 0 8 -3 )
                   WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2817: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2817"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2817"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2818: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2818"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000000004" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2818"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1063
#AT_START_1064
at_fn_group_banner 1064 'run_functions.at:2824' \
  "FUNCTION ORD-MIN" "                               " 4
at_xfail=no
(
  $as_echo "1064. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION ORD-MIN ( 3 -14 0 8 -3 )
                   WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2838: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2838"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2838"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2839: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2839"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000000002" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2839"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1064
#AT_START_1065
at_fn_group_banner 1065 'run_functions.at:2845' \
  "FUNCTION PI" "                                    " 4
at_xfail=no
(
  $as_echo "1065. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   9V9(35).
       PROCEDURE        DIVISION.
           MOVE    FUNCTION PI TO Y.
           IF Y NOT = 3.14159265358979323846264338327950288
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2861: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2861"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2861"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2862: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2862"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2862"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1065
#AT_START_1066
at_fn_group_banner 1066 'run_functions.at:2867' \
  "FUNCTION PRESENT-VALUE" "                         " 4
at_xfail=no
(
  $as_echo "1066. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION PRESENT-VALUE ( 3 2 1 )
                   WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2881: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2881"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2881"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2882: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2882"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00000.5625" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2882"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1066
#AT_START_1067
at_fn_group_banner 1067 'run_functions.at:2888' \
  "FUNCTION RANDOM" "                                " 4
at_xfail=no
(
  $as_echo "1067. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S99V99   COMP VALUE -1.0.
       PROCEDURE        DIVISION.
           MOVE FUNCTION RANDOM ( ) TO Y.
           IF Y < 0
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2904: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2904"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2904"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2905: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2905"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2905"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1067
#AT_START_1068
at_fn_group_banner 1068 'run_functions.at:2910' \
  "FUNCTION RANGE" "                                 " 4
at_xfail=no
(
  $as_echo "1068. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC S9(4)V9(4) COMP-5.
       PROCEDURE        DIVISION.
           MOVE FUNCTION RANGE ( 3 -14 0 8 -3 ) TO Z.
           IF Z NOT = 22
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2926: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2926"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2926"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2927: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2927"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2927"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1068
#AT_START_1069
at_fn_group_banner 1069 'run_functions.at:2932' \
  "FUNCTION REM (valid)" "                           " 4
at_xfail=no
(
  $as_echo "1069. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  R            PIC S9(4)V9(4) COMP-5 VALUE 0.
       PROCEDURE        DIVISION.
           MOVE FUNCTION REM ( -11 5 ) TO R
           IF R NOT = -1
              DISPLAY R.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2948: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2948"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2948"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2949: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2949"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2949"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1069
#AT_START_1070
at_fn_group_banner 1070 'run_functions.at:2954' \
  "FUNCTION REM (invalid)" "                         " 4
at_xfail=no
(
  $as_echo "1070. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  R            PIC S9(4)V9(4) COMP-5 VALUE 4.1.
       01  Z            PIC 9 COMP-5 VALUE 0.
       PROCEDURE        DIVISION.
           MOVE FUNCTION REM ( -11 Z ) TO R
           IF FUNCTION TRIM(FUNCTION EXCEPTION-STATUS)
           NOT = 'EC-ARGUMENT-FUNCTION'
              DISPLAY 'Wrong/missing exception: '
                      FUNCTION EXCEPTION-STATUS.
           IF R NOT = 0
              DISPLAY 'result is not zero: ' R.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2975: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2975"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2975"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2976: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2976"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2976"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1070
#AT_START_1071
at_fn_group_banner 1071 'run_functions.at:2981' \
  "FUNCTION REVERSE" "                               " 4
at_xfail=no
(
  $as_echo "1071. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(10) VALUE "A#B.C%D+E$".
       01  Z   PIC   X(10).
       PROCEDURE        DIVISION.
           MOVE FUNCTION REVERSE ( X ) TO Z.
           IF Z NOT = "$E+D%C.B#A"
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:2998: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:2998"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2998"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:2999: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:2999"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:2999"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1071
#AT_START_1072
at_fn_group_banner 1072 'run_functions.at:3004' \
  "FUNCTION REVERSE with reference modding" "        " 4
at_xfail=no
(
  $as_echo "1072. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(10) VALUE "A#B.C%D+E$".
       01  Z   PIC   X(10).
       PROCEDURE        DIVISION.
           MOVE FUNCTION REVERSE ( X ) (1 : 4) TO Z.
           IF Z NOT = "$E+D      "
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3021: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3021"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3021"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3022: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3022"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3022"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1072
#AT_START_1073
at_fn_group_banner 1073 'run_functions.at:3027' \
  "FUNCTION SECONDS-FROM-FORMATTED-TIME" "           " 4
at_xfail=no
(
  $as_echo "1073. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  result       PIC 9(8)V9(9) COMP-5.
       PROCEDURE        DIVISION.
           MOVE FUNCTION SECONDS-FROM-FORMATTED-TIME
                    ("hhmmss", "010203")
               TO result.
           IF result NOT = 3723
              DISPLAY "Test 1 failed: " result.

           MOVE FUNCTION SECONDS-FROM-FORMATTED-TIME
                    ("hh:mm:ss", "01:02:03")
               TO result.
           IF result NOT = 3723
              DISPLAY "Test 2 failed: " result.

           MOVE FUNCTION SECONDS-FROM-FORMATTED-TIME
                    ("hhmmss.ssssssss", "010203.04050607")
               TO result.
           IF result NOT = 3723.04050607
              DISPLAY "Test 3 failed: " result.

           MOVE FUNCTION SECONDS-FROM-FORMATTED-TIME
                    ("hhmmssZ", "010203Z")
               TO result.
           IF result NOT = 3723
               DISPLAY "Test 4 failed: " result.

           MOVE FUNCTION SECONDS-FROM-FORMATTED-TIME
                    ("hhmmss+hhmm", "010203+0405")
               TO result.
           IF result NOT = 3723
              DISPLAY "Test 5 failed: " result.

           MOVE FUNCTION SECONDS-FROM-FORMATTED-TIME
                    ("YYYYMMDDThhmmss", "16010101T010203")
               TO result.
           IF result NOT = 3723
              DISPLAY "Test 6 failed: " result.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3076: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3076"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3076"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3077: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3077"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3077"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1073
#AT_START_1074
at_fn_group_banner 1074 'run_functions.at:3082' \
  "FUNCTION SECONDS-PAST-MIDNIGHT" "                 " 4
at_xfail=no
(
  $as_echo "1074. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC      9(8)   COMP-5.
       PROCEDURE        DIVISION.
           MOVE FUNCTION SECONDS-PAST-MIDNIGHT TO Y.
           IF Y NOT < 86402
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3098: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3098"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3098"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3099: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3099"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3099"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1074
#AT_START_1075
at_fn_group_banner 1075 'run_functions.at:3104' \
  "FUNCTION SIGN" "                                  " 4
at_xfail=no
(
  $as_echo "1075. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            USAGE BINARY-LONG SIGNED.
       01  F            USAGE FLOAT-LONG.
       PROCEDURE        DIVISION.
           MOVE FUNCTION SIGN ( 3.12345 ) TO Z.
           IF Z NOT = 1
              DISPLAY "Sign 1 " Z.
           MOVE FUNCTION SIGN ( -0.0 ) TO Z.
           IF Z NOT = 0
              DISPLAY "Sign 2 " Z.
           MOVE FUNCTION SIGN ( 0.0 ) TO Z.
           IF Z NOT = 0
              DISPLAY "Sign 3 " Z.
           MOVE FUNCTION SIGN ( -3.12345 ) TO Z.
           IF Z NOT = -1
              DISPLAY "Sign 4 " Z.
           MOVE 3.12345 TO F
           MOVE FUNCTION SIGN ( F ) TO Z.
           IF Z NOT = 1
              DISPLAY "Sign 5 " Z.
           MOVE -0.0 TO F
           MOVE FUNCTION SIGN ( F ) TO Z.
           IF Z NOT = 0
              DISPLAY "Sign 6 " Z.
           MOVE -3.12345 TO F
           MOVE FUNCTION SIGN ( F ) TO Z.
           IF Z NOT = -1
              DISPLAY "Sign 7 " Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3142: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3142"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3142"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3143: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3143"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3143"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1075
#AT_START_1076
at_fn_group_banner 1076 'run_functions.at:3148' \
  "FUNCTION SIN" "                                   " 4
at_xfail=no
(
  $as_echo "1076. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION SIN ( 1.5 ) TO Y.
           IF Y NOT = 0.99749498660405443094172337114148732
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3164: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3164"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3164"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3165: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3165"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3165"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1076
#AT_START_1077
at_fn_group_banner 1077 'run_functions.at:3170' \
  "FUNCTION SQRT" "                                  " 4
at_xfail=no
(
  $as_echo "1077. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION SQRT ( 1.5 ) TO Y.
           IF Y NOT = 1.22474487139158904909864203735294569
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3186: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3186"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3186"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3187: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3187"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3187"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1077
#AT_START_1078
at_fn_group_banner 1078 'run_functions.at:3192' \
  "FUNCTION STANDARD-DEVIATION" "                    " 4
at_xfail=no
(
  $as_echo "1078. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S9V9(35).
       PROCEDURE        DIVISION.
           MOVE FUNCTION STANDARD-DEVIATION ( 3 -14 0 8 -3 ) TO Y.
           IF Y NOT = 7.35934779718963954877237043574538183
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3208: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3208"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3208"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3209: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3209"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3209"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1078
#AT_START_1079
at_fn_group_banner 1079 'run_functions.at:3214' \
  "FUNCTION STORED-CHAR-LENGTH" "                    " 4
at_xfail=no
(
  $as_echo "1079. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   X(24).
       01  Z   USAGE BINARY-LONG.
       PROCEDURE        DIVISION.
           MOVE "123456789012" TO Y.
           MOVE FUNCTION STORED-CHAR-LENGTH ( Y ) TO Z.
           IF Z NOT = 12
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3232: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3232"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3232"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3233: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3233"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3233"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1079
#AT_START_1080
at_fn_group_banner 1080 'run_functions.at:3238' \
  "FUNCTION SUBSTITUTE" "                            " 4
at_xfail=no
(
  $as_echo "1080. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   X(20).
       01  Z   PIC   X(20) VALUE ALL '_'.
       PROCEDURE        DIVISION.
           MOVE "abc111444555defxxabc" TO Y.
           STRING FUNCTION SUBSTITUTE ( Y "abc" "zz" "55" "666" )
                  DELIMITED BY SIZE
                  INTO Z
           END-STRING
           IF Z NOT = "zz1114446665defxxzz_"
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3259: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3259"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3259"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3260: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3260"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3260"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1080
#AT_START_1081
at_fn_group_banner 1081 'run_functions.at:3265' \
  "FUNCTION SUBSTITUTE with reference modding" "     " 4
at_xfail=no
(
  $as_echo "1081. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   X(20).
       01  Z   PIC   X(20).
       PROCEDURE        DIVISION.
           MOVE "abc111444555defxxabc" TO Y.
           MOVE FUNCTION SUBSTITUTE
                   ( Y "abc" "zz" "55" "666" ) (2 : 9)
                TO Z.
           IF Z NOT = "z11144466"
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3285: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3285"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3285"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3286: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3286"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3286"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1081
#AT_START_1082
at_fn_group_banner 1082 'run_functions.at:3291' \
  "FUNCTION SUBSTITUTE-CASE" "                       " 4
at_xfail=no
(
  $as_echo "1082. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   X(20).
       01  Z   PIC   X(20).
       PROCEDURE        DIVISION.
           MOVE "ABC111444555defxxabc" TO Y.
           MOVE FUNCTION SUBSTITUTE-CASE (Y "abc" "zz" "55" "666")
                TO Z.
           IF Z NOT = "zz1114446665defxxzz"
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3310: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3310"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3310"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3311: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3311"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3311"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1082
#AT_START_1083
at_fn_group_banner 1083 'run_functions.at:3316' \
  "FUNCTION SUBSTITUTE-CASE with reference mod" "    " 4
at_xfail=no
(
  $as_echo "1083. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   X(20).
       01  Z   PIC   X(20).
       PROCEDURE        DIVISION.
           MOVE "abc111444555defxxabc" TO Y.
           MOVE FUNCTION SUBSTITUTE-CASE
                   ( Y "ABC" "zz" "55" "666" ) (2 : 9)
                TO Z.
           IF Z NOT = "z11144466"
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3336: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3336"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3336"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3337: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3337"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3337"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1083
#AT_START_1084
at_fn_group_banner 1084 'run_functions.at:3342' \
  "FUNCTION SUM" "                                   " 4
at_xfail=no
(
  $as_echo "1084. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            USAGE BINARY-LONG.
       PROCEDURE        DIVISION.
           MOVE FUNCTION SUM ( 3 -14 0 8 -3 ) TO Z.
           IF Z NOT = -6
              DISPLAY Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3358: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3358"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3358"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3359: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3359"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3359"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1084
#AT_START_1085
at_fn_group_banner 1085 'run_functions.at:3364' \
  "FUNCTION TAN" "                                   " 4
at_xfail=no
(
  $as_echo "1085. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Y   PIC   S99V9(34).
       PROCEDURE        DIVISION.
           MOVE FUNCTION TAN ( 1.5 ) TO Y.
           IF Y NOT = 14.1014199471717193876460836519877564
              DISPLAY Y.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3380: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3380"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3380"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3381: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3381"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3381"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1085
#AT_START_1086
at_fn_group_banner 1086 'run_functions.at:3386' \
  "FUNCTION TEST-DATE-YYYYMMDD" "                    " 4
at_xfail=no
(
  $as_echo "1086. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
      *> explicit DISPLAY to verify size
           DISPLAY FUNCTION TEST-DATE-YYYYMMDD (20020231)
                   WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3401: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3401"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3401"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3402: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3402"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000000003" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3402"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1086
#AT_START_1087
at_fn_group_banner 1087 'run_functions.at:3408' \
  "FUNCTION TEST-DAY-YYYYDDD" "                      " 4
at_xfail=no
(
  $as_echo "1087. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
      *> explicit DISPLAY to verify size
           DISPLAY FUNCTION TEST-DAY-YYYYDDD (2002400)
                   WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3423: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3423"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3423"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3424: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3424"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "000000002" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3424"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1087
#AT_START_1088
at_fn_group_banner 1088 'run_functions.at:3430' \
  "FUNCTION TEST-FORMATTED-DATETIME with dates" "    " 4
at_xfail=no
(
  $as_echo "1088. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog.
        DATA             DIVISION.
        WORKING-STORAGE  SECTION.
        PROCEDURE        DIVISION.
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "16010101") <> 0
                DISPLAY "Test 1 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYY-MM-DD", "1601-01-01") <> 0
                DISPLAY "Test 2 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYDDD", "1601001") <> 0
                DISPLAY "Test 3 failed"
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYY-DDD", "1601-001") <> 0
                DISPLAY "Test 4 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYWwwD", "1601W011") <> 0
                DISPLAY "Test 5 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYY-Www-D", "1601-W01-1") <> 0
                DISPLAY "Test 6 failed".


            *> How will this work with zero-length items?
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "1") <> 2
                DISPLAY "Test 7 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "160A0101") <> 4
                DISPLAY "Test 8 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "00000101") <> 1
                DISPLAY "Test 9 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "16000101") <> 4
                DISPLAY "Test 10 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "16010001") <> 6
                DISPLAY "Test 11 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "16011301") <> 6
                DISPLAY "Test 12 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "16010190") <> 7
                DISPLAY "Test 13 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "18000229") <> 8
                DISPLAY "Test 14 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYY-MM-DD", "1601 01 01") <> 5
                DISPLAY "Test 15 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "160101010") <> 9
                DISPLAY "Test 16 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYWwwD", "1601A011") <> 5
                DISPLAY "Test 17 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYWwwD", "1601W531") <> 7
                DISPLAY "Test 18 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYWwwD", "1601W601") <> 6
                DISPLAY "Test 19 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYWwwD", "2009W531") <> 0
                DISPLAY "Test 20 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYWwwD", "1601W018") <> 8
                DISPLAY "Test 21 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYDDD", "1601366") <> 7
                DISPLAY "Test 22 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYDDD", "1601370") <> 6
                DISPLAY "Test 23 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYDDD", "1601400") <> 5
                DISPLAY "Test 24 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "01") <> 1
                DISPLAY "Test 25 failed".
            IF FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYMMDD", "1601010") <> 8
                DISPLAY "Test 26 failed".

            STOP RUN
            .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3525: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3525"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3525"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3526: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3526"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3526"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1088
#AT_START_1089
at_fn_group_banner 1089 'run_functions.at:3531' \
  "FUNCTION TEST-FORMATTED-DATETIME with times" "    " 4
at_xfail=no
(
  $as_echo "1089. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog.
        DATA             DIVISION.
        WORKING-STORAGE  SECTION.
        PROCEDURE        DIVISION.
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss.sssssssssZ", "000000.000000000Z") <> 0
                DISPLAY "Test 1 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hh:mm:ss.sssssssssZ", "00:00:00.000000000Z") <> 0
                DISPLAY "Test 2 failed" END-DISPLAY
            END-IF
            *> 0 instead of +/- valid in sending fields with offset of zero.
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss.sssssssss+hhmm", "000000.00000000000000")
                    <> 0
                DISPLAY "Test 3 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hh:mm:ss.sssssssss+hh:mm",
                    "00:00:00.000000000+00:00")
                    <> 0
                DISPLAY "Test 4 failed" END-DISPLAY
            END-IF

            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss", "300000") <> 1
                DISPLAY "Test 5 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss", "250000") <> 2
                DISPLAY "Test 6 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss", "006000") <> 3
                DISPLAY "Test 7 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss", "000060") <> 5
                DISPLAY "Test 8 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hh:mm:ss", "00-00-00") <> 3
                DISPLAY "Test 9 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss.ss", "000000,00") <> 7
                DISPLAY "Test 10 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss+hhmm", "000000 0000") <> 7
                DISPLAY "Test 11 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss+hhmm", "00000000001") <> 11
                DISPLAY "Test 12 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmssZ", "000000A") <> 7
                DISPLAY "Test 13 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss", SPACE) <> 1
                DISPLAY "Test 14 failed" END-DISPLAY
            END-IF

            STOP RUN
            .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3606: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3606"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3606"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3607: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3607"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3607"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1089
#AT_START_1090
at_fn_group_banner 1090 'run_functions.at:3612' \
  "FUNCTION TEST-FORMATTED-DATETIME with datetimes" "" 4
at_xfail=no
(
  $as_echo "1090. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog.
        DATA             DIVISION.
        WORKING-STORAGE  SECTION.
        77 RESULT        PIC 9(02).
        PROCEDURE        DIVISION.
            MOVE FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYYMMDDThhmmss", "16010101T000000")
              TO RESULT
            IF RESULT <> 0
               DISPLAY "Test 1 failed: " RESULT END-DISPLAY
            END-IF
            MOVE FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYY-MM-DDThh:mm:ss.sssssssss+hh:mm",
                    "1601-01-01T00:00:00.000000000+00:00")
              TO RESULT
            IF RESULT <> 0
               DISPLAY "Test 2 failed: " RESULT END-DISPLAY
            END-IF

            MOVE FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYYMMDDThhmmss", "16010101 000000")
              TO RESULT
            IF RESULT <> 9
               DISPLAY "Test 3 failed: " RESULT END-DISPLAY
            END-IF
            MOVE FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYYMMDDThhmmss", SPACE)
              TO RESULT
            IF RESULT <> 1
               DISPLAY "Test 4 failed: " RESULT END-DISPLAY
            END-IF
            MOVE FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYYMMDDThhmmss", "16010101T      ")
              TO RESULT
            IF RESULT <> 10
               DISPLAY "Test 5 failed: " RESULT END-DISPLAY
            END-IF

            STOP RUN
            .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3659: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3659"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3659"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3660: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3660"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3660"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1090
#AT_START_1091
at_fn_group_banner 1091 'run_functions.at:3665' \
  "FUNCTION TEST-FORMATTED-DATETIME DP.COMMA" "      " 4
at_xfail=no
(
  $as_echo "1091. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION   DIVISION.
        PROGRAM-ID.      prog.
        ENVIRONMENT      DIVISION.
        CONFIGURATION    SECTION.
        SPECIAL-NAMES.
            DECIMAL-POINT IS COMMA.
        DATA             DIVISION.
        WORKING-STORAGE  SECTION.
        PROCEDURE        DIVISION.
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss,ss", "000000,00") <> 0
                DISPLAY "Test 1 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYYMMDDThhmmss,ss", "16010101T000000,00") <> 0
                DISPLAY "Test 2 failed" END-DISPLAY
            END-IF

            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("hhmmss,ss", "000000.00") <> 7
                DISPLAY "Test 3 failed" END-DISPLAY
            END-IF
            IF FUNCTION TEST-FORMATTED-DATETIME
                    ("YYYYMMDDThhmmss,ss", "16010101T000000.00") <> 16
                DISPLAY "Test 4 failed" END-DISPLAY
            END-IF

            STOP RUN
            .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3700: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3700"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3700"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3701: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3701"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3701"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1091
#AT_START_1092
at_fn_group_banner 1092 'run_functions.at:3706' \
  "FUNCTION TEST-NUMVAL" "                           " 4
at_xfail=no
(
  $as_echo "1092. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 RESULT        USAGE BINARY-LONG.
       01 EMPTY.
        03 PIC X OCCURS 0 TO 5 DEPENDING ON RESULT.
       PROCEDURE        DIVISION.
           MOVE FUNCTION TEST-NUMVAL ("+ 1")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 1  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL (" + 1")    TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 2  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("- 1")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 3  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL (" - 1")    TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 4  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("+- 1")    TO RESULT
           IF RESULT NOT = 2
              DISPLAY "Test 5  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1 +")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 6  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1 -")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 7  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1 +-")    TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 8  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1 -+")    TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 9  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("+ 1.1")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 10 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("- 1.1")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 11 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 +")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 12 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 -")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 13 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 CR")  TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 14 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 DB")  TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 15 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 -CR") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 16 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 +DB") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 17 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 CDB") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 18 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("+1.1 CR") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 19 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("+      ") TO RESULT
           IF RESULT NOT = 8
              DISPLAY "Test 20 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("  0.   ") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 21 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("  .0   ") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 22 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("  . 0") TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 23 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("  0 .") TO RESULT
           IF RESULT NOT = 5
              DISPLAY "Test 24 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("   0+0") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 25 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("   0+  0") TO RESULT
           IF RESULT NOT = 8
              DISPLAY "Test 26 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("1.1 D")  TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 27 fail: " RESULT.

      *    MOVE FUNCTION TEST-NUMVAL ("") TO RESULT
           MOVE 0 TO RESULT
           MOVE FUNCTION TEST-NUMVAL (EMPTY) TO RESULT
           IF RESULT NOT = 1
              DISPLAY "Test 28 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("   ") TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 29 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("  .") TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 30 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL ("    ") TO RESULT
           IF RESULT NOT = 5
              DISPLAY "Test 31 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL (" 1  T") TO RESULT
           IF RESULT NOT = 5
              DISPLAY "Test 32 fail: " RESULT.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3851: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3851"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3851"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3852: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3852"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3852"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1092
#AT_START_1093
at_fn_group_banner 1093 'run_functions.at:3857' \
  "FUNCTION TEST-NUMVAL-C" "                         " 4
at_xfail=no
(
  $as_echo "1093. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 RESULT        USAGE BINARY-LONG.
       PROCEDURE        DIVISION.

           MOVE FUNCTION TEST-NUMVAL-C ("+ 1")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 1  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C (" + 1")    TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 2  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("- 1")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 3  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C (" - 1")    TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 4  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("+- 1")    TO RESULT
           IF RESULT NOT = 2
              DISPLAY "Test 5  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1 +")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 6  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1 -")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 7  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1 +-")    TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 8  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1 -+")    TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 9  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("+ 1.1")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 10 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("- 1.1")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 11 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1.1 +")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 12 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1.1 -")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 13 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1.1 CR")  TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 14 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1.1 DB")  TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 15 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("1.1 -CR") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 16 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("+ $1.1 ") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 17 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("- $1.1 ") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 18 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("+ X1.1 ", "X") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 19 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-C ("- X1.1 ", "X") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 20 fail: " RESULT.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:3951: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:3951"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3951"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:3952: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:3952"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:3952"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1093
#AT_START_1094
at_fn_group_banner 1094 'run_functions.at:3957' \
  "FUNCTION TEST-NUMVAL-F" "                         " 4
at_xfail=no
(
  $as_echo "1094. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 RESULT        USAGE BINARY-LONG.
       PROCEDURE        DIVISION.

           MOVE FUNCTION TEST-NUMVAL-F ("+ 1")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 1  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F (" + 1")    TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 2  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("- 1")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 3  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F (" - 1")    TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 4  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("+- 1")    TO RESULT
           IF RESULT NOT = 2
              DISPLAY "Test 5  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1 +")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 6  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1 -")     TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 7  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1 +-")    TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 8  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1 -+")    TO RESULT
           IF RESULT NOT = 4
              DISPLAY "Test 9  fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("+ 1.1")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 10 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("- 1.1")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 11 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1 +")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 12 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1 -")   TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 13 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1   ")  TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 14 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1   ")  TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 15 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1 -CR") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 16 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1 E+1") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 17 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1 E -1") TO RESULT
           IF RESULT NOT = 0
              DISPLAY "Test 18 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("1.1 EE") TO RESULT
           IF RESULT NOT = 6
              DISPLAY "Test 19 fail: " RESULT.

           MOVE FUNCTION TEST-NUMVAL-F ("+1.1 E001") TO RESULT
           IF RESULT NOT = 7
              DISPLAY "Test 20 fail: " RESULT.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4051: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4051"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4051"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4052: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4052"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4052"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1094
#AT_START_1095
at_fn_group_banner 1095 'run_functions.at:4057' \
  "FUNCTION TRIM" "                                  " 4
at_xfail=no
(
  $as_echo "1095. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(12) VALUE " a#b.c%d+e$ ".
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION TRIM ( X )
           END-DISPLAY.
           DISPLAY FUNCTION TRIM ( X TRAILING )
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4074: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4074"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4074"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4075: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4075"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "a#b.c%d+e\$
 a#b.c%d+e\$
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4075"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1095
#AT_START_1096
at_fn_group_banner 1096 'run_functions.at:4083' \
  "FUNCTION TRIM with reference modding" "           " 4
at_xfail=no
(
  $as_echo "1096. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(12) VALUE " a#b.c%d+e$ ".
       PROCEDURE        DIVISION.
           DISPLAY FUNCTION TRIM ( X ) (2 : 3)
           END-DISPLAY.
           DISPLAY FUNCTION TRIM ( X TRAILING ) (2 : 3)
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4100: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4100"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4100"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4101: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4101"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "#b.
a#b
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4101"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1096
#AT_START_1097
at_fn_group_banner 1097 'run_functions.at:4109' \
  "FUNCTION TRIM zero length" "                      " 4
at_xfail=no
(
  $as_echo "1097. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(4) VALUE "NOOK".
       PROCEDURE        DIVISION.
           MOVE FUNCTION TRIM ( "  " ) TO X.
           DISPLAY ">" X "<"
           END-DISPLAY.
           DISPLAY ">" FUNCTION TRIM ( "   " ) "<"
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4127: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4127"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4127"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4128: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4128"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo ">    <
><
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4128"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1097
#AT_START_1098
at_fn_group_banner 1098 'run_functions.at:4136' \
  "FUNCTION UPPER-CASE" "                            " 4
at_xfail=no
(
  $as_echo "1098. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(10) VALUE "a#b.c%d+e$".
       01  Z   PIC   X(10).
       PROCEDURE        DIVISION.
           MOVE FUNCTION UPPER-CASE ( X ) TO Z.
           IF Z NOT = "A#B.C%D+E$"
              DISPLAY Z
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4155: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4155"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4155"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4156: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4156"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4156"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1098
#AT_START_1099
at_fn_group_banner 1099 'run_functions.at:4161' \
  "FUNCTION UPPER-CASE with reference modding" "     " 4
at_xfail=no
(
  $as_echo "1099. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X   PIC   X(10) VALUE "a#b.c%d+e$".
       01  Z   PIC   X(4).
       PROCEDURE        DIVISION.
           MOVE FUNCTION UPPER-CASE ( X ) (1 : 3) TO Z.
           IF Z NOT = "A#B "
              DISPLAY Z
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4180: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4180"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4180"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4181: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4181"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4181"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1099
#AT_START_1100
at_fn_group_banner 1100 'run_functions.at:4186' \
  "FUNCTION VARIANCE" "                              " 4
at_xfail=no
(
  $as_echo "1100. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC S9(4)V9(8).
       PROCEDURE        DIVISION.
           MOVE FUNCTION VARIANCE ( 3 -14 0 8 -3 ) TO Z.
           IF Z NOT = 54.16
              DISPLAY 'EXP 54.16 GOT ' Z.
      *>   COMPUTE has maximum possible intermediate
      *>   results via GMP - and thefore a different
      *>   set of function calls to set Z - this one
      *>   here is used for "huge decimal number from
      *>   display"
           COMPUTE Z = FUNCTION VARIANCE(4, 0, 5).
           IF Z NOT = 4.66666666
              DISPLAY 'EXP 4.66666666 GOT ' Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4210: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4210"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4210"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4211: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4211"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4211"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1100
#AT_START_1101
at_fn_group_banner 1101 'run_functions.at:4216' \
  "FUNCTION WHEN-COMPILED" "                         " 4
at_xfail=no
(
  $as_echo "1101. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  compiled-datetime.
           03  compiled-date.
               05  millennium PIC X.
               05  FILLER    PIC X(15).
           03  timezone  PIC X(5).
       PROCEDURE        DIVISION.
           *> Check millennium.
           MOVE FUNCTION WHEN-COMPILED TO compiled-datetime.
           IF millennium NOT = "2"
              DISPLAY "Millennium NOT OK: " millennium
              END-DISPLAY
           END-IF.

           *> Check timezone.
           IF timezone NOT = FUNCTION CURRENT-DATE (17:5)
              DISPLAY "Timezone NOT OK: " timezone
              END-DISPLAY
           END-IF.

           *> Check date format.
           INSPECT compiled-date CONVERTING "0123456789"
               TO "9999999999".
           IF compiled-date NOT = ALL "9"
               DISPLAY "Date format NOT OK: " compiled-date
               END-DISPLAY
           END-IF.

           *> Check timezone format.
           IF timezone NOT = "00000"
               INSPECT timezone CONVERTING "0123456789"
                   TO "9999999999"
               IF timezone NOT = "+9999" AND "-9999"
                   DISPLAY "Timezone format NOT OK: " timezone
                   END-DISPLAY
               END-IF
           END-IF.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4264: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4264"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4264"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4265: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4265"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4265"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1101
#AT_START_1102
at_fn_group_banner 1102 'run_functions.at:4270' \
  "FUNCTION YEAR-TO-YYYY" "                          " 4
at_xfail=no
(
  $as_echo "1102. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            USAGE BINARY-LONG.
       PROCEDURE        DIVISION.
           MOVE FUNCTION YEAR-TO-YYYY ( 50 ) TO Z.
           IF Z NOT = 2050
              DISPLAY Z
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4288: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4288"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4288"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4289: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4289"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4289"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1102
#AT_START_1103
at_fn_group_banner 1103 'run_functions.at:4294' \
  "Formatted funcs w/ invalid variable format" "     " 4
at_xfail=no
(
  $as_echo "1103. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  invalid-date-format          PIC X(10) VALUE "yyyymmdd".
       01  invalid-datetime-format      PIC X(17)
                                        VALUE "yyyymmddtHHMMSS".
       01  invalid-time-format          PIC X(6) VALUE "HHMMSS".
       PROCEDURE        DIVISION.
           IF FUNCTION FORMATTED-CURRENT-DATE
                           (invalid-date-format) <> SPACES
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 11"
               DISPLAY "Test 1 failed" END-DISPLAY
           END-IF

           IF FUNCTION FORMATTED-DATE (invalid-date-format, 1) <> SPACES
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 18"
               DISPLAY "Test 2 failed" END-DISPLAY
           END-IF

           IF FUNCTION FORMATTED-DATETIME
                           (invalid-datetime-format, 1, 1) <> SPACES
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 24"
               DISPLAY "Test 3 failed" END-DISPLAY
           END-IF

           IF FUNCTION FORMATTED-TIME (invalid-time-format, 1) <> SPACES
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 31"
               DISPLAY "Test 4 failed" END-DISPLAY
           END-IF

           IF FUNCTION INTEGER-OF-FORMATTED-DATE
                           (invalid-date-format, 1) <> ZERO
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 37"
               DISPLAY "Test 5 failed" END-DISPLAY
           END-IF

           IF FUNCTION SECONDS-FROM-FORMATTED-TIME
                           (invalid-time-format, 1) <> ZERO
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 44"
               DISPLAY "Test 6 failed" END-DISPLAY
           END-IF

           IF FUNCTION TEST-FORMATTED-DATETIME
                           (invalid-datetime-format, 1) <> ZERO
                  OR FUNCTION EXCEPTION-STATUS <> "EC-ARGUMENT-FUNCTION"
                  OR FUNCTION EXCEPTION-LOCATION <> "prog; ; 51"
               DISPLAY "Test 7 failed" END-DISPLAY
           END-IF

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4358: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4358"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:11: warning: FUNCTION 'FORMATTED-CURRENT-DATE' has format in variable
prog.cob:18: warning: FUNCTION 'FORMATTED-DATE' has format in variable
prog.cob:24: warning: FUNCTION 'FORMATTED-DATETIME' has format in variable
prog.cob:31: warning: FUNCTION 'FORMATTED-TIME' has format in variable
prog.cob:37: warning: FUNCTION 'INTEGER-OF-FORMATTED-DATE' has format in variable
prog.cob:44: warning: FUNCTION 'SECONDS-FROM-FORMATTED-TIME' has format in variable
prog.cob:51: warning: FUNCTION 'TEST-FORMATTED-DATETIME' has format in variable
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4358"
$at_failed && at_fn_log_failure
$at_traceon; }


# running the program
{ set +x
$as_echo "$at_srcdir/run_functions.at:4369: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4369"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4369"
$at_failed && at_fn_log_failure
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1103
#AT_START_1104
at_fn_group_banner 1104 'run_functions.at:4375' \
  "FORMATTED-(DATE)TIME with SYSTEM-OFFSET" "        " 4
at_xfail=no
(
  $as_echo "1104. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.
       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  str         PIC X(30).
       77  val         pic 9(02).

       PROCEDURE DIVISION.
           MOVE FUNCTION FORMATTED-DATETIME
                    ("YYYYDDDThhmmss+hhmm", 1, 45296, SYSTEM-OFFSET)
               TO str
           MOVE FUNCTION TEST-FORMATTED-DATETIME
                   ("YYYYDDDThhmmss+hhmm", str) TO val
           IF val not = 0
               DISPLAY "Test 1 failed: " str ' - ' val END-DISPLAY
           END-IF

           MOVE FUNCTION FORMATTED-TIME
                    ("hhmmss.ssZ", 45296, SYSTEM-OFFSET)
               TO str
           MOVE FUNCTION TEST-FORMATTED-DATETIME
                   ("hhmmss.ssZ", str) TO val
           IF val not = 0
               DISPLAY "Test 2 failed: " str ' - ' val END-DISPLAY
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4407: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4407"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4407"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4408: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4408"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4408"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1104
#AT_START_1105
at_fn_group_banner 1105 'run_functions.at:4413' \
  "Intrinsics without FUNCTION keyword (1)" "        " 4
at_xfail=no
(
  $as_echo "1105. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC 99V99.
       PROCEDURE        DIVISION.
           MOVE PI TO Z.
           MOVE E TO Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4428: \$COMPILE -fintrinsics=all prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fintrinsics=all prog.cob" "run_functions.at:4428"
( $at_check_trace; $COMPILE -fintrinsics=all prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4428"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4429: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4429"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4429"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1105
#AT_START_1106
at_fn_group_banner 1106 'run_functions.at:4434' \
  "Intrinsics without FUNCTION keyword (2)" "        " 4
at_xfail=no
(
  $as_echo "1106. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC 99V99.
       PROCEDURE        DIVISION.
           MOVE PI TO Z.
           MOVE E TO Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4449: \$COMPILE -fintrinsics=pi,e prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fintrinsics=pi,e prog.cob" "run_functions.at:4449"
( $at_check_trace; $COMPILE -fintrinsics=pi,e prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4449"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4450: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4450"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4450"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1106
#AT_START_1107
at_fn_group_banner 1107 'run_functions.at:4457' \
  "User-Defined FUNCTION with/without parameter" "   " 4
at_xfail=no
(
  $as_echo "1107. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     WITHPAR.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR-IN        PIC 9.
       01 PAR-OUT       PIC 9.
       PROCEDURE DIVISION USING PAR-IN RETURNING PAR-OUT.
           ADD 1 TO PAR-IN GIVING PAR-OUT END-ADD.
           GOBACK.
       END FUNCTION WITHPAR.

       IDENTIFICATION   DIVISION.
       FUNCTION-ID.     WITHOUTPAR.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 PAR           PIC 9.
       PROCEDURE DIVISION RETURNING PAR.
           MOVE 1 TO PAR.
           GOBACK.
       END FUNCTION WITHOUTPAR.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       CONFIGURATION    SECTION.
       REPOSITORY.
           FUNCTION     WITHPAR
           FUNCTION     WITHOUTPAR.
       PROCEDURE        DIVISION.
           IF WITHPAR(1) NOT = 2
              DISPLAY WITHPAR(1)
              END-DISPLAY
           END-IF.
           IF WITHOUTPAR NOT = 1
              DISPLAY WITHOUTPAR
              END-DISPLAY
           END-IF.
           STOP RUN.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4502: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4502"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4502"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4503: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4503"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4503"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1107
#AT_START_1108
at_fn_group_banner 1108 'run_functions.at:4508' \
  "UDF in COMPUTE" "                                 " 4
at_xfail=no
(
  $as_echo "1108. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. func.

       DATA DIVISION.
       LINKAGE SECTION.
       01  num PIC 999.

       PROCEDURE DIVISION RETURNING num.
           MOVE 100 TO num
           .
       END FUNCTION func.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION func.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  x PIC 999.

       PROCEDURE DIVISION.
           COMPUTE x = 101 + FUNCTION func
           DISPLAY x
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4543: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4543"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4543"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4544: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4544"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "201
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4544"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1108
#AT_START_1109
at_fn_group_banner 1109 'run_functions.at:4551' \
  "UDF replacing intrinsic function" "               " 4
at_xfail=no
(
  $as_echo "1109. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. SUBSTITUTE.

       DATA DIVISION.
       LINKAGE SECTION.
       01  func-in  PIC X(15).
       01  func-sub PIC X.
       01  func-out PIC X(15).

       PROCEDURE DIVISION USING func-in, func-sub RETURNING func-out.
           MOVE func-in TO func-out
           INSPECT func-out REPLACING ALL '%' BY func-sub
           .
       END FUNCTION SUBSTITUTE.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION SUBSTITUTE
           .
       PROCEDURE DIVISION.
           DISPLAY '"' FUNCTION SUBSTITUTE(" % C%O%B%O%L % ", "_") '"'
           DISPLAY '"' FUNCTION SUBSTITUTE(" % C%O%B%O%L % ", "-") '"'
           .
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4585: \$COMPILE -fnot-intrinsic=substitute prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnot-intrinsic=substitute prog.cob" "run_functions.at:4585"
( $at_check_trace; $COMPILE -fnot-intrinsic=substitute prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4585"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_functions.at:4586: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4586"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "\" _ C_O_B_O_L _ \"
\" - C-O-B-O-L - \"
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4586"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1109
#AT_START_1110
at_fn_group_banner 1110 'run_functions.at:4594' \
  "UDF with recursion" "                             " 4
at_xfail=no
(
  $as_echo "1110. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_functions.at:4597" >"$at_check_line_file"
at_fn_check_skip 77 "$at_srcdir/run_functions.at:4597"	# see bug #222 and r2291 - postponed

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       FUNCTION-ID. foo.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  ttl  PIC 9 VALUE 1.

       LOCAL-STORAGE SECTION.
       01  num  PIC 9.

       LINKAGE SECTION.
       01  arg PIC 9.
       01  ret PIC 9.

       PROCEDURE DIVISION USING arg RETURNING ret.
           IF arg < 5
              ADD 1 TO arg GIVING num END-ADD
              MOVE FUNCTION foo (num) TO ret
           ELSE
              MOVE arg TO ret
           END-IF
           DISPLAY "Step: " ttl ", Arg: " arg ", Return: " ret
           END-DISPLAY
           ADD 1 to ttl END-ADD
           GOBACK.
       END FUNCTION foo.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
           FUNCTION foo.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 num PIC 9 VALUE 1.

       PROCEDURE DIVISION.
           DISPLAY "Return value '" FUNCTION foo (num) "'"
             WITH NO ADVANCING
           END-DISPLAY
           GOBACK.
       END PROGRAM prog.

_ATEOF


{ set +x
$as_echo "$at_srcdir/run_functions.at:4648: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_functions.at:4648"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4648"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_functions.at:4650: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_functions.at:4650"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Step: 1, Arg: 5, Return: 5
Step: 2, Arg: 4, Return: 5
Step: 3, Arg: 3, Return: 5
Step: 4, Arg: 2, Return: 5
Step: 5, Arg: 1, Return: 5
Return value '5'" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_functions.at:4650"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1110
#AT_START_1111
at_fn_group_banner 1111 'run_extensions.at:25' \
  "CALL BY CONTENT binary and literal" "             " 4
at_xfail=no
(
  $as_echo "1111. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data, int *p)
{
  int i;
  if ( *p == 1 ) {
     for (i = 0; i < 4; i++)
       printf ("%02x", data[i]);
  } else {
       printf ("%8.8d", *((int *)data));
  }
  puts ("");
  return 0;
}
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-1           PIC 9(9) VALUE 4660 COMP.
       01 X-2           PIC 9(9) VALUE 4660 COMP-5.
       PROCEDURE        DIVISION.
           CALL "dump" USING X-1 BY CONTENT 1
           END-CALL.
           CALL "dump" USING X-2 BY CONTENT 2
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:62: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "run_extensions.at:62"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:62"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:63: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:63"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:63"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:64: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:64"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00001234
00004660
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1111
#AT_START_1112
at_fn_group_banner 1112 'run_extensions.at:72' \
  "Numeric Boolean literals" "                       " 4
at_xfail=no
(
  $as_echo "1112. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-1           PIC 9(2)  VALUE B"010101".
       01 X-2           PIC 9(20) VALUE B"111111111111111111111111111111
      -                                  "111111111111111111111111111111
      -                                  "1111".
       PROCEDURE        DIVISION.
           DISPLAY X-1
           END-DISPLAY.
           DISPLAY X-2
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:92: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:92"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:92"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:93: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:93"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "21
18446744073709551615
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:93"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1112
#AT_START_1113
at_fn_group_banner 1113 'run_extensions.at:101' \
  "ACUCOBOL literals" "                              " 4
at_xfail=no
(
  $as_echo "1113. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           DISPLAY B#101 UPON STDOUT
           DISPLAY O#17777777777 UPON STDOUT
           DISPLAY X#ffFFFFff UPON STDOUT
           DISPLAY H#ffFFFFff UPON STDOUT

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:116: \$COMPILE -facu-literals=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -facu-literals=ok prog.cob" "run_extensions.at:116"
( $at_check_trace; $COMPILE -facu-literals=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:116"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:117: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:117"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "5
2147483647
4294967295
4294967295
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:117"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1113
#AT_START_1114
at_fn_group_banner 1114 'run_extensions.at:127' \
  "HP COBOL octal literals" "                        " 4
at_xfail=yes
(
  $as_echo "1114. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: the type of octal literals must be context-sensitive, see below
# currently hard-wired as numeric (may be switched in scanner.l to alphanumeric)



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
      *>   Octal literal is "AB" in ASCII.
       01  ITEM-ALPHA     PIC XX        VALUE %40502.
      *>   Octal literal is 39.
       01  ITEM-NUMERIC   PIC 99 BINARY VALUE %47.
      *>   Octal literal is ASCII 12.
       01  ITEM-NUM       PIC 99        VALUE %30462.
       PROCEDURE        DIVISION.
      *>   Octal literal is "XY".
           DISPLAY %54131.
           IF ITEM-ALPHA NOT = "AB"
              DISPLAY "VALUE %40502 is not ""AB"" (ASCII) but "
                      ITEM-ALPHA
           END-IF
           IF ITEM-NUMERIC NOT = 39
              DISPLAY "VALUE %47 BINARY is not 39 but " ITEM-NUMERIC
           END-IF
           IF ITEM-NUM NOT = 12
              DISPLAY "VALUE %30462 is not 12 (ASCII) but " ITEM-NUM
           END-IF
      *>   Adds octal 23 (decimal 19, as it is an arithmetic expression).
           ADD %23 TO ITEM-NUM.
           IF ITEM-NUM NOT = 31
              DISPLAY "12 + %23 (19) is not 31 but " ITEM-NUM
           END-IF
      *>   Sets the data to octal 30462 (ASCII 12).
           MOVE %30462 TO ITEM-NUM
           IF ITEM-NUM NOT = 12
              DISPLAY "%30462 is not 12 (ASCII) but " ITEM-NUM
           END-IF
      *>   Sets the data to x'4100' (octal 101 -> ASCII A + right-pad NULL)
           MOVE %101 TO ITEM-ALPHA
           IF ITEM-ALPHA NOT = x"4100"
              DISPLAY "%101 is not x""4100"" = Anull (ASCII) but "
                      ITEM-ALPHA
           END-IF


           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:180: \$COMPILE -fhp-octal-literals=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fhp-octal-literals=ok prog.cob" "run_extensions.at:180"
( $at_check_trace; $COMPILE -fhp-octal-literals=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:180"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:181: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:181"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "XY
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:181"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1114
#AT_START_1115
at_fn_group_banner 1115 'run_extensions.at:188' \
  "Hexadecimal numeric literals" "                   " 4
at_xfail=no
(
  $as_echo "1115. $at_setup_line: testing $at_desc ..."
  $at_traceon
 # FIXME: needs a dialect configuration


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-1           PIC 9(8) VALUE H"012345".
       01 X-2           PIC 9(8) VALUE H"FFFFFF".
       PROCEDURE        DIVISION.
           DISPLAY X-1
           END-DISPLAY.
           DISPLAY X-2
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:206: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:206"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:206"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:207: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:207"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00074565
16777215
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:207"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1115
#AT_START_1116
at_fn_group_banner 1116 'run_extensions.at:217' \
  "Semi-parenthesized condition" "                   " 4
at_xfail=no
(
  $as_echo "1116. $at_setup_line: testing $at_desc ..."
  $at_traceon

 # Shouldn't this be in run_fundamentals?

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           IF 1 = (1 OR 2)
             DISPLAY "OK" NO ADVANCING
             END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:231: \$COMPILE -Wno-constant-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-constant-expression prog.cob" "run_extensions.at:231"
( $at_check_trace; $COMPILE -Wno-constant-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:231"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:232: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:232"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:232"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1116
#AT_START_1117
at_fn_group_banner 1117 'run_extensions.at:237' \
  "ADDRESS OF" "                                     " 4
at_xfail=no
(
  $as_echo "1117. $at_setup_line: testing $at_desc ..."
  $at_traceon
 # Shouldn't this be in run_fundamentals?


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-1           PIC X(3) VALUE "X-1".
       01 X-2           PIC X(3) VALUE "X-2".
       01 G.
         02 PTR-1       USAGE POINTER VALUE NULL.
         02 PTR-2       USAGE POINTER VALUE NULL.
       LINKAGE          SECTION.
       01 Y             PIC X(3).
       PROCEDURE        DIVISION.
         SET ADDRESS OF Y TO ADDRESS OF X-1.
         IF Y NOT = "X-1"
            DISPLAY "Test 1 " Y
            END-DISPLAY
         END-IF.
         SET PTR-1 TO ADDRESS OF X-2.
         SET PTR-2 TO PTR-1
         SET ADDRESS OF Y TO PTR-2.
         IF Y NOT = "X-2"
            DISPLAY "Test 2 " Y
            END-DISPLAY
         END-IF
         INITIALIZE PTR-1.
         IF PTR-1 NOT = NULL
           DISPLAY "NG 1"
           END-DISPLAY
         END-IF.
         SET ADDRESS OF Y TO NULL.
         IF PTR-1 NOT = ADDRESS OF Y
           DISPLAY "NG 2"
           END-DISPLAY
         END-IF.
         IF ADDRESS OF Y NOT = PTR-1
           DISPLAY "NG 3"
           END-DISPLAY
         END-IF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:281: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:281"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:281"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:282: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:282"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:282"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1117
#AT_START_1118
at_fn_group_banner 1118 'run_extensions.at:287' \
  "LENGTH OF" "                                      " 4
at_xfail=no
(
  $as_echo "1118. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(2).
       01 G.
         02 Y           PIC X(2) OCCURS 10.
         02 G-GROUP.
         03 G-SGROUP.
         04 G1          PIC X(05).
         04 G2          PIC X(06).
         04 G3          PIC X(22).
         03 FILLER      PIC XX OCCURS 5.
       66 RENAME-STD-G  RENAMES G-GROUP.
       66 RENAME-STD-SG RENAMES G-SGROUP.
       66 RENAME-STD    RENAMES G1 THROUGH G3.
       66 RENAME-G      RENAMES G.
       01 L             PIC s9(4)v99.
       01 I             PIC 9(2) VALUE 10.
       78 I-LEN         VALUE LENGTH OF I.
      * TODO: check size of FILLER here
       01 TSTDISP.
         02 FILLER OCCURS 5000.
           10 T1        PIC X(11).
           10 T2        PIC X(22).
       78 var-length-l      value length of '00128'.
       78 var-length-x      value length of x'a0'.
       78 var-length-z      value length of z'a0'.
      *78 var-length-n      value length of n'001'.
       PROCEDURE        DIVISION.
           move var-length-l TO L
           IF L NOT = 5
              DISPLAY "Length '00128'" L
              END-DISPLAY
           END-IF
           move var-length-x TO L
           IF L NOT = 1
              DISPLAY "Length x'a0'" L
              END-DISPLAY
           END-IF
           move var-length-z TO L
           IF L NOT = 3
              DISPLAY "Length z'a0'" L
              END-DISPLAY
           END-IF
      *    What does MF reports here?
      *>   move var-length-n TO L
      *>   IF L NOT = 3
      *>      DISPLAY "Length n'001'" L
      *>      END-DISPLAY
      *>   END-IF
           MOVE LENGTH OF X  TO L
           IF L NOT = 2
              DISPLAY "Length 1 " L
              END-DISPLAY
           END-IF
           MOVE LENGTH OF X  TO L
           IF L NOT = 2
              DISPLAY "Length 1a " L LENGTH X
              END-DISPLAY
           END-IF
           MOVE LENGTH OF Y  TO L
           IF L NOT = 2
              DISPLAY "Length 2 " L
              END-DISPLAY
           END-IF
           IF L NOT = 2
              DISPLAY "Length 2a " L LENGTH OF Y
              END-DISPLAY
           END-IF
           MOVE LENGTH OF Y(1) TO L
           IF L NOT = 2
              DISPLAY "Length 3 " L
              END-DISPLAY
           END-IF
           MOVE LENGTH Y(1) TO L
           IF L NOT = 2
              DISPLAY "Length 3a " L LENGTH OF Y(1)
              END-DISPLAY
           END-IF
           IF I-LEN NOT = 2
              DISPLAY "Length 4 " I-LEN
              END-DISPLAY
           END-IF
           IF LENGTH OF L + 2 NOT = 8
              ADD 2 TO LENGTH OF L GIVING L
              DISPLAY "Length 5 + 2" L
              END-DISPLAY
           END-IF
           IF LENGTH L + 2 NOT = 8
              ADD 2 TO LENGTH L GIVING L
              DISPLAY "Length 5a + 2 " L
              END-DISPLAY
           END-IF
           MOVE 0 TO L
           PERFORM LENGTH OF L TIMES
              ADD 1 TO L
           END-PERFORM
           PERFORM LENGTH L TIMES
              ADD 1 TO L
           END-PERFORM
           IF L NOT = 12
              DISPLAY "Length 6 " L
              END-DISPLAY
           END-IF
           MOVE 0 TO L
           PERFORM VARME
                   VARYING I FROM LENGTH OF I
                             BY   LENGTH OF X
                   UNTIL   I > LENGTH OF L
           IF ((L NOT = 3) OR
               (I NOT = 8)    )
              DISPLAY "Length 7 " L " - " I
              END-DISPLAY
           END-IF
           MOVE 0 TO L
           PERFORM VARME
                   VARYING I FROM LENGTH I
                             BY   LENGTH X
                   UNTIL   I > LENGTH L
           IF ((L NOT = 3) OR
               (I NOT = 8)    )
              DISPLAY "Length 7a " L " - " I
              END-DISPLAY
           END-IF
           MOVE LENGTH OF RENAME-STD-SG  TO L
           IF L NOT = 33
              DISPLAY "Length 8a " L
              END-DISPLAY
           END-IF
           MOVE LENGTH OF RENAME-STD-G  TO L
           IF L NOT = 43
              DISPLAY "Length 8b " L
              END-DISPLAY
           END-IF
           MOVE LENGTH OF RENAME-STD  TO L
           IF L NOT = 33
              DISPLAY "Length 8c " L
              END-DISPLAY
           END-IF
           MOVE LENGTH OF RENAME-G  TO L
           IF L NOT = 63
              DISPLAY "Length 8d " L
              END-DISPLAY
           END-IF
           *> one display test
           DISPLAY LENGTH OF TSTDISP WITH NO ADVANCING
           END-DISPLAY
           STOP RUN.
       VARME.
           ADD 1 TO L
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:445: \$COMPILE -Wno-constant-expression prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-constant-expression prog.cob" "run_extensions.at:445"
( $at_check_trace; $COMPILE -Wno-constant-expression prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:445"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:446: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:446"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "165000" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:446"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1118
#AT_START_1119
at_fn_group_banner 1119 'run_extensions.at:451' \
  "SET TO SIZE OF" "                                 " 4
at_xfail=no
(
  $as_echo "1119. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       DATA  DIVISION.
       WORKING-STORAGE SECTION.
       01  TST    PIC X(10) VALUE "abcdefghij".
       01  TST2.
           05  FILLER OCCURS 5000.
               10 T2-1    PIC X(11).
               10 T2-2    PIC X(22).
       01  LN     PIC 9(06).

       PROCEDURE DIVISION.
           SET LN TO SIZE OF TST
           IF LN NOT = 10
              DISPLAY "SIZE OF TST is " LN UPON SYSERR
              END-DISPLAY
           END-IF
           SET LN TO SIZE OF TST2
           IF LN NOT = 165000
              DISPLAY "SIZE OF TST2 is " LN UPON SYSERR
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:482: \$COMPILE prog.cob "
at_fn_check_prepare_dynamic "$COMPILE prog.cob " "run_extensions.at:482"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:482"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:483: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:483"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:483"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1119
#AT_START_1120
at_fn_group_banner 1120 'run_extensions.at:488' \
  "WHEN-COMPILED" "                                  " 4
at_xfail=no
(
  $as_echo "1120. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(20).
       PROCEDURE        DIVISION.
           MOVE WHEN-COMPILED TO X.
           INSPECT X CONVERTING "0123456789" TO "9999999999".
           IF X NOT = "99/99/9999.99.99    "
              CALL 'CBL_OC_DUMP' USING X
                 ON EXCEPTION
                    DISPLAY X NO ADVANCING
                    END-DISPLAY
              END-CALL
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:510: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:510"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:510"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:511: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:511"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:511"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1120
#AT_START_1121
at_fn_group_banner 1121 'run_extensions.at:517' \
  "Complex OCCURS DEPENDING ON (1)" "                " 4
at_xfail=no
(
  $as_echo "1121. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 I PIC 9.
       01 G-1 VALUE "123456789".
         02 G-2.
           03 X   PIC X OCCURS 1 TO 3 DEPENDING ON I.
         02 G-3.
           03 G-4.
             04 X PIC X OCCURS 1 TO 3 DEPENDING ON I.
           03 G-5.
             04 X PIC X OCCURS 1 TO 3 DEPENDING ON I.
       PROCEDURE        DIVISION.
           MOVE 2 TO I.
           DISPLAY G-1 ":" G-4 ":" G-5 NO ADVANCING
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:540: \$COMPILE -std=mvs prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mvs prog.cob" "run_extensions.at:540"
( $at_check_trace; $COMPILE -std=mvs prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:540"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:541: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:541"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "123456:34:56" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:541"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1121
#AT_START_1122
at_fn_group_banner 1122 'run_extensions.at:546' \
  "Complex OCCURS DEPENDING ON (2)" "                " 4
at_xfail=no
(
  $as_echo "1122. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  I            PIC 99.
       01  J            PIC 99.
       01  K            PIC 99.
       01  VLEN         PIC 99.
       01  VTOP.
           03 VGROUP.
             05  VX     OCCURS 1 TO 5 DEPENDING ON I.
               10 VXX   PIC X(1).
             05  VY     OCCURS 1 TO 5 DEPENDING ON J.
               10 VYY   PIC X(2).
             05 ZZ      OCCURS 1 TO 5 DEPENDING ON K.
               10 VZZ   PIC X(3).
       PROCEDURE        DIVISION.
           MOVE    1      TO I.
           MOVE    1      TO J.
           MOVE    1      TO K.
           MOVE    '1'    TO VXX (1).
           MOVE    '22'   TO VYY (1).
           MOVE    '333'  TO VZZ (1).
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           INITIALIZE     VTOP.
           MOVE    3      TO I.
           MOVE    2      TO J.
           MOVE    1      TO K.
           MOVE    '3'    TO VXX (3).
           MOVE    '22'   TO VYY (2).
           MOVE    '111'  TO VZZ (1).
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:600: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_extensions.at:600"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:600"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:601: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:601"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "18181    22        333
1818  3    22      111
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:601"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1122
#AT_START_1123
at_fn_group_banner 1123 'run_extensions.at:609' \
  "Complex OCCURS DEPENDING ON (3)" "                " 4
at_xfail=no
(
  $as_echo "1123. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  I            PIC 99.
       01  J            PIC 99.
       01  K            PIC 99.
       01  VLEN         PIC 99.
       01  VTOP.
           03 VGROUP.
             05  VX     OCCURS 1 TO 5 DEPENDING ON I.
               10 VXX   PIC X(1).
             05  VY     OCCURS 1 TO 5 DEPENDING ON J.
               10 VYY   PIC X(2).
             05 ZZ      OCCURS 1 TO 5 DEPENDING ON K.
               10 VZZ   PIC X(3).
       PROCEDURE        DIVISION.
           MOVE    1      TO I.
           MOVE    1      TO J.
           MOVE    1      TO K.
           MOVE    '1'    TO VXX (1).
           MOVE    '22'   TO VYY (1).
           MOVE    '333'  TO VZZ (1).
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           INITIALIZE     VTOP.
           MOVE    3      TO I.
           MOVE    2      TO J.
           MOVE    1      TO K.
           MOVE    '3'    TO VXX (3).
           MOVE    '22'   TO VYY (2).
           MOVE    '111'  TO VZZ (1).
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           STOP RUN.
_ATEOF


# note: -fodoslide implies -fcomplex-ode
{ set +x
$as_echo "$at_srcdir/run_extensions.at:664: \$COMPILE -fodoslide prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide prog.cob" "run_extensions.at:664"
( $at_check_trace; $COMPILE -fodoslide prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:664"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:665: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:665"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0606122333
1010  3  22111
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:665"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1123
#AT_START_1124
at_fn_group_banner 1124 'run_extensions.at:673' \
  "Complex OCCURS DEPENDING ON (4)" "                " 4
at_xfail=no
(
  $as_echo "1124. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  I            PIC 99.
       01  J            PIC 99.
       01  K            PIC 99.
       01  VLEN         PIC 99.
       01  VTOP.
           03 VGROUP.
             05  VX     OCCURS 1 TO 5 DEPENDING ON I.
               10 VXX   PIC X(1).
             05  VY     OCCURS 1 TO 5 DEPENDING ON J.
               10 VYY   PIC X(2).
             05 ZZ      OCCURS 1 TO 5 DEPENDING ON K.
               10 VZZ   PIC X(3).
             05  VFIX   PIC X(3).
       PROCEDURE        DIVISION.
           MOVE    1      TO I.
           MOVE    1      TO J.
           MOVE    1      TO K.
           MOVE    '1'    TO VXX (1).
           MOVE    '22'   TO VYY (1).
           MOVE    '333'  TO VZZ (1).
           MOVE    '444'  TO VFIX.
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           INITIALIZE     VTOP.
           MOVE    3      TO I.
           MOVE    2      TO J.
           MOVE    1      TO K.
           MOVE    '3'    TO VXX (3).
           MOVE    '22'   TO VYY (2).
           MOVE    '111'  TO VZZ (1).
           MOVE    '000'  TO VFIX.
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:730: \$COMPILE -fcomplex-odo prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fcomplex-odo prog.cob" "run_extensions.at:730"
( $at_check_trace; $COMPILE -fcomplex-odo prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:730"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:731: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:731"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "33331    22        333            444
3333  3    22      111            000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:731"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1124
#AT_START_1125
at_fn_group_banner 1125 'run_extensions.at:739' \
  "Complex OCCURS DEPENDING ON (5)" "                " 4
at_xfail=no
(
  $as_echo "1125. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  I            PIC 99.
       01  J            PIC 99.
       01  K            PIC 99.
       01  VLEN         PIC 99.
       01  VTOP.
           03 VGROUP.
             05  VX     OCCURS 1 TO 5 DEPENDING ON I.
               10 VXX   PIC X(1).
             05  VY     OCCURS 1 TO 5 DEPENDING ON J.
               10 VYY   PIC X(2).
             05 ZZ      OCCURS 1 TO 5 DEPENDING ON K.
               10 VZZ   PIC X(3).
             05  VFIX   PIC X(3).
       PROCEDURE        DIVISION.
           MOVE    1      TO I.
           MOVE    1      TO J.
           MOVE    1      TO K.
           MOVE    '1'    TO VXX (1).
           MOVE    '22'   TO VYY (1).
           MOVE    '333'  TO VZZ (1).
           MOVE    '444'  TO VFIX.
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           INITIALIZE     VTOP.
           MOVE    3      TO I.
           MOVE    2      TO J.
           MOVE    1      TO K.
           MOVE    '3'    TO VXX (3).
           MOVE    '22'   TO VYY (2).
           MOVE    '111'  TO VZZ (1).
           MOVE    '000'  TO VFIX.
           MOVE    LENGTH OF VGROUP         TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           MOVE    FUNCTION LENGTH (VGROUP) TO VLEN.
           DISPLAY VLEN   NO ADVANCING
           END-DISPLAY.
           DISPLAY VGROUP
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:796: \$COMPILE -fodoslide prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide prog.cob" "run_extensions.at:796"
( $at_check_trace; $COMPILE -fodoslide prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:796"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:797: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:797"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0909122333444
1313  3  22111000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:797"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1125
#AT_START_1126
at_fn_group_banner 1126 'run_extensions.at:805' \
  "Complex OCCURS DEPENDING ON (6)" "                " 4
at_xfail=no
(
  $as_echo "1126. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  n            PIC 9 VALUE 2.
       01  m            PIC 9 VALUE 3.

       01  a-table      VALUE "ABCDEFGHIJ".
           03  rows     OCCURS 0 TO 2 TIMES
                        DEPENDING ON n.
                05  chars OCCURS 0 TO 5 TIMES
                          DEPENDING ON m
                          PIC X.

       01  vals         PIC X(3).

       PROCEDURE DIVISION.
           MOVE chars (1, 2) TO vals (1:1)
           MOVE chars (2, 1) TO vals (2:1)
           MOVE chars (2, 3) TO vals (3:1)
           IF vals NOT = "BDF"
              DISPLAY "Vals (slided) wrong: " vals
              END-DISPLAY
           END-IF
           IF a-table NOT = "ABCDEF"
              DISPLAY "Table (slided) wrong: " a-table
              END-DISPLAY
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:840: \$COMPILE -fodoslide prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide prog.cob" "run_extensions.at:840"
( $at_check_trace; $COMPILE -fodoslide prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:840"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:841: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:841"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:841"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1126
#AT_START_1127
at_fn_group_banner 1127 'run_extensions.at:846' \
  "OCCURS UNBOUNDED (1)" "                           " 4
at_xfail=no
(
  $as_echo "1127. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  N            PIC 9(03)  VALUE 123 COMP-5.
       01  P            USAGE POINTER.
       01  SAV          PIC X(8192).
       01  W-TABLE.
           03  WROWS     OCCURS 0 TO 500 TIMES
                        DEPENDING ON N.
               05 WCOL1  PIC 9.
               05 WCOL2  PIC X(02).

       LINKAGE SECTION.
       01  A-TABLE.
           03  ROWS     OCCURS 0 TO UNBOUNDED TIMES
                        DEPENDING ON N.
               05 COL1  PIC X.
               05 COL2  PIC X(02).

       PROCEDURE DIVISION.
           IF FUNCTION LENGTH (W-TABLE) NOT = 369
              DISPLAY 'WRONG WS LENGTH: ' FUNCTION LENGTH (A-TABLE)
              END-DISPLAY
           END-IF
           IF FUNCTION LENGTH (A-TABLE) NOT = 369
              DISPLAY 'WRONG LS LENGTH: ' FUNCTION LENGTH (A-TABLE)
              END-DISPLAY
           END-IF
           ALLOCATE FUNCTION LENGTH (A-TABLE) CHARACTERS
                    INITIALIZED TO ALL "ABCDE"
                    RETURNING P
           SET ADDRESS OF A-TABLE TO P
           IF COL2(1) NOT = "BC"
              DISPLAY "col2(1) wrong: " col2(1)
           END-IF
           IF ROWS(2) NOT = "DEA"
              DISPLAY "rows(2) wrong: " rows(2)
           END-IF
      *
           INITIALIZE W-TABLE
      *
           MOVE A-TABLE TO SAV
           INITIALIZE A-TABLE
      *
           FREE p
           .
_ATEOF


# note: IBM implies -fodoslide
{ set +x
$as_echo "$at_srcdir/run_extensions.at:900: \$COBC -x -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COBC -x -std=ibm prog.cob" "run_extensions.at:900"
( $at_check_trace; $COBC -x -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:900"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:901: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:901"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:901"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:903: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:903"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:903"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1127
#AT_START_1128
at_fn_group_banner 1128 'run_extensions.at:908' \
  "OCCURS UNBOUNDED (2)" "                           " 4
at_xfail=no
(
  $as_echo "1128. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: the following example is from IBM's Language Reference
#       for Enterprise COBOL for z/OS 6.4,
#       (+ removing some binary zeros for output)

cat >ALLOC.cob <<'_ATEOF'

       ID DIVISION.
        PROGRAM-ID. ALLOC.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
        WORKING-STORAGE SECTION.
        77  X   PIC  9(2) PACKED-DECIMAL.
        77  NUM-ELEMENTS PIC 9(4) BINARY.
        77  SIZE-NEEDED  PIC 9(4) BINARY.
        77  old-size     pic 9(4) binary.
        77  VPTR  POINTER.

        LINKAGE       SECTION.

        01  VARGRP.
          02  OBJ     PIC 9(4) COMP.
          02  TABGRP.
            03  VARTAB OCCURS 1 TO UNBOUNDED DEPENDING ON OBJ.
              04  T1      PIC 9(4).
              04  T2      PIC X(8).
              04  T3      PIC 9(4). *> changed from COMP because of output
        01 BUFFER         PIC X(1000).

       PROCEDURE DIVISION.

      *>    DISPLAY 'Starting testcase ALLOC'

           SET VPTR To NULL

      *************************************************************
      *  Allocate a table with 20 elements
      *************************************************************
           COMPUTE NUM-ELEMENTS = 20
           PERFORM ALLOC-VARGRP

      *************************************************************
      *  Set some 'test' values to validate re-allocated table
      *************************************************************
           initialize vartab(12), vartab(17)
           COMPUTE T1(12) = 9999
           MOVE 'HI MOM' TO T2 (17)
      *>   DISPLAY '  '
           DISPLAY 'VARTAB(12) = "' VARTAB(12) '"'
           DISPLAY 'VARTAB(17) = "' VARTAB(17) '"'
      *>   DISPLAY '  '

      *************************************************************
      *  Need a bigger table! Allocate a larger one and copy data
      *************************************************************
           COMPUTE NUM-ELEMENTS = 30
           PERFORM ALLOC-VARGRP

      *************************************************************
      *  Ensure that new table has correct data from original
      *************************************************************
           DISPLAY 'VARTAB(12) = "' VARTAB(12) '"'
           DISPLAY 'VARTAB(17) = "' VARTAB(17) '"'

           GOBACK.

      *************************************************************
      *  The first time allocate the original table.  If the table
      *  has already been allocated, assume that we are allocating
      *  a larger one and want to copy the data over to it
      *************************************************************
        ALLOC-VARGRP.

           If VPTR = NULL Then      *> If first time, allocate the table
             COMPUTE SIZE-NEEDED = LENGTH OF OBJ +
                                 LENGTH OF VARTAB * NUM-ELEMENTS
             display 'First allocation, using ' size-needed ' bytes.'
             ALLOCATE SIZE-NEEDED CHARACTERS INITIALIZED RETURNING VPTR

             SET ADDRESS OF VARGRP TO VPTR
             MOVE NUM-ELEMENTS TO OBJ
             move SIZE-NEEDED  to old-size

           Else                     *> If already have a table, doing re-size
      *********************************************************************
      * Re-size it!
      * First, map BUFFER on current table
      *********************************************************************

             SET ADDRESS OF BUFFER TO VPTR

      *********************************************************************
      * Calculate new size from NUM-ElEMENTS
      *********************************************************************
             COMPUTE SIZE-NEEDED = LENGTH OF OBJ +
                                   LENGTH OF VARTAB * NUM-ELEMENTS

             display 'Re-allocation, using ' size-needed ' bytes.'
      *>     ALLOCATE SIZE-NEEDED CHARACTERS INITIALIZED RETURNING VPTR
             if size-needed < 2097152
                ALLOCATE SIZE-NEEDED CHARACTERS INITIALIZED
                                                loc 24
                                                RETURNING VPTR
             else
                ALLOCATE SIZE-NEEDED CHARACTERS INITIALIZED
                                                loc 31
                                                RETURNING VPTR
             end-if

      *************************************************************
      * Move data from data save area to new larger table
      *************************************************************
             SET ADDRESS OF VARGRP TO VPTR
             MOVE NUM-ELEMENTS TO OBJ
             MOVE BUFFER(1:old-size) TO VARGRP
             move SIZE-NEEDED  to old-size
      *************************************************************
      * Free the original table
      ************************************************************
             SET VPTR TO ADDRESS OF BUFFER
             FREE VPTR
             .
_ATEOF


# FIXME: move the "LOC" from above to a syntax test, then drop the -w
{ set +x
$as_echo "$at_srcdir/run_extensions.at:1034: \$COMPILE -std=ibm-strict -w ALLOC.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm-strict -w ALLOC.cob" "run_extensions.at:1034"
( $at_check_trace; $COMPILE -std=ibm-strict -w ALLOC.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1034"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1036: \$COBCRUN_DIRECT ./ALLOC"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./ALLOC" "run_extensions.at:1036"
( $at_check_trace; $COBCRUN_DIRECT ./ALLOC
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "First allocation, using 00322 bytes.
VARTAB(12) = \"9999        0000\"
VARTAB(17) = \"0000HI MOM  0000\"
Re-allocation, using 00482 bytes.
VARTAB(12) = \"9999        0000\"
VARTAB(17) = \"0000HI MOM  0000\"
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1036"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1128
#AT_START_1129
at_fn_group_banner 1129 'run_extensions.at:1048' \
  "INITIALIZE OCCURS UNBOUNDED" "                    " 4
at_xfail=no
(
  $as_echo "1129. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  p            USAGE POINTER.
       01  p2           USAGE POINTER.
       01  dlen         PIC 9(7).

       LINKAGE SECTION.
       01  a-table.
           03  prefix.
               05  n    PIC 9(03)  VALUE 123.
           03  table-data value all "ABCDE".
            04  rows    OCCURS 0 TO UNBOUNDED TIMES
                        DEPENDING ON n.
               05 col1  PIC X.
               05 col2  PIC X(02).

       PROCEDURE DIVISION.
           ALLOCATE LENGTH OF prefix CHARACTERS
                    RETURNING p
           SET ADDRESS OF a-table TO p
           INITIALIZE prefix ALL TO VALUE
           IF FUNCTION LENGTH (a-table) NOT = 372
              DISPLAY 'WRONG LENGTH table: ' FUNCTION LENGTH (a-table).
           ALLOCATE FUNCTION LENGTH (a-table) CHARACTERS
                    RETURNING p2
           SET ADDRESS OF a-table TO p2
           FREE p

           INITIALIZE prefix ALL TO VALUE

           IF LENGTH OF a-table NOT = 372
              MOVE LENGTH OF a-table TO dlen
              DISPLAY "BAD SIZE: " dlen.

           INITIALIZE table-data (1:FUNCTION LENGTH(rows(1)) * n)
                      ALL TO VALUE
           IF col2(1) NOT = "BC"
              DISPLAY "col2(1) wrong: " col2(1).
           IF rows(2) NOT = "DEA"
              DISPLAY "rows(2) wrong: " rows(2).

      *> check if ref-mod also works as expected
           MOVE 2 TO n
           MOVE ALL ZEROES TO a-table (1: (LENGTH OF a-table))
           MOVE 7 TO n
           IF rows(2) NOT = "000"
              DISPLAY "rows(2) after ref-mod MOVE wrong: " rows(2).
           IF rows(3) NOT = "BCD"
              DISPLAY "rows(3) after ref-mod MOVE wrong: " rows(3).
           MOVE ALL '9' TO rows (5) rows (7)

      *> Test -  should only initialize up to current size, not max:
           MOVE 4 TO n
           INITIALIZE table-data     TO DEFAULT
           MOVE 7 TO n
           IF rows(2) NOT = SPACES OR
              rows(4) NOT = SPACES
              DISPLAY "rows(2/4) after init default wrong: "
                       rows(2) rows(4).
           IF rows(5) NOT = "999"
              DISPLAY "rows(5) after init default wrong: " rows(5).

           MOVE 6 TO n
           INITIALIZE table-data ALL TO VALUE
           MOVE 9 TO n
           IF rows(5) NOT = "CDE"
              DISPLAY "rows(5) after init value wrong: " rows(5).
           IF rows(7) NOT = "999"
              DISPLAY "rows(7) after init value wrong: " rows(7).

           IF a-table (20:10) NOT = "BC999BCDEA"
              DISPLAY "a-table / ref-mod wrong: " a-table (20:10).
           move 10 to n
           IF a-table (20:n) NOT = "BC999BCDEA"
              DISPLAY "a-table / ref-mod length wrong: " a-table (20:n).
           move 20 to n
           IF a-table (n:10) NOT = "BC999BCDEA"
              DISPLAY "a-table / ref-mod offset wrong: " a-table (n:10).

      *> Test - FUNCTION LENGTH(table-data) must be resolved at run-time
           MOVE 8 TO n
           INITIALIZE table-data (1:FUNCTION LENGTH(table-data))
              ALL TO VALUE
           .

           DISPLAY a-table (20:10). *> expect runtime error
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1142: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:1142"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1142"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1144: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1144"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:89: error: length of 'a-table' out of bounds: 10, starting at: 20, maximum: 27
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:1144"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1129
#AT_START_1130
at_fn_group_banner 1130 'run_extensions.at:1151' \
  "INITIALIZE OCCURS ODOSLIDE" "                     " 4
at_xfail=no
(
  $as_echo "1130. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  p            USAGE POINTER.
       01  p2           USAGE POINTER.
       01  dlen         PIC 9(7).
       01  grp-0.
           05   FILLER  PIC X(3).
           05   FLD-0.
              10   FLD-0-1 OCCURS 8193 TIMES.
                15   FLD-0-2 PIC XXX VALUE "XYZ".
                15   FLD-0-3 PIC 99  VALUE 12.
                15   FLD-0-4 PIC XX  VALUE "QQ".
           05   FILLER  PIC X(3).
       01  grp-1.
           05   FILLER  PIC X(3).
           05   FLD-1   PIC X(5) VALUE ALL "ABCDE".
           05   FILLER  PIC X(3).
       01  grp-2.
           05   FILLER  PIC X(3).
           05   FLD-2   PIC X(42) VALUE ALL "ABCD ".
           05   FILLER  PIC X(3).
       01  grp-2a.
           05   FILLER  PIC X(3).
           05   FLD-2A  PIC X(8) VALUE ALL "ABC".
           05   FILLER  PIC X(3).
       01  grp-3.
           05   FILLER  PIC X(3).
           05   FLD-3   OCCURS 3 TIMES
                        VALUE ALL "ABC00XX".
                15   FLD-3-2 PIC XXX.
                15   FLD-3-3 PIC 99.
                15   FLD-3-4 PIC XX.
           05   FILLER  PIC X(3).
       01  grp-4.
           05   FILLER  PIC X(3).
           05   FLD-4.
              10   FLD-4-1 OCCURS 11 TIMES.
                15   FLD-4-2 PIC XX  VALUE "AB".
                15   FLD-4-3 PIC 99  VALUE 12.
                15   FLD-4-4 PIC XX  VALUE "YZ".
           05   FILLER  PIC X(3).

       77  C5    PIC 9(03)  VALUE 6.
       01  grp-5.
           05   FILLER  PIC X(3).
           05   FLD-5.
              10   FLD-5-1 OCCURS 0 TO 9 TIMES
                        DEPENDING ON C5.
                15   FLD-5-2 PIC XXX VALUE "Mon".
                15   FLD-5-3 PIC 99  VALUE 49.
                15   FLD-5-4 PIC XX  VALUE "ey".
           05   FILLER  PIC X(3).

       PROCEDURE DIVISION.
           MOVE ALL "*" TO grp-1.
           INITIALIZE FLD-1 ALL TO VALUE.
           DISPLAY "GRP-1:" grp-1.

           MOVE ALL "*" TO grp-2.
           INITIALIZE FLD-2 ALL TO VALUE.
           DISPLAY "GRP-2:" grp-2.

           MOVE ALL "*" TO grp-3.
           INITIALIZE FLD-3 (1) ALL TO VALUE.
           INITIALIZE FLD-3 (2) ALL TO VALUE.
           INITIALIZE FLD-3 (3) ALL TO VALUE.
           DISPLAY "GRP-3:" grp-3.

           MOVE ALL "*" TO grp-4.
           INITIALIZE FLD-4 ALL TO VALUE.
           DISPLAY "GRP-4:" grp-4.

           MOVE 7       TO c5.
           MOVE ALL "*" TO grp-5.
           INITIALIZE FLD-5 ALL TO VALUE.
           DISPLAY "GRP-5:" grp-5.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1235: \$COMPILE -fodoslide prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide prog.cob" "run_extensions.at:1235"
( $at_check_trace; $COMPILE -fodoslide prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1235"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1237: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1237"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "GRP-1:***ABCDE***
GRP-2:***ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD AB***
GRP-3:***ABC00XXABC00XXABC00XX***
GRP-4:***AB12YZAB12YZAB12YZAB12YZAB12YZAB12YZAB12YZAB12YZAB12YZAB12YZAB12YZ***
GRP-5:***Mon49eyMon49eyMon49eyMon49eyMon49eyMon49eyMon49ey***
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1237"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1130
#AT_START_1131
at_fn_group_banner 1131 'run_extensions.at:1248' \
  "DEPENDING ON with ODOSLIDE" "                     " 4
at_xfail=no
(
  $as_echo "1131. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       INPUT-OUTPUT SECTION.
       FILE-CONTROL.
           SELECT FLATFILE
           ASSIGN "SEQODO"
           ORGANIZATION LINE SEQUENTIAL
           FILE STATUS IS CUST-STAT .

       DATA  DIVISION.
       FILE SECTION.
       FD  FLATFILE
           BLOCK CONTAINS 5 RECORDS.

       01  TSTREC.
         05  SEQ           PIC 99.
         05  DEP-X         PIC 99.
         05  DEP-Y         PIC 99.
         05  HELLO         PIC X(5) VALUE 'World'.
         05  TSTGRP.
           10  TSTGRP1.
             15  TSTX OCCURS 1 TO 3 TIMES
                      DEPENDING ON DEP-X.
               20  TSTG-1  PIC Z9.
             15  TSTTAIL1  PIC XXXX.
           10  TSTY-ALL.
             15  TSTY OCCURS 1 TO 3 TIMES
                      DEPENDING ON DEP-X.
               20  TSTY-1  PIC 99.
               20  TSTY-2  PIC XXX.
               20  TSTY-3  PIC X
                             OCCURS 1 TO 12 TIMES
                             DEPENDING ON DEP-Y.
               20  TSTY-4  PIC XX.
               20  TSTY-5    OCCURS 1 TO 3 TIMES
                             DEPENDING ON DEP-X.
                  25  TSTY-6 OCCURS 1 TO 3 TIMES
                             DEPENDING ON DEP-X.
                     30  TSTY-7  PIC X.
           10  TSTTAIL2    PIC XX.

       WORKING-STORAGE SECTION.
       77  CUST-STAT PIC  X(2).
       01  LN        PIC  9(3).
       01  IX        PIC  9(9) BINARY.
       01  IY        PIC  9(9) BINARY.
       01  IZ        PIC  9(9) BINARY.
       01  TSTXXX    PIC  X(26) VALUE "Abcdefghijklmnopqrstuvwxyz".
       01  TSTALPHA REDEFINES TSTXXX.
           05 ALPH-CHR PIC  X OCCURS 26 TIMES.
       01  TSTHEX    PIC  X(15) VALUE "123456789ABCDEF".
       01  FILLER REDEFINES TSTHEX.
           05 HEX-CHR PIC  X OCCURS 15 TIMES.

       01  TSTREC2.
         05  DEP-X2        PIC 99.
         05  TSTGRP2.
             10  TSTX2 OCCURS 1 TO 3 TIMES DEPENDING ON DEP-X2.
               15  TSTG2-1  PIC Z9.
             10  TST2TAIL1  PIC XXX.

       01  TSTREC3.
         05  DEP-X3        PIC 99.
         05  TSTGRP3.
             10  TSTX3 OCCURS 1 TO 6 TIMES DEPENDING ON DEP-X3.
               15  TSTG3-1  PIC 9.
       01  TSTWRK   PIC X(24).

       PROCEDURE DIVISION.
       MAIN-10.
           MOVE 6 TO DEP-X3.
           MOVE 1 TO TSTG3-1 (1).
           MOVE 2 TO TSTG3-1 (2).
           MOVE 3 TO TSTG3-1 (3).
           MOVE 4 TO TSTG3-1 (4).
           MOVE 5 TO TSTG3-1 (5).
           MOVE 6 TO TSTG3-1 (6).
           MOVE 3 TO DEP-X3.
           STRING TSTGRP3 "-TRAILER" DELIMITED BY SIZE
           INTO TSTWRK.
           DISPLAY "'" TSTWRK "'".
           OPEN OUTPUT FLATFILE.
           MOVE "Howdy" TO HELLO.
           MOVE 0 TO SEQ.
           MOVE 2 TO DEP-X.
           MOVE 5 TO DEP-Y.
           PERFORM WRITE-REC.
           MOVE 1 TO DEP-X.
           MOVE 2 TO DEP-Y.
           PERFORM WRITE-REC.
           MOVE 3 TO DEP-X.
           MOVE 3 TO DEP-Y.
           PERFORM WRITE-REC.
           MOVE 3 TO DEP-X.
           MOVE 10 TO DEP-Y.
           PERFORM WRITE-REC.
           CLOSE FLATFILE.
           OPEN INPUT FLATFILE.
           PERFORM READ-REC.
           CLOSE FLATFILE.
           STOP RUN.

       WRITE-REC SECTION.
           ADD 1 TO SEQ.
           MOVE LENGTH OF TSTREC TO LN.
           DISPLAY "Write SEQ " SEQ ", DEP-X = " DEP-X
                   " & DEP-Y = " DEP-Y
                   ", TSTREC len:" LN.
           MOVE ALL "*" TO TSTGRP.
           MOVE "<>"    TO TSTTAIL1, TSTTAIL2.
           PERFORM VARYING IX FROM 1 BY 1
                     UNTIL IX > DEP-X
               MOVE IX TO TSTG-1 (IX)
           END-PERFORM.
           MOVE LENGTH OF TSTGRP1 TO LN.
           DISPLAY "Group1: '" TSTGRP1 "' len:" LN.
           PERFORM VARYING IX FROM 1 BY 1
                     UNTIL IX > DEP-X
               MOVE IX TO TSTY-1 (IX)
               MOVE "." TO TSTY-4 (IX)
               PERFORM VARYING IY FROM 1 BY 1
                         UNTIL IY > DEP-Y
                   MOVE ALPH-CHR (IY) TO TSTY-3 (IX, IY)
               END-PERFORM
           END-PERFORM.
           PERFORM VARYING IX FROM 1 BY 1
                     UNTIL IX > DEP-X
               PERFORM VARYING IY FROM 1 BY 1
                         UNTIL IY > DEP-X
                 PERFORM VARYING IZ FROM 1 BY 1
                           UNTIL IZ > DEP-X
                   MOVE HEX-CHR (IX+IY+IZ) TO TSTY-7 (IX, IY, IZ)
                 END-PERFORM
               END-PERFORM
           END-PERFORM.
           DISPLAY "  Data: '" TSTGRP "'".

           MOVE ALL "*" TO TSTGRP2.
           MOVE DEP-X TO DEP-X2.
           PERFORM VARYING IX FROM 1 BY 1
                     UNTIL IX > DEP-X2
               MOVE IX TO TSTG2-1 (IX)
           END-PERFORM.
           MOVE "<>"    TO TST2TAIL1.
           MOVE LENGTH OF TSTGRP2 TO LN.
           DISPLAY "Group2: '" TSTGRP2 "' len:" LN.
           WRITE TSTREC.

       READ-REC SECTION.
       READ-10.
           READ FLATFILE AT END GO TO READ-99.
           MOVE LENGTH OF TSTREC TO LN.
           DISPLAY "Read SEQ " SEQ ", DEP-X = " DEP-X
                   " & DEP-Y = " DEP-Y
                   ", TSTREC len:" LN.
           DISPLAY "  Data: '" TSTGRP "'".
           GO TO READ-10.
       READ-99.
           EXIT .
_ATEOF


# FIXME: odo-checks (-debug) must be adjusted, either with -fodoslide or with a possibly new
#        compiler configuration flag as IBM seems to only check against the field-founder's
#        bounds, not the subscript (which is the reason to use "$COBC -x" instead of "$COMPILE")
{ set +x
$as_echo "$at_srcdir/run_extensions.at:1418: \$COBC -x -fodoslide prog.cob"
at_fn_check_prepare_dynamic "$COBC -x -fodoslide prog.cob" "run_extensions.at:1418"
( $at_check_trace; $COBC -x -fodoslide prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1418"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1420: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1420"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "'123-TRAILER             '
Write SEQ 01, DEP-X = 02 & DEP-Y = 05, TSTREC len:053
Group1: ' 1 2<>  ' len:008
  Data: ' 1 2<>  01***Abcde. 344502***Abcde. 4556<>'
Group2: ' 1 2<> ' len:007
Write SEQ 02, DEP-X = 01 & DEP-Y = 02, TSTREC len:029
Group1: ' 1<>  ' len:006
  Data: ' 1<>  01***Ab. 3<>'
Group2: ' 1<> ' len:005
Write SEQ 03, DEP-X = 03 & DEP-Y = 03, TSTREC len:080
Group1: ' 1 2 3<>  ' len:010
  Data: ' 1 2 3<>  01***Abc. 34545656702***Abc. 45656767803***Abc. 567678789<>'
Group2: ' 1 2 3<> ' len:009
Write SEQ 04, DEP-X = 03 & DEP-Y = 10, TSTREC len:101
Group1: ' 1 2 3<>  ' len:010
  Data: ' 1 2 3<>  01***Abcdefghij. 34545656702***Abcdefghij. 45656767803***Abcdefghij. 567678789<>'
Group2: ' 1 2 3<> ' len:009
Read SEQ 01, DEP-X = 02 & DEP-Y = 05, TSTREC len:053
  Data: ' 1 2<>  01***Abcde. 344502***Abcde. 4556<>'
Read SEQ 02, DEP-X = 01 & DEP-Y = 02, TSTREC len:029
  Data: ' 1<>  01***Ab. 3<>'
Read SEQ 03, DEP-X = 03 & DEP-Y = 03, TSTREC len:080
  Data: ' 1 2 3<>  01***Abc. 34545656702***Abc. 45656767803***Abc. 567678789<>'
Read SEQ 04, DEP-X = 03 & DEP-Y = 10, TSTREC len:101
  Data: ' 1 2 3<>  01***Abcdefghij. 34545656702***Abcdefghij. 45656767803***Abcdefghij. 567678789<>'
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1420"
$at_failed && at_fn_log_failure
$at_traceon; }





cat >reference <<'_ATEOF'
010205Howdy 1 2<>  01***Abcde. 344502***Abcde. 4556<>
020102Howdy 1<>  01***Ab. 3<>
030303Howdy 1 2 3<>  01***Abc. 34545656702***Abc. 45656767803***Abc. 567678789<>
040310Howdy 1 2 3<>  01***Abcdefghij. 34545656702***Abcdefghij. 45656767803***Abcdefghij. 567678789<>
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1458: diff reference SEQODO"
at_fn_check_prepare_trace "run_extensions.at:1458"
( $at_check_trace; diff reference SEQODO
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1458"
$at_failed && at_fn_log_failure  \
"SEQODO"
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1131
#AT_START_1132
at_fn_group_banner 1132 'run_extensions.at:1463' \
  "DEPENDING ON with ODOSLIDE for IBM" "             " 4
at_xfail=no
(
  $as_echo "1132. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  L1-1-2-S    PIC 99.
       01  L1-1-2-1-S  PIC 99.
       01  L1-2-S      PIC 99.
       01  L1-3-S      PIC 99.
       01  L1-3-2-S    PIC 99.
       01  BUFFER      PIC X(370).

       PROCEDURE DIVISION.
           MOVE ALL '0123456789' TO BUFFER.
           MOVE 3 TO L1-1-2-S.
           MOVE 4 TO L1-1-2-1-S.
           MOVE 0 TO L1-2-S.
           MOVE 6 TO L1-3-S.
           MOVE 1 TO L1-3-2-S.
           CALL 'IBM-ODO-TEST' USING BUFFER
                               L1-1-2-S
                               L1-1-2-1-S
                               L1-2-S
                               L1-3-S
                               L1-3-2-S.

           MOVE ALL '0123456789' TO BUFFER.
           MOVE 2 TO L1-1-2-S.
           MOVE 3 TO L1-1-2-1-S.
           MOVE 1 TO L1-2-S.
           MOVE 4 TO L1-3-S.
           MOVE 0 TO L1-3-2-S.
           CALL 'IBM-ODO-TEST' USING BUFFER
                               L1-1-2-S
                               L1-1-2-1-S
                               L1-2-S
                               L1-3-S
                               L1-3-2-S.
           STOP RUN.
       END PROGRAM prog.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. IBM-ODO-TEST.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       LINKAGE SECTION.
       01  L1-1-2-S    PIC 99.
       01  L1-1-2-1-S  PIC 99.
       01  L1-2-S      PIC 99.
       01  L1-3-S      PIC 99.
       01  L1-3-2-S    PIC 99.
       01 BASE.
         10 ARRAY OCCURS 2 TIMES.
           20 L1-1.
             25 L1-1-1 PIC X(3).
             25 L1-1-2 OCCURS 4 TIMES DEPENDING ON L1-1-2-S.
               30 L1-1-2-1 OCCURS 5 TIMES DEPENDING ON L1-1-2-1-S
                  PIC XXX.
           20 L1-2 OCCURS 0 TO 1 TIMES DEPENDING ON L1-2-S PIC XX.
           20 L1-3 OCCURS 1 TO 10 TIMES DEPENDING ON L1-3-S.
             25 L1-3-1.
               30  L1-3-1-1 PIC X(5).
               30  L1-3-1-2 PIC X.
               30  L1-3-1-3 PIC X(5).
             25 L1-3-2 OCCURS 0 TO 1 TIMES DEPENDING ON L1-3-2-S PIC X.

       PROCEDURE DIVISION USING BASE
                                L1-1-2-S
                                L1-1-2-1-S
                                L1-2-S
                                L1-3-S
                                L1-3-2-S.
           DISPLAY "Length is " LENGTH OF BASE
                   " with " L1-1-2-S
                   ", " L1-1-2-1-S
                   ", " L1-2-S
                   ", " L1-3-S
                   ", " L1-3-2-S.
           MOVE '.'   TO L1-3-2(1, 5, 1).
           MOVE '--'  TO L1-2(2, 1).
           MOVE '+++' TO L1-1-2-1(2, 1, 5).
           DISPLAY '"' BASE '"'.
       END PROGRAM IBM-ODO-TEST.
_ATEOF

# FIXME: odo-checks (-debug) must be adjusted, either with -fodoslide or with a possibly new
#        compiler configuration flag as IBM seems to only check against the field-founder's
#        bounds, not the subscript (which is the reason to use "$COBC -x" instead of "$COMPILE")
{ set +x
$as_echo "$at_srcdir/run_extensions.at:1556: \$COBC -x -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COBC -x -std=ibm prog.cob" "run_extensions.at:1556"
( $at_check_trace; $COBC -x -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1556"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1558: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1558"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Length is +0000000222 with 03, 04, 00, 06, 01
\"01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567.901234567890123456789012345+++901234567890123456789--2345678901234567890123456789012345678901234567890123456789012345678901\"
Length is +0000000134 with 02, 03, 01, 04, 00
\"012345678901234567890123456789012345678901234567890123456789012345678901234567.901+++567--01234567890123456789012345678901234567890123\"
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1558"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1132
#AT_START_1133
at_fn_group_banner 1133 'run_extensions.at:1568' \
  "INITIALIZE level 01 OCCURS" "                     " 4
at_xfail=no
(
  $as_echo "1133. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: partially also tested in run_initialize.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 L1 OCCURS 1000 TIMES.
           05 L2 PIC S9(9) COMP-5 VALUE 5.
           05 L3 PIC S9(9)        VALUE 5.
       01 INIT OCCURS 3 PIC X(256) VALUE SPACES.
       PROCEDURE DIVISION.
           IF L2(3) not = 5
              DISPLAY '0 VALUE(3) = ' L2(3).

           INITIALIZE L1(1).
           IF L2(1) not = 0
              DISPLAY '1 VALUE(1) = ' L2(1).
           IF L2(3) not = 5
              DISPLAY '1 VALUE(3) = ' L2(3).

           INITIALIZE L1(1)  DEFAULT.
           IF L2(1) not = 0
              DISPLAY '2 VALUE(1) = ' L2(1).
           IF L2(3) not = 5
              DISPLAY '2 VALUE(3) = ' L2(3).

           INITIALIZE L1(1)  ALL VALUE.
           IF L2(1) not = 5
              DISPLAY '3 VALUE(1) = ' L2(1).
           IF L2(3) not = 5
              DISPLAY '3 VALUE(3) = ' L2(3).

           IF INIT(1) NOT = SPACES
              DISPLAY "INIT1 NOT = SPACES".
           IF INIT(3) NOT = SPACES
              DISPLAY "INIT3 NOT = SPACES".

           MOVE ALL '*' TO INIT(1) INIT(2) INIT(3)
           IF INIT(2) (50:5) NOT = "*****"
              DISPLAY "INIT2 BADVAL".
           INITIALIZE INIT(2)  ALL TO VALUE.
           IF INIT(2) NOT = SPACES
              DISPLAY "INIT2 NOT = SPACES".

           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1619: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:1619"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1619"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1620: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1620"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1620"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1133
#AT_START_1134
at_fn_group_banner 1134 'run_extensions.at:1625' \
  "MOVE of non-integer to alphanumeric" "            " 4
at_xfail=no
(
  $as_echo "1134. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
        01 INTEGER             PIC 9(4)   VALUE 1289 .
        01 SIGNED-INTEGER      PIC S9(4)  VALUE -1289 .

        01 ALPHA-FIELD         PIC X(4).

        01 NON-INTEGER           PIC 9(2)V99   VALUE 12.89 .
        01 NON-INTEGER-2         PIC 9(2)V99
                                     USAGE BINARY VALUE 12.89 .
        01 NON-INTEGER-3         PIC 9(2)V99
                                      USAGE PACKED-DECIMAL VALUE 12.89 .
        01 SIGNED-NON-INTEGER    PIC S9(2)V99   VALUE -12.89 .
        01 SIGNED-NON-INTEGER-2  PIC S9(2)V99
                                     USAGE BINARY VALUE -12.89 .
        01 SIGNED-NON-INTEGER-3  PIC S9(2)V99
                                     USAGE PACKED-DECIMAL VALUE -12.89 .

       PROCEDURE        DIVISION.
*     *    MOVE NON-INTEGER TO ALPHA-NUMERIC --> ignore Decimal Point!
       S-01.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE INTEGER TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-02.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE SIGNED-INTEGER TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-03.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE NON-INTEGER TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-10.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE NON-INTEGER-2 TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-20.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE NON-INTEGER-3 TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-30.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE SIGNED-NON-INTEGER TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-40.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE SIGNED-NON-INTEGER-2 TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.
       S-50.
          MOVE SPACES TO ALPHA-FIELD.
          MOVE SIGNED-NON-INTEGER-3 TO ALPHA-FIELD.
          DISPLAY  ALPHA-FIELD NO ADVANCING
          END-DISPLAY.

          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1695: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_extensions.at:1695"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'S-03':
prog.cob:36: warning: MOVE of non-integer to alphanumeric
prog.cob: in paragraph 'S-10':
prog.cob:41: warning: MOVE of non-integer to alphanumeric
prog.cob: in paragraph 'S-20':
prog.cob:46: warning: MOVE of non-integer to alphanumeric
prog.cob: in paragraph 'S-30':
prog.cob:51: warning: MOVE of non-integer to alphanumeric
prog.cob: in paragraph 'S-40':
prog.cob:56: warning: MOVE of non-integer to alphanumeric
prog.cob: in paragraph 'S-50':
prog.cob:61: warning: MOVE of non-integer to alphanumeric
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1695"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1709: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1709"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12891289128912891289128912891289" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1709"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1134
#AT_START_1135
at_fn_group_banner 1135 'run_extensions.at:1715' \
  "CALL USING file-name" "                           " 4
at_xfail=no
(
  $as_echo "1135. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >setfilename.c <<'_ATEOF'

#include <stdio.h>
#include <string.h>
#include <libcob.h>

COB_EXT_EXPORT int
setfilename (cob_file *f, unsigned char *name)
{
  memcpy (f->assign->data, name, strlen ((char *)name));
  return 0;
}
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN FILENAME.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(4).
       WORKING-STORAGE  SECTION.
       01 FILENAME      PIC X(8).
       PROCEDURE        DIVISION.
           INITIALIZE FILENAME.
           CALL "setfilename" USING TEST-FILE "TESTFILE"
           END-CALL.
           OPEN OUTPUT TEST-FILE.
           CLOSE TEST-FILE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1753: \$COMPILE_MODULE setfilename.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE setfilename.c" "run_extensions.at:1753"
( $at_check_trace; $COMPILE_MODULE setfilename.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1753"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1754: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:1754"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1754"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1755: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1755"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1755"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1756: test -e TESTFILE"
at_fn_check_prepare_trace "run_extensions.at:1756"
( $at_check_trace; test -e TESTFILE
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1756"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1135
#AT_START_1136
at_fn_group_banner 1136 'run_extensions.at:1761' \
  "CALL unusual PROGRAM-ID." "                       " 4
at_xfail=no
(
  $as_echo "1136. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >A@B.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "A@B".
       PROCEDURE        DIVISION.
           DISPLAY "P1" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


cat >A#B.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "A#B".
       PROCEDURE        DIVISION.
           DISPLAY "P2" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


cat >A-B.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "A-B".
       PROCEDURE        DIVISION.
           DISPLAY "P3" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


cat >A_B.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "A_B".
       PROCEDURE        DIVISION.
           DISPLAY "P4" NO ADVANCING
           END-DISPLAY.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "A@B"
           END-CALL.
           CALL "A#B"
           END-CALL.
           CALL "A-B"
           END-CALL.
           CALL "A_B"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1815: \$COMPILE_MODULE A@B.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE A@B.cob" "run_extensions.at:1815"
( $at_check_trace; $COMPILE_MODULE A@B.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1815"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1816: \$COMPILE_MODULE A#B.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE A#B.cob" "run_extensions.at:1816"
( $at_check_trace; $COMPILE_MODULE A#B.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1816"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1817: \$COMPILE_MODULE A-B.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE A-B.cob" "run_extensions.at:1817"
( $at_check_trace; $COMPILE_MODULE A-B.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1817"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1818: \$COMPILE_MODULE A_B.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE A_B.cob" "run_extensions.at:1818"
( $at_check_trace; $COMPILE_MODULE A_B.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1818"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1819: \$COMPILE -o caller caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -o caller caller.cob" "run_extensions.at:1819"
( $at_check_trace; $COMPILE -o caller caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1819"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1821: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:1821"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "P1P2P3P4" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1821"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1136
#AT_START_1137
at_fn_group_banner 1137 'run_extensions.at:1826' \
  "CALL / GOBACK with LOCAL-STORAGE" "               " 4
at_xfail=no
(
  $as_echo "1137. $at_setup_line: testing $at_desc ..."
  $at_traceon



# Testcase introduced when Bug #91 occurred.
# Will fail if memory is freed which was
# allocated by mpir/gmp.
cat >prog_a.cob <<'_ATEOF'

		IDENTIFICATION DIVISION.
		PROGRAM-ID. prog_a.
		DATA DIVISION.
		WORKING-STORAGE SECTION.
		77  WS-STRINGA   PIC X(10).
		PROCEDURE DIVISION.
		    MOVE  "hi there"   TO WS-STRINGA
		    CALL  "prog_b"  USING WS-STRINGA
		    DISPLAY "back in prog_a"
		    GOBACK.
_ATEOF


cat >prog_b.cob <<'_ATEOF'

		IDENTIFICATION DIVISION.
		PROGRAM-ID. prog_b.
		DATA DIVISION.
		WORKING-STORAGE SECTION.
		77  WS-STRINGB   PIC X(10).
		77  WS-CALLSB    PIC 9(03).
		LOCAL-STORAGE SECTION.
		77  LS-STRING  PIC X(10).
		LINKAGE SECTION.
		77  LK-STRING  PIC X(10).

		PROCEDURE DIVISION  USING  LK-STRING.
		    DISPLAY "entered prog_b"
		    ADD   1  TO  WS-CALLSB
		    MOVE  LK-STRING TO WS-STRINGB
		    MOVE  LK-STRING TO LS-STRING
		    DISPLAY "exiting prog_b"
		    GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1866: \$COMPILE prog_a.cob"
at_fn_check_prepare_dynamic "$COMPILE prog_a.cob" "run_extensions.at:1866"
( $at_check_trace; $COMPILE prog_a.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1866"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1867: \$COMPILE_MODULE prog_b.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog_b.cob" "run_extensions.at:1867"
( $at_check_trace; $COMPILE_MODULE prog_b.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1867"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1868: \$COBCRUN_DIRECT ./prog_a"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog_a" "run_extensions.at:1868"
( $at_check_trace; $COBCRUN_DIRECT ./prog_a
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "entered prog_b
exiting prog_b
back in prog_a
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1868"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1137
#AT_START_1138
at_fn_group_banner 1138 'run_extensions.at:1877' \
  "CALL BY VALUE alphanumeric item" "                " 4
at_xfail=no
(
  $as_echo "1138. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC XX VALUE "OK".
       PROCEDURE        DIVISION.
           CALL "prog2" USING BY VALUE X
           END-CALL.
           IF X NOT = "OK"
              DISPLAY X NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01  Y            PIC XX.
       PROCEDURE        DIVISION USING BY VALUE Y.
           MOVE "KO" TO Y.
           EXIT PROGRAM.
       END PROGRAM prog2.
       END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:1905: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:1905"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:8: warning: BY CONTENT assumed for alphanumeric item 'X'
prog.cob:19: warning: handling of parameters passed BY VALUE is unfinished; implementation is likely to be changed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1905"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:1909: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:1909"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1909"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1138
#AT_START_1139
at_fn_group_banner 1139 'run_extensions.at:1914' \
  "CALL BY VALUE numeric literal with SIZE IS" "     " 4
at_xfail=no
(
  $as_echo "1139. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: Eiter MicroFocus SIZE IS extension will be added via dialect option
#       or OpenCOBOL SIZE IS extension be removed later

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           *> Test of auto size, identical to SIZE AUTO
           CALL "prog2" USING BY VALUE 4 0 0 1 0
           END-CALL

           *> Test of explicit SIZE syntax
           CALL "prog2" USING BY VALUE 1 SIZE 1 2 0 0 0
           END-CALL
           CALL "prog2" USING BY VALUE 2 0 SIZE 2 3 0 0
           END-CALL
           CALL "prog2" USING BY VALUE 4 0 0 SIZE 4 4 0
           END-CALL
           CALL "prog2" USING BY VALUE 8 0 0 0 SIZE 8 5
           END-CALL
           CALL "prog2" USING BY VALUE 4 0 0 SIZE DEFAULT 6 0
           END-CALL
           CALL "prog2" USING BY VALUE 4 0 0 SIZE AUTO    7 0
           END-CALL
           *> test for SIZE AUTO with VALUE > INT_MAX is non-portable

           *> Test of explicit UNSIGNED SIZE syntax
           CALL "prog2" USING BY VALUE 1 UNSIGNED SIZE 1 2 0 0 0
           END-CALL
           CALL "prog2" USING BY VALUE 2 0 UNSIGNED SIZE 2 3 0 0
           END-CALL
           CALL "prog2" USING BY VALUE 4 0 0 UNSIGNED SIZE 4 4 0
           END-CALL
           CALL "prog2" USING BY VALUE 8 0 0 0 UNSIGNED SIZE 8 5 0
           END-CALL
           CALL "prog2" USING BY VALUE 4 0 0 UNSIGNED SIZE AUTO 6 0
           END-CALL
           *> test for SIZE AUTO with VALUE > INT_MAX is non-portable

           *> Test of MF size syntax
           *>CALL "prog2" USING BY VALUE 2 SIZE 1
           *>END-CALL
           *>CALL "prog2" USING BY VALUE 3 SIZE 2
           *>END-CALL
           *>CALL "prog2" USING BY VALUE 4 SIZE 4
           *>END-CALL
           *>CALL "prog2" USING BY VALUE 5 SIZE 8
           *>END-CALL

           STOP RUN.
       END PROGRAM prog. *> FIXME: C compile warnings when moved to end (nested programs)

       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01  LEN          USAGE BINARY-LONG.
       01  VAR-1        USAGE BINARY-CHAR.
       01  VAR-2        USAGE BINARY-SHORT.
       01  VAR-4        USAGE BINARY-LONG.
       01  VAR-8        USAGE BINARY-DOUBLE.
       PROCEDURE        DIVISION USING BY VALUE LEN
                                                SIZE 1 VAR-1
                                                SIZE 2 VAR-2
                                                SIZE 4 VAR-4
                                                SIZE 8 VAR-8.
           EVALUATE len
              WHEN 1
                 DISPLAY '1: ' VAR-1 END-DISPLAY
              WHEN 2
                 DISPLAY '2: ' VAR-2 END-DISPLAY
              WHEN 4
                 DISPLAY '4: ' VAR-4 END-DISPLAY
              WHEN 8
                 DISPLAY '8: ' VAR-8 END-DISPLAY
           END-EVALUATE
           EXIT PROGRAM.
       END PROGRAM prog2.
_ATEOF


# hack for now: explicit suppress warning
{ set +x
$as_echo "$at_srcdir/run_extensions.at:1999: \$COMPILE -Wno-unfinished prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished prog.cob" "run_extensions.at:1999"
( $at_check_trace; $COMPILE -Wno-unfinished prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:1999"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2001: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2001"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "4: +0000000001
1: +002
2: +00003
4: +0000000004
8: +00000000000000000005
4: +0000000006
4: +0000000007
1: +002
2: +00003
4: +0000000004
8: +00000000000000000005
4: +0000000006
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2001"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1139
#AT_START_1140
at_fn_group_banner 1140 'run_extensions.at:2019' \
  "CALL BY VALUE to C" "                             " 4
at_xfail=no
(
  $as_echo "1140. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 CALL-NAME     PIC X(10).
       01.
         03 SOME-FILL   PIC X(33).
         03 ADR-PTR     USAGE POINTER.
         03 ADR-BUFFER  REDEFINES ADR-PTR  USAGE COMP-5 PIC S9(8).
       77 BIG-BUFF      USAGE COMP-5 PIC S9(18) VALUE 99999999999999.
       PROCEDURE        DIVISION  CHAINING CALL-NAME.

      >> IF P64 DEFINED
           MOVE "callee64" TO CALL-NAME
      >> ELSE
           MOVE "callee32" TO CALL-NAME
      >> END-IF

           MOVE 12345678 TO ADR-BUFFER
           CALL CALL-NAME USING BY VALUE ADR-PTR

           CALL CALL-NAME USING BY VALUE ADR-BUFFER

           CALL CALL-NAME USING BY VALUE LENGTH OF SOME-FILL

           MOVE -42 TO ADR-BUFFER
      >> IF P64 DEFINED
           CALL "callee32" USING BY VALUE SIZE 4 ADR-BUFFER
           CALL "callee64" USING BY VALUE BIG-BUFF
      >> ELSE
           CALL "callee32" USING BY VALUE ADR-BUFFER
           CALL "callee64" USING BY VALUE SIZE 8 BIG-BUFF
      >> END-IF

           GOBACK.
_ATEOF

# hack for now: explicit suppress warning
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2060: \$COMPILE -Wno-unfinished caller.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-unfinished caller.cob" "run_extensions.at:2060"
( $at_check_trace; $COMPILE -Wno-unfinished caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2060"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >callee64.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
callee64(cob_s64_t val)
{
  printf("VAL received: " CB_FMT_LLD "\n", val);
  return 0;
}
_ATEOF


cat >callee32.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
callee32(cob_s32_t val)
{
  printf("VAL received: %d\n", val);
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2086: \$COMPILE_MODULE callee32.c callee64.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee32.c callee64.c" "run_extensions.at:2086"
( $at_check_trace; $COMPILE_MODULE callee32.c callee64.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2086"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2088: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2088"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "VAL received: 12345678
VAL received: 12345678
VAL received: 33
VAL received: -42
VAL received: 99999999999999
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2088"
$at_failed && at_fn_log_failure
$at_traceon; }



  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1140
#AT_START_1141
at_fn_group_banner 1141 'run_extensions.at:2101' \
  "Case-sensitive PROGRAM-ID" "                      " 4
at_xfail=no
(
  $as_echo "1141. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      PROG.
       PROCEDURE        DIVISION.
           CALL "prog"
           END-CALL.
           STOP RUN.
       PROGRAM-ID.      prog.
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
       END PROGRAM prog.
       END PROGRAM PROG.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2118: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2118"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2118"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2119: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2119"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2119"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1141
#AT_START_1142
at_fn_group_banner 1142 'run_extensions.at:2126' \
  "Quoted PROGRAM-ID" "                              " 4
at_xfail=no
(
  $as_echo "1142. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      "caller".
       PROCEDURE        DIVISION.
           CALL "callee"
           END-CALL.
           STOP RUN.
       PROGRAM-ID.      "callee".
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
       END PROGRAM callee.
       END PROGRAM caller.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2143: \$COMPILE -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w prog.cob" "run_extensions.at:2143"
( $at_check_trace; $COMPILE -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2143"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2144: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2144"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2144"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1142
#AT_START_1143
at_fn_group_banner 1143 'run_extensions.at:2149' \
  "PROGRAM-ID AS clause" "                           " 4
at_xfail=no
(
  $as_echo "1143. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller AS "PROG".
       PROCEDURE        DIVISION.
           CALL "prog"
           END-CALL.
           STOP RUN.
       PROGRAM-ID.      callee AS "prog".
       PROCEDURE        DIVISION.
           EXIT PROGRAM.
       END PROGRAM callee.
       END PROGRAM caller.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2166: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2166"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2166"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2167: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2167"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2167"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1143
#AT_START_1144
at_fn_group_banner 1144 'run_extensions.at:2172' \
  "NUMBER-OF-CALL-PARAMETERS" "                      " 4
at_xfail=no
(
  $as_echo "1144. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 W             PIC X.
       01 X             PIC X.
       01 Y             PIC X.
       01 Z             PIC X.
       PROCEDURE        DIVISION
           USING OPTIONAL W
                          X Y Z.
           DISPLAY NUMBER-OF-CALL-PARAMETERS.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 W             PIC X.
       01 X             PIC X.
       01 Y             PIC X.
       01 Z             PIC X.
       PROCEDURE        DIVISION.
           CALL "callee".
           CALL "callee" USING W.
           CALL "callee" USING W X.
           CALL "callee" USING W X Y.
           CALL "callee" USING W X Y OMITTED.
           CALL "callee" USING W X Y Z.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2210: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:2210"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2210"
$at_failed && at_fn_log_failure
$at_traceon; }


# having USING OPTIONAL not supported leads to only check on use
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2213: \$COMPILE_MODULE -fusing-optional=skip callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fusing-optional=skip callee.cob" "run_extensions.at:2213"
( $at_check_trace; $COMPILE_MODULE -fusing-optional=skip callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2213"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2214: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2214"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+000000000
+000000001
+000000002
+000000003
+000000004
+000000004
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2214"
$at_failed && at_fn_log_failure
$at_traceon; }


# no argument check leads to only check on use
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2224: \$COMPILE_MODULE -fno-ec=program-arg-mismatch callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fno-ec=program-arg-mismatch callee.cob" "run_extensions.at:2224"
( $at_check_trace; $COMPILE_MODULE -fno-ec=program-arg-mismatch callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2224"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2225: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2225"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+000000000
+000000001
+000000002
+000000003
+000000004
+000000004
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2225"
$at_failed && at_fn_log_failure
$at_traceon; }


# sticky linkage leads to only check on use
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2235: \$COMPILE_MODULE -fsticky-linkage callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fsticky-linkage callee.cob" "run_extensions.at:2235"
( $at_check_trace; $COMPILE_MODULE -fsticky-linkage callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2235"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2236: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2236"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "+000000000
+000000001
+000000002
+000000003
+000000004
+000000004
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2236"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2245: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_extensions.at:2245"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2245"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2246: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2246"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: callee.cob:12: error: LINKAGE item X not passed by caller
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:2246"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1144
#AT_START_1145
at_fn_group_banner 1145 'run_extensions.at:2253' \
  "TALLY register" "                                 " 4
at_xfail=no
(
  $as_echo "1145. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       PROCEDURE        DIVISION.
           ADD  1 TO TALLY.
           CALL "nested".
           STOP RUN.

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      nested.
       PROCEDURE        DIVISION.
           DISPLAY tally WITH NO ADVANCING.
           GOBACK.
       END PROGRAM      nested.
_ATEOF


#FIXME: Should get a dialect check in syntax checks,
#       along with all other special registers
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2274: \$COMPILE_ONLY -fnot-register=TALLY prog.cob"
at_fn_check_prepare_dynamic "$COMPILE_ONLY -fnot-register=TALLY prog.cob" "run_extensions.at:2274"
( $at_check_trace; $COMPILE_ONLY -fnot-register=TALLY prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:5: error: 'TALLY' is not defined
prog.cob:12: error: 'tally' is not defined
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:2274"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2279: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2279"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2279"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2280: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2280"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00001" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2280"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1145
#AT_START_1146
at_fn_group_banner 1146 'run_extensions.at:2285' \
  "Redefining TALLY" "                               " 4
at_xfail=no
(
  $as_echo "1146. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  tally PIC 999 VALUE 1.

       PROCEDURE DIVISION.
           ADD 1 TO tally
           DISPLAY tally UPON SYSOUT
           .
_ATEOF



#FIXME: Should get a dialect check in syntax checks,
#       along with all other special registers
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2305: \$COMPILE -std=ibm-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm-strict prog.cob" "run_extensions.at:2305"
( $at_check_trace; $COMPILE -std=ibm-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo stderr:; cat "$at_stderr"
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:2305"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2306: \$COMPILE -std=acu-strict prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=acu-strict prog.cob" "run_extensions.at:2306"
( $at_check_trace; $COMPILE -std=acu-strict prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2306"
$at_failed && at_fn_log_failure
$at_traceon; }

#AT_CHECK([$COMPILE -std=ibm prog.cob], [0], [], [])
#AT_CHECK([$COMPILE -std=ibm-strict prog.cob], [1], [],
#[prog.cob:7: error: redefinition of register 'TALLY'
#])
#AT_CHECK([$COMPILE prog.cob], [0], [], [])
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2312: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2312"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "002
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2312"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1146
#AT_START_1147
at_fn_group_banner 1147 'run_extensions.at:2321' \
  "PROCEDURE DIVISION USING BY ..." "                " 4
at_xfail=no
(
  $as_echo "1147. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       LINKAGE          SECTION.
       01 X             PIC X.
       01 Y             PIC 99.
       01 Z             PIC 99 USAGE COMP.
       PROCEDURE        DIVISION
           USING BY VALUE X BY REFERENCE Y Z.
           MOVE "Z" TO X.
           MOVE 56 TO Y.
           MOVE 78 TO Z.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X.
       01 Y             PIC 99.
       01 Z             PIC 99 USAGE COMP.
       PROCEDURE        DIVISION.
           MOVE "X" TO X.
           MOVE 12 TO Y.
           MOVE 34 TO Z.
           CALL "callee" USING BY CONTENT X
                               BY REFERENCE Y
                               BY CONTENT Z
           END-CALL.
           IF X NOT = "X" OR
              Y NOT = 56  OR
              Z NOT = 34
                DISPLAY "X = " X " Y = " Y " Z = " Z
                END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2365: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:2365"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2365"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2366: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_extensions.at:2366"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "callee.cob:10: warning: handling of parameters passed BY VALUE is unfinished; implementation is likely to be changed
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2366"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2369: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2369"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2369"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1147
#AT_START_1148
at_fn_group_banner 1148 'run_extensions.at:2374' \
  "PROCEDURE DIVISION CHAINING" "                    " 4
at_xfail=no
(
  $as_echo "1148. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X.
       01  ABCD         PIC X(4).
       01  NUM          PIC 9 VALUE 7.
       PROCEDURE        DIVISION
                        CHAINING X ABCD NUM.
           IF X    NOT = "X"    OR
              ABCD NOT = "ABCD"
              DISPLAY "X = " X " ABCD = " ABCD
              END-DISPLAY
           END-IF
           IF NUM  NOT = 7
              DISPLAY "NUM not INITIALIZED: " NUM
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  VAR.
           03  X            PIC X VALUE 'a'.
           03  ABCD         PIC X(4).
           03  NUM          PIC 9 VALUE 7.
       PROCEDURE        DIVISION
                        CHAINING VAR.
           DISPLAY '-' VAR '-' WITH NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X.
       01  ABCD         PIC X(4).
       01  NUM          PIC 9 VALUE 7.
       PROCEDURE        DIVISION
                        CHAINING X ABCD NUM.
           IF X    NOT = "X"    OR
              ABCD NOT = "ABCD"
              DISPLAY "X = " X " ABCD = " ABCD
              END-DISPLAY
           END-IF
           IF NUM  NOT = 7
              DISPLAY "NUM not INITIALIZED: " NUM
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       PROCEDURE        DIVISION.
           CALL "prog3" USING "X ABCD" END-CALL
           STOP RUN.
_ATEOF


cat >init.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      init.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  VAR.
           03  X            PIC X VALUE 'a'.
           03  ABCD         PIC X(4).
           03  NUM          PIC 9  VALUE 7.
       77  NUM2             PIC 99 VALUE 2.
       PROCEDURE        DIVISION
                        CHAINING VAR.
           DISPLAY '-' VAR NUM2 '-' WITH NO ADVANCING
           END-DISPLAY
           INITIALIZE  VAR NUM2
           DISPLAY '-' VAR NUM2 '-' WITH NO ADVANCING
           MOVE 'XXXX' TO ABCD
           INITIALIZE  VAR NUM2 ALL TO VALUE
           DISPLAY '-' VAR NUM2 '-' WITH NO ADVANCING
           MOVE ALL 'b' TO ABCD
           INITIALIZE  VAR NUM2 ALL TO VALUE THEN TO DEFAULT
           DISPLAY '-' VAR NUM2 '-' WITH NO ADVANCING
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2471: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2471"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2471"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2472: \$COBCRUN_DIRECT ./prog X ABCD"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog X ABCD" "run_extensions.at:2472"
( $at_check_trace; $COBCRUN_DIRECT ./prog X ABCD
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2472"
$at_failed && at_fn_log_failure
$at_traceon; }


# note: sticky linkage and CHAINING produced compiler errors
#   --> additional test
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2476: \$COMPILE prog.cob -fsticky-linkage -o prog_sticky"
at_fn_check_prepare_dynamic "$COMPILE prog.cob -fsticky-linkage -o prog_sticky" "run_extensions.at:2476"
( $at_check_trace; $COMPILE prog.cob -fsticky-linkage -o prog_sticky
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2476"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2477: \$COBCRUN_DIRECT ./prog_sticky X ABCD"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog_sticky X ABCD" "run_extensions.at:2477"
( $at_check_trace; $COBCRUN_DIRECT ./prog_sticky X ABCD
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2477"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2479: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_extensions.at:2479"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2479"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2480: \$COBCRUN_DIRECT ./prog2 X"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2 X" "run_extensions.at:2480"
( $at_check_trace; $COBCRUN_DIRECT ./prog2 X
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-X     -" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2480"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2481: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_extensions.at:2481"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-a    7-" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2481"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2483: \$COMPILE_MODULE prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog3.cob" "run_extensions.at:2483"
( $at_check_trace; $COMPILE_MODULE prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2483"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2484: \$COBCRUN prog3 X ABCD"
at_fn_check_prepare_dynamic "$COBCRUN prog3 X ABCD" "run_extensions.at:2484"
( $at_check_trace; $COBCRUN prog3 X ABCD
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2484"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2486: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:2486"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2486"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2487: \$COBCRUN_DIRECT ./caller X ABCD"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller X ABCD" "run_extensions.at:2487"
( $at_check_trace; $COBCRUN_DIRECT ./caller X ABCD
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: caller.cob:6: error: CALL of program with CHAINING clause
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:2487"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2491: \$COMPILE init.cob"
at_fn_check_prepare_dynamic "$COMPILE init.cob" "run_extensions.at:2491"
( $at_check_trace; $COMPILE init.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2491"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2492: \$COBCRUN_DIRECT ./init X"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./init X" "run_extensions.at:2492"
( $at_check_trace; $COBCRUN_DIRECT ./init X
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-X     02--     000--aXXXX702--a    702-" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2492"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1148
#AT_START_1149
at_fn_group_banner 1149 'run_extensions.at:2497' \
  "STOP RUN RETURNING/GIVING" "                      " 4
at_xfail=no
(
  $as_echo "1149. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog1.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  RET          PIC 99 USAGE DISPLAY.
       PROCEDURE        DIVISION.
           MOVE 11 TO RET
           STOP RUN RETURNING RET.
_ATEOF


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  RET          PIC 99 USAGE PACKED-DECIMAL.
       PROCEDURE        DIVISION.
           MOVE 22 TO RET
           STOP RUN GIVING RET.
_ATEOF


cat >prog3.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog3.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           STOP RUN 33.
_ATEOF


cat >prog4.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog4.
       PROCEDURE        DIVISION.
           STOP RUN RETURNING 44.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2538: \$COMPILE prog1.cob"
at_fn_check_prepare_dynamic "$COMPILE prog1.cob" "run_extensions.at:2538"
( $at_check_trace; $COMPILE prog1.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2538"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2539: \$COBCRUN_DIRECT ./prog1"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog1" "run_extensions.at:2539"
( $at_check_trace; $COBCRUN_DIRECT ./prog1
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 11 $at_status "$at_srcdir/run_extensions.at:2539"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2541: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_extensions.at:2541"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2541"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2542: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_extensions.at:2542"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 22 $at_status "$at_srcdir/run_extensions.at:2542"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2544: \$COMPILE prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE prog3.cob" "run_extensions.at:2544"
( $at_check_trace; $COMPILE prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2544"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2545: \$COBCRUN_DIRECT ./prog3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3" "run_extensions.at:2545"
( $at_check_trace; $COBCRUN_DIRECT ./prog3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 33 $at_status "$at_srcdir/run_extensions.at:2545"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2547: \$COMPILE prog4.cob"
at_fn_check_prepare_dynamic "$COMPILE prog4.cob" "run_extensions.at:2547"
( $at_check_trace; $COMPILE prog4.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2547"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2548: \$COBCRUN_DIRECT ./prog4"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog4" "run_extensions.at:2548"
( $at_check_trace; $COBCRUN_DIRECT ./prog4
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 44 $at_status "$at_srcdir/run_extensions.at:2548"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1149
#AT_START_1150
at_fn_group_banner 1150 'run_extensions.at:2553' \
  "GOBACK/EXIT PROGRAM RETURNING/GIVING" "           " 4
at_xfail=no
(
  $as_echo "1150. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  RETURN-DISP  PIC S9(08).
       PROCEDURE        DIVISION.
           CALL 'prog1' END-CALL
           IF RETURN-CODE NOT = -1
              MOVE RETURN-CODE TO RETURN-DISP
              DISPLAY 'RETURN-CODE ' RETURN-DISP
                      ' INSTEAD OF -1'
              END-DISPLAY
           END-IF
           CALL 'prog2' END-CALL
           IF RETURN-CODE NOT = 2
              MOVE RETURN-CODE TO RETURN-DISP
              DISPLAY 'RETURN-CODE ' RETURN-DISP
                      ' INSTEAD OF 2'
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


cat >prog1.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog1.
       PROCEDURE        DIVISION.
           EXIT PROGRAM RETURNING -1.
_ATEOF



cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog2.
       PROCEDURE        DIVISION.
           GOBACK GIVING 2.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2595: \$COMPILE prog.cob prog1.cob prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob prog1.cob prog2.cob" "run_extensions.at:2595"
( $at_check_trace; $COMPILE prog.cob prog1.cob prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2595"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2596: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2596"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 2 $at_status "$at_srcdir/run_extensions.at:2596"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1150
#AT_START_1151
at_fn_group_banner 1151 'run_extensions.at:2603' \
  "ENTRY" "                                          " 4
at_xfail=no
(
  $as_echo "1151. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       PROCEDURE        DIVISION.
           CALL "hello" USING "COBOL"
           END-CALL.
           CALL "bye" USING "COBOL-ENTRY"
           END-CALL.
           STOP RUN.
_ATEOF


cat >hello.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      hello.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 MSG-HELLO     PIC X(7) VALUE "Hello, ".
       01 MSG-BYE       PIC X(5) VALUE "Bye, ".
       LINKAGE          SECTION.
       01 X             PIC X(5).
       01 Y             PIC X(11).
       PROCEDURE        DIVISION USING X.
           DISPLAY MSG-HELLO X "!".
      * verifies that this does not generate an exception
       ENTRY "unused" USING Y.
           EXIT PROGRAM.

       ENTRY "bye" USING Y.
           DISPLAY MSG-BYE Y "!".
           EXIT PROGRAM.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2638: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:2638"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2638"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2639: \$COMPILE_MODULE -fentry-statement=ok hello.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fentry-statement=ok hello.cob" "run_extensions.at:2639"
( $at_check_trace; $COMPILE_MODULE -fentry-statement=ok hello.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2639"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2640: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2640"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello, COBOL!
Bye, COBOL-ENTRY!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2640"
$at_failed && at_fn_log_failure
$at_traceon; }

# no difference expected with sticky linkage (but other codegen)
{ set +x
$as_echo "$at_srcdir/run_extensions.at:2645: \$COMPILE_MODULE -fentry-statement=ok -fsticky-linkage hello.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE -fentry-statement=ok -fsticky-linkage hello.cob" "run_extensions.at:2645"
( $at_check_trace; $COMPILE_MODULE -fentry-statement=ok -fsticky-linkage hello.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2645"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2646: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:2646"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello, COBOL!
Bye, COBOL-ENTRY!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2646"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1151
#AT_START_1152
at_fn_group_banner 1152 'run_extensions.at:2654' \
  "ASSIGN to KEYBOARD/DISPLAY" "                     " 4
at_xfail=no
(
  $as_echo "1152. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >TEST-FILE <<'_ATEOF'
a
ab
abc
abcd
abcde
abcdef
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN  KEYBOARD
                        ORGANIZATION IS LINE SEQUENTIAL.
       SELECT TEST-OUT  ASSIGN  DISPLAY
                        ORGANIZATION IS LINE SEQUENTIAL.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(80).
       FD TEST-OUT.
       01 TEST-REC-OUT  PIC X(80).
       PROCEDURE        DIVISION.
       A00.
           OPEN INPUT  TEST-FILE.
           OPEN OUTPUT TEST-OUT.
       A01.
           READ TEST-FILE AT END
                GO TO Z99
           END-READ.
           WRITE TEST-REC-OUT FROM TEST-REC
           END-WRITE.
           GO TO A01.
       Z99.
           CLOSE TEST-FILE.
           CLOSE TEST-OUT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2699: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2699"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2699"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2700: cat TEST-FILE | \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'a shell pipeline' "run_extensions.at:2700"
( $at_check_trace; cat TEST-FILE | $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "a
ab
abc
abcd
abcde
abcdef
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2700"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1152
#AT_START_1153
at_fn_group_banner 1153 'run_extensions.at:2712' \
  "SORT ASSIGN KEYBOARD to ASSIGN DISPLAY" "         " 4
at_xfail=yes
(
  $as_echo "1153. $at_setup_line: testing $at_desc ..."
  $at_traceon



# GC has an extension "SORT FILES always in memory" and therefore didn't
# used the ASSIGN clause (which should be mandatory) for SORT files at all.
# We should add an according test and change the test here after cleanup,
# officially documenting the "ASSIGN clause not necessary for SORT FILES"
# extension and enable it only with a conf entry (set only in default.conf).


cat >TEST-FILE <<'_ATEOF'
9
22
11
0
00
8
77
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT      DIVISION.
       INPUT-OUTPUT     SECTION.
       FILE-CONTROL.
       SELECT TEST-FILE ASSIGN  KEYBOARD
                        ORGANIZATION IS LINE SEQUENTIAL.
       SELECT TEST-OUT  ASSIGN  DISPLAY
                        ORGANIZATION IS LINE SEQUENTIAL.
       SELECT SORT-FILE.
       DATA             DIVISION.
       FILE             SECTION.
       FD TEST-FILE.
       01 TEST-REC      PIC X(80).
       FD TEST-OUT.
       01 TEST-REC-OUT  PIC X(80).
       SD SORT-FILE.
       01 SORT-REC      PIC X(80).
       PROCEDURE        DIVISION.
       A00.
           SORT SORT-FILE
                ON ASCENDING SORT-REC
                USING        TEST-FILE
                GIVING       TEST-OUT.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2760: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2760"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2760"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2761: cat TEST-FILE | \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_notrace 'a shell pipeline' "run_extensions.at:2761"
( $at_check_trace; cat TEST-FILE | $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0
00
11
22
77
8
9
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2761"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1153
#AT_START_1154
at_fn_group_banner 1154 'run_extensions.at:2774' \
  "Environment/Argument variable" "                  " 4
at_xfail=no
(
  $as_echo "1154. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4).
       01 Y             PIC X(8).
       01 Z             PIC 9(4).
       PROCEDURE        DIVISION.
           DISPLAY "TEST_ENV" UPON ENVIRONMENT-NAME
           END-DISPLAY.
           ACCEPT X FROM ENVIRONMENT-VALUE
           END-ACCEPT.
           DISPLAY "(" X ")"
           END-DISPLAY.
           DISPLAY "RXW" UPON ENVIRONMENT-VALUE
           END-DISPLAY.
           ACCEPT X FROM ENVIRONMENT-VALUE
           END-ACCEPT.
           DISPLAY "(" X ")"
           END-DISPLAY.
           ACCEPT Y FROM ARGUMENT-VALUE
           END-ACCEPT.
           DISPLAY "(" Y ")"
           END-DISPLAY.
           ACCEPT Z FROM ARGUMENT-NUMBER
           END-ACCEPT.
           DISPLAY "(" Z ")"
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2809: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2809"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2809"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2810: TEST_ENV=OK \$COBCRUN_DIRECT ./prog CHECKPAR"
at_fn_check_prepare_dynamic "TEST_ENV=OK $COBCRUN_DIRECT ./prog CHECKPAR" "run_extensions.at:2810"
( $at_check_trace; TEST_ENV=OK $COBCRUN_DIRECT ./prog CHECKPAR
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "(OK  )
(RXW )
(CHECKPAR)
(0001)
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2810"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1154
#AT_START_1155
at_fn_group_banner 1155 'run_extensions.at:2820' \
  "78 Level (1)" "                                   " 4
at_xfail=no
(
  $as_echo "1155. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78  X            VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2835: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2835"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2835"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2836: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2836"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2836"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1155
#AT_START_1156
at_fn_group_banner 1156 'run_extensions.at:2843' \
  "78 Level (2)" "                                   " 4
at_xfail=no
(
  $as_echo "1156. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z.
       78  X            VALUE "OK".
       78  Y            VALUE "OK".
           03  FILLER   PIC XX VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY X Z Y
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2861: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2861"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2861"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2862: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2862"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOKOK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2862"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1156
#AT_START_1157
at_fn_group_banner 1157 'run_extensions.at:2869' \
  "78 Level (3)" "                                   " 4
at_xfail=no
(
  $as_echo "1157. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78  X            VALUE "OK".
       01  Z            PIC XX VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY Z X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2885: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:2885"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2885"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:2886: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:2886"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2886"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1157
#AT_START_1158
at_fn_group_banner 1158 'run_extensions.at:2893' \
  "SWITCHES with non-standard names" "               " 4
at_xfail=no
(
  $as_echo "1158. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           SW1
             ON  IS SWIT1-ON
             OFF IS SWIT1-OFF
           .
           SWITCH B IS SWITCH-B
             ON  IS SWIT2-ON
             OFF IS SWIT2-OFF
           .
           SWITCH 25
             ON  IS SWIT25-ON
             OFF IS SWIT25-OFF
           .
           SWITCH Z
             ON  IS SWIT26-ON
             OFF IS SWIT26-OFF
           .
           USW-31
             ON  IS SWIT31-ON
             OFF IS SWIT31-OFF
           .
           SWITCH-32
             ON  IS SWIT32-ON
             OFF IS SWIT32-OFF
           .
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  SWITCH       PIC 99 VALUE 12.
	   78  Z            VALUE 11.
       PROCEDURE        DIVISION.
           ADD SWITCH 1 GIVING SWITCH
           END-ADD.
           IF SWITCH NOT = 13
              DISPLAY "SWITCH (variable) + 1 WRONG: "
                      SWITCH
              END-DISPLAY
           END-IF.
           ADD SWITCH Z GIVING SWITCH
           END-ADD.
           IF SWITCH NOT = 24
              DISPLAY "SWITCH (variable) + Z WRONG: "
                      SWITCH
              END-DISPLAY
           END-IF.
           IF SWIT1-ON
              DISPLAY "ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY "OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           IF SWIT2-ON
              DISPLAY " ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY " OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           SET SWITCH-B TO OFF
           IF SWIT2-ON
              DISPLAY " ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY " OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           IF SWIT25-ON
              DISPLAY " ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY " OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           IF SWIT26-ON
              DISPLAY " ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY " OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           IF SWIT31-ON
              DISPLAY " ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY " OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           IF SWIT32-ON
              DISPLAY " ON" NO ADVANCING
              END-DISPLAY
           ELSE
              DISPLAY " OFF" NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:2998: \$COMPILE -fsystem-name=\"sw1, SwItCh\\ b, SWITCH\\ 25\" \\
-fsystem-name=SWITCH-32 -fsystem-name=\"SWITCH\\ Z\" -fsystem-name=USW-31 prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "run_extensions.at:2998"
( $at_check_trace; $COMPILE -fsystem-name="sw1, SwItCh\ b, SWITCH\ 25" \
-fsystem-name=SWITCH-32 -fsystem-name="SWITCH\ Z" -fsystem-name=USW-31 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:2998"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3000: COB_SWITCH_12=1 COB_SWITCH_36=1 COB_SWITCH_31=1 COB_SWITCH_32=1 ./prog"
at_fn_check_prepare_trace "run_extensions.at:3000"
( $at_check_trace; COB_SWITCH_12=1 COB_SWITCH_36=1 COB_SWITCH_31=1 COB_SWITCH_32=1 ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OFF ON OFF OFF ON ON ON" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3000"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1158
#AT_START_1159
at_fn_group_banner 1159 'run_extensions.at:3006' \
  "Larger REDEFINES lengths" "                       " 4
at_xfail=no
(
  $as_echo "1159. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  Z            PIC 99.
       01  XMAIN        PIC X(8).
       01  XMAINRED REDEFINES XMAIN.
           03  FILLER         PIC X(4).
           03  XMAIN03.
               05  XMAIN0501  PIC X(4).
               05  XMAIN0502 REDEFINES XMAIN0501 PIC X(5).
       01 USE-VARS.
          05 USE-VALUE                PIC 9
                                      VALUE ZERO.
             88 USE-ACTIVE-FIRST      VALUE 1.
             88 USE-ACTIVE-SECOND     VALUE 2.
          05 USE-FIRST.
             10 FIRST-DATA.
                20 FIRST-DATA-VAR     PIC X(033).
             10 FIRST-VARIANT-A REDEFINES FIRST-DATA.
                20 PART-A-FIRST       PIC X(33211).
             10 FIRST-VARIANT-B REDEFINES FIRST-DATA.
                20 PART-B-FIRST       PIC X(24561).
             10 FIRST-VARIANT-C REDEFINES FIRST-DATA.
                20 PART-C-FIRST       PIC X(3421).
         05 USE-SECOND REDEFINES USE-FIRST.
            10 SECOND-HEADER.
               20 SECOND-DATA         PIC 9(015).
               20 SECOND-CONTROL-SUM  PIC 9(015)V9(003).
            10 SECOND-VARIANT-A REDEFINES SECOND-HEADER.
               20 PART-A-SECOND       PIC X(27241).
            10 SECOND-VARIANT-B REDEFINES SECOND-HEADER.
               20 PART-B-SECOND       PIC X(3879).
       PROCEDURE        DIVISION.
           MOVE    LENGTH OF XMAIN       TO Z.
           IF Z NOT = 8
              DISPLAY "Test 1 " Z.
           MOVE    LENGTH OF XMAINRED    TO Z.
           IF Z NOT = 9
              DISPLAY "Test 2 " Z.
           MOVE    LENGTH OF XMAIN03     TO Z.
           IF Z NOT = 5
              DISPLAY "Test 3 " Z.
           MOVE    LENGTH OF XMAIN0501   TO Z.
           IF Z NOT = 4
              DISPLAY "Test 4 " Z.
           MOVE    LENGTH OF XMAIN0502   TO Z.
           IF Z NOT = 5
              DISPLAY "Test 5 " Z.
           IF LENGTH OF USE-FIRST  NOT = 33211
              DISPLAY LENGTH OF USE-FIRST   END-DISPLAY.
           IF LENGTH OF USE-SECOND NOT = 27241
              DISPLAY LENGTH OF USE-SECOND  END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3066: \$COMPILE -flarger-redefines=ok -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -flarger-redefines=ok -w prog.cob" "run_extensions.at:3066"
( $at_check_trace; $COMPILE -flarger-redefines=ok -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3066"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3067: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3067"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3067"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1159
#AT_START_1160
at_fn_group_banner 1160 'run_extensions.at:3071' \
  "REDEFINES: non-referenced ambiguous item" "       " 4
at_xfail=no
(
  $as_echo "1160. $at_setup_line: testing $at_desc ..."
  $at_traceon



# bad extension, supported for compatibility to at least MicroFocus
# the redefines always applies to the item defined before

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X value '1'.
       01 X             PIC X value '2'.
       01 G             REDEFINES X PIC 9.
       PROCEDURE        DIVISION.
           IF G NOT = 2
              DISPLAY 'G IS ' G.
           STOP RUN.
_ATEOF


# syntax checked in syn_definition.at
{ set +x
$as_echo "$at_srcdir/run_extensions.at:3092: \$COMPILE -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w prog.cob" "run_extensions.at:3092"
( $at_check_trace; $COMPILE -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3092"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3093: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3093"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3093"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1160
#AT_START_1161
at_fn_group_banner 1161 'run_extensions.at:3097' \
  "Obsolete 2002 keywords with COBOL2014" "          " 4
at_xfail=no
(
  $as_echo "1161. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  TERMINAL     PIC XX VALUE "OK".
       01  SEND         PIC XX VALUE "OK".
       PROCEDURE        DIVISION.
           DISPLAY TERMINAL SEND.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3112: \$COMPILE -std=cobol2002 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2002 prog.cob" "run_extensions.at:3112"
( $at_check_trace; $COMPILE -std=cobol2002 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:6: error: syntax error, unexpected TERMINAL
prog.cob:7: error: syntax error, unexpected SEND
prog.cob:9: error: syntax error, unexpected TERMINAL, expecting (
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:3112"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3117: \$COMPILE -std=cobol2014 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=cobol2014 prog.cob" "run_extensions.at:3117"
( $at_check_trace; $COMPILE -std=cobol2014 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3117"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3118: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3118"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3118"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1161
#AT_START_1162
at_fn_group_banner 1162 'run_extensions.at:3127' \
  "System routine with wrong number of parameters" " " 4
at_xfail=no
(
  $as_echo "1162. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  N            PIC 9 USAGE BINARY.
       77  X            PIC X.
       PROCEDURE        DIVISION.
           CALL "C$NARG" USING N X
           END-CALL
           IF N NOT = 2
              DISPLAY "NOTOK " N
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


cat >wrong.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      wrong.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  X            PIC X.
       PROCEDURE        DIVISION.
           CALL "CBL_OR" USING X
           END-CALL
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3159: \$COMPILE wrong.cob"
at_fn_check_prepare_dynamic "$COMPILE wrong.cob" "run_extensions.at:3159"
( $at_check_trace; $COMPILE wrong.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "wrong.cob:8: error: wrong number of CALL parameters for 'CBL_OR', 1 given, 3 expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:3159"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3162: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3162"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob:9: warning: wrong number of CALL parameters for 'C\$NARG', 2 given, 1 expected
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3162"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3165: \$COBCRUN_DIRECT ./prog 1 2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog 1 2" "run_extensions.at:3165"
( $at_check_trace; $COBCRUN_DIRECT ./prog 1 2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3165"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1162
#AT_START_1163
at_fn_group_banner 1163 'run_extensions.at:3170' \
  "System routine C\$NARG" "                          " 4
at_xfail=no
(
  $as_echo "1163. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            USAGE BINARY-LONG.
       LINKAGE SECTION.
       01  Y            PIC   X.
       PROCEDURE        DIVISION USING Y.
           CALL "C$NARG" USING X
           END-CALL
           IF X NOT = 1
              DISPLAY "NOTOK callee " X
              END-DISPLAY
           END-IF
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X VALUE "X".
       01  N            PIC 9 USAGE BINARY.
       LINKAGE SECTION.
       77  Y            PIC X.
       77  Z            PIC X.
       PROCEDURE        DIVISION.
           CALL "C$NARG" USING N
           END-CALL
           IF N NOT = 2
              DISPLAY "NOTOK caller (1) " N
              END-DISPLAY
           END-IF
           CALL "callee" USING X
           END-CALL
           CALL "C$NARG" USING N
           END-CALL
           IF N NOT = 2
              DISPLAY "NOTOK caller (2) " N
              END-DISPLAY
           END-IF
           STOP RUN.
_ATEOF


cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  N            PIC 9 USAGE BINARY.
       LINKAGE SECTION.
       77  X            PIC X.
       77  Y            PIC X.
       77  Z            PIC X.
       PROCEDURE        DIVISION.
           CALL "C$NARG" USING N
           END-CALL
           DISPLAY N WITH NO ADVANCING
           END-DISPLAY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3237: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:3237"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3237"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3238: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_extensions.at:3238"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3238"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3239: \$COBCRUN_DIRECT ./caller 1 2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller 1 2" "run_extensions.at:3239"
( $at_check_trace; $COBCRUN_DIRECT ./caller 1 2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3239"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3240: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3240"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3240"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3241: \$COBCRUN_DIRECT ./prog \"1 2\""
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog \"1 2\"" "run_extensions.at:3241"
( $at_check_trace; $COBCRUN_DIRECT ./prog "1 2"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3241"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3242: \$COBCRUN_DIRECT ./prog 1 2 3"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog 1 2 3" "run_extensions.at:3242"
( $at_check_trace; $COBCRUN_DIRECT ./prog 1 2 3
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3242"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1163
#AT_START_1164
at_fn_group_banner 1164 'run_extensions.at:3247' \
  "System routine C\$PARAMSIZE" "                     " 4
at_xfail=no
(
  $as_echo "1164. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            USAGE BINARY-LONG.
       LINKAGE SECTION.
       01  Y            PIC   X ANY LENGTH.
       PROCEDURE        DIVISION USING Y.
           MOVE 1 TO X.
           CALL "C$PARAMSIZE" USING X
           END-CALL.
           IF RETURN-CODE NOT = 2
              DISPLAY "NOTOK "  RETURN-CODE
              END-DISPLAY
           END-IF.
           MOVE 0 TO RETURN-CODE.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC XX VALUE "XY".
       PROCEDURE        DIVISION.
           CALL "callee" USING X
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3282: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:3282"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3282"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3283: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_extensions.at:3283"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3283"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3284: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:3284"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3284"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1164
#AT_START_1165
at_fn_group_banner 1165 'run_extensions.at:3289' \
  "System routine C\$CALLEDBY" "                      " 4
at_xfail=no
(
  $as_echo "1165. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >callee.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      callee.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(6) VALUE "X".
       PROCEDURE        DIVISION.
           CALL "C$CALLEDBY" USING X
           END-CALL.
           IF RETURN-CODE = 1 AND
              X = "caller"
              DISPLAY "OK" NO ADVANCING
              END-DISPLAY
           END-IF.
           EXIT PROGRAM.
_ATEOF


cat >caller.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      caller.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(6) VALUE "X".
       PROCEDURE        DIVISION.
           CALL "C$CALLEDBY" USING X
           END-CALL.
           IF RETURN-CODE = 0 AND
              X = SPACES
              DISPLAY "OK" NO ADVANCING
              END-DISPLAY
           END-IF.
           CALL "callee"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3328: \$COMPILE caller.cob"
at_fn_check_prepare_dynamic "$COMPILE caller.cob" "run_extensions.at:3328"
( $at_check_trace; $COMPILE caller.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3328"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3329: \$COMPILE_MODULE callee.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE callee.cob" "run_extensions.at:3329"
( $at_check_trace; $COMPILE_MODULE callee.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3329"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3330: \$COBCRUN_DIRECT ./caller"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./caller" "run_extensions.at:3330"
( $at_check_trace; $COBCRUN_DIRECT ./caller
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKOK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:3330"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1165
#AT_START_1166
at_fn_group_banner 1166 'run_extensions.at:3335' \
  "System routine C\$JUSTIFY" "                       " 4
at_xfail=no
(
  $as_echo "1166. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE " OK ".
       PROCEDURE        DIVISION.
           CALL "C$JUSTIFY" USING X "L"
           END-CALL.
           IF X NOT = "OK  "
              DISPLAY X NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3354: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3354"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3354"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3355: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3355"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3355"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1166
#AT_START_1167
at_fn_group_banner 1167 'run_extensions.at:3360' \
  "System routine C\$PRINTABLE" "                     " 4
at_xfail=no
(
  $as_echo "1167. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X.
           03  X1       PIC X.
           03  X234     PIC XXX.
       PROCEDURE        DIVISION.
           MOVE LOW-VALUE TO X1.
           MOVE "BCD"     TO X234.
           CALL "C$PRINTABLE" USING X
           END-CALL.
           IF X NOT = ".BCD"
              DISPLAY X NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3383: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3383"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3383"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3384: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3384"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3384"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1167
#AT_START_1168
at_fn_group_banner 1168 'run_extensions.at:3389' \
  "System routine C\$MAKEDIR" "                       " 4
at_xfail=no
(
  $as_echo "1168. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           CALL "C$MAKEDIR" USING "TMP"
           END-CALL.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3403: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3403"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3403"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3404: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3404"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3404"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3405: test -d \"TMP\" && rmdir \"TMP\""
at_fn_check_prepare_trace "run_extensions.at:3405"
( $at_check_trace; test -d "TMP" && rmdir "TMP"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3405"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1168
#AT_START_1169
at_fn_group_banner 1169 'run_extensions.at:3410' \
  "System routine C\$GETPID" "                        " 4
at_xfail=no
(
  $as_echo "1169. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
           CALL "C$GETPID"
           END-CALL.
           IF RETURN-CODE = 0
              DISPLAY "C$GETPID returned zero!"
              END-DISPLAY
           END-IF.
           MOVE 0 TO RETURN-CODE.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3429: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3429"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3429"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3430: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3430"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3430"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1169
#AT_START_1170
at_fn_group_banner 1170 'run_extensions.at:3435' \
  "System routine C\$TOUPPER" "                       " 4
at_xfail=no
(
  $as_echo "1170. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(2) VALUE "ok".
       PROCEDURE        DIVISION.
           CALL "C$TOUPPER" USING X BY VALUE 2
           END-CALL.
           IF X NOT = "OK"
              DISPLAY X NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3454: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3454"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3454"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3455: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3455"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3455"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1170
#AT_START_1171
at_fn_group_banner 1171 'run_extensions.at:3460' \
  "System routine C\$TOLOWER" "                       " 4
at_xfail=no
(
  $as_echo "1171. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(2) VALUE "OK".
       PROCEDURE        DIVISION.
           CALL "C$TOLOWER" USING X BY VALUE 2
           END-CALL.
           IF X NOT = "ok"
              DISPLAY X NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3479: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3479"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3479"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3480: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3480"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3480"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1171
#AT_START_1172
at_fn_group_banner 1172 'run_extensions.at:3485' \
  "System routine CBL_OR" "                          " 4
at_xfail=no
(
  $as_echo "1172. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE "0000".
       01  Z            PIC X(4) VALUE X"01010101".
       PROCEDURE        DIVISION.
           CALL "CBL_OR" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = "1111"
              DISPLAY Z NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3506: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3506"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3506"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3507: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3507"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3507"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1172
#AT_START_1173
at_fn_group_banner 1173 'run_extensions.at:3512' \
  "System routine CBL_NOR" "                         " 4
at_xfail=no
(
  $as_echo "1173. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE X"03030303".
       01  Z            PIC X(4) VALUE X"05050505".
       PROCEDURE        DIVISION.
           CALL "CBL_NOR" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = X"F8F8F8F8"
              DISPLAY "NG" NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3533: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3533"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3533"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3534: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3534"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3534"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1173
#AT_START_1174
at_fn_group_banner 1174 'run_extensions.at:3539' \
  "System routine CBL_AND" "                         " 4
at_xfail=no
(
  $as_echo "1174. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE "3333".
       01  Z            PIC X(4) VALUE "5555".
       PROCEDURE        DIVISION.
           CALL "CBL_AND" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = "1111"
              DISPLAY Z NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3560: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3560"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3560"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3561: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3561"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3561"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1174
#AT_START_1175
at_fn_group_banner 1175 'run_extensions.at:3566' \
  "System routine CBL_XOR" "                         " 4
at_xfail=no
(
  $as_echo "1175. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE "3333".
       01  Z            PIC X(4) VALUE X"02020202".
       PROCEDURE        DIVISION.
           CALL "CBL_XOR" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = "1111"
              DISPLAY Z NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3587: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3587"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3587"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3588: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3588"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3588"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1175
#AT_START_1176
at_fn_group_banner 1176 'run_extensions.at:3593' \
  "System routine CBL_IMP" "                         " 4
at_xfail=no
(
  $as_echo "1176. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE HIGH-VALUE.
       01  Z            PIC X(4) VALUE "1111".
       PROCEDURE        DIVISION.
           CALL "CBL_IMP" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = "1111"
              DISPLAY Z NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3614: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3614"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3614"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3615: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3615"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3615"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1176
#AT_START_1177
at_fn_group_banner 1177 'run_extensions.at:3620' \
  "System routine CBL_NIMP" "                        " 4
at_xfail=no
(
  $as_echo "1177. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE "1111".
       01  Z            PIC X(4) VALUE LOW-VALUE.
       PROCEDURE        DIVISION.
           CALL "CBL_NIMP" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = "1111"
              DISPLAY Z NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3641: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3641"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3641"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3642: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3642"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3642"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1177
#AT_START_1178
at_fn_group_banner 1178 'run_extensions.at:3647' \
  "System routine CBL_NOT" "                         " 4
at_xfail=no
(
  $as_echo "1178. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE HIGH-VALUE.
       PROCEDURE        DIVISION.
           CALL "CBL_NOT" USING X
                BY VALUE LENGTH OF X
           END-CALL.
           IF X NOT = LOW-VALUE
              DISPLAY "NG" NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3667: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3667"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3667"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3668: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3668"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3668"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1178
#AT_START_1179
at_fn_group_banner 1179 'run_extensions.at:3673' \
  "System routine CBL_EQ" "                          " 4
at_xfail=no
(
  $as_echo "1179. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  X            PIC X(4) VALUE HIGH-VALUE.
       01  Z            PIC X(4) VALUE "1111".
       PROCEDURE        DIVISION.
           CALL "CBL_EQ" USING X Z
                BY VALUE LENGTH OF Z
           END-CALL.
           IF Z NOT = "1111"
              DISPLAY Z NO ADVANCING
              END-DISPLAY
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:3694: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:3694"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3694"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:3695: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:3695"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:3695"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1179
#AT_START_1180
at_fn_group_banner 1180 'run_extensions.at:3700' \
  "System routine CBL_GC_GETOPT" "                   " 4
at_xfail=no
(
  $as_echo "1180. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog.
      *> check combination of long and short options
        DATA DIVISION.
        WORKING-STORAGE SECTION.
           01 LO.
                05 OPTIONRECORD OCCURS 2 TIMES.
                    10 ONAME        PIC X(25).
                    10 HAS-VALUE    PIC 9.
                    10 VALPOINT     POINTER     VALUE NULL.
                    10 VAL          PIC X(4).

            01 SO             PIC X(256).
            01 LONGIND        PIC 99.
            01 LONG-ONLY      PIC 9 VALUE 1.
            01 RETURN-CHAR    PIC X(4).
            01 OPT-VAL        PIC X(10).
            01 RET-DISP       PIC S9 VALUE 0.

            01 COUNTER        PIC 9 VALUE 0.
        PROCEDURE DIVISION.
            MOVE "jkl"     TO SO.

            MOVE "version" TO ONAME     (1).
            MOVE 0         TO HAS-VALUE (1).
            MOVE "v"       TO VAL       (1).

            MOVE "verbose" TO ONAME     (2).
            MOVE 0         TO HAS-VALUE (2).
            MOVE "V"       TO VAL       (2).

            PERFORM WITH TEST AFTER
                    VARYING COUNTER FROM 0 BY 1
                    UNTIL RETURN-CODE = -1
               CALL 'CBL_GC_GETOPT' USING
                  BY REFERENCE SO LO LONGIND
                  BY VALUE     LONG-ONLY
                  BY REFERENCE RETURN-CHAR OPT-VAL
               END-CALL

               EVALUATE COUNTER
                  WHEN 0
                     IF RETURN-CHAR NOT = 'v' THEN
                        DISPLAY '0-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 1
                     IF RETURN-CHAR NOT = 'V' THEN
                        DISPLAY '1-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 2
                     IF RETURN-CHAR NOT = 'j' THEN
                        DISPLAY '2-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 3
                     IF RETURN-CHAR NOT = 'k' THEN
                        DISPLAY '3-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 4
                     IF RETURN-CHAR NOT = 'l' THEN
                        DISPLAY '4-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 5
                     IF RETURN-CODE NOT = -1 THEN
                        MOVE RETURN-CODE TO RET-DISP
                        DISPLAY 'last RETURN-CODE wrong: ' RET-DISP
                        END-DISPLAY
                     END-IF
                     EXIT PERFORM
               END-EVALUATE
            END-PERFORM.

            MOVE 0 TO RETURN-CODE.

            IF COUNTER NOT = 5 THEN
               MOVE RETURN-CODE TO RET-DISP
               DISPLAY 'CBL_GC_GETOPT returned -1 too early: ' COUNTER
               END-DISPLAY
            END-IF.

            STOP RUN.
_ATEOF


cat >prog2.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog2.
      *> check if partial options work correct
        DATA DIVISION.
        WORKING-STORAGE SECTION.
      *> Check with wrong record count


            01 LO.
                05 OPTIONRECORD OCCURS 3 TIMES.
                    10 ONAME        PIC X(25).
                    10 HAS-VALUE    PIC 9.
                    10 VALPOINT     POINTER     VALUE NULL.
                    10 VAL          PIC X(4).

            78 SO             VALUE "jkl".
            01 LONGIND        PIC 99.
            01 LONG-ONLY      PIC 9 VALUE 1.
            01 RETURN-CHAR    PIC X(4).
            01 OPT-VAL        PIC X(10).
            01 RET-DISP       PIC S9 VALUE 0.

            01 COUNTER        PIC 9 VALUE 0.
        PROCEDURE DIVISION.
            MOVE "version" TO ONAME     (1).
            MOVE 0         TO HAS-VALUE (1).
            MOVE "v"       TO VAL       (1).

            MOVE "verbose" TO ONAME     (2).
            MOVE 0         TO HAS-VALUE (2).
            MOVE "V"       TO VAL       (2).

            PERFORM WITH TEST AFTER
                    VARYING COUNTER FROM 0 BY 1
                    UNTIL RETURN-CODE = -1
               CALL 'CBL_GC_GETOPT' USING
                  BY REFERENCE SO LO LONGIND
                  BY VALUE     LONG-ONLY
                  BY REFERENCE RETURN-CHAR OPT-VAL
               END-CALL

               EVALUATE COUNTER
                  WHEN 0
                     IF RETURN-CHAR NOT = '?' THEN
                        DISPLAY '0-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 1
                     IF RETURN-CHAR NOT = 'v' THEN
                        DISPLAY '1-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 2
                     IF RETURN-CODE NOT = -1 THEN
                        MOVE RETURN-CODE TO RET-DISP
                        DISPLAY 'last RETURN-CODE wrong: ' RET-DISP
                        END-DISPLAY
                     END-IF
                     EXIT PERFORM
               END-EVALUATE
            END-PERFORM.

            MOVE 0 TO RETURN-CODE.

            IF COUNTER NOT = 2 THEN
               MOVE RETURN-CODE TO RET-DISP
               DISPLAY 'CBL_GC_GETOPT returned -1 too early: ' COUNTER
               END-DISPLAY
            END-IF.

            STOP RUN.
_ATEOF


cat >prog3.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog3.
      *> check for optional and mandatory parameters
        DATA DIVISION.
        WORKING-STORAGE SECTION.
            01 SO PIC X(128).
            01 LO.
                05 OPTIONRECORD OCCURS 3 TIMES.
                    10 ONAME        PIC X(25).
                    10 HAS-VALUE    PIC 9.
                    10 VALPOINT     POINTER     VALUE NULL.
                    10 VAL          PIC X(4).
            01 LONGIND        PIC 99.
            01 LONG-ONLY      PIC 9 VALUE 0.
            01 RETURN-CHAR    PIC X(4).
            01 OPT-VAL        PIC X(10).
            01 RET-DISP       PIC S9 VALUE 0.

            01 COUNTER        PIC 9 VALUE 0.
        PROCEDURE DIVISION.
            MOVE "j:k::l"  TO SO.

            MOVE "version" TO ONAME     (1).
            MOVE 1         TO HAS-VALUE (1).
            MOVE "v"       TO VAL       (1).

            MOVE "verbose" TO ONAME     (2).
            MOVE 2         TO HAS-VALUE (2).
            MOVE "V"       TO VAL       (2).

            MOVE "usage"   TO ONAME     (3).
            MOVE 0         TO HAS-VALUE (3).
            MOVE "u"       TO VAL       (3).

            PERFORM WITH TEST AFTER
                    VARYING COUNTER FROM 0 BY 1
                    UNTIL RETURN-CODE = -1
               CALL 'CBL_GC_GETOPT' USING
                  BY REFERENCE SO LO LONGIND
                  BY VALUE     LONG-ONLY
                  BY REFERENCE RETURN-CHAR OPT-VAL
               END-CALL

               EVALUATE COUNTER
                  WHEN 0
                     IF OPT-VAL(1:4) NOT = 'lang' THEN
                        DISPLAY '0-ERROR: ' OPT-VAL END-DISPLAY
                     END-IF
                  WHEN 1
                     IF (OPT-VAL(1:1) NOT = 'k' OR
                         RETURN-CHAR  NOT = 'V' OR
                         OPT-VAL(1:4)     = 'kang')  THEN
                        DISPLAY '1-ERROR: ' OPT-VAL ' ' RETURN-CHAR
                        END-DISPLAY
                     END-IF
                  WHEN 2
                     IF RETURN-CHAR NOT = 'u' THEN
                        DISPLAY '2-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 3
                     IF OPT-VAL(1:1) NOT = '5' OR
                        RETURN-CHAR  NOT = 'j' THEN
                        DISPLAY '3-ERROR: ' OPT-VAL ' ' RETURN-CHAR
                        END-DISPLAY
                     END-IF
                  WHEN 4
                     IF OPT-VAL(1:1) NOT = '6' OR
                        RETURN-CHAR  NOT = 'k' THEN
                        DISPLAY '4-ERROR: ' OPT-VAL ' ' RETURN-CHAR
                        END-DISPLAY
                     END-IF
                  WHEN 5
                     IF RETURN-CHAR NOT = 'l' THEN
                        DISPLAY '5-ERROR: ' RETURN-CHAR END-DISPLAY
                     END-IF
                  WHEN 6
                     IF RETURN-CODE NOT = -1 THEN
                        MOVE RETURN-CODE TO RET-DISP
                        DISPLAY 'last RETURN-CODE wrong: ' RET-DISP
                        END-DISPLAY
                     END-IF
                     EXIT PERFORM
               END-EVALUATE
            END-PERFORM.

            MOVE 0 TO RETURN-CODE.

            IF COUNTER NOT = 6 THEN
               MOVE RETURN-CODE TO RET-DISP
               DISPLAY 'CBL_GC_GETOPT returned -1 too early: ' COUNTER
               END-DISPLAY
            END-IF.

            STOP RUN.
_ATEOF


cat >prog4.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog4.
      *> check use of value pointer and trimming of opt-val
        DATA DIVISION.
        WORKING-STORAGE SECTION.
            01 SO PIC X(12).
            01 LO.
                05 OPTIONRECORD OCCURS 3 TIMES.
                    10 ONAME        PIC X(25).
                    10 HAS-VALUE    PIC 9.
                    10 VALPOINT     POINTER     VALUE NULL.
                    10 VAL          PIC X(4).
            01 LONGIND          PIC 99.
            01 LONG-ONLY        PIC 9 VALUE 1.
            01 RETURN-CHAR      PIC X(4).
            01 OPT-VAL          PIC X(10).
            01 RET-DISP         PIC S999 VALUE 0.

            01 COUNTER          PIC 9 VALUE 0.

            01 FLAG-VAL         PIC X(4).
        procedure division.
            MOVE "jkl"       TO SO.

            MOVE "static"    TO ONAME     (1).
            MOVE 0           TO HAS-VALUE (1).
            SET  VALPOINT(1) TO ADDRESS OF FLAG-VAL.
            MOVE '1'         TO VAL       (1).

            MOVE "dynamic"   TO ONAME     (2).
            MOVE 0           TO HAS-VALUE (2).
            SET  VALPOINT(2) TO ADDRESS OF FLAG-VAL.
            MOVE '0'         TO VAL       (2).

            MOVE "usage"     TO ONAME     (3).
            MOVE 1           TO HAS-VALUE (3).
            MOVE 'u'         TO VAL       (3).

            PERFORM WITH TEST AFTER
                    VARYING COUNTER FROM 0 BY 1
                    UNTIL RETURN-CODE = -1
               CALL 'CBL_GC_GETOPT' USING
                  BY REFERENCE SO LO LONGIND
                  BY VALUE     LONG-ONLY
                  BY REFERENCE RETURN-CHAR OPT-VAL
               END-CALL

               EVALUATE COUNTER
                  WHEN 0
                     IF RETURN-CODE NOT = 0 OR
                        FLAG-VAL    NOT = '1' THEN
                        DISPLAY '0-ERROR: ' RET-DISP ' ' FLAG-VAL
                        END-DISPLAY
                     END-IF
                  WHEN 1
                     IF RETURN-CODE NOT = 0 OR
                        FLAG-VAL    NOT = '0' THEN
                        DISPLAY '1-ERROR: ' RET-DISP ' ' FLAG-VAL
                        END-DISPLAY
                     END-IF
                  WHEN 2
                     IF RETURN-CHAR NOT = 'u' OR
                        RETURN-CODE NOT = 2 THEN
                        DISPLAY '2-ERROR: ' RET-DISP ' ' FLAG-VAL
                        END-DISPLAY
                     END-IF
                  WHEN 3
                     IF RETURN-CODE NOT = -1 THEN
                        MOVE RETURN-CODE TO RET-DISP
                        DISPLAY 'last RETURN-CODE wrong: ' RET-DISP
                        END-DISPLAY
                     END-IF
                     EXIT PERFORM
               END-EVALUATE
            END-PERFORM.

            MOVE 0 TO RETURN-CODE.

            IF COUNTER NOT = 3 THEN
               MOVE RETURN-CODE TO RET-DISP
               DISPLAY 'CBL_GC_GETOPT returned -1 too early: ' COUNTER
               END-DISPLAY
            END-IF.

            STOP RUN.
_ATEOF


cat >prog5.cob <<'_ATEOF'

        IDENTIFICATION DIVISION.
        PROGRAM-ID. prog5.
      *> check for wrong longoption structure
        DATA DIVISION.
        WORKING-STORAGE SECTION.
            01 SO PIC X.
            01 LO.
                05 OPTIONRECORD OCCURS 2 TIMES.
                    10 ONAME        PIC X(45).
                    10 HAS-VALUE    PIC 9.
                    10 VALPOINT     POINTER     VALUE NULL.
                    10 VAL          PIC X(4).
            01 LONGIND       PIC 99.
            01 LONG-ONLY     PIC 9 VALUE 1.
            01 RETURN-CHAR   PIC X(4).
            01 OPT-VAL       PIC X(10).
            01 RET-DISP      PIC S999 VALUE 0.

            01 COUNTER       PIC 9 VALUE 0.

            01 FLAG-VAL      PIC 9.
        PROCEDURE DIVISION.
            MOVE "super-long-option-with-more-than-25-bytes"
              TO ONAME(1).
            MOVE 0   TO HAS-VALUE(1).
            MOVE '1' TO VAL(1).

            MOVE "stupid-long-option-with-more-than-25-bytes"
              TO ONAME(2).
            MOVE 0   TO HAS-VALUE(2).
            MOVE '0' TO VAL(2).

            PERFORM WITH TEST AFTER
                    VARYING COUNTER FROM 0 BY 1
                    UNTIL RETURN-CODE = -1
               CALL 'CBL_GC_GETOPT' USING
                  BY REFERENCE SO LO LONGIND
                  BY VALUE     LONG-ONLY
                  BY REFERENCE RETURN-CHAR OPT-VAL
               END-CALL

               EVALUATE COUNTER
                  WHEN 0
                  WHEN 1
                  WHEN 2
                     CONTINUE

      *>       MOVE RETURN-CODE TO RET-DISP

      *>       IF COUNTER = 0 AND RETURN-CODE NOT = 1 THEN
      *>          DISPLAY 'RETURN VALUE: ' RET-DISP ' ' FLAG-VAL
      *>       END-IF
                  WHEN 3
                     IF RETURN-CODE NOT = -1 THEN
                        MOVE RETURN-CODE TO RET-DISP
                        DISPLAY 'last RETURN-CODE wrong: ' RET-DISP
                        END-DISPLAY
                     END-IF
                     EXIT PERFORM
               END-EVALUATE
            END-PERFORM.

            MOVE 0 TO RETURN-CODE.

            IF COUNTER NOT = 3 THEN
               MOVE RETURN-CODE TO RET-DISP
               DISPLAY 'CBL_GC_GETOPT returned -1 too early: ' COUNTER
               END-DISPLAY
            END-IF.

            STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4117: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4117"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4117"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4118: \$COBCRUN_DIRECT ./prog --version --verbose -jkl"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog --version --verbose -jkl" "run_extensions.at:4118"
( $at_check_trace; $COBCRUN_DIRECT ./prog --version --verbose -jkl
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4118"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4119: \$COMPILE_MODULE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE_MODULE prog2.cob" "run_extensions.at:4119"
( $at_check_trace; $COMPILE_MODULE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4119"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4120: \$COBCRUN prog2 --ver --vers"
at_fn_check_prepare_dynamic "$COBCRUN prog2 --ver --vers" "run_extensions.at:4120"
( $at_check_trace; $COBCRUN prog2 --ver --vers
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog2: option '--ver' is ambiguous; possibilities: '--version' '--verbose'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4120"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4123: \$COMPILE prog3.cob"
at_fn_check_prepare_dynamic "$COMPILE prog3.cob" "run_extensions.at:4123"
( $at_check_trace; $COMPILE prog3.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4123"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4124: \$COBCRUN_DIRECT ./prog3 --version=lang --verbose=k --usage -j 5 -k6 -l"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog3 --version=lang --verbose=k --usage -j 5 -k6 -l" "run_extensions.at:4124"
( $at_check_trace; $COBCRUN_DIRECT ./prog3 --version=lang --verbose=k --usage -j 5 -k6 -l
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4124"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4125: \$COMPILE prog4.cob --free"
at_fn_check_prepare_dynamic "$COMPILE prog4.cob --free" "run_extensions.at:4125"
( $at_check_trace; $COMPILE prog4.cob --free
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4125"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4126: \$COBCRUN_DIRECT ./prog4 --static --dynamic --usage=boringandtoolongtext"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog4 --static --dynamic --usage=boringandtoolongtext" "run_extensions.at:4126"
( $at_check_trace; $COBCRUN_DIRECT ./prog4 --static --dynamic --usage=boringandtoolongtext
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4126"
$at_failed && at_fn_log_failure
$at_traceon; }

# Again a long and system specific error message which we ignore.
# Return code 1 is sufficient as proof of hard return (as wanted).
{ set +x
$as_echo "$at_srcdir/run_extensions.at:4129: \$COMPILE prog5.cob"
at_fn_check_prepare_dynamic "$COMPILE prog5.cob" "run_extensions.at:4129"
( $at_check_trace; $COMPILE prog5.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4129"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4130: \$COBCRUN_DIRECT ./prog5 --static"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog5 --static" "run_extensions.at:4130"
( $at_check_trace; $COBCRUN_DIRECT ./prog5 --static
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog5.cob:37: error: call to CBL_GC_GETOPT with wrong longoption size
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4130"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1180
#AT_START_1181
at_fn_group_banner 1181 'run_extensions.at:4137' \
  "System routine CBL_GC_FORK" "                     " 4
at_xfail=no
(
  $as_echo "1181. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77 CHILD-PID   USAGE BINARY-LONG.
       77 PARENT-PID  USAGE BINARY-LONG.
       PROCEDURE DIVISION.

           CALL "C$GETPID" RETURNING PARENT-PID
           CALL "CBL_GC_FORK" END-CALL
           EVALUATE RETURN-CODE
              WHEN ZERO
                 PERFORM CHILD-CODE
              WHEN -1
                 STOP RUN RETURNING 77 *> skip test
              WHEN OTHER
                 PERFORM PARENT-CODE
           END-EVALUATE

           STOP RUN.

       CHILD-CODE.
           CALL "C$SLEEP"  USING 1.
           DISPLAY "Hello, I am the child".
           CALL "C$GETPID" RETURNING CHILD-PID.
           IF CHILD-PID = PARENT-PID
              DISPLAY "CHILD: parent and child have same PID: "
                      "'" CHILD-PID "'" UPON SYSERR
              END-DISPLAY
           END-IF.
           MOVE 0 TO RETURN-CODE.

       PARENT-CODE.
           DISPLAY "Hello, I am the parent".
           CALL "C$SLEEP"  USING 4.
           DISPLAY "Parent again".
           IF RETURN-CODE = PARENT-PID
              DISPLAY "PARENT: parent and child have same PID: "
                      "'" PARENT-PID "'" UPON SYSERR
              END-DISPLAY
           END-IF.
           CALL "C$GETPID".
           IF RETURN-CODE NOT = PARENT-PID
              DISPLAY "PARENT: parent PID has changed: "
                      "'" PARENT-PID "' -> '" RETURN-CODE "'"
                      UPON SYSERR
              END-DISPLAY
           END-IF.
           MOVE 0 TO RETURN-CODE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4192: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4192"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4192"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4194: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4194"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello, I am the parent
Hello, I am the child
Parent again
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4194"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1181
#AT_START_1182
at_fn_group_banner 1182 'run_extensions.at:4205' \
  "System routine CBL_GC_WAITPID" "                  " 4
at_xfail=no
(
  $as_echo "1182. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 CHILD-PID   PIC S9(9) BINARY.
       01 WAIT-STS    PIC S9(9) BINARY VALUE -3.
       PROCEDURE DIVISION.

           CALL "CBL_GC_FORK" RETURNING CHILD-PID.
           EVALUATE CHILD-PID
              WHEN ZERO
                 PERFORM CHILD-CODE
              WHEN -1
                 STOP RUN RETURNING 77 *> skip test
              WHEN OTHER
                 PERFORM PARENT-CODE
           END-EVALUATE.

           STOP RUN.

       CHILD-CODE.
           CALL "C$SLEEP" USING 1.
           DISPLAY "Hello, I am the child".
           MOVE 2 TO RETURN-CODE.

       PARENT-CODE.
           DISPLAY "Hello, I am the parent".
           CALL "CBL_GC_WAITPID" USING CHILD-PID
              RETURNING WAIT-STS
           END-CALL
           MOVE 0 TO RETURN-CODE
           IF WAIT-STS = -1
              STOP RUN RETURNING 77 *> skip test
           END-IF
           DISPLAY "Child ended status " WAIT-STS
           END-DISPLAY.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4247: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4247"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4247"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4249: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4249"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello, I am the parent
Hello, I am the child
Child ended status +000000002
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4249"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1182
#AT_START_1183
at_fn_group_banner 1183 'run_extensions.at:4257' \
  "System routine CBL_GC_HOSTED" "                   " 4
at_xfail=no
(
  $as_echo "1183. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >test_errno.c <<'_ATEOF'

#include <errno.h>
#include <stdio.h>

#include <libcob.h>

COB_EXT_EXPORT int
test_errno(void)
{
    FILE *fail;
    fail = fopen("file-not-to-be-found", "r");
    if (errno != 2) {
        printf("BAD ERRNO %d", errno);
    } else {
        if (fail) fclose(fail);
    }
    return 0;
}
_ATEOF


cat >test_stdio.c <<'_ATEOF'

#include <stdio.h>

#include <libcob.h>
COB_EXT_EXPORT int
test_stdio(FILE *si, FILE *so, FILE *se)
{
    if (feof(si)) {
        fprintf(se, "BAD STDIN EOF\n");
    }
    fprintf(so, "OUT");
    return fprintf(se, "ERR");
}
_ATEOF

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 STDIN    USAGE POINTER.
       01 STDOUT   USAGE POINTER.
       01 STDERR   USAGE POINTER.
       01 CELL     USAGE BINARY-LONG.
       01 ARGC     USAGE BINARY-LONG.
       01 ARGV     USAGE POINTER.
       01 ERRPTR   USAGE POINTER.
       01 ERRNO    USAGE BINARY-LONG BASED.
       01 CERRNO   USAGE BINARY-LONG EXTERNAL AS "errno".
       01 TZNAME   USAGE POINTER.
       01 TZNAMES  USAGE POINTER BASED.
          05 TZS      USAGE POINTER OCCURS 2 TIMES.
       01 TIMEZONE USAGE BINARY-C-LONG.
       01 DAYLIGHT USAGE BINARY-LONG.
       01 EXTPTR   USAGE POINTER. *> only for the check, otherwise unused

       PROCEDURE DIVISION.
           CALL "CBL_GC_HOSTED" USING STDIN "stdin"
           CALL "CBL_GC_HOSTED" USING STDOUT "stdout"
           CALL "CBL_GC_HOSTED" USING STDERR "stderr"
      *> verify working alias with old name "CBL_OC_HOSTED"
           CALL "CBL_OC_HOSTED" USING ARGC "argc"
           CALL "CBL_OC_HOSTED" USING ARGV "argv"
           CALL "CBL_GC_HOSTED" USING CELL "cell"
           CALL "CBL_GC_HOSTED" USING ERRPTR "errno"
           CALL "CBL_GC_HOSTED" USING ARGC "arg"
           CALL "CBL_GC_HOSTED" USING NULL "argc"
           SET ADDRESS OF ERRNO TO ERRPTR
           CALL "CBL_GC_HOSTED" USING TZNAME "tzname"
           CALL "CBL_GC_HOSTED" USING TIMEZONE "timezone"
           CALL "CBL_GC_HOSTED" USING DAYLIGHT "daylight"

      *> prog.cob must be compiled with same C runtime as libcob to match...
           IF ERRPTR NOT EQUAL ADDRESS OF CERRNO
              DISPLAY "ADDRESS OF ERRNO VARIABLES DON'T MATCH"
              SET EXTPTR TO ADDRESS OF CERRNO
              DISPLAY "HOSTED: "   ERRPTR ", "
                      "EXTERNAL: " EXTPTR
              END-DISPLAY
           END-IF

      *> test_errno.c must be compiled with same C runtime as libcob to match...
           CALL "test_errno"
           IF ERRNO NOT EQUAL 2 THEN
              DISPLAY "BAD HOSTED ERRNO " ERRNO
              IF CERRNO NOT EQUAL 2 THEN
                 DISPLAY "BAD EXTERNAL ERRNO " CERRNO
              END-IF
           END-IF

           IF ARGC NOT EQUAL 2 THEN
              DISPLAY "BAD ARGC " ARGC
           END-IF
           IF ARGV EQUAL NULL THEN
              DISPLAY "BAD ARGV"
           END-IF

           IF CELL LESS THAN 0 OR GREATER THAN 8 THEN
              DISPLAY "UNK CELL " CELL
           END-IF

           SET ENVIRONMENT "TZ" TO "PST8PDT"
           CALL "tzset" RETURNING OMITTED
              ON EXCEPTION CONTINUE
           END-CALL
           IF TZNAME NOT EQUAL NULL THEN
              SET ADDRESS OF TZNAMES TO TZNAME
              IF TZS(1) EQUAL NULL THEN
                 DISPLAY "BAD TZNAME" END-DISPLAY
              END-IF
           END-IF

      *> Test assumes return-code will be 3, chars output by last fprintf
      *> test_stdio.c must be compiled with same C runtime as libcob to match...
           CALL "test_stdio" USING BY VALUE STDIN STDOUT STDERR
           END-CALL

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4379: \$COMPILE_MODULE test_errno.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE test_errno.c" "run_extensions.at:4379"
( $at_check_trace; $COMPILE_MODULE test_errno.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4379"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4380: \$COMPILE_MODULE test_stdio.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE test_stdio.c" "run_extensions.at:4380"
( $at_check_trace; $COMPILE_MODULE test_stdio.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4380"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4381: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4381"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4381"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4382: \$COBCRUN_DIRECT ./prog 1ARG"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog 1ARG" "run_extensions.at:4382"
( $at_check_trace; $COBCRUN_DIRECT ./prog 1ARG
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "ERR" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OUT" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 3 $at_status "$at_srcdir/run_extensions.at:4382"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1183
#AT_START_1184
at_fn_group_banner 1184 'run_extensions.at:4387' \
  "System routine SYSTEM, parameter handling" "      " 4
at_xfail=no
(
  $as_echo "1184. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
      *
       77  test-no                    PIC 9 VALUE 0.
       77  chaining-param             PIC X(20).
       77  chaining-param-2           PIC X(20).
      *
       PROCEDURE DIVISION CHAINING chaining-param, chaining-param-2.
      *
       main.
           EVALUATE chaining-param ALSO chaining-param-2
              WHEN SPACES  ALSO SPACES
                 DISPLAY "started without options - closing"
              WHEN "1"     ALSO SPACES
              WHEN '"1"'   ALSO SPACES
              WHEN "a v"   ALSO SPACES
              WHEN '"a v"' ALSO SPACES
                 DISPLAY "  called with -"
                         function trim (chaining-param) "-"
              WHEN "a"    ALSO "v"
                 DISPLAY "  called with -"
                         FUNCTION TRIM (chaining-param) "-"
                         " and with -"
                         FUNCTION TRIM (chaining-param-2) "-"
              WHEN "start" ALSO SPACES
                 MOVE 'prog 1'         TO chaining-param
                 PERFORM callme
                 MOVE 'prog "1"'       TO chaining-param
                 PERFORM callme
                 MOVE '"prog" 1'       TO chaining-param
                 PERFORM callme
                 MOVE '"prog" "1"'     TO chaining-param
                 PERFORM callme
                 MOVE 'prog a v'       TO chaining-param
                 PERFORM callme
                 MOVE 'prog "a v"'     TO chaining-param
                 PERFORM callme
                 MOVE '"prog" a v'     TO chaining-param
                 PERFORM callme
                 MOVE '"prog" "a v"'   TO chaining-param
                 PERFORM callme
                 MOVE '"prog" "a" "v"' TO chaining-param
                 PERFORM callme
                 DISPLAY "tests finished"
              WHEN OTHER
                 DISPLAY "called with unexpected -"
                         FUNCTION TRIM (chaining-param) "-"
           END-EVALUATE
           STOP RUN.
      *
       callme.
           ADD  1 TO test-no.
           DISPLAY "Test #" test-no ":"
           DISPLAY "  CALL 'SYSTEM' with "
                   FUNCTION TRIM (chaining-param) ":"
           CALL "SYSTEM" USING FUNCTION TRIM (chaining-param)
           DISPLAY "  --> return of the given CALL 'SYSTEM': "
                   return-code.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4454: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4454"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4454"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4455: PATH=.:\$PATH \$COBCRUN_DIRECT prog \"start\""
at_fn_check_prepare_dynamic "PATH=.:$PATH $COBCRUN_DIRECT prog \"start\"" "run_extensions.at:4455"
( $at_check_trace; PATH=.:$PATH $COBCRUN_DIRECT prog "start"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Test #1:
  CALL 'SYSTEM' with prog 1:
  called with -1-
  --> return of the given CALL 'SYSTEM': +000000000
Test #2:
  CALL 'SYSTEM' with prog \"1\":
  called with -1-
  --> return of the given CALL 'SYSTEM': +000000000
Test #3:
  CALL 'SYSTEM' with \"prog\" 1:
  called with -1-
  --> return of the given CALL 'SYSTEM': +000000000
Test #4:
  CALL 'SYSTEM' with \"prog\" \"1\":
  called with -1-
  --> return of the given CALL 'SYSTEM': +000000000
Test #5:
  CALL 'SYSTEM' with prog a v:
  called with -a- and with -v-
  --> return of the given CALL 'SYSTEM': +000000000
Test #6:
  CALL 'SYSTEM' with prog \"a v\":
  called with -a v-
  --> return of the given CALL 'SYSTEM': +000000000
Test #7:
  CALL 'SYSTEM' with \"prog\" a v:
  called with -a- and with -v-
  --> return of the given CALL 'SYSTEM': +000000000
Test #8:
  CALL 'SYSTEM' with \"prog\" \"a v\":
  called with -a v-
  --> return of the given CALL 'SYSTEM': +000000000
Test #9:
  CALL 'SYSTEM' with \"prog\" \"a\" \"v\":
  called with -a- and with -v-
  --> return of the given CALL 'SYSTEM': +000000000
tests finished
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4455"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1184
#AT_START_1185
at_fn_group_banner 1185 'run_extensions.at:4498' \
  "System routine CBL_EXIT_PROC" "                   " 4
at_xfail=no
(
  $as_echo "1185. $at_setup_line: testing $at_desc ..."
  $at_traceon



# tests that exit handlers work including multiple error handlers

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DemoExtProc IS RECURSIVE.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  Ext-Proc-Address            USAGE PROCEDURE-POINTER.
       77  install-flag                USAGE BINARY-CHAR.
           88  install-default         VALUE 0.
           88  uninstall               VALUE 1.
           88  query-priority          VALUE 2.
           88  install-priority        VALUE 3.
       01  exit-params.
           02  proc-addrs              USAGE PROCEDURE-POINTER.
           02  ppriority               USAGE BINARY-CHAR.
       PROCEDURE DIVISION.
       S1.
           DISPLAY 'Program is starting'
      *>   Do this for the ACU test later
      *>   CALL 'CBL_EXIT_PROC' USING 0, "ExtProc-internal"
           SET Ext-Proc-Address TO ENTRY 'ExtProc'
      *>   GC "simple variant"
           CALL 'CBL_EXIT_PROC' USING 0, Ext-Proc-Address
      *>   Support for MF variant,
      *>   storing but otherwise ignoring the priority for now
           SET install-default  TO TRUE
           SET proc-addrs       TO ENTRY 'ExtProc-internal'
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
      *>   Ensure subsequent CALLs with the same one are seen as error (MF!)
           SET proc-addrs       TO ENTRY 'ExtProc'
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE = 0
              DISPLAY 'Unexpected RETURN-CODE with subsequent call '
                       RETURN-CODE.
           SET install-priority TO TRUE
           MOVE 127             TO ppriority
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE NOT = 0
              DISPLAY 'Unexpected RETURN-CODE with subsequent call, '
                      'different priority ' RETURN-CODE.
           SET proc-addrs       TO ENTRY 'ExtProc-internal2'
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE NOT = 0
              DISPLAY 'Unexpected RETURN-CODE with new call '
                       RETURN-CODE.
      *>
           DISPLAY 'Program is stopping'
           STOP RUN
           .
       ENTRY 'ExtProc-internal2'.
           DISPLAY 'Exit procedure from ' FUNCTION MODULE-ID ()
           SET Ext-Proc-Address TO ENTRY 'ExtProc'
           SET query-priority TO TRUE
           MOVE 0             TO ppriority
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE NOT = ZERO
              DISPLAY 'Unexpected RETURN-CODE for query '
                       RETURN-CODE
           ELSE IF ppriority NOT = 127
              DISPLAY 'Unexpected priority external ' ppriority.
           SET proc-addrs       TO ENTRY 'ExtProc-internal'
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE NOT = ZERO
              DISPLAY 'Unexpected RETURN-CODE for query '
                       RETURN-CODE
           ELSE IF ppriority NOT = 64
              DISPLAY 'Unexpected priority internal ' ppriority.
           SET uninstall      TO TRUE
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE NOT = 0
              DISPLAY 'Unexpected RETURN-CODE after uninstall '
                       RETURN-CODE.
           CALL 'CBL_EXIT_PROC' USING install-flag, exit-params
           IF RETURN-CODE = 0
              DISPLAY 'Unexpected RETURN-CODE after double uninstall '
                       RETURN-CODE.
           MOVE 0 TO RETURN-CODE
           GOBACK
           .
       ENTRY 'ExtProc-internal'.
           DISPLAY 'should have been removed'
           GOBACK
           .
       END PROGRAM DemoExtProc.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. ExtProc.
       PROCEDURE DIVISION.
       000-Main.
           DISPLAY 'Exit procedure from ' FUNCTION MODULE-ID ()
           EXIT PROGRAM
           .
       END PROGRAM ExtProc.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4597: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4597"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4597"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4598: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4598"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Program is starting
Program is stopping
Exit procedure from DemoExtProc
Exit procedure from ExtProc
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4598"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1185
#AT_START_1186
at_fn_group_banner 1186 'run_extensions.at:4608' \
  "System routine CBL_ERROR_PROC (1)" "              " 4
at_xfail=no
(
  $as_echo "1186. $at_setup_line: testing $at_desc ..."
  $at_traceon



# tests that error handlers work (later for ACU: test for re-ordered)
# including multiple error handlers

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DemoErrProc IS RECURSIVE.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  Err-Proc-Address            USAGE PROGRAM-POINTER.
       77  Err-Message-Len             PIC 9(04) USAGE COMP-5.
       LINKAGE SECTION.
       77  Err-Message-From-Runtime    PIC X(1023).
       PROCEDURE DIVISION.
       S1.
           DISPLAY 'Program is starting'
      *>   Do this for the ACU test, where second call moves top front
      *>   SET Err-Proc-Address TO ENTRY 'ErrProc-internal'
      *>   CALL 'CBL_ERROR_PROC' USING 0, Err-Proc-Address
           SET Err-Proc-Address TO ENTRY 'ErrProc'
           CALL 'CBL_ERROR_PROC' USING 0, Err-Proc-Address
           SET Err-Proc-Address TO ENTRY 'ErrProc-internal'
           CALL 'CBL_ERROR_PROC' USING 0, Err-Proc-Address
      *>   Ensure subsequent CALLs with the same one are ignored (MF!)
           SET Err-Proc-Address TO ENTRY 'ErrProc'
           CALL 'CBL_ERROR_PROC' USING 0, Err-Proc-Address
           SET Err-Proc-Address TO NULL
           CALL 'Tilt' *> THIS DOESN'T EXIST!!!!
           DISPLAY 'Program is stopping'
           STOP RUN
           .
       ENTRY 'ErrProc-internal' USING Err-Message-From-Runtime.
           DISPLAY 'Error (internal): ' FUNCTION EXCEPTION-LOCATION  '-'
           DISPLAY '                  ' FUNCTION EXCEPTION-STATEMENT '-'
           DISPLAY '                  ' FUNCTION EXCEPTION-STATUS    '-'
           *> NOTE: the error message is *EXPLICIT* specified to end with x'00'
           MOVE 0 TO Err-Message-Len
           INSPECT Err-Message-From-Runtime
              TALLYING Err-Message-Len FOR CHARACTERS BEFORE x'00'
           DISPLAY 'Error-Message:    ' Err-Message-From-Runtime
                                       (1:Err-Message-Len)
           DISPLAY '-*- Returning to Next Error Routine -*-'
           MOVE    1         TO RETURN-CODE
           EXIT PROGRAM
           .
       END PROGRAM DemoErrProc.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. ErrProc.
       PROCEDURE DIVISION.
       000-Main.
           DISPLAY 'Error: ' FUNCTION EXCEPTION-LOCATION  '-'
           DISPLAY '       ' FUNCTION EXCEPTION-STATEMENT '-'
           DISPLAY '       ' FUNCTION EXCEPTION-STATUS    '-'
           DISPLAY '-*- Returning to Standard Error Routine -*-'
           MOVE    1         TO RETURN-CODE
           EXIT PROGRAM
           .
       END PROGRAM ErrProc.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4672: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4672"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4672"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4673: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4673"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:25: error: module 'Tilt' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Program is starting
Error (internal): DemoErrProc; S1; 25-
                  CALL                           -
                  EC-PROGRAM-NOT-FOUND           -
Error-Message:    prog.cob:25: module 'Tilt' not found
-*- Returning to Next Error Routine -*-
Error: DemoErrProc; S1; 25-
       CALL                           -
       EC-PROGRAM-NOT-FOUND           -
-*- Returning to Standard Error Routine -*-
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4673"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4688: \$COBC -x -o prog_noloc prog.cob"
at_fn_check_prepare_dynamic "$COBC -x -o prog_noloc prog.cob" "run_extensions.at:4688"
( $at_check_trace; $COBC -x -o prog_noloc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4688"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4689: \$COBCRUN_DIRECT ./prog_noloc"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog_noloc" "run_extensions.at:4689"
( $at_check_trace; $COBCRUN_DIRECT ./prog_noloc
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: error: module 'Tilt' not found
" | \
  $at_diff - "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Program is starting
Error (internal): DemoErrProc; ; 0-
                                                 -
                  EC-PROGRAM-NOT-FOUND           -
Error-Message:    module 'Tilt' not found
-*- Returning to Next Error Routine -*-
Error: DemoErrProc; ; 0-
                                      -
       EC-PROGRAM-NOT-FOUND           -
-*- Returning to Standard Error Routine -*-
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4689"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1186
#AT_START_1187
at_fn_group_banner 1187 'run_extensions.at:4707' \
  "System routine CBL_ERROR_PROC (2)" "              " 4
at_xfail=no
(
  $as_echo "1187. $at_setup_line: testing $at_desc ..."
  $at_traceon



# tests that error handlers can stop the processing,
# including the internal error handler
# and that the MF "LOCAL-STORAGE implies RECURSIVE" works

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. DemoErrProc.
       ENVIRONMENT DIVISION.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  Err-Proc-Address            USAGE PROGRAM-POINTER.
       77  Err-Message-Len             PIC 9(04) USAGE COMP-5.
       LOCAL-STORAGE SECTION.  *> can even be empty...
       LINKAGE SECTION.
       77  Err-Message-From-Runtime    PIC X(1023).
       PROCEDURE DIVISION.
       S1.
           DISPLAY 'Program is starting'
           SET Err-Proc-Address TO ENTRY 'ErrProc'
           CALL 'CBL_ERROR_PROC' USING 0, Err-Proc-Address
           SET Err-Proc-Address TO ENTRY 'ErrProc-internal'
           CALL 'CBL_ERROR_PROC' USING 0, Err-Proc-Address
           SET Err-Proc-Address TO NULL
           CALL 'Tilt' *> THIS DOESN'T EXIST!!!!
           DISPLAY 'Program is stopping'
           STOP RUN
           .
       ENTRY 'ErrProc-internal' USING Err-Message-From-Runtime.
           DISPLAY 'Error (interal): ' FUNCTION EXCEPTION-LOCATION  '-'
           DISPLAY '                 ' FUNCTION EXCEPTION-STATEMENT '-'
           DISPLAY '                 ' FUNCTION EXCEPTION-STATUS    '-'
           *> NOTE: the error message is *EXPLICIT* specified to end with x'00'
           MOVE 0 TO Err-Message-Len
           INSPECT Err-Message-From-Runtime
              TALLYING Err-Message-Len FOR CHARACTERS BEFORE x'00'
           DISPLAY 'Error-Message:   ' Err-Message-From-Runtime
                                       (1:Err-Message-Len)
           DISPLAY '-*- Stop error routines here -*-'
           MOVE    0         TO RETURN-CODE
           EXIT PROGRAM
           .
       END PROGRAM DemoErrProc.

       IDENTIFICATION DIVISION.
       PROGRAM-ID. ErrProc.
       PROCEDURE DIVISION.
       000-Main.
           DISPLAY 'Error: ' FUNCTION EXCEPTION-LOCATION  '-'
           DISPLAY '       ' FUNCTION EXCEPTION-STATEMENT '-'
           DISPLAY '       ' FUNCTION EXCEPTION-STATUS    '-'
           DISPLAY '-*- Returning to Standard Error Routine -*-'
           MOVE    1         TO RETURN-CODE
           EXIT PROGRAM
           .
       END PROGRAM ErrProc.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4767: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_extensions.at:4767"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4767"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4768: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4768"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Program is starting
Error (interal): DemoErrProc; S1; 20-
                 CALL                           -
                 EC-PROGRAM-NOT-FOUND           -
Error-Message:   prog.cob:20: module 'Tilt' not found
-*- Stop error routines here -*-
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4768"
$at_failed && at_fn_log_failure
$at_traceon; }


# to be done
#AT_CHECK([$COMPILE -o prog_noloc prog.cob], [0], [], [])
#AT_CHECK([$COBCRUN_DIRECT ./prog_noloc], [1],
#[Program is starting
#],
#[libcob: error: recursive CALL from 'DemoErrProc' to 'DemoErrProc' which is NOT RECURSIVE
#])

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1187
#AT_START_1188
at_fn_group_banner 1188 'run_extensions.at:4788' \
  "System routine x'91' function NN" "               " 4
at_xfail=no
(
  $as_echo "1188. $at_setup_line: testing $at_desc ..."
  $at_traceon



# to be done after 3.2rc1
$as_echo "run_extensions.at:4792" >"$at_check_line_file"
at_fn_check_skip 77 "$at_srcdir/run_extensions.at:4792"

cat >prog.cob <<'_ATEOF'

_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4796: \$COMPILE -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf prog.cob" "run_extensions.at:4796"
( $at_check_trace; $COMPILE -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4796"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4797: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4797"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4797"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1188
#AT_START_1189
at_fn_group_banner 1189 'run_extensions.at:4804' \
  "CALL own PROGRAM-ID and RECURSIVE attribute" "    " 4
at_xfail=no
(
  $as_echo "1189. $at_setup_line: testing $at_desc ..."
  $at_traceon



# mixed syntax and runtime test, may be split later

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       78  own-prog                VALUE 'prog'.
       77  first-call        PIC X VALUE ' '.
       PROCEDURE DIVISION.
       T1.
           IF first-call = SPACE
              MOVE 'X' TO first-call
              CALL own-prog.
           GOBACK.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4823: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4823"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'T1':
prog.cob:12: warning: CALL to own PROGRAM-ID used
prog.cob:12: note: assuming RECURSIVE attribute
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4823"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4829: \$COMPILE -fself-call-recursive=error prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fself-call-recursive=error prog.cob" "run_extensions.at:4829"
( $at_check_trace; $COMPILE -fself-call-recursive=error prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "prog.cob: in paragraph 'T1':
prog.cob:12: error: CALL to own PROGRAM-ID used
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4829"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4834: \$COMPILE -o prog_std -std=mf prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -o prog_std -std=mf prog.cob" "run_extensions.at:4834"
( $at_check_trace; $COMPILE -o prog_std -std=mf prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4834"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >progc.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       77  first-call        PIC X VALUE ' '.
       PROCEDURE DIVISION.
       T2.
           IF first-call NOT = SPACE
              GOBACK.
           MOVE 'X' TO first-call
       COPY "cllprg.cpy".
           GOBACK.
_ATEOF

cat >cllprg.cpy <<'_ATEOF'

           CALL 'prog'.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4853: \$COMPILE progc.cob"
at_fn_check_prepare_dynamic "$COMPILE progc.cob" "run_extensions.at:4853"
( $at_check_trace; $COMPILE progc.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "cllprg.cpy: in paragraph 'T2':
cllprg.cpy:2: warning: CALL to own PROGRAM-ID used
cllprg.cpy:2: note: assuming RECURSIVE attribute
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4853"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4859: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4859"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4859"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4860: \$COBCRUN_DIRECT ./progc"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progc" "run_extensions.at:4860"
( $at_check_trace; $COBCRUN_DIRECT ./progc
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4860"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4862: \$COBCRUN_DIRECT ./prog_std"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog_std" "run_extensions.at:4862"
( $at_check_trace; $COBCRUN_DIRECT ./prog_std
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: prog.cob:12: error: recursive CALL from 'prog' to 'prog' which is NOT RECURSIVE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:4862"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1189
#AT_START_1190
at_fn_group_banner 1190 'run_extensions.at:4869' \
  "DISPLAY DIRECTIVE and \$DISPLAY" "                 " 4
at_xfail=no
(
  $as_echo "1190. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: as we do support inline comments here we do not
#       allow the * to be part of a non-literal output

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 var1          pic x.
       $DISPLAY  MF compile time text # A.0-B;C *> without comment
       01 var2          pic x.
       >> DISPLAY some.text-here
       01 var3          pic x.
       PROCEDURE        DIVISION.
       >> DISPLAY   other  text #2  *> comment
       >> DISPLAY  "literal text...  *> no comment"
       $DISPLAY  "MF compile time text"
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4892: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4892"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "MF compile time text # A.0-B;C
some.text-here
other  text #2
literal text...  *> no comment
MF compile time text
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4892"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1190
#AT_START_1191
at_fn_group_banner 1191 'run_extensions.at:4902' \
  "Conditional / define directives (1)" "            " 4
at_xfail=no
(
  $as_echo "1191. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       >>IF ACTIVATE NOT DEFINED
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
       >>ELSE
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4921: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:4921"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4921"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4922: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4922"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4922"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1191
#AT_START_1192
at_fn_group_banner 1192 'run_extensions.at:4927' \
  "Conditional / define directives (2)" "            " 4
at_xfail=no
(
  $as_echo "1192. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       >>IF ACTIVATE DEFINED
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
       >>ELSE
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4946: \$COMPILE -DACTIVATE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -DACTIVATE prog.cob" "run_extensions.at:4946"
( $at_check_trace; $COMPILE -DACTIVATE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4946"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4947: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4947"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4947"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1192
#AT_START_1193
at_fn_group_banner 1193 'run_extensions.at:4952' \
  "Conditional / define directives (3)" "            " 4
at_xfail=no
(
  $as_echo "1193. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       >>IF ACTIVATE DEFINED
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>ELIF ACTIVATE2 DEFINED
           DISPLAY "OK" NO ADVANCING
           END-DISPLAY
       >>ELSE
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:4974: \$COMPILE -DACTIVATE2 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -DACTIVATE2 prog.cob" "run_extensions.at:4974"
( $at_check_trace; $COMPILE -DACTIVATE2 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4974"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:4975: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:4975"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:4975"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1193
#AT_START_1194
at_fn_group_banner 1194 'run_extensions.at:4980' \
  "Conditional / define directives (4)" "            " 4
at_xfail=no
(
  $as_echo "1194. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       PROCEDURE        DIVISION.
       >>IF ACTIVATE DEFINED
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>ELIF ACTIVATE2 DEFINED
       >>ELSE
           DISPLAY "NOTOK" NO ADVANCING
           END-DISPLAY
       >>END-IF
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5000: \$COMPILE -DACTIVATE2 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -DACTIVATE2 prog.cob" "run_extensions.at:5000"
( $at_check_trace; $COMPILE -DACTIVATE2 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5000"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5001: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5001"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5001"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1194
#AT_START_1195
at_fn_group_banner 1195 'run_extensions.at:5006' \
  "Invalid source format" "                          " 4
at_xfail=no
(
  $as_echo "1195. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >unknown.cob <<'_ATEOF'

       >>SOURCE FORMAT UNKNOWN
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       PROCEDURE DIVISION.
          STOP RUN.
_ATEOF

cat >lit.cob <<'_ATEOF'

       >>SOURCE FORMAT "literal"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       PROCEDURE DIVISION.
          STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5024: \$COMPILE unknown.cob"
at_fn_check_prepare_dynamic "$COMPILE unknown.cob" "run_extensions.at:5024"
( $at_check_trace; $COMPILE unknown.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "unknown.cob:2: error: invalid SOURCE directive option 'UNKNOWN'
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5024"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5027: \$COMPILE lit.cob"
at_fn_check_prepare_dynamic "$COMPILE lit.cob" "run_extensions.at:5027"
( $at_check_trace; $COMPILE lit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "lit.cob:2: error: invalid SOURCE directive option
lit.cob:2: error: PROGRAM-ID header missing
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5027"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1195
#AT_START_1196
at_fn_group_banner 1196 'run_extensions.at:5035' \
  "Variable format" "                                " 4
at_xfail=no
(
  $as_echo "1196. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       >>SOURCE FORMAT VARIABLE
000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. prog.
000030* blah blah blah
000040 PROCEDURE DIVISION.
000050                                                                  DISPLAY "Hello!"
000060     .
000070 END PROGRAM prog.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5049: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:5049"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5049"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5050: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5050"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5050"
$at_failed && at_fn_log_failure
$at_traceon; }


# Check that manually setting -ftext-column in combination with
# variable source format is still allowed: -ftext-column now impacts
# fixed and cobol85 format only; 250 is the default right margin for
# variable format.
cat >fit.cob <<'_ATEOF'

000010 IDENTIFICATION DIVISION.
000020 PROGRAM-ID. fit.
000040 PROCEDURE DIVISION.
000050                                                                                                                                                                                                                                    DISPLAY "Hello!"
000060     STOP RUN.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5065: \$COMPILE -fformat=variable -ftext-column=250 fit.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=variable -ftext-column=250 fit.cob" "run_extensions.at:5065"
( $at_check_trace; $COMPILE -fformat=variable -ftext-column=250 fit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5065"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5066: \$COMPILE -fformat=variable -ftext-column=72 -o fit fit.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=variable -ftext-column=72 -o fit fit.cob" "run_extensions.at:5066"
( $at_check_trace; $COMPILE -fformat=variable -ftext-column=72 -o fit fit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5066"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5067: \$COBCRUN_DIRECT ./fit"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./fit" "run_extensions.at:5067"
( $at_check_trace; $COBCRUN_DIRECT ./fit
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello!
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5067"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1196
#AT_START_1197
at_fn_group_banner 1197 'run_extensions.at:5074' \
  "COBOLX format" "                                  " 4
at_xfail=no
(
  $as_echo "1197. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       >>SOURCE FORMAT COBOLX
 IDENTIFICATION DIVISION.
 PROGRAM-ID. prog.
* area B can extend up to character position 255
 PROCEDURE DIVISION.
/
                                                        DISPLAY "Hello!"
                                                                                                                                                                                                                                                  DISPLAY "Hi!"
DDISPLAY "Hey!"
D                                                         DISPLAY "Bye!"
* trucated alphanumeric literals are not padded with spaces
 DISPLAY "        20        30        40        50        60        70        80        90       100       110       120       130
-        "       140       150       160       170       180       190       200       210       220       230       240       250"
 .
_ATEOF

# " (closing quote)

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5095: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:5095"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5095"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5096: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5096"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello!
Hi!
        20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5096"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5101: \$COMPILE -fdebugging-line -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdebugging-line -o prog prog.cob" "run_extensions.at:5101"
( $at_check_trace; $COMPILE -fdebugging-line -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5101"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5102: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5102"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Hello!
Hi!
Hey!
Bye!
        20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5102"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1197
#AT_START_1198
at_fn_group_banner 1198 'run_extensions.at:5113' \
  "X/Open free-form format" "                        " 4
at_xfail=no
(
  $as_echo "1198. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

* Sample program in X/Open free-form format.

IDENTIFICATION   DIVISION.
PROGRAM-ID.      prog.
DATA             DIVISION.
WORKING-STORAGE  SECTION.
PROCEDURE        DIVISION.
/ Beginning of the code
DISPLAY "OK" NO ADVANCING
* If debug:
D DISPLAY "KO" NO ADVANCING
STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5131: \$COMPILE -fformat=xopen -fno-areacheck prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=xopen -fno-areacheck prog.cob" "run_extensions.at:5131"
( $at_check_trace; $COMPILE -fformat=xopen -fno-areacheck prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5131"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5132: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5132"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5132"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5133: \$COMPILE -fformat=xopen -fno-areacheck -fdebugging-line -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=xopen -fno-areacheck -fdebugging-line -o prog prog.cob" "run_extensions.at:5133"
( $at_check_trace; $COMPILE -fformat=xopen -fno-areacheck -fdebugging-line -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5133"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5134: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5134"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKKO" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5134"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >fit.cob <<'_ATEOF'

* Sample program in X/Open format, and with longer lines and truncated literals.

IDENTIFICATION   DIVISION.
PROGRAM-ID.      fit.
DATA             DIVISION.
WORKING-STORAGE  SECTION.
PROCEDURE        DIVISION.
DISPLAY '         20        30        40        50        60        70       79'
D DISPLAY '       20        30        40        50        60        70       79'
STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5149: \$COMPILE -fformat=xopen -fno-areacheck fit.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=xopen -fno-areacheck fit.cob" "run_extensions.at:5149"
( $at_check_trace; $COMPILE -fformat=xopen -fno-areacheck fit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5149"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5150: \$COBCRUN_DIRECT ./fit"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./fit" "run_extensions.at:5150"
( $at_check_trace; $COBCRUN_DIRECT ./fit
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "         20        30        40        50        60        70       79
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5150"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5153: \$COMPILE -fformat=xopen -fno-areacheck -fdebugging-line -o fit fit.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=xopen -fno-areacheck -fdebugging-line -o fit fit.cob" "run_extensions.at:5153"
( $at_check_trace; $COMPILE -fformat=xopen -fno-areacheck -fdebugging-line -o fit fit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5153"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5154: \$COBCRUN_DIRECT ./fit"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./fit" "run_extensions.at:5154"
( $at_check_trace; $COBCRUN_DIRECT ./fit
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "         20        30        40        50        60        70       79
       20        30        40        50        60        70       79
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5154"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1198
#AT_START_1199
at_fn_group_banner 1199 'run_extensions.at:5162' \
  "TERMINAL format" "                                " 4
at_xfail=no
(
  $as_echo "1199. $at_setup_line: testing $at_desc ..."
  $at_traceon



# FIXME: For now, only comment paragraphs can be used to check proper
# handling of margin B w.r.t indicators; better tests shall be
# implemented once area A/B checking will be available

cat >prog.cob <<'_ATEOF'

* Sample program in ACU terminal format.

IDENTIFICATION   DIVISION.
PROGRAM-ID.      prog.
AUTHOR.
    Somebody.
\D    Somebody else.
    One last author.
DATA             DIVISION.
WORKING-STORAGE  SECTION.
PROCEDURE        DIVISION.
      DISPLAY "OK" NO ADVANCING
      END-DISPLAY.
\D    DISPLAY "KO" NO ADVANCING
\D    END-DISPLAY.
      STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5188: \$COMPILE -fformat=terminal -fcomment-paragraphs=ok prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=terminal -fcomment-paragraphs=ok prog.cob" "run_extensions.at:5188"
( $at_check_trace; $COMPILE -fformat=terminal -fcomment-paragraphs=ok prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5188"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5189: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5189"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OK" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5189"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5190: \$COMPILE -fformat=terminal -fcomment-paragraphs=ok -fdebugging-line -o prog prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=terminal -fcomment-paragraphs=ok -fdebugging-line -o prog prog.cob" "run_extensions.at:5190"
( $at_check_trace; $COMPILE -fformat=terminal -fcomment-paragraphs=ok -fdebugging-line -o prog prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5190"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5191: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5191"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "OKKO" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5191"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >marginberr.cob <<'_ATEOF'

IDENTIFICATION   DIVISION.
PROGRAM-ID.      marginberr.
AUTHOR.
* Comment paragraph where margin B depends on indicator width:
    Somebody
\D   Somebody else.
DATA             DIVISION.
WORKING-STORAGE  SECTION.
PROCEDURE        DIVISION.
      DISPLAY "OK" NO ADVANCING
      STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5207: \$COMPILE -fformat=terminal -fcomment-paragraphs=ok -fdebugging-line marginberr.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=terminal -fcomment-paragraphs=ok -fdebugging-line marginberr.cob" "run_extensions.at:5207"
( $at_check_trace; $COMPILE -fformat=terminal -fcomment-paragraphs=ok -fdebugging-line marginberr.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "marginberr.cob:7: error: PROCEDURE DIVISION header missing
marginberr.cob:7: error: syntax error, unexpected Identifier (Area A)
marginberr.cob:8: error: syntax error, unexpected DATA
marginberr.cob:9: error: syntax error, unexpected WORKING-STORAGE
marginberr.cob:10: error: syntax error, unexpected PROCEDURE
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5207"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >fit.cob <<'_ATEOF'

* Sample program in ACU terminal format, and with longer lines and truncated literals.

IDENTIFICATION   DIVISION.
PROGRAM-ID.      fit.
DATA             DIVISION.
WORKING-STORAGE  SECTION.
PROCEDURE        DIVISION.
      DISPLAY '   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319'
\D    DISPLAY '   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319'
\D    END-DISPLAY.
      DISPLAY '   20        30        40        50        60        70        80        90       100       110       120       130
-             '       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319'
      STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5231: \$COMPILE -fformat=terminal fit.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=terminal fit.cob" "run_extensions.at:5231"
( $at_check_trace; $COMPILE -fformat=terminal fit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5231"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5232: \$COBCRUN_DIRECT ./fit"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./fit" "run_extensions.at:5232"
( $at_check_trace; $COBCRUN_DIRECT ./fit
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319
   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5232"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5236: \$COMPILE -fformat=terminal -fdebugging-line -o fit fit.cob"
at_fn_check_prepare_dynamic "$COMPILE -fformat=terminal -fdebugging-line -o fit fit.cob" "run_extensions.at:5236"
( $at_check_trace; $COMPILE -fformat=terminal -fdebugging-line -o fit fit.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5236"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5237: \$COBCRUN_DIRECT ./fit"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./fit" "run_extensions.at:5237"
( $at_check_trace; $COBCRUN_DIRECT ./fit
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319
   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319
   20        30        40        50        60        70        80        90       100       110       120       130       140       150       160       170       180       190       200       210       220       230       240       250       260       270       280       290       300       310      319
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5237"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1199
#AT_START_1200
at_fn_group_banner 1200 'run_extensions.at:5246' \
  "MF FREE format (X/Open)" "                        " 4
at_xfail=no
(
  $as_echo "1200. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

IDENTIFICATION DIVISION.
PROGRAM-ID. prog.
DATA DIVISION.
WORKING-STORAGE SECTION.
1 X PIC 99.
PROCEDURE DIVISION.
MAIN.
COMPUTE X = 6
* 7
DISPLAY X NO ADVANCING
STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5263: \$COMPILE -free -o prog-free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -free -o prog-free prog.cob" "run_extensions.at:5263"
( $at_check_trace; $COMPILE -free -o prog-free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5263"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5264: \$COBCRUN_DIRECT ./prog-free"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-free" "run_extensions.at:5264"
( $at_check_trace; $COBCRUN_DIRECT ./prog-free
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "42" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5264"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5266: \$COMPILE -std=mf -fformat=free -o prog-mf-fformat-free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf -fformat=free -o prog-mf-fformat-free prog.cob" "run_extensions.at:5266"
( $at_check_trace; $COMPILE -std=mf -fformat=free -o prog-mf-fformat-free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5266"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5267: \$COBCRUN_DIRECT ./prog-mf-fformat-free"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-mf-fformat-free" "run_extensions.at:5267"
( $at_check_trace; $COBCRUN_DIRECT ./prog-mf-fformat-free
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "06" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5267"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5269: \$COMPILE -std=mf -free -o prog-mf-free prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf -free -o prog-mf-free prog.cob" "run_extensions.at:5269"
( $at_check_trace; $COMPILE -std=mf -free -o prog-mf-free prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5269"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5270: \$COBCRUN_DIRECT ./prog-mf-free"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-mf-free" "run_extensions.at:5270"
( $at_check_trace; $COBCRUN_DIRECT ./prog-mf-free
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "06" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5270"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

      $SET SOURCEFORMAT"FREE"
IDENTIFICATION DIVISION.
PROGRAM-ID. prog.
DATA DIVISION.
WORKING-STORAGE SECTION.
1 X PIC 99.
PROCEDURE DIVISION.
MAIN.
COMPUTE X = 6
* 7
DISPLAY X NO ADVANCING
STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5287: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "run_extensions.at:5287"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5287"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5288: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "run_extensions.at:5288"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "42" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5288"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5290: \$COMPILE -std=mf -o prog2-mf prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf -o prog2-mf prog2.cob" "run_extensions.at:5290"
( $at_check_trace; $COMPILE -std=mf -o prog2-mf prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5290"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5291: \$COBCRUN_DIRECT ./prog2-mf"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2-mf" "run_extensions.at:5291"
( $at_check_trace; $COBCRUN_DIRECT ./prog2-mf
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "06" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5291"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1200
#AT_START_1201
at_fn_group_banner 1201 'run_extensions.at:5296' \
  "Binary COMP-1 (1)" "                              " 4
at_xfail=no
(
  $as_echo "1201. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  comp1       COMP-1.
       01  num         PIC 9.9.

       PROCEDURE       DIVISION.
           COMPUTE comp1 = 7 / 2
           MOVE comp1 TO num
           DISPLAY num
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5315: \$COMPILE -fbinary-comp-1 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fbinary-comp-1 prog.cob" "run_extensions.at:5315"
( $at_check_trace; $COMPILE -fbinary-comp-1 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5315"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5316: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5316"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3.0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5316"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5319: \$COMPILE -fno-binary-comp-1 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-binary-comp-1 prog.cob" "run_extensions.at:5319"
( $at_check_trace; $COMPILE -fno-binary-comp-1 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5319"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5320: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5320"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3.5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5320"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1201
#AT_START_1202
at_fn_group_banner 1202 'run_extensions.at:5327' \
  "Binary COMP-1 (2)" "                              " 4
at_xfail=no
(
  $as_echo "1202. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       >>IF BINARY-COMP-1 IS DEFINED
           $SET COMP-1(BINARY)
       >>ELSE
           $SET COMP1 "float"
       >>END-IF
       IDENTIFICATION  DIVISION.
       PROGRAM-ID.     prog.

       DATA            DIVISION.
       WORKING-STORAGE SECTION.
       01  comp1       COMP-1.
       01  num         PIC 9.9.

       PROCEDURE       DIVISION.
           COMPUTE comp1 = 7 / 2
           MOVE comp1 TO num
           DISPLAY num
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5351: \$COMPILE -DBINARY-COMP-1 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -DBINARY-COMP-1 prog.cob" "run_extensions.at:5351"
( $at_check_trace; $COMPILE -DBINARY-COMP-1 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5351"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5352: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5352"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3.0
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5352"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5355: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:5355"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5355"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5356: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5356"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "3.5
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5356"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1202
#AT_START_1203
at_fn_group_banner 1203 'run_extensions.at:5363' \
  "EXHIBIT statement" "                              " 4
at_xfail=no
(
  $as_echo "1203. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 VAR-1         PIC X(8) VALUE SPACES.
       77 VAR-2         PIC 999.
       PROCEDURE        DIVISION.
           EXHIBIT CHANGED VAR-1 'X'
           MOVE ALL 'X' TO VAR-1
           STRING "123" DELIMITED BY SIZE INTO VAR-1
           EXHIBIT NAMED VAR-1 VAR-2 'Y'
           EXHIBIT VAR-2
           EXHIBIT SORT-RETURN TALLY
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5383: \$COMPILE -std=mvs -Wno-strict-typing -Wno-pending prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mvs -Wno-strict-typing -Wno-pending prog.cob" "run_extensions.at:5383"
( $at_check_trace; $COMPILE -std=mvs -Wno-strict-typing -Wno-pending prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5383"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5384: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5384"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "         X
VAR-1 = 123XXXXX VAR-2 = 000 Y
VAR-2 = 000
SORT-RETURN = +000000000 TALLY = 00000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5384"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1203
#AT_START_1204
at_fn_group_banner 1204 'run_extensions.at:5393' \
  "Bit Operations" "                                 " 4
at_xfail=no
(
  $as_echo "1204. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 X1  PIC X  COMP-X VALUE 0.
       01 X2  PIC X  COMP-X VALUE 0.
       01 X3  PIC X  COMP-X VALUE 0.
       01 XX1 PIC XX COMP-X VALUE 0.
       01 XX2 PIC XX COMP-X VALUE 0.
       01 XX3 PIC XX COMP-X VALUE 0.
       PROCEDURE DIVISION.
           MOVE 2 TO XX2 X2
           MOVE 4 TO XX3 X3.

           DISPLAY "Test using PIC XX COMP-X"
           COMPUTE XX1 = (XX2 B-OR XX3).
           DISPLAY XX2 " B-OR  " XX3 " is " XX1.
           MOVE 3 TO XX3.
           COMPUTE XX1 = (XX2 B-XOR XX3).
           DISPLAY XX2 " B-XOR " XX3 " is " XX1.
           MOVE 3 TO XX2
           MOVE 1 TO XX1.
           IF (XX2 B-AND XX1) = XX1
                DISPLAY XX2 " B-AND " XX1 " = " XX1 " TRUE"
            ELSE
                DISPLAY XX2 " B-AND " XX1 " = " XX1 " FALSE"
           END-IF.
           COMPUTE XX1 = (XX2 B-XOR XX3) + 1 .
           DISPLAY "(" XX2 " B-XOR " XX3 ") + 1 is " XX1.
           COMPUTE XX1 = XX2 B-XOR (XX3 + 1).
           DISPLAY XX2 " B-XOR (" XX3 " + 1) is " XX1.
           MOVE  x#09 TO XX3.
           MOVE  x#0E TO XX2.
           COMPUTE XX1 = XX2 B-AND XX3 .
           DISPLAY XX2 " B-AND " XX3 " is " XX1.
           COMPUTE XX1 = (x#05 B-OR x#22).
           DISPLAY "x#05 B-OR x#22 is " XX1.
           COMPUTE XX1 = B-NOT XX2 .
           DISPLAY "B-NOT " XX2 " is " XX1.
           COMPUTE XX1 = B-NOT x#22 .
           DISPLAY "B-NOT x#22 is " XX1.

           DISPLAY "  -----"
           DISPLAY "Test using PIC X COMP-X"
           COMPUTE X1 = (X2 B-OR X3).
           DISPLAY X2 " B-OR  " X3 " is " X1.
           MOVE 3 TO X3.
           COMPUTE X1 = (X2 B-XOR X3).
           DISPLAY X2 " B-XOR " X3 " is " X1.
           MOVE 3 TO X2
           MOVE 1 TO X1.
           IF (X2 B-AND X1) = X1
                DISPLAY X2 " B-AND " X1 " = " X1 " TRUE"
            ELSE
                DISPLAY X2 " B-AND " X1 " = " X1 " FALSE"
           END-IF.
           COMPUTE X1 = (X2 B-XOR X3) + 1 .
           DISPLAY "(" X2 " B-XOR " X3 ") + 1 is " X1.
           COMPUTE X1 = X2 B-XOR (X3 + 1).
           DISPLAY X2 " B-XOR (" X3 " + 1) is " X1.
           MOVE  x#09 TO X3.
           MOVE  x#0E TO X2.
           COMPUTE X1 = X2 B-AND X3 .
           DISPLAY X2 " B-AND " X3 " is " X1.
           COMPUTE X1 = B-NOT X2 .
           DISPLAY "B-NOT " X2 " is " X1.
           COMPUTE X1 = B-NOT x#22 .
           DISPLAY "B-NOT x#22 is " X1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5468: \$COMPILE -facu-literal=ok -fno-trunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -facu-literal=ok -fno-trunc prog.cob" "run_extensions.at:5468"
( $at_check_trace; $COMPILE -facu-literal=ok -fno-trunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5468"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5470: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5470"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Test using PIC XX COMP-X
00002 B-OR  00004 is 00006
00002 B-XOR 00003 is 00001
00003 B-AND 00001 = 00001 TRUE
(00003 B-XOR 00003) + 1 is 00001
00003 B-XOR (00003 + 1) is 00007
00014 B-AND 00009 is 00008
x#05 B-OR x#22 is 00039
B-NOT 00014 is 65521
B-NOT x#22 is 65501
  -----
Test using PIC X COMP-X
002 B-OR  004 is 006
002 B-XOR 003 is 001
003 B-AND 001 = 001 TRUE
(003 B-XOR 003) + 1 is 001
003 B-XOR (003 + 1) is 007
014 B-AND 009 is 008
B-NOT 014 is 241
B-NOT x#22 is 221
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5470"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1204
#AT_START_1205
at_fn_group_banner 1205 'run_extensions.at:5496' \
  "Bit Shift Operations" "                           " 4
at_xfail=no
(
  $as_echo "1205. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 X1 PIC XX COMP-X VALUE 0.
       01 X2 PIC XX COMP-X VALUE 0.
       01 N1 PIC 9(4) COMP-5 VALUE 0.
       01 N2 PIC 9(4) COMP-5 VALUE 0.
       PROCEDURE DIVISION.
           MOVE  x#0A TO X2.
           DISPLAY "Using PIC XX COMP-X"
           COMPUTE X1 = (x#22 B-LEFT x#05).
           DISPLAY " x#22 B-LEFT  x#05   is " X1.
           COMPUTE X1 = (x#22 B-RIGHT x#02).
           DISPLAY " x#22 B-RIGHT x#02   is " X1.
           COMPUTE X1 = (x#22 B-SHIFT-L x#05).
           DISPLAY " x#22 B-SHIFT-L x#05 is " X1.
           COMPUTE X1 = (x#22 B-SHIFT-R x#02).
           DISPLAY " x#22 B-SHIFT-R x#02 is " X1.
           COMPUTE X1 = (X2 B-LEFT x#05).
           DISPLAY X2 " B-LEFT  x#05   is " X1.
           COMPUTE X1 = (X2 B-RIGHT x#02).
           DISPLAY X2 " B-RIGHT x#02   is " X1.
           MOVE  x#7573 TO X2.
           COMPUTE X1 = (X2 B-SHIFT-LC 4).
           DISPLAY X2 " B-SHIFT-LC 4   is " X1.
           COMPUTE X1 = (X2 B-SHIFT-RC 4).
           DISPLAY X2 " B-SHIFT-RC 4   is " X1.

           MOVE  10 TO N2.
           DISPLAY "Using PIC 9(4) COMP-5"
           COMPUTE N1 = (x#22 B-LEFT x#05).
           DISPLAY " x#22 B-LEFT  x#05   is " N1.
           COMPUTE N1 = (x#22 B-RIGHT x#02).
           DISPLAY " x#22 B-RIGHT x#02   is " N1.
           COMPUTE N1 = (x#22 B-SHIFT-L x#05).
           DISPLAY " x#22 B-SHIFT-L x#05 is " N1.
           COMPUTE N1 = (x#22 B-SHIFT-R x#02).
           DISPLAY " x#22 B-SHIFT-R x#02 is " N1.
           COMPUTE N1 = (N2 B-LEFT x#05).
           DISPLAY N2 " B-LEFT  x#05   is " N1.
           COMPUTE N1 = (N2 B-RIGHT x#02).
           DISPLAY N2 " B-RIGHT x#02   is " N1.
           STOP RUN.
_ATEOF


# also syntax-checking MF aliases...
{ set +x
$as_echo "$at_srcdir/run_extensions.at:5547: \$COMPILE -std=mf -fno-trunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=mf -fno-trunc prog.cob" "run_extensions.at:5547"
( $at_check_trace; $COMPILE -std=mf -fno-trunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5547"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5549: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5549"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Using PIC XX COMP-X
 x#22 B-LEFT  x#05   is 01088
 x#22 B-RIGHT x#02   is 00008
 x#22 B-SHIFT-L x#05 is 01088
 x#22 B-SHIFT-R x#02 is 00008
00010 B-LEFT  x#05   is 00320
00010 B-RIGHT x#02   is 00002
30067 B-SHIFT-LC 4   is 22327
30067 B-SHIFT-RC 4   is 14167
Using PIC 9(4) COMP-5
 x#22 B-LEFT  x#05   is 01088
 x#22 B-RIGHT x#02   is 00008
 x#22 B-SHIFT-L x#05 is 01088
 x#22 B-SHIFT-R x#02 is 00008
00010 B-LEFT  x#05   is 00320
00010 B-RIGHT x#02   is 00002
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5549"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1205
#AT_START_1206
at_fn_group_banner 1206 'run_extensions.at:5571' \
  "GCOS floating-point usages" "                     " 4
at_xfail=no
(
  $as_echo "1206. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 FLOATS.
         03 FLOAT-BINARY-32  USAGE COMPUTATIONAL-9  VALUE -4.2E+1.
         03 FLOAT-BINARY-64  USAGE COMPUTATIONAL-10 VALUE 0.0.
         03 FLOAT-BINARY-128 USAGE COMPUTATIONAL-15 VALUE 1.0.

       PROCEDURE        DIVISION.
           DISPLAY FLOAT-BINARY-32

           DISPLAY FLOAT-BINARY-64
           MOVE 9.899999999999E+304 TO FLOAT-BINARY-64
           DISPLAY FLOAT-BINARY-64
           ADD -1.111111111011E302 TO FLOAT-BINARY-64
           DISPLAY FLOAT-BINARY-64

        *> NOTE: FLOAT-BINARY-128 is only syntax-checked as support for
        *> 128bit floating-point is still partial / "processor dependent"

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5599: \$COMPILE -std=gcos-strict prog.cob -Wno-unfinished"
at_fn_check_prepare_dynamic "$COMPILE -std=gcos-strict prog.cob -Wno-unfinished" "run_extensions.at:5599"
( $at_check_trace; $COMPILE -std=gcos-strict prog.cob -Wno-unfinished
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5599"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5600: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5600"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-42
0
9.899999999998999E+304
9.888888888888887E+304
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5600"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1206
#AT_START_1207
at_fn_group_banner 1207 'run_extensions.at:5610' \
  "PICTURE L (basic)" "                              " 4
at_xfail=no
(
  $as_echo "1207. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 W-DATA.
         2 X-DAT       PICTURE LX(10) DEPENDING ON LGX.
         2 X-ALPHA     PICTURE LA(10) DEPENDING ON LGX.
         2 Y-DAT       PICTURE LX(9) DEPENDING ON LGY.
         2 Y-ALPHA     PICTURE LA(9) DEPENDING ON LGY.
       1 W-NESTED.
         2 X-GRP.
           3 X-0       PICTURE X VALUE "0".
           3 X-V       PICTURE LX(10) DEPENDING ON LGX.
           3 X-1       PICTURE X VALUE "1".
       1 W-LGS.
          2 LGX        USAGE COMP-1 VALUE 10.
          2 LGY        PICTURE 9 VALUE 9.
       1 W-LATE-LVAR.
         2 Z-GRP.
           3 Z-V       PICTURE LX(2) DEPENDING ON LGZ.
           3 UNUSED-0  PICTURE X VALUE "1".
         2 LGZ         PICTURE 9 VALUE 2.
       1 W-LEN          USAGE COMP-1.
       PROCEDURE        DIVISION.
       MAIN.
           MOVE SPACES TO W-DATA
           MOVE SPACES TO X-V
           IF X-DAT   NOT EQUAL "          " OR
              X-ALPHA NOT EQUAL "          " OR
              Y-DAT   NOT EQUAL "         " OR
              Y-ALPHA NOT EQUAL "         "
              DISPLAY "GROUP INITIALIZATION WITH SPACES FAILED"
              PERFORM SHOW-VARS
           END-IF
           MOVE 5 TO LGX
           MOVE 1 TO LGY
           IF W-DATA NOT EQUAL "                                      "
              DISPLAY "GROUP COMPARISON FAILED (W-DATA)"
              PERFORM SHOW-VARS
           END-IF
           IF W-NESTED NOT EQUAL "0          1" OR
              X-GRP    NOT EQUAL W-NESTED       OR
              X-V      NOT EQUAL "     "
              DISPLAY "GROUP COMPARISON FAILED (W-NESTED)"
              PERFORM SHOW-VARS
           END-IF
           MOVE ".........." TO X-DAT
           MOVE "XXXXXXXXXX" TO X-ALPHA
           MOVE "999999999" TO Y-DAT
           MOVE "AAAAAAAAA" TO Y-ALPHA
           IF X-DAT   NOT EQUAL "....." OR
              X-ALPHA NOT EQUAL "XXXXX" OR
              Y-DAT   NOT EQUAL "9" OR
              Y-ALPHA NOT EQUAL "A"
              DISPLAY "MOVES FROM LITERALS FAILED"
              PERFORM SHOW-VARS
           END-IF
           MOVE X-DAT TO Y-DAT
           MOVE Y-ALPHA TO X-ALPHA
           IF X-DAT   NOT EQUAL "....." OR
              X-ALPHA NOT EQUAL "A    " OR
              Y-DAT   NOT EQUAL "." OR
              Y-ALPHA NOT EQUAL "A"
              DISPLAY "MOVES FROM/TO VARS FAILED"
              PERFORM SHOW-VARS
           END-IF
           MOVE "AAAAA" TO X-ALPHA
           MOVE 1 TO LGX
           INITIALIZE X-ALPHA
           MOVE 10 TO LGX
           IF X-ALPHA NOT EQUAL " AAAA     "
              DISPLAY "DIRECT VAR INITIALIZATION FAILED"
              PERFORM SHOW-VARS
           END-IF
           MOVE 1 TO LGX
           COMPUTE W-LEN = LENGTH OF X-DAT
           IF W-LEN NOT EQUAL 10
              DISPLAY "UNEXPECTED RESULT FOR 'LENGTH OF X-DAT': "
                     W-LEN
              PERFORM SHOW-VARS
           END-IF
           COMPUTE W-LEN = FUNCTION LENGTH (X-ALPHA)
           IF W-LEN NOT EQUAL 1
              DISPLAY "UNEXPECTED RESULT FOR 'FUNCTION LENGTH "
                      "(X-ALPHA)': " W-LEN
              PERFORM SHOW-VARS
           END-IF
           MOVE 9 TO LGY
           MOVE ALL "A" TO Y-ALPHA
           MOVE 5 TO LGY
           INITIALIZE Y-ALPHA
           MOVE 9 TO LGY
           IF Y-ALPHA NOT EQUAL "     AAAA"
              DISPLAY "UNEXPECTED RESULT AFTER 'MOVE ALL/INITIALIZE': "
                      Y-ALPHA
              PERFORM SHOW-VARS
           END-IF
           PERFORM CHECK-LATE-LVAR
           STOP RUN
           .
       SHOW-VARS.
           DISPLAY W-DATA "*"
           DISPLAY X-DAT "*" X-ALPHA "*" Y-DAT "*" Y-ALPHA "*"
           DISPLAY W-NESTED "*"
           DISPLAY X-GRP "*"
           DISPLAY X-V "*"
           .
       CHECK-LATE-LVAR.
           MOVE "aa" TO Z-GRP (1:2)
           MOVE 1 TO LGZ
           MOVE SPACES TO Z-V
           IF Z-GRP NOT EQUAL " a1"
              DISPLAY "UNEXPECTED Z-GRP WITH NESTED LATE L-VAR: "
                      "*" Z-GRP "*"
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5732: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:5732"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5732"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5733: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:5733"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5733"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5734: \$COMPILE -fodoslide -o prog-x prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide -o prog-x prog.cob" "run_extensions.at:5734"
( $at_check_trace; $COMPILE -fodoslide -o prog-x prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5734"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5735: \$COBCRUN_DIRECT ./prog-x"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog-x" "run_extensions.at:5735"
( $at_check_trace; $COBCRUN_DIRECT ./prog-x
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5735"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1207
#AT_START_1208
at_fn_group_banner 1208 'run_extensions.at:5740' \
  "PICTURE L (under/over shoot)" "                   " 4
at_xfail=no
(
  $as_echo "1208. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >under.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      under.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 X              PICTURE LX(9) DEPENDING ON LGX.
       1 LGX            PIC 9 VALUE 9.
       PROCEDURE        DIVISION.
       MAIN.
           MOVE 0 TO LGX
           DISPLAY X
           STOP RUN
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5757: \$COMPILE under.cob"
at_fn_check_prepare_dynamic "$COMPILE under.cob" "run_extensions.at:5757"
( $at_check_trace; $COMPILE under.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5757"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5758: \$COBCRUN_DIRECT ./under"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./under" "run_extensions.at:5758"
( $at_check_trace; $COBCRUN_DIRECT ./under
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: under.cob:11: error: OCCURS DEPENDING ON 'LGX' out of bounds: 0
note: minimum subscript for 'FILLER 1': 1
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5758"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5762: \$COMPILE -fodoslide -o under-x under.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide -o under-x under.cob" "run_extensions.at:5762"
( $at_check_trace; $COMPILE -fodoslide -o under-x under.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5762"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5763: \$COBCRUN_DIRECT ./under-x"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./under-x" "run_extensions.at:5763"
( $at_check_trace; $COBCRUN_DIRECT ./under-x
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: under.cob:11: error: OCCURS DEPENDING ON 'LGX' out of bounds: 0
note: minimum subscript for 'FILLER 1': 1
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5763"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >over.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      over.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 X              PICTURE LX(5) DEPENDING ON LGX.
       1 LGX            PIC 9 VALUE 9.
       PROCEDURE        DIVISION.
       MAIN.
           DISPLAY X
           STOP RUN
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5781: \$COMPILE over.cob"
at_fn_check_prepare_dynamic "$COMPILE over.cob" "run_extensions.at:5781"
( $at_check_trace; $COMPILE over.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5781"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5782: \$COBCRUN_DIRECT ./over"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./over" "run_extensions.at:5782"
( $at_check_trace; $COBCRUN_DIRECT ./over
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: over.cob:10: error: OCCURS DEPENDING ON 'LGX' out of bounds: 9
note: maximum subscript for 'FILLER 1': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5782"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5786: \$COMPILE -fodoslide -o over-x over.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide -o over-x over.cob" "run_extensions.at:5786"
( $at_check_trace; $COMPILE -fodoslide -o over-x over.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5786"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5787: \$COBCRUN_DIRECT ./over-x"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./over-x" "run_extensions.at:5787"
( $at_check_trace; $COBCRUN_DIRECT ./over-x
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
echo >>"$at_stderr"; $as_echo "libcob: over.cob:10: error: OCCURS DEPENDING ON 'LGX' out of bounds: 9
note: maximum subscript for 'FILLER 1': 5
" | \
  $at_diff - "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 1 $at_status "$at_srcdir/run_extensions.at:5787"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1208
#AT_START_1209
at_fn_group_banner 1209 'run_extensions.at:5795' \
  "PICTURE L (MOVE CORRESPONDING)" "                 " 4
at_xfail=no
(
  $as_echo "1209. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >corr.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      corr.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 W-DATA.
         2 GA.
           3 X          PICTURE X VALUE "X".
           3 YZ         PICTURE XX VALUE "YZ".
           3 X1         PICTURE LX(5) DEPENDING ON LGX.
         2 GB.
           3 X1         PICTURE LX(5) DEPENDING ON LGX.
           3 X          PICTURE X VALUE SPACE.
         2 GC.
           3 X1         PICTURE X(5) VALUE "+++++".
       1 LGX            USAGE COMP-1 VALUE 5.
       1 CNT            USAGE COMP-1.
       PROCEDURE        DIVISION.
       MAIN.
           MOVE "AAAAA" TO X1 OF GA
           MOVE "BBBBB" TO X1 OF GB
           IF X1 OF GA NOT EQUAL "AAAAA" OR
              X1 OF GB NOT EQUAL "BBBBB"
              DISPLAY "GLOBAL INITIALIZATION FAILED"
              PERFORM SHOW-VARS
           END-IF
           MOVE 2 TO LGX
           IF W-DATA NOT EQUAL "XYZAAAAABBBBB +++++"
              DISPLAY "GROUP COMPARISON FAILED"
              DISPLAY GA
              PERFORM SHOW-VARS
           END-IF
      *    From basic to pic-l field: curr size should be ignored
           MOVE CORRESPONDING GC TO GA
           IF X1 OF GA NOT EQUAL "++" OR
              GA       NOT EQUAL "XYZ+++++"
              DISPLAY "MOVE CORRESPONDING GC TO GA: FAILED"
              PERFORM SHOW-VARS
           END-IF
      *    From pic-l to basic field: curr. size is ignored
           MOVE CORRESPONDING GB TO GC
           INSPECT X1 OF GC TALLYING CNT FOR ALL "B"
           IF X1 OF GC NOT EQUAL "BBBBB" OR
              CNT      NOT EQUAL 5
              DISPLAY "MOVE CORRESPONDING GB TO GC: FAILED"
              PERFORM SHOW-VARS
           END-IF
      *    From pic-l to pic-l: sizes are ignored
           MOVE CORRESPONDING GA TO GB
           MOVE 0 TO CNT
           INSPECT X1 OF GB TALLYING CNT FOR ALL "+"
           MOVE 5 TO LGX
           IF X1 OF GB NOT EQUAL "+++++" OR
              X  OF GB NOT EQUAL "X" OR
              CNT      NOT EQUAL 2
              DISPLAY "MOVE CORRESPONDING GA TO GB: FAILED"
              PERFORM SHOW-VARS
           END-IF
           STOP RUN
           .
       SHOW-VARS.
           DISPLAY "LGX: " LGX
           DISPLAY "W-DATA: *" W-DATA "*"
           DISPLAY "CNT: " CNT
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5865: \$COMPILE corr.cob"
at_fn_check_prepare_dynamic "$COMPILE corr.cob" "run_extensions.at:5865"
( $at_check_trace; $COMPILE corr.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5865"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5866: \$COBCRUN_DIRECT ./corr"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./corr" "run_extensions.at:5866"
( $at_check_trace; $COBCRUN_DIRECT ./corr
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5866"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5867: \$COMPILE -fodoslide -o corr-x corr.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide -o corr-x corr.cob" "run_extensions.at:5867"
( $at_check_trace; $COMPILE -fodoslide -o corr-x corr.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5867"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5868: \$COBCRUN_DIRECT ./corr-x"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./corr-x" "run_extensions.at:5868"
( $at_check_trace; $COBCRUN_DIRECT ./corr-x
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5868"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1209
#AT_START_1210
at_fn_group_banner 1210 'run_extensions.at:5873' \
  "PICTURE L (OCCURS ... PIC L)" "                   " 4
at_xfail=no
(
  $as_echo "1210. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >nested.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      nested.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 W-DATA.
         2 A            OCCURS 4
                        PICTURE LX(3) DEPENDING ON LGX.
         2 B            OCCURS 1 TO 10 DEPENDING ON LGY
                        PICTURE LX(3) DEPENDING ON LGX.
       1 LGX            USAGE COMP-1 VALUE 3.
       1 LGY            USAGE COMP-1 VALUE 4.
       PROCEDURE        DIVISION.
       MAIN.
           MOVE "AAAAAAAAAAAABBBBBBBBBBBB" TO W-DATA
           IF W-DATA NOT EQUAL "AAAAAAAAAAAABBBBBBBBBBBB" OR
              A (1)  NOT EQUAL "AAA"
              DISPLAY "GLOBAL INITIALIZATION FAILED"
              DISPLAY A (1)
              PERFORM SHOW-VARS
           END-IF
           MOVE "CCC" TO A (4)
           IF W-DATA NOT EQUAL "AAAAAAAAACCCBBBBBBBBBBBB" OR
              A (4)  NOT EQUAL "CCC"
              DISPLAY "MOVE TO A (4) FAILED"
              DISPLAY A (4)
              PERFORM SHOW-VARS
           END-IF
           MOVE A (3) TO B (2)
           IF W-DATA NOT EQUAL "AAAAAAAAACCCBBBAAABBBBBB" OR
              B (2)  NOT EQUAL "AAA"
              DISPLAY "MOVE A (3) TO B (2) FAILED"
              DISPLAY B (2)
              PERFORM SHOW-VARS
           END-IF
           MOVE 6 TO LGY
           MOVE 2 TO LGX
      *    Operand of 'INITIALIZE' may not have 'OCCURS DEPENDING ON':
      *    INITIALIZE B (5)
           MOVE SPACES TO B (5)
      *    *> NO ODOSLIDE: W-DATA EQUAL "AAAAAAAAACCCBBBAAABBBBBB      "
      *    *>    ODOSLIDE: W-DATA EQUAL "AAAAAAAAACCCBBBAAABB"
           IF A (3)  NOT EQUAL "AA" OR
              A (4)  NOT EQUAL "CC" OR
              B (4)  NOT EQUAL "BB" OR
              B (5)  NOT EQUAL "  "
              DISPLAY "MOVE 2,6 TO LGX,Y; INITIALIZE B (5); FAILED"
              PERFORM SHOW-VARS
           END-IF
           STOP RUN
           .
       SHOW-VARS.
           DISPLAY "W-DATA: *" W-DATA "*"
           DISPLAY "LGX: " LGX
           DISPLAY "LGY: " LGY
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:5934: \$COMPILE nested.cob"
at_fn_check_prepare_dynamic "$COMPILE nested.cob" "run_extensions.at:5934"
( $at_check_trace; $COMPILE nested.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5934"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5935: \$COBCRUN_DIRECT ./nested"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./nested" "run_extensions.at:5935"
( $at_check_trace; $COBCRUN_DIRECT ./nested
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5935"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5936: \$COMPILE -fodoslide -o nested-x nested.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide -o nested-x nested.cob" "run_extensions.at:5936"
( $at_check_trace; $COMPILE -fodoslide -o nested-x nested.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5936"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:5937: \$COBCRUN_DIRECT ./nested-x"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./nested-x" "run_extensions.at:5937"
( $at_check_trace; $COBCRUN_DIRECT ./nested-x
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:5937"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1210
#AT_START_1211
at_fn_group_banner 1211 'run_extensions.at:5942' \
  "PICTURE L (REDEFINES)" "                          " 4
at_xfail=no
(
  $as_echo "1211. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >redefines.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      redefines.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       1 W-DATA.
          2 UNUSED-1    PIC X VALUE "?".
          2 X-DAT       PICTURE X(10).
          2 Y1-DAT      REDEFINES X-DAT PICTURE LX(5) DEPENDING ON LGY.
          2 Y2-DAT      REDEFINES X-DAT PICTURE LX(5) DEPENDING ON LGY.
          2 UNUSED-2    PIC X VALUE "!".
          2 Z-DAT       PICTURE LX(7) DEPENDING ON LGZ.
          2 T-DAT       REDEFINES Z-DAT PICTURE LX(7) DEPENDING ON LGT.
          2 UNUSED-3    PIC X VALUE ".".
       1 W-LGS.
          2 LGX         PIC 99 VALUE 10.
          2 LGY         PIC 9 VALUE 5.
          2 LGZ         PIC 9 VALUE 7.
          2 LGT         PIC 9 VALUE 5.
       1 W-DATA2.
          2 W-X.
             3 W-TAB0.
                4 W-PREFIX PIC X(5).
                4          PIC X(5).
             3 W-TAB1   REDEFINES W-TAB0 PIC LX(10) DEPENDING LG-TAB1.
          2 LG-TAB1     COMP-1.
       PROCEDURE        DIVISION.
       MAIN.
           MOVE "......." TO Z-DAT
           MOVE 3 TO LGZ
           MOVE "0123456789" TO X-DAT
           IF Y1-DAT NOT EQUAL "01234" OR
              Y2-DAT NOT EQUAL "01234"
              DISPLAY "INITIAL MOVE FAILED"
              PERFORM SHOW-VARS
           END-IF
           MOVE "0123456" TO Z-DAT.
           IF T-DAT NOT EQUAL "012.." OR
              Z-DAT NOT EQUAL "012"
              DISPLAY "SECOND MOVE FAILED"
              PERFORM SHOW-VARS
           END-IF
      *    Initialize group containing PICTURE L field: curr. size should be ignored
           MOVE 1 TO LGZ
           INITIALIZE W-DATA
           MOVE 7 TO LGT
           IF T-DAT NOT EQUAL "       "
              DISPLAY "UNEXPECTED T-DAT AFTER 'INITIALIZE W-DATA': "
                       T-DAT
              PERFORM SHOW-VARS
           END-IF
      *    Initialize PICTURE L field: curr. size is ignored
           MOVE "???????" TO T-DAT
           INITIALIZE Z-DAT
           MOVE 2 TO LGZ
           IF T-DAT NOT EQUAL " ??????" OR
              Z-DAT NOT EQUAL " ?"
              DISPLAY "UNEXPECTED T-DAT/Z-DAT AFTER "
                       "'INITIALIZE Z-DAT': " T-DAT "/" Z-DAT "*"
              PERFORM SHOW-VARS
           END-IF
      *    Basic manipulation for late DEPENDING var
           MOVE "aaaaaaaaaa" TO W-TAB0
           MOVE 5 TO LG-TAB1
           IF W-TAB1 NOT EQUAL "aaaaa"
              DISPLAY "UNEXPECTED W-TAB1 WITH LATE L-VAR: *" W-TAB1 "*"
           END-IF
           IF W-X NOT EQUAL "aaaaaaaaaa"
              DISPLAY "UNEXPECTED W-X WITH NESTED LATE L-VAR: *" W-X "*"
           END-IF
           STOP RUN
           .
       SHOW-VARS.
           DISPLAY X-DAT "*" Y1-DAT "*" Y2-DAT "*" T-DAT "*" Z-DAT "*"
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6022: \$COMPILE redefines.cob"
at_fn_check_prepare_dynamic "$COMPILE redefines.cob" "run_extensions.at:6022"
( $at_check_trace; $COMPILE redefines.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6022"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6023: \$COBCRUN_DIRECT ./redefines"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./redefines" "run_extensions.at:6023"
( $at_check_trace; $COBCRUN_DIRECT ./redefines
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6023"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6024: \$COMPILE -fodoslide -o redefines-x redefines.cob"
at_fn_check_prepare_dynamic "$COMPILE -fodoslide -o redefines-x redefines.cob" "run_extensions.at:6024"
( $at_check_trace; $COMPILE -fodoslide -o redefines-x redefines.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6024"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6025: \$COBCRUN_DIRECT ./redefines-x"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./redefines-x" "run_extensions.at:6025"
( $at_check_trace; $COBCRUN_DIRECT ./redefines-x
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6025"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1211
#AT_START_1212
at_fn_group_banner 1212 'run_extensions.at:6030' \
  "INSPECT TRAILING" "                               " 4
at_xfail=no
(
  $as_echo "1212. $at_setup_line: testing $at_desc ..."
  $at_traceon
 # Note: TRAILING is an extension


cat >prog.cob <<'_ATEOF'

       identification division.
       program-id. prog.

       DATA DIVISION.
       WORKING-STORAGE  SECTION.

       01  W01-STRING    PIC X(20) VALUE '0123456789'.
       01  W01-INDEX     PIC 9(04) BINARY.

       PROCEDURE DIVISION.
      *>
           MOVE 0  TO W01-INDEX.
           INSPECT W01-STRING
                   TALLYING W01-INDEX FOR TRAILING SPACE.
           IF W01-INDEX NOT = 10
           THEN
               DISPLAY 'Bad Result for Inspect Trailing Case 1'
           END-IF.
      *>
           INSPECT W01-STRING REPLACING TRAILING SPACE BY 'A'.
           IF W01-STRING NOT = '0123456789AAAAAAAAAA'
           THEN
               DISPLAY 'Bad Result for Inspect Trailing Case 2'
           END-IF.
      *>
           MOVE 0  TO W01-INDEX.
           INSPECT W01-STRING
                   TALLYING W01-INDEX FOR TRAILING SPACE
                   REPLACING TRAILING 'A' BY 'B'.
      *>
           IF     W01-STRING NOT = '0123456789BBBBBBBBBB'
           THEN
               DISPLAY 'Bad Result for Inspect Trailing Case 3'
           END-IF.
      *>
           MOVE 0  TO W01-INDEX.
           MOVE SPACES TO W01-STRING.
           INSPECT W01-STRING
                   TALLYING W01-INDEX FOR TRAILING 'A'.
      *>
           IF W01-INDEX  NOT = 0
           THEN
               DISPLAY 'Bad Result for Inspect Trailing Case 4'
               W01-INDEX
           END-IF.
      *>
           MOVE 0  TO W01-INDEX.
           MOVE SPACES TO W01-STRING.
           INSPECT W01-STRING
                   TALLYING W01-INDEX FOR TRAILING SPACES.
      *>
           IF W01-INDEX NOT = 20
           THEN
               DISPLAY 'Bad Result for Inspect Trailing Case 5'
               W01-INDEX
           END-IF.
      *>
           GOBACK.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6094: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:6094"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6094"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6095: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:6095"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6095"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1212
#AT_START_1213
at_fn_group_banner 1213 'run_extensions.at:6100' \
  "INSPECT REPLACING TRAILING ZEROS BY SPACES" "     " 4
at_xfail=no
(
  $as_echo "1213. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(4) VALUE "1000".
       PROCEDURE        DIVISION.
           INSPECT X REPLACING TRAILING ZEROS BY SPACES.
           IF X NOT = "1   "
              DISPLAY X.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6116: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:6116"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6116"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6117: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:6117"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6117"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1213
#AT_START_1214
at_fn_group_banner 1214 'run_extensions.at:6122' \
  "INSPECT REPLACING complex" "                      " 4
at_xfail=no
(
  $as_echo "1214. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(12) VALUE "AZABBCDCCECC".
       PROCEDURE        DIVISION.
           INSPECT X REPLACING
             ALL      "A" BY "Z"
                      "B" BY "Y"
                      "Z" BY "0"
             TRAILING "C" BY "X"
           IF X NOT = "Z0ZYYCDCCEXX"
              DISPLAY "1 - " X.

           INSPECT X REPLACING
             CHARACTERS BY SPACES
              BEFORE  "C" AFTER "0"
             CHARACTERS BY ZEROES
              BEFORE  "E" AFTER "C"
           IF X NOT = "Z0   C000EXX"
              DISPLAY "2 - " X.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6151: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_extensions.at:6151"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6151"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6152: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:6152"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6152"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1214
#AT_START_1215
at_fn_group_banner 1215 'run_extensions.at:6159' \
  "EXAMINE TALLYING" "                               " 4
at_xfail=no
(
  $as_echo "1215. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(8) VALUE "AABABCAB".
       01 N             PIC S9(5)V9(2) VALUE -11122.55.
       01 T             PIC X(10) VALUE "    8     ".
       PROCEDURE        DIVISION.
           EXAMINE X TALLYING ALL "A"
           IF TALLY NOT = 4
              DISPLAY "Should be 4 but is " TALLY.
           EXAMINE X TALLYING LEADING "A"
           IF TALLY NOT = 2
              DISPLAY "Should be 2 but is " TALLY.
           EXAMINE X TALLYING UNTIL FIRST "C"
           IF TALLY NOT = 5
              DISPLAY "Should be 5 but is " TALLY.
           EXAMINE X TALLYING ALL "A" REPLACING BY "Z"
           IF TALLY NOT = 4
              DISPLAY "Should be 4 but is " TALLY.
           IF X NOT = "ZZBZBCZB"
              DISPLAY "Should be ZZBZBCZB but is " X.
           EXAMINE X TALLYING LEADING "Z" REPLACING BY "A"
           IF TALLY NOT = 2
              DISPLAY "Should be 2 but is " TALLY.
           IF X NOT = "AABZBCZB"
              DISPLAY "Should be AABZBCZB but is " X.
           EXAMINE X TALLYING UNTIL FIRST "C" REPLACING BY "X"
           IF TALLY NOT = 5
              DISPLAY "Should be 5 but is " TALLY.
           IF X NOT = "XXXXXCZB"
              DISPLAY "Should be XXXXXCZB but is " X.
           EXAMINE X TALLYING UNTIL FIRST "Y" REPLACING BY "Y"
           IF TALLY NOT = 8
              DISPLAY "Should be 8 but is " TALLY.
           IF X NOT = "YYYYYYYY"
              DISPLAY "Should be YYYYYYYY but is " X.
           EXAMINE N TALLYING UNTIL FIRST 5 REPLACING BY 8
           IF N NOT = -88888.55
              DISPLAY "Should be -88888.55 but is " N.
      *    Re-mod is forbidden here (at least on GCOS):
      *    EXAMINE N TALLYING LEADING T (5:1)
      *    IF TALLY NOT = 5
      *       DISPLAY "Should be 5 but is " TALLY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6210: \$COMPILE -freserved=EXAMINE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -freserved=EXAMINE prog.cob" "run_extensions.at:6210"
( $at_check_trace; $COMPILE -freserved=EXAMINE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6210"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6211: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:6211"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6211"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1215
#AT_START_1216
at_fn_group_banner 1216 'run_extensions.at:6216' \
  "EXAMINE REPLACING" "                              " 4
at_xfail=no
(
  $as_echo "1216. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(8) VALUE "AABABCAB".
       01 Y             PIC X VALUE "Y".
       01 N             PIC S9(5) VALUE -11122.
       PROCEDURE        DIVISION.
           EXAMINE X REPLACING ALL "A" BY "X"
           IF X NOT = "XXBXBCXB"
              DISPLAY "Should be XXBXBCXB but is " X.
           EXAMINE X REPLACING LEADING "X" BY "Y"
           IF X NOT = "YYBXBCXB"
              DISPLAY "Should be YYBXBCXB but is " X.
           EXAMINE X REPLACING FIRST "B" BY "C"
           IF X NOT = "YYCXBCXB"
              DISPLAY "Should be YYCXBCXB but is " X.
           EXAMINE X REPLACING UNTIL FIRST "B" BY "Z"
           IF X NOT = "ZZZZBCXB"
              DISPLAY "Should be ZZZZBCXB but is " X.
           EXAMINE N REPLACING ALL 1 BY 3
           IF N NOT = -33322
              DISPLAY "Should be -33322 but is " N.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6246: \$COMPILE -freserved=EXAMINE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -freserved=EXAMINE prog.cob" "run_extensions.at:6246"
( $at_check_trace; $COMPILE -freserved=EXAMINE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6246"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6247: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:6247"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6247"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1216
#AT_START_1217
at_fn_group_banner 1217 'run_extensions.at:6252' \
  "GCOS literals with EBCDIC symbols (run)" "        " 4
at_xfail=no
(
  $as_echo "1217. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X             PIC X(11).
       01 T             PIC 9.
       01 S             USAGE COMP-1 VALUE ZERO.
       PROCEDURE        DIVISION.
           MOVE 1 TO T
           MOVE ""135,151,151"bar"195,194,234"" TO X
           IF X NOT EQUAL "foobarBAZ" PERFORM SHOW.

           MOVE 2 TO T
           MOVE "  "135,151,151"bar"195 194"Z" TO X
           IF X NOT EQUAL "  foobarBAZ" PERFORM SHOW.

           MOVE 3 TO T
           MOVE ' '135 151,151'bar'195,194'Z' TO X
           IF X NOT EQUAL " foobarBAZ" PERFORM SHOW.

           MOVE 4 TO T
           MOVE ""75,80,91"" TO X
           IF X NOT EQUAL "[!]" PERFORM SHOW.

           STOP RUN S.
       SHOW.
           DISPLAY "EBCDIC LIT " T " FAILED: X = """ X """"
           MOVE 1 TO S.
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_extensions.at:6286: \$COMPILE -febcdic-symbolic-characters -febcdic-table=ebcdic500_latin1 prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -febcdic-symbolic-characters -febcdic-table=ebcdic500_latin1 prog.cob" "run_extensions.at:6286"
( $at_check_trace; $COMPILE -febcdic-symbolic-characters -febcdic-table=ebcdic500_latin1 prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6286"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_extensions.at:6287: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_extensions.at:6287"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_extensions.at:6287"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1217
#AT_START_1218
at_fn_group_banner 1218 'run_ml.at:19' \
  "XML GENERATE general" "                           " 4
at_xfail=no
(
  $as_echo "1218. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:22" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:22"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION       DIVISION.
       PROGRAM-ID.          prog.

       DATA                 DIVISION.
       WORKING-STORAGE      SECTION.
       01  namespace-str    PIC X(100)
                            VALUE 'http://www.w3.org/1999/xhtml'.
       01  prefix-str       PIC X(100) VALUE 'pre'.

       01  out              PIC X(200).
       01  rec.
           03  a            PIC X(3) VALUE 'A'.
           03  b            PIC X(3) VALUE ALL 'B'.
           03  c.
               05  d        PIC X(3) VALUE SPACES.

       01  0SpecialTAGName  PIC X(3) VALUE "abc".

       01  employee.
           05 id            PIC 9(1)  value 1.
           05 name          PIC X(10) value "Someone".
           05 dept          PIC X(10) value "Marketing".

       PROCEDURE            DIVISION.
           XML GENERATE out
               FROM rec
               WITH XML-DECLARATION
               NAME OF a IS 'alpha', d IS 'ABCDEF';
               TYPE OF a IS ATTRIBUTE
               SUPPRESS WHEN SPACES
           IF out <> '<?xml version="1.0"?>' & X'0A'
                   & '<rec alpha="A"><b>BBB</b></rec>'
               DISPLAY 'Test 1 failed: ' FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM d
           IF out <> '<d> </d>'
               DISPLAY 'Test 2 failed: ' FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM c, WITH ATTRIBUTES.
           IF out <> '<c d=" "/>'
               DISPLAY 'Test 3 failed: ' FUNCTION TRIM (out)
           END-IF

           MOVE ALL 'A' TO a
           MOVE ALL 'C' TO c
           XML GENERATE out FROM rec, TYPE OF a IS CONTENT,
               b IS CONTENT, d IS CONTENT
           IF out <> '<rec>AAABBB<c>CCC</c></rec>'
               DISPLAY 'Test 4 failed: ' FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM rec, TYPE OF a IS CONTENT, d IS CONTENT
           IF out <> '<rec>AAA<b>BBB</b><c>CCC</c></rec>'
               DISPLAY 'Test 5 failed: ' FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM c, NAMESPACE namespace-str,
               NAMESPACE-PREFIX prefix-str
           IF out <> '<pre:c xmlns:pre="http://www.w3.org/1999/xhtml">'-
                   '<pre:d>CCC</pre:d></pre:c>'
               DISPLAY 'Test 6 failed: ' FUNCTION TRIM (out)
                   " " XML-CODE
           END-IF

           MOVE SPACES TO namespace-str, prefix-str
           XML GENERATE out FROM c, NAMESPACE namespace-str,
               NAMESPACE-PREFIX prefix-str
           IF out <> '<c><d>CCC</d></c>'
               DISPLAY 'Test 7 failed: ' FUNCTION TRIM (out)
           END-IF

           MOVE ALL "&" TO d
           XML GENERATE out FROM d
           IF out <> '<d>&amp;&amp;&amp;</d>'
               DISPLAY 'Test 8 failed: ' FUNCTION TRIM (out)
           END-IF

           *> Test the case of the id in the DATA DIVISION is preserved.
           XML GENERATE out FROM 0specialtagname
           IF out <> '<_0SpecialTAGName>abc</_0SpecialTAGName>'
               DISPLAY 'Test 9 failed: ' FUNCTION TRIM (out)
           END-IF
           .

           *> Another test with mixed attributes and values
           XML GENERATE out FROM EMPLOYEE TYPE OF ID IS ATTRIBUTE
           IF out <> '<employee id="1">'-
                     '<name>Someone</name>'-
                     '<dept>Marketing</dept>'-
                     '</employee>'
               DISPLAY 'Test 10 failed: ' FUNCTION TRIM (out)
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:122: \$COMPILE -fnot-reserved=ID prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnot-reserved=ID prog.cob" "run_ml.at:122"
( $at_check_trace; $COMPILE -fnot-reserved=ID prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:122"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:123: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:123"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:123"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1218
#AT_START_1219
at_fn_group_banner 1219 'run_ml.at:127' \
  "XML GENERATE SUPPRESS" "                          " 4
at_xfail=no
(
  $as_echo "1219. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:130" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:130"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION       DIVISION.
       PROGRAM-ID.          prog.

       DATA                 DIVISION.
       WORKING-STORAGE      SECTION.
       01  a.
           03  b            PIC X(3) VALUE SPACES.
           03  c            PIC X(3) VALUE SPACES.

       01  p.
           03  q            PIC 9(3) VALUE ZERO.
           03  r            PIC X(3) VALUE "abc".

       01  x.
           03  y.
               05  z        PIC X VALUE SPACE.

       01  out              PIC X(100).

       PROCEDURE            DIVISION.
           XML GENERATE out FROM a SUPPRESS WHEN SPACES
           IF out <> '<a/>'
               DISPLAY 'Test 1 failed: ' out
           END-IF

           XML GENERATE out FROM a SUPPRESS b WHEN SPACES
           IF out <> '<a><c> </c></a>'
               DISPLAY 'Test 2 failed: ' out
           END-IF

           XML GENERATE out FROM a SUPPRESS EVERY NONNUMERIC WHEN SPACES
           IF out <> '<a/>'
               DISPLAY 'Test 3 failed: ' out
           END-IF

           XML GENERATE out FROM p
               WITH ATTRIBUTES
               SUPPRESS EVERY ATTRIBUTE WHEN ZERO
           IF out <> '<p r="abc"/>'
               DISPLAY 'Test 4 failed: ' out
           END-IF

           XML GENERATE out FROM a
               SUPPRESS c WHEN LOW-VALUES, c WHEN SPACES,
                    c WHEN LOW-VALUES,
                    EVERY ELEMENT WHEN SPACES
           IF out <> '<a><c> </c></a>'
               DISPLAY 'Test 5 failed: ' out
           END-IF

           MOVE HIGH-VALUES TO b
           MOVE LOW-VALUES TO c
           XML GENERATE out FROM a
               SUPPRESS EVERY ELEMENT WHEN HIGH-VALUES OR LOW-VALUES
                   OR ZEROES OR SPACES
           IF out <> '<a/>'
               DISPLAY 'Test 6 failed: ' out
           END-IF

           XML GENERATE out FROM x SUPPRESS z WHEN SPACE
           IF out <> '<x/>'
               DISPLAY 'Test 7 failed: ' out
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:199: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:199"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:199"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:200: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:200"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:200"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1219
#AT_START_1220
at_fn_group_banner 1220 'run_ml.at:204' \
  "XML GENERATE exceptions" "                        " 4
at_xfail=no
(
  $as_echo "1220. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:207" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:207"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  normal-str PIC X(200).

       01  valid-rec.
           03  a      PIC XX VALUE "aa".
           03  b      PIC XX VALUE "bb".
       01  short-str  PIC X(5).
       01  short-str2 PIC X(22).
       01  xml-len    PIC 99.

       01  valid-namespace    CONSTANT "http://www.w3.org/1999/xhtml".
       01  invalid-namespace  CONSTANT X"00".
       01  invalid-prefix     PIC XXX VALUE "#<>".
       01  invalid-content    PIC X(3) VALUE X"8AFF00".
       01  count-in-too-small PIC 9.

       PROCEDURE DIVISION.
           MOVE ALL 'A' TO short-str
           XML GENERATE short-str FROM valid-rec
               COUNT IN xml-len
           IF  XML-CODE   <> 400
            OR short-str  <> "<vali"
            OR xml-len    <> 42
      *> FIXME: should be
      *>    OR short-str  <> "AAAAA"
      *>    OR xml-len    <> 0
              DISPLAY "Failed 1a: " short-str  " " xml-len " " XML-CODE
           END-IF
           MOVE ALL 'B' TO short-str2
           XML GENERATE short-str2 FROM valid-rec
               COUNT IN xml-len
           IF  XML-CODE   <> 400
            OR short-str2 <> "<valid-rec><a>aa</a><b"
            OR xml-len    <> 42
      *> FIXME: should be
      *>    OR short-str2 <> "<valid-rec><a>aa</a>BB"
      *>    OR xml-len    <> 20
              DISPLAY "Failed 1b: " short-str2 " " xml-len " " XML-CODE
           END-IF

           XML GENERATE normal-str FROM valid-rec
               NAMESPACE invalid-namespace
           IF XML-CODE <> 416
              DISPLAY "Failed 2: " FUNCTION TRIM (normal-str)
                       " " XML-CODE
           END-IF

           XML GENERATE normal-str FROM invalid-content
           IF  XML-CODE <> 417
            OR normal-str <> '<hex.invalid-content>8aff00</hex.'-
                            'invalid-content>'
              DISPLAY "Failed 3: " FUNCTION TRIM (normal-str)
                      " " XML-CODE
           END-IF

           XML GENERATE normal-str FROM valid-rec
               NAMESPACE "http://www.w3.org/1999/xhtml"
               NAMESPACE-PREFIX invalid-prefix
           IF  XML-CODE <> 419
              DISPLAY "Failed 4: " FUNCTION TRIM (normal-str)
                       " " XML-CODE
           END-IF

           XML GENERATE normal-str FROM valid-rec
                ON EXCEPTION
                    DISPLAY "Failed 5: EXCEPTION "
                        FUNCTION TRIM (normal-str)
                        " " XML-CODE
                    END-DISPLAY
                    *> The END-DISPLAY is important! Otherwise the DISPLAY will
                    *> take the NOT ON EXCEPTION.

                NOT ON EXCEPTION
                    IF XML-CODE <> 0
                        DISPLAY "Failed 5: NOT EXCEPTION "
                            FUNCTION TRIM (normal-str)
                            " " XML-CODE
                    END-IF
           END-XML

           XML GENERATE short-str FROM valid-rec
                NOT EXCEPTION
                    DISPLAY "Failed 6: NOT EXCEPTION "
                        FUNCTION TRIM (normal-str)
                        " " XML-CODE
                    END-DISPLAY

                EXCEPTION
                    IF XML-CODE <> 400
                        DISPLAY "Failed 6: ON EXCEPTION "
                            FUNCTION TRIM (normal-str)
                            " " XML-CODE
                    END-IF
           END-XML
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:311: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:311"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:311"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:312: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:312"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:312"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1220
#AT_START_1221
at_fn_group_banner 1221 'run_ml.at:316' \
  "XML GENERATE record selection" "                  " 4
at_xfail=no
(
  $as_echo "1221. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:319" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:319"

# TO-DO: Add support for generating OCCURS items.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  a.
           03  b.
               05 c1 PIC X(3) VALUE "abc".
               05 c2 PIC 9(3) VALUE 0.
           03  d REDEFINES b.
               05  e PIC X(6).
           03  f PIC X OCCURS 3 VALUE "f".

       66  h RENAMES c1 THRU c2.

       01  out PIC X(60).

       PROCEDURE DIVISION.
           *> XML GENERATE out FROM a
           *> IF out <> '<a><b><c1>abc</c1><c2>0</c2></b><f>f</f><f>f</f>'-
           *>          '<f>f</f></a>'
           *>    DISPLAY "Failed 1: " FUNCTION TRIM (out)
           *> END-IF

           XML GENERATE out FROM d
           IF out <> '<d><e>abc000</e></d>'
               DISPLAY "Failed 2: " FUNCTION TRIM (out)
           END-IF
           .
       END PROGRAM prog.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_ml.at:355: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:355"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:355"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:356: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:356"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:356"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1221
#AT_START_1222
at_fn_group_banner 1222 'run_ml.at:360' \
  "XML GENERATE trimming" "                          " 4
at_xfail=no
(
  $as_echo "1222. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:363" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:363"

# TO-DO: Add support for IBM/COBOL 2002 edited floating point (e.g. PIC 9(3)E+99).

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  str                     PIC X(3) VALUE "ab".
       01  num-edited              PIC 99.99 VALUE "01.00".
       01  leading-zeroes          PIC 9(5) VALUE 5.
       01  decimal-num             PIC 99V999 PACKED-DECIMAL VALUE 0.12.
       01  signed-decimal-num      PIC S999 COMP-X VALUE -1.
       01  comp-5-item             PIC 9(10) COMP-5 VALUE 5.
       01  index-item              INDEX.
       01  float-short-item        FLOAT-SHORT VALUE 100.
       01  float-long-item         FLOAT-LONG VALUE 123.0E-10.
       01  just-item               PIC X(10) JUST.
       01  integer-with-p          PIC 999PPP VALUE 10000.
       01  decimal-with-p          PIC VPP99 VALUE 0.0004.

       01  out                     PIC X(300).

       PROCEDURE DIVISION.
           XML GENERATE out FROM str
           IF out <> '<str>ab</str>'
               DISPLAY "Failed 1: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM num-edited
           IF out <> '<num-edited>01.00</num-edited>'
               DISPLAY "Failed 2: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM leading-zeroes
           IF out <> '<leading-zeroes>5</leading-zeroes>'
               DISPLAY "Failed 3: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM decimal-num
           IF out <> '<decimal-num>0.120</decimal-num>'
               DISPLAY "Failed 4: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM signed-decimal-num
           IF out <> '<signed-decimal-num>-1</signed-decimal-num>'
               DISPLAY "Failed 5: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM comp-5-item
           IF out <> '<comp-5-item>5</comp-5-item>'
               DISPLAY "Failed 6: " FUNCTION TRIM (out)
           END-IF

           SET index-item TO 500
           XML GENERATE out FROM index-item
           IF out <> '<index-item>500</index-item>'
               DISPLAY "Failed 7: " FUNCTION TRIM (out)
           END-IF

           *> XML GENERATE out FROM float-short-item
           *> IF out <> '<float-short-item>1E+02</float-short-item>'
           *>     DISPLAY "Failed 8: " FUNCTION TRIM (out)
           *> END-IF

           *> XML GENERATE out FROM float-long-item
           *> IF out <> '<float-long-item>123E-10</float-long-item>'
           *>     DISPLAY "Failed 9: " FUNCTION TRIM (out)
           *> END-IF

           MOVE "blah " TO just-item
           XML GENERATE out FROM just-item
           IF out <> '<just-item>blah </just-item>'
               DISPLAY "Failed 10: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM integer-with-p
           IF out <> '<integer-with-p>10000</integer-with-p>'
               DISPLAY "Failed 11: " FUNCTION TRIM (out)
           END-IF

           XML GENERATE out FROM decimal-with-p
           IF out <> '<decimal-with-p>0.0004</decimal-with-p>'
               DISPLAY "Failed 12: " FUNCTION TRIM (out)
           END-IF
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_ml.at:452: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:452"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:452"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:453: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:453"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:453"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1222
#AT_START_1223
at_fn_group_banner 1223 'run_ml.at:457' \
  "XML DPC-IN-DATA directive" "                      " 4
at_xfail=no
(
  $as_echo "1223. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:460" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:460"

cat >prog.cob <<'_ATEOF'

      $SET DPC-IN-DATA "JSON"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 9V9 VALUE 1,1.
       01  out PIC X(100).

       PROCEDURE DIVISION.
           XML GENERATE out FROM num
           IF out <> '<num>1.1</num>'
              DISPLAY "Failed: " FUNCTION TRIM (out).
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:483: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:483"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:483"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:484: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:484"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:484"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1223
#AT_START_1224
at_fn_group_banner 1224 'run_ml.at:488' \
  "XML dpc-in-data config option" "                  " 4
at_xfail=no
(
  $as_echo "1224. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:491" >"$at_check_line_file"
(test "$COB_HAS_XML2" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:491"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 9V9 VALUE 1,1.
       01  out PIC X(100).

       PROCEDURE DIVISION.
           XML GENERATE out FROM num
           DISPLAY FUNCTION TRIM(out)
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:513: \$COMPILE -fdpc-in-data=none prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdpc-in-data=none prog.cob" "run_ml.at:513"
( $at_check_trace; $COMPILE -fdpc-in-data=none prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:513"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:514: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:514"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "<num>1.1</num>
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:514"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:517: \$COMPILE -fdpc-in-data=xml prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdpc-in-data=xml prog.cob" "run_ml.at:517"
( $at_check_trace; $COMPILE -fdpc-in-data=xml prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:517"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:518: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:518"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "<num>1,1</num>
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:518"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:521: \$COMPILE  -fdpc-in-data=json prog.cob"
at_fn_check_prepare_dynamic "$COMPILE  -fdpc-in-data=json prog.cob" "run_ml.at:521"
( $at_check_trace; $COMPILE  -fdpc-in-data=json prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:521"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:522: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:522"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "<num>1.1</num>
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:522"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:525: \$COMPILE  -fdpc-in-data=all prog.cob"
at_fn_check_prepare_dynamic "$COMPILE  -fdpc-in-data=all prog.cob" "run_ml.at:525"
( $at_check_trace; $COMPILE  -fdpc-in-data=all prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:525"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:526: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:526"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "<num>1,1</num>
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:526"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1224
#AT_START_1225
at_fn_group_banner 1225 'run_ml.at:532' \
  "JSON GENERATE general" "                          " 4
at_xfail=no
(
  $as_echo "1225. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:535" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:535"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION       DIVISION.
       PROGRAM-ID.          prog.

       DATA                 DIVISION.
       WORKING-STORAGE      SECTION.
       01  out              PIC X(200).
       01  rec.
           03  a            PIC X(3) VALUE 'A'.
           03  b            PIC X(3) VALUE ALL 'B'.
           03  c.
               05  d        PIC X(3) VALUE SPACES.

       PROCEDURE            DIVISION.
           JSON GENERATE out
               FROM rec
               NAME OF a IS 'alpha', d IS 'ABCDEF'
               SUPPRESS c
           IF out <> '{"rec":{"alpha":"A","b":"BBB"}}'
               DISPLAY 'Test 1 failed: ' FUNCTION TRIM (out)
           END-IF
           JSON GENERATE out
               FROM rec
               NAME OF a IS 'alpha', rec IS OMITTED
               SUPPRESS c
           IF out <> '{"alpha":"A","b":"BBB"}'
               DISPLAY 'Test 2 failed: ' FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM d
           IF out <> '{"d":" "}'
               DISPLAY 'Test 3 failed: ' FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM c
           IF out <> '{"c":{"d":" "}}'
               DISPLAY 'Test 4 failed: ' FUNCTION TRIM (out)
           END-IF

           MOVE ALL QUOTES TO d
           JSON GENERATE out FROM d
           IF out <> '{"d":"\"\"\""}'
               DISPLAY 'Test 5 failed: ' FUNCTION TRIM (out)
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:584: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:584"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:584"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:585: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:585"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:585"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1225
#AT_START_1226
at_fn_group_banner 1226 'run_ml.at:589' \
  "JSON GENERATE SUPPRESS" "                         " 4
at_xfail=no
(
  $as_echo "1226. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:592" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:592"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION       DIVISION.
       PROGRAM-ID.          prog.

       DATA                 DIVISION.
       WORKING-STORAGE      SECTION.
       01  a.
           03  b            PIC X(3) VALUE SPACES.
           03  c            PIC X(3) VALUE SPACES.

       01  x.
           03  y.
               05  z        PIC X VALUE SPACE.

       01  out              PIC X(100).

       PROCEDURE            DIVISION.
           JSON GENERATE out FROM a SUPPRESS b
           IF out <> '{"a":{"c":" "}}'
               DISPLAY 'Test 1 failed: ' out
           END-IF

           JSON GENERATE out FROM x SUPPRESS z
           IF out <> '{"x":{}}'
               DISPLAY 'Test 2 failed: ' out
           END-IF
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:623: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:623"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:623"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:624: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:624"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:624"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1226
#AT_START_1227
at_fn_group_banner 1227 'run_ml.at:628' \
  "JSON GENERATE exceptions" "                       " 4
at_xfail=no
(
  $as_echo "1227. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:631" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:631"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  normal-str PIC X(200).

       01  valid-rec.
           03  a PIC XX VALUE "aa".
           03  b PIC XX VALUE "bb".
       01  short-str PIC X(5).
       01  json-len   PIC 99.

       PROCEDURE DIVISION.
           JSON GENERATE short-str FROM valid-rec
               COUNT IN json-len
           IF short-str <> '{"val'
                   OR json-len <> 33
                   OR JSON-CODE <> 1
               DISPLAY "Failed 1: " short-str " " json-len " " JSON-CODE
           END-IF

           JSON GENERATE normal-str FROM valid-rec
                ON EXCEPTION
                    DISPLAY "Failed 2: EXCEPTION "
                        FUNCTION TRIM (normal-str)
                        " " JSON-CODE
                    END-DISPLAY

                NOT ON EXCEPTION
                    IF JSON-CODE <> 0
                        DISPLAY "Failed 2: NOT EXCEPTION "
                            FUNCTION TRIM (normal-str)
                            " " JSON-CODE
                    END-IF
           END-JSON

           JSON GENERATE short-str FROM valid-rec
                NOT EXCEPTION
                    DISPLAY "Failed 3: NOT EXCEPTION "
                        FUNCTION TRIM (normal-str)
                        " " JSON-CODE
                    END-DISPLAY

                EXCEPTION
                    IF JSON-CODE <> 1
                        DISPLAY "Failed 3: ON EXCEPTION "
                            FUNCTION TRIM (normal-str)
                            " " JSON-CODE
                    END-IF
           END-JSON
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:688: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:688"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:688"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:689: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:689"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:689"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1227
#AT_START_1228
at_fn_group_banner 1228 'run_ml.at:693' \
  "JSON GENERATE record selection" "                 " 4
at_xfail=no
(
  $as_echo "1228. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:696" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:696"

# TO-DO: Add support for generating OCCURS items.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  a.
           03  b.
               05 c1 PIC X(3) VALUE "abc".
               05 c2 PIC 9(3) VALUE 0.
           03  d REDEFINES b.
               05  e PIC X(6).
           03  f PIC X OCCURS 3 VALUE "f".

       66  h RENAMES c1 THRU c2.

       01  out PIC X(60).

       PROCEDURE DIVISION.
           *> JSON GENERATE out FROM a
           *> IF out <> '<a><b><c1>abc</c1><c2>0</c2></b><f>f</f><f>f</f>'-
           *>          '<f>f</f></a>'
           *>    DISPLAY "Failed 1: " FUNCTION TRIM (out)
           *> END-IF

           JSON GENERATE out FROM d
           IF out <> '{"d":{"e":"abc000"}}'
               DISPLAY "Failed 2: " FUNCTION TRIM (out)
           END-IF
           .
       END PROGRAM prog.
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_ml.at:732: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:732"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:732"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:733: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:733"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:733"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1228
#AT_START_1229
at_fn_group_banner 1229 'run_ml.at:737' \
  "JSON GENERATE trimming" "                         " 4
at_xfail=no
(
  $as_echo "1229. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:740" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:740"

# TO-DO: Add support for IBM/COBOL 2002 edited floating point (e.g. PIC 9(3)E+99).

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  str                     PIC X(3) VALUE "ab".
       01  num-edited              PIC 99.99 VALUE "01.00".
       01  leading-zeroes          PIC 9(5) VALUE 5.
       01  decimal-nums.
           03  decimal-num         PIC 99V999 PACKED-DECIMAL VALUE 0.12.
           03  decimal-num-2       PIC 99V9 VALUE 0.1.
       01  signed-decimal-num      PIC S999 COMP-X VALUE -1.
       01  comp-5-item             PIC 9(10) COMP-5 VALUE 5.
       01  index-item              INDEX.
       01  float-short-item        FLOAT-SHORT VALUE 100.
       01  float-long-item         FLOAT-LONG VALUE 123.0E-10.
       01  just-item               PIC X(10) JUST.
       01  integer-with-p          PIC 999PPP VALUE 10000.
       01  decimal-with-p          PIC VPP99 VALUE 0.0004.

       01  out                     PIC X(300).

       PROCEDURE DIVISION.
           JSON GENERATE out FROM str
           IF out <> '{"str":"ab"}'
               DISPLAY "Failed 1: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM num-edited
           IF out <> '{"num-edited":"01.00"}'
               DISPLAY "Failed 2: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM leading-zeroes
           IF out <> '{"leading-zeroes":5}'
               DISPLAY "Failed 3: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM decimal-nums
           IF out <> '{"decimal-nums":{"decimal-num":0.120,'-
                     '"decimal-num-2":0.1}}'
               DISPLAY "Failed 4: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM signed-decimal-num
           IF out <> '{"signed-decimal-num":-1}'
               DISPLAY "Failed 5: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM comp-5-item
           IF out <> '{"comp-5-item":5}'
               DISPLAY "Failed 6: " FUNCTION TRIM (out)
           END-IF

           SET index-item TO 500
           JSON GENERATE out FROM index-item
           IF out <> '{"index-item":500}'
               DISPLAY "Failed 7: " FUNCTION TRIM (out)
           END-IF

           *> JSON GENERATE out FROM float-short-item
           *> IF out <> '{"float-short-item":1E+02}'
           *>     DISPLAY "Failed 8: " FUNCTION TRIM (out)
           *> END-IF

           *> JSON GENERATE out FROM float-long-item
           *> IF out <> '{"float-long-item":123E-10}'
           *>     DISPLAY "Failed 9: " FUNCTION TRIM (out)
           *> END-IF

           MOVE "blah " TO just-item
           JSON GENERATE out FROM just-item
           IF out <> '{"just-item":"blah "}'
               DISPLAY "Failed 10: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM integer-with-p
           IF out <> '{"integer-with-p":10000}'
               DISPLAY "Failed 11: " FUNCTION TRIM (out)
           END-IF

           JSON GENERATE out FROM decimal-with-p
           IF out <> '{"decimal-with-p":0.0004}'
               DISPLAY "Failed 12: " FUNCTION TRIM (out)
           END-IF
           .
_ATEOF

{ set +x
$as_echo "$at_srcdir/run_ml.at:832: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:832"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:832"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:833: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:833"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:833"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1229
#AT_START_1230
at_fn_group_banner 1230 'run_ml.at:837' \
  "JSON DPC-IN-DATA directive" "                     " 4
at_xfail=no
(
  $as_echo "1230. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:840" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:840"

cat >prog.cob <<'_ATEOF'

      $SET DPC-IN-DATA "JSON"
       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 9V9 VALUE 1,1.
       01  out PIC X(100).

       PROCEDURE DIVISION.
           JSON GENERATE out FROM num
           IF out <> '{"num":1,1}'
              DISPLAY "Failed: " FUNCTION TRIM (out).
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:863: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "run_ml.at:863"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:863"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:864: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:864"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:864"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1230
#AT_START_1231
at_fn_group_banner 1231 'run_ml.at:868' \
  "JSON dpc-in-data config option" "                 " 4
at_xfail=no
(
  $as_echo "1231. $at_setup_line: testing $at_desc ..."
  $at_traceon



$as_echo "run_ml.at:871" >"$at_check_line_file"
(test "$COB_HAS_JSON" = "no") \
  && at_fn_check_skip 77 "$at_srcdir/run_ml.at:871"

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       SPECIAL-NAMES.
           DECIMAL-POINT IS COMMA.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  num PIC 9V9 VALUE 1,1.
       01  out PIC X(100).

       PROCEDURE DIVISION.
           JSON GENERATE out FROM num
           DISPLAY FUNCTION TRIM(out)
           .
_ATEOF


{ set +x
$as_echo "$at_srcdir/run_ml.at:893: \$COMPILE -fdpc-in-data=none prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdpc-in-data=none prog.cob" "run_ml.at:893"
( $at_check_trace; $COMPILE -fdpc-in-data=none prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:893"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:894: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:894"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "{\"num\":1.1}
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:894"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:897: \$COMPILE -fdpc-in-data=xml prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fdpc-in-data=xml prog.cob" "run_ml.at:897"
( $at_check_trace; $COMPILE -fdpc-in-data=xml prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:897"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:898: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:898"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "{\"num\":1.1}
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:898"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:901: \$COMPILE  -fdpc-in-data=json prog.cob"
at_fn_check_prepare_dynamic "$COMPILE  -fdpc-in-data=json prog.cob" "run_ml.at:901"
( $at_check_trace; $COMPILE  -fdpc-in-data=json prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:901"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:902: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:902"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "{\"num\":1,1}
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:902"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:905: \$COMPILE  -fdpc-in-data=all prog.cob"
at_fn_check_prepare_dynamic "$COMPILE  -fdpc-in-data=all prog.cob" "run_ml.at:905"
( $at_check_trace; $COMPILE  -fdpc-in-data=all prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:905"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/run_ml.at:906: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "run_ml.at:906"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "{\"num\":1,1}
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/run_ml.at:906"
$at_failed && at_fn_log_failure
$at_traceon; }

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1231
#AT_START_1232
at_fn_group_banner 1232 'data_binary.at:23' \
  "BINARY: 2-4-8 big-endian" "                       " 5
at_xfail=no
(
  $as_echo "1232. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 8; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:41: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-dump.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:41"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-dump.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:43: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_binary.at:43"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:44: \$COMPILE -fbinary-size=2-4-8 \\
                   -fbinary-byteorder=big-endian prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:44"
( $at_check_trace; $COMPILE -fbinary-size=2-4-8 \
                   -fbinary-byteorder=big-endian prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:44"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:46: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:46"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0001202020202020
000c202020202020
007b202020202020
04d2202020202020
0000303920202020
0001e24020202020
0012d68720202020
00bc614e20202020
075bcd1520202020
00000000499602d2
00000002dfdc1c35
0000001cbe991a14
0000011f71fb04cb
00000b3a73ce2ff2
00007048860ddf79
000462d53c8abac0
002bdc545d6b4b87
01b69b4ba630f34e
ffff202020202020
fff4202020202020
ff85202020202020
fb2e202020202020
ffffcfc720202020
fffe1dc020202020
ffed297920202020
ff439eb220202020
f8a432eb20202020
ffffffffb669fd2e
fffffffd2023e3cb
ffffffe34166e5ec
fffffee08e04fb35
fffff4c58c31d00e
ffff8fb779f22087
fffb9d2ac3754540
ffd423aba294b479
fe4964b459cf0cb2
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:46"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:157: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:157"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:157"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:159: \$COMPILE -fbinary-size=2-4-8 \\
                   -fbinary-byteorder=big-endian prog.cob -o prog2"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:159"
( $at_check_trace; $COMPILE -fbinary-size=2-4-8 \
                   -fbinary-byteorder=big-endian prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:159"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:161: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_binary.at:161"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
-1
-12
-123
-1234
-12345
-123456
-1234567
-12345678
-123456789
-1234567890
-12345678901
-123456789012
-1234567890123
-12345678901234
-123456789012345
-1234567890123456
-12345678901234567
-123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:161"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1232
#AT_START_1233
at_fn_group_banner 1233 'data_binary.at:205' \
  "BINARY: 2-4-8 native" "                           " 5
at_xfail=no
(
  $as_echo "1233. $at_setup_line: testing $at_desc ..."
  $at_traceon



if test "x$COB_BIGENDIAN" = "xyes"; then
{ set +x
$as_echo "$at_srcdir/data_binary.at:209: true"
at_fn_check_prepare_trace "data_binary.at:209"
( $at_check_trace; true
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:209"
$at_failed && at_fn_log_failure
$at_traceon; }

else


cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 8; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:228: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-dump.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:228"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-dump.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:228"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:230: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_binary.at:230"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:230"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:231: \$COMPILE -fbinary-size=2-4-8 \\
                   -fbinary-byteorder=native  prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:231"
( $at_check_trace; $COMPILE -fbinary-size=2-4-8 \
                   -fbinary-byteorder=native  prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:231"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:233: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:233"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0100202020202020
0c00202020202020
7b00202020202020
d204202020202020
3930000020202020
40e2010020202020
87d6120020202020
4e61bc0020202020
15cd5b0720202020
d202964900000000
351cdcdf02000000
141a99be1c000000
cb04fb711f010000
f22fce733a0b0000
79df0d8648700000
c0ba8a3cd5620400
874b6b5d54dc2b00
4ef330a64b9bb601
ffff202020202020
f4ff202020202020
85ff202020202020
2efb202020202020
c7cfffff20202020
c01dfeff20202020
7929edff20202020
b29e43ff20202020
eb32a4f820202020
2efd69b6ffffffff
cbe32320fdffffff
ece56641e3ffffff
35fb048ee0feffff
0ed0318cc5f4ffff
8720f279b78fffff
404575c32a9dfbff
79b494a2ab23d4ff
b20ccf59b46449fe
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000202020202020
0000202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:233"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:344: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:344"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:344"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:346: \$COMPILE -fbinary-size=2-4-8 \\
                   -fbinary-byteorder=native prog.cob -o prog2"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:346"
( $at_check_trace; $COMPILE -fbinary-size=2-4-8 \
                   -fbinary-byteorder=native prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:346"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:348: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_binary.at:348"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
-1
-12
-123
-1234
-12345
-123456
-1234567
-12345678
-123456789
-1234567890
-12345678901
-123456789012
-1234567890123
-12345678901234
-123456789012345
-1234567890123456
-12345678901234567
-123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:348"
$at_failed && at_fn_log_failure
$at_traceon; }

fi

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1233
#AT_START_1234
at_fn_group_banner 1234 'data_binary.at:393' \
  "BINARY: 1-2-4-8 big-endian" "                     " 5
at_xfail=no
(
  $as_echo "1234. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 8; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:411: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-dump.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:411"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-dump.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:411"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:413: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_binary.at:413"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:413"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:414: \$COMPILE -fbinary-size=1-2-4-8 \\
                   -fbinary-byteorder=big-endian prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:414"
( $at_check_trace; $COMPILE -fbinary-size=1-2-4-8 \
                   -fbinary-byteorder=big-endian prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:414"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:416: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:416"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0120202020202020
0c20202020202020
007b202020202020
04d2202020202020
0000303920202020
0001e24020202020
0012d68720202020
00bc614e20202020
075bcd1520202020
00000000499602d2
00000002dfdc1c35
0000001cbe991a14
0000011f71fb04cb
00000b3a73ce2ff2
00007048860ddf79
000462d53c8abac0
002bdc545d6b4b87
01b69b4ba630f34e
ff20202020202020
f420202020202020
ff85202020202020
fb2e202020202020
ffffcfc720202020
fffe1dc020202020
ffed297920202020
ff439eb220202020
f8a432eb20202020
ffffffffb669fd2e
fffffffd2023e3cb
ffffffe34166e5ec
fffffee08e04fb35
fffff4c58c31d00e
ffff8fb779f22087
fffb9d2ac3754540
ffd423aba294b479
fe4964b459cf0cb2
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:416"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:527: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:527"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:527"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:529: \$COMPILE -fbinary-size=1-2-4-8 \\
                   -fbinary-byteorder=big-endian prog.cob -o prog2"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:529"
( $at_check_trace; $COMPILE -fbinary-size=1-2-4-8 \
                   -fbinary-byteorder=big-endian prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:529"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:531: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_binary.at:531"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
-1
-12
-123
-1234
-12345
-123456
-1234567
-12345678
-123456789
-1234567890
-12345678901
-123456789012
-1234567890123
-12345678901234
-123456789012345
-1234567890123456
-12345678901234567
-123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:531"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1234
#AT_START_1235
at_fn_group_banner 1235 'data_binary.at:575' \
  "BINARY: 1-2-4-8 native" "                         " 5
at_xfail=no
(
  $as_echo "1235. $at_setup_line: testing $at_desc ..."
  $at_traceon



if test "x$COB_BIGENDIAN" = "xyes"; then
{ set +x
$as_echo "$at_srcdir/data_binary.at:579: true"
at_fn_check_prepare_trace "data_binary.at:579"
( $at_check_trace; true
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:579"
$at_failed && at_fn_log_failure
$at_traceon; }

else

cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 8; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:597: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-dump.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:597"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-dump.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:597"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:599: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_binary.at:599"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:599"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:600: \$COMPILE -fbinary-size=1-2-4-8 \\
                   -fbinary-byteorder=native prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:600"
( $at_check_trace; $COMPILE -fbinary-size=1-2-4-8 \
                   -fbinary-byteorder=native prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:600"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:602: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:602"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0120202020202020
0c20202020202020
7b00202020202020
d204202020202020
3930000020202020
40e2010020202020
87d6120020202020
4e61bc0020202020
15cd5b0720202020
d202964900000000
351cdcdf02000000
141a99be1c000000
cb04fb711f010000
f22fce733a0b0000
79df0d8648700000
c0ba8a3cd5620400
874b6b5d54dc2b00
4ef330a64b9bb601
ff20202020202020
f420202020202020
85ff202020202020
2efb202020202020
c7cfffff20202020
c01dfeff20202020
7929edff20202020
b29e43ff20202020
eb32a4f820202020
2efd69b6ffffffff
cbe32320fdffffff
ece56641e3ffffff
35fb048ee0feffff
0ed0318cc5f4ffff
8720f279b78fffff
404575c32a9dfbff
79b494a2ab23d4ff
b20ccf59b46449fe
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000020202020
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:602"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:713: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:713"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:713"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:715: \$COMPILE -fbinary-size=1-2-4-8 \\
                   -fbinary-byteorder=native prog.cob -o prog2"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:715"
( $at_check_trace; $COMPILE -fbinary-size=1-2-4-8 \
                   -fbinary-byteorder=native prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:715"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:717: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_binary.at:717"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
-1
-12
-123
-1234
-12345
-123456
-1234567
-12345678
-123456789
-1234567890
-12345678901
-123456789012
-1234567890123
-12345678901234
-123456789012345
-1234567890123456
-12345678901234567
-123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:717"
$at_failed && at_fn_log_failure
$at_traceon; }


fi

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1235
#AT_START_1236
at_fn_group_banner 1236 'data_binary.at:763' \
  "BINARY: 1--8 big-endian" "                        " 5
at_xfail=no
(
  $as_echo "1236. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 8; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:781: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-dump.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:781"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-dump.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:781"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:783: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_binary.at:783"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:783"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:784: \$COMPILE -fbinary-size=1--8 \\
                   -fbinary-byteorder=big-endian prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:784"
( $at_check_trace; $COMPILE -fbinary-size=1--8 \
                   -fbinary-byteorder=big-endian prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:784"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:786: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:786"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0120202020202020
0c20202020202020
007b202020202020
04d2202020202020
0030392020202020
01e2402020202020
12d6872020202020
00bc614e20202020
075bcd1520202020
00499602d2202020
02dfdc1c35202020
1cbe991a14202020
011f71fb04cb2020
0b3a73ce2ff22020
007048860ddf7920
0462d53c8abac020
002bdc545d6b4b87
01b69b4ba630f34e
ff20202020202020
f420202020202020
ff85202020202020
fb2e202020202020
ffcfc72020202020
fe1dc02020202020
ffed297920202020
ff439eb220202020
f8a432eb20202020
ffb669fd2e202020
fd2023e3cb202020
ffe34166e5ec2020
fee08e04fb352020
f4c58c31d00e2020
ff8fb779f2208720
fb9d2ac375454020
ffd423aba294b479
fe4964b459cf0cb2
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:786"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:897: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:897"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:897"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:899: \$COMPILE -fbinary-size=1--8 \\
                   -fbinary-byteorder=big-endian prog.cob -o prog2"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:899"
( $at_check_trace; $COMPILE -fbinary-size=1--8 \
                   -fbinary-byteorder=big-endian prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:899"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:901: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_binary.at:901"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
-1
-12
-123
-1234
-12345
-123456
-1234567
-12345678
-123456789
-1234567890
-12345678901
-123456789012
-1234567890123
-12345678901234
-123456789012345
-1234567890123456
-12345678901234567
-123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:901"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1236
#AT_START_1237
at_fn_group_banner 1237 'data_binary.at:945' \
  "BINARY: 1--8 native" "                            " 5
at_xfail=no
(
  $as_echo "1237. $at_setup_line: testing $at_desc ..."
  $at_traceon



if test "x$COB_BIGENDIAN" = "xyes"; then
{ set +x
$as_echo "$at_srcdir/data_binary.at:949: true"
at_fn_check_prepare_trace "data_binary.at:949"
( $at_check_trace; true
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:949"
$at_failed && at_fn_log_failure
$at_traceon; }

else

cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 8; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:967: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-dump.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:967"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-dump.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:967"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:969: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_binary.at:969"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:969"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:970: \$COMPILE -fbinary-size=1--8 \\
                   -fbinary-byteorder=native prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:970"
( $at_check_trace; $COMPILE -fbinary-size=1--8 \
                   -fbinary-byteorder=native prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:970"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:972: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:972"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0120202020202020
0c20202020202020
7b00202020202020
d204202020202020
3930002020202020
40e2012020202020
87d6122020202020
4e61bc0020202020
15cd5b0720202020
d202964900202020
351cdcdf02202020
141a99be1c202020
cb04fb711f012020
f22fce733a0b2020
79df0d8648700020
c0ba8a3cd5620420
874b6b5d54dc2b00
4ef330a64b9bb601
ff20202020202020
f420202020202020
85ff202020202020
2efb202020202020
c7cfff2020202020
c01dfe2020202020
7929edff20202020
b29e43ff20202020
eb32a4f820202020
2efd69b6ff202020
cbe32320fd202020
ece56641e3ff2020
35fb048ee0fe2020
0ed0318cc5f42020
8720f279b78fff20
404575c32a9dfb20
79b494a2ab23d4ff
b20ccf59b46449fe
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
0020202020202020
0020202020202020
0000202020202020
0000202020202020
0000002020202020
0000002020202020
0000000020202020
0000000020202020
0000000020202020
0000000000202020
0000000000202020
0000000000002020
0000000000002020
0000000000002020
0000000000000020
0000000000000020
0000000000000000
0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:972"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:1083: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:1083"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1083"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:1085: \$COMPILE -fbinary-size=1--8 \\
                   -fbinary-byteorder=native prog.cob -o prog2"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:1085"
( $at_check_trace; $COMPILE -fbinary-size=1--8 \
                   -fbinary-byteorder=native prog.cob -o prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1085"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1087: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_binary.at:1087"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1
12
123
1234
12345
123456
1234567
12345678
123456789
1234567890
12345678901
123456789012
1234567890123
12345678901234
123456789012345
1234567890123456
12345678901234567
123456789012345678
-1
-12
-123
-1234
-12345
-123456
-1234567
-12345678
-123456789
-1234567890
-12345678901
-123456789012
-1234567890123
-12345678901234
-123456789012345
-1234567890123456
-12345678901234567
-123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1087"
$at_failed && at_fn_log_failure
$at_traceon; }


fi

  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1237
#AT_START_1238
at_fn_group_banner 1238 'data_binary.at:1133' \
  "BINARY: full-print" "                             " 5
at_xfail=no
(
  $as_echo "1238. $at_setup_line: testing $at_desc ..."
  $at_traceon




{ set +x
$as_echo "$at_srcdir/data_binary.at:1137: sed -e 's/@USAGE@/BINARY/' \"\${TEMPLATE}/numeric-display.cob\" > prog.cob"
at_fn_check_prepare_notrace 'a ${...} parameter expansion' "data_binary.at:1137"
( $at_check_trace; sed -e 's/@USAGE@/BINARY/' "${TEMPLATE}/numeric-display.cob" > prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1137"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:1139: \$COMPILE -fbinary-size=1--8 \\
                   -fno-pretty-display prog.cob"
at_fn_check_prepare_notrace 'an embedded newline' "data_binary.at:1139"
( $at_check_trace; $COMPILE -fbinary-size=1--8 \
                   -fno-pretty-display prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1139"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1141: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1141"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "001
012
00123
01234
00012345
00123456
01234567
0012345678
0123456789
0001234567890
0012345678901
0123456789012
001234567890123
012345678901234
00123456789012345
01234567890123456
00012345678901234567
00123456789012345678
-001
-012
-00123
-01234
-00012345
-00123456
-0001234567
-0012345678
-0123456789
-0001234567890
-0012345678901
-000123456789012
-001234567890123
-012345678901234
-00123456789012345
-01234567890123456
-00012345678901234567
-00123456789012345678
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1141"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1238
#AT_START_1239
at_fn_group_banner 1239 'data_binary.at:1185' \
  "BINARY: 64bit unsigned compare" "                 " 5
at_xfail=no
(
  $as_echo "1239. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 BDU-1         USAGE BINARY-DOUBLE UNSIGNED.
       01 BDU-2         USAGE BINARY-DOUBLE UNSIGNED.
       PROCEDURE        DIVISION.
           MOVE 18446744073709551615 TO BDU-1 BDU-2
           IF BDU-1 NOT EQUAL BDU-2 THEN
              DISPLAY "FAIL".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1202: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:1202"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1202"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1203: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1203"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1203"
$at_failed && at_fn_log_failure
$at_traceon; }


# also check "not optimized during codegen",
# which leads to other code-paths
{ set +x
$as_echo "$at_srcdir/data_binary.at:1207: \$COMPILE -fno-fast-compare -C -o progalt.c prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare -C -o progalt.c prog.cob" "data_binary.at:1207"
( $at_check_trace; $COMPILE -fno-fast-compare -C -o progalt.c prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1207"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1208: \$COMPILE progalt.c"
at_fn_check_prepare_dynamic "$COMPILE progalt.c" "data_binary.at:1208"
( $at_check_trace; $COMPILE progalt.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1208"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1209: \$COBCRUN_DIRECT ./progalt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progalt" "data_binary.at:1209"
( $at_check_trace; $COBCRUN_DIRECT ./progalt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1209"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1239
#AT_START_1240
at_fn_group_banner 1240 'data_binary.at:1215' \
  "BINARY: 64bit unsigned arithmetic notrunc" "      " 5
at_xfail=no
(
  $as_echo "1240. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 WORK-UDWORD-1 PIC 9(18) COMP.
       PROCEDURE        DIVISION.
           MOVE 18446744073709551615 TO WORK-UDWORD-1.
           DISPLAY WORK-UDWORD-1.
           COMPUTE  WORK-UDWORD-1 = WORK-UDWORD-1 / 2.
           DISPLAY WORK-UDWORD-1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1232: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "data_binary.at:1232"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1232"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1233: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1233"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "18446744073709551615
09223372036854775807
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1233"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1240
#AT_START_1241
at_fn_group_banner 1241 'data_binary.at:1242' \
  "BINARY: 64bit signed negative constant range" "   " 5
at_xfail=no
(
  $as_echo "1241. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 WORK-DWORD-1  PIC S9(18) COMP-5 VALUE -9223372036854775808.
       PROCEDURE        DIVISION.
           DISPLAY WORK-DWORD-1 WITH NO ADVANCING.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1256: \$COMPILE -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fnotrunc prog.cob" "data_binary.at:1256"
( $at_check_trace; $COMPILE -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1256"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1257: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1257"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "-09223372036854775808" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1257"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1241
#AT_START_1242
at_fn_group_banner 1242 'data_binary.at:1262' \
  "COMP-4 Truncate" "                                " 5
at_xfail=no
(
  $as_echo "1242. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  RANDOM-ORIGIN-B                     PIC 9V99 COMP-4.
       01  RANDOM-TARGET-B                     PIC V99  COMP-4.
       01  RANDOM-ORIGIN-D                     PIC 9V99 DISPLAY.
       01  RANDOM-TARGET-D                     PIC V99  DISPLAY.

       PROCEDURE DIVISION.
           MOVE 0.12            TO RANDOM-ORIGIN-D
           MOVE RANDOM-ORIGIN-D TO RANDOM-TARGET-D
           MOVE 0.12            TO RANDOM-ORIGIN-B
           MOVE RANDOM-ORIGIN-B TO RANDOM-TARGET-B
           IF RANDOM-ORIGIN-D <> RANDOM-ORIGIN-B
             DISPLAY "ORIGIN 0.12 WRONG"
             DISPLAY "DISPLAY: " RANDOM-ORIGIN-D
                " !=  BINARY : " RANDOM-ORIGIN-B
           END-IF.
           IF RANDOM-TARGET-D <> RANDOM-TARGET-B
             DISPLAY "TARGET  .12 WRONG"
             DISPLAY "DISPLAY: " RANDOM-TARGET-D
                " !=  BINARY : " RANDOM-TARGET-B
           ELSE
             DISPLAY "Ok with " RANDOM-TARGET-D " == " RANDOM-TARGET-B
           END-IF.

           MOVE 9.85            TO RANDOM-ORIGIN-D
           MOVE RANDOM-ORIGIN-D TO RANDOM-TARGET-D
           MOVE 9.85            TO RANDOM-ORIGIN-B
           MOVE RANDOM-ORIGIN-B TO RANDOM-TARGET-B
           IF RANDOM-ORIGIN-D <> RANDOM-ORIGIN-B
             DISPLAY "ORIGIN 9.85 WRONG"
             DISPLAY "DISPLAY: " RANDOM-ORIGIN-D
                " !=  BINARY : " RANDOM-ORIGIN-B
           END-IF.
           IF RANDOM-TARGET-D <> RANDOM-TARGET-B
             DISPLAY "TARGET  .85 WRONG"
             DISPLAY "DISPLAY: " RANDOM-TARGET-D
                " !=  BINARY : " RANDOM-TARGET-B
           ELSE
             DISPLAY "Ok with " RANDOM-TARGET-D " == " RANDOM-TARGET-B
           END-IF.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1313: \$COMPILE -w prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w prog.cob" "data_binary.at:1313"
( $at_check_trace; $COMPILE -w prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1313"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:1315: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1315"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Ok with .12 == .12
Ok with .85 == .85
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1315"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1242
#AT_START_1243
at_fn_group_banner 1243 'data_binary.at:1323' \
  "COMP-4 No Truncate" "                             " 5
at_xfail=no
(
  $as_echo "1243. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. prog.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  RANDOM-ORIGIN-B                     PIC 9V99 COMP-4.
       01  RANDOM-TARGET-B                     PIC V99  COMP-4.
       01  RANDOM-ORIGIN-D                     PIC 9V99 DISPLAY.
       01  RANDOM-TARGET-D                     PIC V99  DISPLAY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==,
               ==END-DISPLAY== BY ==END-DISPLAY END-IF==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 30000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           MOVE 0.12            TO RANDOM-ORIGIN-D
           MOVE RANDOM-ORIGIN-D TO RANDOM-TARGET-D
           MOVE 0.12            TO RANDOM-ORIGIN-B
           MOVE RANDOM-ORIGIN-B TO RANDOM-TARGET-B
           IF RANDOM-ORIGIN-D <> RANDOM-ORIGIN-B
             DISPLAY "ORIGIN 0.12 WRONG"
             END-DISPLAY
             DISPLAY "DISPLAY: " RANDOM-ORIGIN-D
                " !=  BINARY : " RANDOM-ORIGIN-B
             END-DISPLAY
           END-IF.
           IF RANDOM-TARGET-D <> RANDOM-TARGET-B
             DISPLAY "TARGET  .12 WRONG"
             END-DISPLAY
             DISPLAY "DISPLAY: " RANDOM-TARGET-D
                " !=  BINARY : " RANDOM-TARGET-B
             END-DISPLAY
           ELSE
             DISPLAY "Ok with " RANDOM-TARGET-D " == " RANDOM-TARGET-B
             END-DISPLAY
           END-IF.

           MOVE 9.85            TO RANDOM-ORIGIN-D
           MOVE RANDOM-ORIGIN-D TO RANDOM-TARGET-D
           MOVE 9.85            TO RANDOM-ORIGIN-B
           MOVE RANDOM-ORIGIN-B TO RANDOM-TARGET-B
           IF RANDOM-ORIGIN-D <> RANDOM-ORIGIN-B
             DISPLAY "ORIGIN 9.85 WRONG"
             END-DISPLAY
             DISPLAY "DISPLAY: " RANDOM-ORIGIN-D
                " !=  BINARY : " RANDOM-ORIGIN-B
             END-DISPLAY
           END-IF.
           IF RANDOM-TARGET-D <> RANDOM-TARGET-B
             DISPLAY "TARGET  .85 WRONG"
             END-DISPLAY
             DISPLAY "DISPLAY: " RANDOM-TARGET-D
                " !=  BINARY : " RANDOM-TARGET-B
             END-DISPLAY
           ELSE
             DISPLAY "Ok with " RANDOM-TARGET-D " == " RANDOM-TARGET-B
             END-DISPLAY
           END-IF.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1398: \$COMPILE -w -fnotrunc prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -w -fnotrunc prog.cob" "data_binary.at:1398"
( $at_check_trace; $COMPILE -w -fnotrunc prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1398"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_binary.at:1400: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1400"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "Ok with 12 == 012
TARGET  .85 WRONG
DISPLAY: 85 !=  BINARY : 217
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1400"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1243
#AT_START_1244
at_fn_group_banner 1244 'data_binary.at:1409' \
  "MOVE DISPLAY to BINARY" "                         " 5
at_xfail=no
(
  $as_echo "1244. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  D-S99V99     PIC S99V99 DISPLAY VALUE  1.23.
       01  D-N99V99     PIC S99V99 DISPLAY VALUE -1.32.
       01  D-9V99       PIC   9V99 DISPLAY VALUE  1.1.
       01  D-S99        PIC S99    DISPLAY VALUE  12.
       01  D-99         PIC  99    DISPLAY VALUE  2.
       01  D-P99        PIC P99    DISPLAY VALUE  0.02.
       01  D-9PP        PIC 9PP    DISPLAY VALUE  200.
       01  D-938        PIC 9(38)  DISPLAY VALUE
           12345678901234567890123456789012345678.
       01  P-S99V99     PIC S99V99 BINARY.
       01  P-99V9       PIC  99V9  BINARY.
       01  P-S999       PIC S999   BINARY.
       01  P-99         PIC  99    BINARY.
       01  P-P9         PIC  P9    BINARY.
       01  P-9P         PIC  9P    BINARY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE D-938 TO P-99
           IF P-99     NOT = 78
              DISPLAY "P-99: " P-99.

           MOVE D-S99V99 TO P-S99V99
           IF P-S99V99 NOT = 1.23
              DISPLAY "P-S99V99 1: " P-S99V99.
           MOVE D-N99V99 TO P-S99V99
           IF P-S99V99 NOT = -1.32
              DISPLAY "P-S99V99 2: " P-S99V99.
           MOVE D-9V99   TO P-S99V99
           IF P-S99V99 NOT = 1.1
              DISPLAY "P-S99V99 3: " P-S99V99.
           MOVE D-S99    TO P-S99V99
           IF P-S99V99 NOT = 12
              DISPLAY "P-S99V99 4: " P-S99V99.
           MOVE D-99     TO P-S99V99
           IF P-S99V99 NOT = 2
              DISPLAY "P-S99V99 5: " P-S99V99.
           MOVE D-P99    TO P-S99V99
           IF P-S99V99 NOT = 0.02
              DISPLAY "P-S99V99 6: " P-S99V99.
           MOVE D-9PP    TO P-S99V99
           IF P-S99V99 NOT = 0
              DISPLAY "P-S99V99 7: " P-S99V99.

           MOVE D-S99V99 TO P-99V9
           IF P-99V9  NOT = 1.2
              DISPLAY "P-99V99  1: " P-99V9  .
           MOVE D-N99V99 TO P-99V9
           IF P-99V9  NOT = 1.3
              DISPLAY "P-99V99  2: " P-99V9  .
           MOVE D-9V99   TO P-99V9
           IF P-99V9  NOT = 1.1
              DISPLAY "P-99V99  3: " P-99V9  .
           MOVE D-S99    TO P-99V9
           IF P-99V9  NOT = 12
              DISPLAY "P-99V99  4: " P-99V9  .
           MOVE D-99     TO P-99V9
           IF P-99V9  NOT = 2
              DISPLAY "P-99V99  5: " P-99V9  .
           MOVE D-P99    TO P-99V9
           IF P-99V9  NOT = 0
              DISPLAY "P-99V99  6: " P-99V9  .
           MOVE D-9PP    TO P-99V9
           IF P-99V9  NOT = 0
              DISPLAY "P-99V99  7: " P-99V9  .

           MOVE D-S99V99 TO P-S999
           IF P-S999   NOT = 1
              DISPLAY "P-S999   1: " P-S999  .
           MOVE D-N99V99 TO P-S999
           IF P-S999   NOT = -1
              DISPLAY "P-S999   2: " P-S999  .
           MOVE D-9V99   TO P-S999
           IF P-S999   NOT = 1
              DISPLAY "P-S999   3: " P-S999  .
           MOVE D-S99    TO P-S999
           IF P-S999   NOT = 12
              DISPLAY "P-S999   4: " P-S999  .
           MOVE D-99     TO P-S999
           IF P-S999   NOT = 2
              DISPLAY "P-S999   5: " P-S999  .
           MOVE D-P99    TO P-S999
           IF P-S999   NOT = 0
              DISPLAY "P-S999   6: " P-S999  .
           MOVE D-9PP    TO P-S999
           IF P-S999   NOT = 200
              DISPLAY "P-S999   7: " P-S999  .

           MOVE D-S99V99 TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     1: " P-99    .
           MOVE D-N99V99 TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     2: " P-99    .
           MOVE D-9V99   TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     3: " P-99    .
           MOVE D-S99    TO P-99
           IF P-99     NOT = 12
              DISPLAY "P-99     4: " P-99    .
           MOVE D-99     TO P-99
           IF P-99     NOT = 2
              DISPLAY "P-99     5: " P-99    .
           MOVE D-P99    TO P-99
           IF P-99     NOT = 0
              DISPLAY "P-99     6: " P-99    .
           MOVE D-9PP    TO P-99
           IF P-99     NOT = 0
              DISPLAY "P-99     7: " P-99    .

           MOVE D-S99V99 TO P-P9
           IF P-P9     NOT = 0.03
              DISPLAY "P-P9     1: " P-P9    .
           MOVE D-N99V99 TO P-P9
           IF P-P9     NOT = 0.02
              DISPLAY "P-P9     2: " P-P9    .
           MOVE D-9V99   TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     3: " P-P9    .
           MOVE D-S99    TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     4: " P-P9    .
           MOVE D-99     TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     5: " P-P9    .
           MOVE D-P99    TO P-P9
           IF P-P9     NOT = 0.02
              DISPLAY "P-P9     6: " P-P9    .
           MOVE D-9PP    TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     7: " P-P9    .

           MOVE D-S99V99 TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     1: " P-9P    .
           MOVE D-N99V99 TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     2: " P-9P    .
           MOVE D-9V99   TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     3: " P-9P    .
           MOVE D-S99    TO P-9P
           IF P-9P     NOT = 10
              DISPLAY "P-9P     4: " P-9P    .
           MOVE D-99     TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     5: " P-9P    .
           MOVE D-P99    TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     6: " P-9P    .
           MOVE D-9PP    TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     7: " P-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1589: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:1589"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1589"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1590: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1590"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1590"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1244
#AT_START_1245
at_fn_group_banner 1245 'data_binary.at:1595' \
  "MOVE PACKED-DECIMAL to BINARY" "                  " 5
at_xfail=no
(
  $as_echo "1245. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  P-S99V99     PIC S99V99 PACKED-DECIMAL VALUE  1.23.
       01  P-N99V99     PIC S99V99 PACKED-DECIMAL VALUE -1.32.
       01  P-9V99       PIC   9V99 PACKED-DECIMAL VALUE  1.1.
       01  P-S99        PIC S99    PACKED-DECIMAL VALUE  12.
       01  P-99         PIC  99    PACKED-DECIMAL VALUE  2.
       01  P-P99        PIC P99    PACKED-DECIMAL VALUE  0.02.
       01  P-9PP        PIC 9PP    PACKED-DECIMAL VALUE  200.
       01  P-938        PIC 9(38)  PACKED-DECIMAL VALUE
           12345678901234567890123456789012345678.
       01  B-S99V99     PIC S99V99 BINARY.
       01  B-99V9       PIC  99V9  BINARY.
       01  B-S999       PIC S999   BINARY.
       01  B-99         PIC  99    BINARY.
       01  B-P9         PIC  P9    BINARY.
       01  B-9P         PIC  9P    BINARY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE P-938 TO B-99
           IF B-99     NOT = 78
              DISPLAY "B-99: " B-99.

           MOVE P-S99V99 TO B-S99V99
           IF B-S99V99 NOT = 1.23
              DISPLAY "B-S99V99 1: " B-S99V99.
           MOVE P-N99V99 TO B-S99V99
           IF B-S99V99 NOT = -1.32
              DISPLAY "B-S99V99 2: " B-S99V99.
           MOVE P-9V99   TO B-S99V99
           IF B-S99V99 NOT = 1.1
              DISPLAY "B-S99V99 3: " B-S99V99.
           MOVE P-S99    TO B-S99V99
           IF B-S99V99 NOT = 12
              DISPLAY "B-S99V99 4: " B-S99V99.
           MOVE P-99     TO B-S99V99
           IF B-S99V99 NOT = 2
              DISPLAY "B-S99V99 5: " B-S99V99.
           MOVE P-P99    TO B-S99V99
           IF B-S99V99 NOT = 0.02
              DISPLAY "B-S99V99 6: " B-S99V99.
           MOVE P-9PP    TO B-S99V99
           IF B-S99V99 NOT = 0
              DISPLAY "B-S99V99 7: " B-S99V99.

           MOVE P-S99V99 TO B-99V9
           IF B-99V9  NOT = 1.2
              DISPLAY "B-99V99  1: " B-99V9  .
           MOVE P-N99V99 TO B-99V9
           IF B-99V9  NOT = 1.3
              DISPLAY "B-99V99  2: " B-99V9  .
           MOVE P-9V99   TO B-99V9
           IF B-99V9  NOT = 1.1
              DISPLAY "B-99V99  3: " B-99V9  .
           MOVE P-S99    TO B-99V9
           IF B-99V9  NOT = 12
              DISPLAY "B-99V99  4: " B-99V9  .
           MOVE P-99     TO B-99V9
           IF B-99V9  NOT = 2
              DISPLAY "B-99V99  5: " B-99V9  .
           MOVE P-P99    TO B-99V9
           IF B-99V9  NOT = 0
              DISPLAY "B-99V99  6: " B-99V9  .
           MOVE P-9PP    TO B-99V9
           IF B-99V9  NOT = 0
              DISPLAY "B-99V99  7: " B-99V9  .

           MOVE P-S99V99 TO B-S999
           IF B-S999   NOT = 1
              DISPLAY "B-S999   1: " B-S999  .
           MOVE P-N99V99 TO B-S999
           IF B-S999   NOT = -1
              DISPLAY "B-S999   2: " B-S999  .
           MOVE P-9V99   TO B-S999
           IF B-S999   NOT = 1
              DISPLAY "B-S999   3: " B-S999  .
           MOVE P-S99    TO B-S999
           IF B-S999   NOT = 12
              DISPLAY "B-S999   4: " B-S999  .
           MOVE P-99     TO B-S999
           IF B-S999   NOT = 2
              DISPLAY "B-S999   5: " B-S999  .
           MOVE P-P99    TO B-S999
           IF B-S999   NOT = 0
              DISPLAY "B-S999   6: " B-S999  .
           MOVE P-9PP    TO B-S999
           IF B-S999   NOT = 200
              DISPLAY "B-S999   7: " B-S999  .

           MOVE P-S99V99 TO B-99
           IF B-99     NOT = 1
              DISPLAY "B-99     1: " B-99    .
           MOVE P-N99V99 TO B-99
           IF B-99     NOT = 1
              DISPLAY "B-99     2: " B-99    .
           MOVE P-9V99   TO B-99
           IF B-99     NOT = 1
              DISPLAY "B-99     3: " B-99    .
           MOVE P-S99    TO B-99
           IF B-99     NOT = 12
              DISPLAY "B-99     4: " B-99    .
           MOVE P-99     TO B-99
           IF B-99     NOT = 2
              DISPLAY "B-99     5: " B-99    .
           MOVE P-P99    TO B-99
           IF B-99     NOT = 0
              DISPLAY "B-99     6: " B-99    .
           MOVE P-9PP    TO B-99
           IF B-99     NOT = 0
              DISPLAY "B-99     7: " B-99    .

           MOVE P-S99V99 TO B-P9
           IF B-P9     NOT = 0.03
              DISPLAY "B-P9     1: " B-P9    .
           MOVE P-N99V99 TO B-P9
           IF B-P9     NOT = 0.02
              DISPLAY "B-P9     2: " B-P9    .
           MOVE P-9V99   TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     3: " B-P9    .
           MOVE P-S99    TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     4: " B-P9    .
           MOVE P-99     TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     5: " B-P9    .
           MOVE P-P99    TO B-P9
           IF B-P9     NOT = 0.02
              DISPLAY "B-P9     6: " B-P9    .
           MOVE P-9PP    TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     7: " B-P9    .

           MOVE P-S99V99 TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     1: " B-9P    .
           MOVE P-N99V99 TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     2: " B-9P    .
           MOVE P-9V99   TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     3: " B-9P    .
           MOVE P-S99    TO B-9P
           IF B-9P     NOT = 10
              DISPLAY "B-9P     4: " B-9P    .
           MOVE P-99     TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     5: " B-9P    .
           MOVE P-P99    TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     6: " B-9P    .
           MOVE P-9PP    TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     7: " B-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1775: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:1775"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1775"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1776: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1776"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1776"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1245
#AT_START_1246
at_fn_group_banner 1246 'data_binary.at:1781' \
  "MOVE BINARY to PACKED-DECIMAL" "                  " 5
at_xfail=no
(
  $as_echo "1246. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  B-S99V99     PIC S99V99 BINARY VALUE  1.23.
       01  B-N99V99     PIC S99V99 BINARY VALUE -1.32.
       01  B-9V99       PIC   9V99 BINARY VALUE  1.1.
       01  B-S99        PIC S99    BINARY VALUE  12.
       01  B-99         PIC  99    BINARY VALUE  2.
       01  B-P99        PIC P99    BINARY VALUE  0.02.
       01  B-9PP        PIC 9PP    BINARY VALUE  200.
       01  P-S99V99     PIC S99V99 PACKED-DECIMAL.
       01  P-99V9       PIC  99V9  PACKED-DECIMAL.
       01  P-S999       PIC S999   PACKED-DECIMAL.
       01  P-99         PIC  99    PACKED-DECIMAL.
       01  P-P9         PIC  P9    PACKED-DECIMAL.
       01  P-9P         PIC  9P    PACKED-DECIMAL.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE B-S99V99 TO P-S99V99
           IF P-S99V99 NOT = 1.23
              DISPLAY "P-S99V99 1: " P-S99V99.
           MOVE B-N99V99 TO P-S99V99
           IF P-S99V99 NOT = -1.32
              DISPLAY "P-S99V99 2: " P-S99V99.
           MOVE B-9V99   TO P-S99V99
           IF P-S99V99 NOT = 1.1
              DISPLAY "P-S99V99 3: " P-S99V99.
           MOVE B-S99    TO P-S99V99
           IF P-S99V99 NOT = 12
              DISPLAY "P-S99V99 4: " P-S99V99.
           MOVE B-99     TO P-S99V99
           IF P-S99V99 NOT = 2
              DISPLAY "P-S99V99 5: " P-S99V99.
           MOVE B-P99    TO P-S99V99
           IF P-S99V99 NOT = 0.02
              DISPLAY "P-S99V99 6: " P-S99V99.
           MOVE B-9PP    TO P-S99V99
           IF P-S99V99 NOT = 0
              DISPLAY "P-S99V99 7: " P-S99V99.

           MOVE B-S99V99 TO P-99V9
           IF P-99V9  NOT = 1.2
              DISPLAY "P-99V9   1: " P-99V9  .
           MOVE B-N99V99 TO P-99V9
           IF P-99V9  NOT = 1.3
              DISPLAY "P-99V9   2: " P-99V9  .
           MOVE B-9V99   TO P-99V9
           IF P-99V9  NOT = 1.1
              DISPLAY "P-99V9   3: " P-99V9  .
           MOVE B-S99    TO P-99V9
           IF P-99V9  NOT = 12
              DISPLAY "P-99V9   4: " P-99V9  .
           MOVE B-99     TO P-99V9
           IF P-99V9  NOT = 2
              DISPLAY "P-99V9   5: " P-99V9  .
           MOVE B-P99    TO P-99V9
           IF P-99V9  NOT = 0
              DISPLAY "P-99V9   6: " P-99V9  .
           MOVE B-9PP    TO P-99V9
           IF P-99V9  NOT = 0
              DISPLAY "P-99V9   7: " P-99V9  .

           MOVE B-S99V99 TO P-S999
           IF P-S999   NOT = 1
              DISPLAY "P-S999   1: " P-S999  .
           MOVE B-N99V99 TO P-S999
           IF P-S999   NOT = -1
              DISPLAY "P-S999   2: " P-S999  .
           MOVE B-9V99   TO P-S999
           IF P-S999   NOT = 1
              DISPLAY "P-S999   3: " P-S999  .
           MOVE B-S99    TO P-S999
           IF P-S999   NOT = 12
              DISPLAY "P-S999   4: " P-S999  .
           MOVE B-99     TO P-S999
           IF P-S999   NOT = 2
              DISPLAY "P-S999   5: " P-S999  .
           MOVE B-P99    TO P-S999
           IF P-S999   NOT = 0
              DISPLAY "P-S999   6: " P-S999  .
           MOVE B-9PP    TO P-S999
           IF P-S999   NOT = 200
              DISPLAY "P-S999   7: " P-S999  .

           MOVE B-S99V99 TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     1: " P-99    .
           MOVE B-N99V99 TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     2: " P-99    .
           MOVE B-9V99   TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     3: " P-99    .
           MOVE B-S99    TO P-99
           IF P-99     NOT = 12
              DISPLAY "P-99     4: " P-99    .
           MOVE B-99     TO P-99
           IF P-99     NOT = 2
              DISPLAY "P-99     5: " P-99    .
           MOVE B-P99    TO P-99
           IF P-99     NOT = 0
              DISPLAY "P-99     6: " P-99    .
           MOVE B-9PP    TO P-99
           IF P-99     NOT = 0
              DISPLAY "P-99     7: " P-99    .

           MOVE B-S99V99 TO P-P9
           IF P-P9     NOT = 0.03
              DISPLAY "P-P9     1: " P-P9    .
           MOVE B-N99V99 TO P-P9
           IF P-P9     NOT = 0.02
              DISPLAY "P-P9     2: " P-P9    .
           MOVE B-9V99   TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     3: " P-P9    .
           MOVE B-S99    TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     4: " P-P9    .
           MOVE B-99     TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     5: " P-P9    .
           MOVE B-P99    TO P-P9
           IF P-P9     NOT = 0.02
              DISPLAY "P-P9     6: " P-P9    .
           MOVE B-9PP    TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     7: " P-P9    .

           MOVE B-S99V99 TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     1: " P-9P    .
           MOVE B-N99V99 TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     2: " P-9P    .
           MOVE B-9V99   TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     3: " P-9P    .
           MOVE B-S99    TO P-9P
           IF P-9P     NOT = 10
              DISPLAY "P-9P     4: " P-9P    .
           MOVE B-99     TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     5: " P-9P    .
           MOVE B-P99    TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     6: " P-9P    .
           MOVE B-9PP    TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     7: " P-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:1955: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:1955"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1955"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:1956: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:1956"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:1956"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1246
#AT_START_1247
at_fn_group_banner 1247 'data_binary.at:1961' \
  "MOVE BINARY to BINARY" "                          " 5
at_xfail=no
(
  $as_echo "1247. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_display.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  B-S99V99     PIC S99V99 BINARY VALUE  1.23.
       01  B-N99V99     PIC S99V99 BINARY VALUE -1.32.
       01  B-9V99       PIC   9V99 BINARY VALUE  1.1.
       01  B-S99        PIC S99    BINARY VALUE  12.
       01  B-99         PIC  99    BINARY VALUE  2.
       01  B-P99        PIC P99    BINARY VALUE  0.02.
       01  B-9PP        PIC 9PP    BINARY VALUE  200.
       01  C-S99V99     PIC S99V99 BINARY.
       01  C-99V9       PIC  99V9  BINARY.
       01  C-S999       PIC S999   BINARY.
       01  C-99         PIC  99    BINARY.
       01  C-P9         PIC  P9    BINARY.
       01  C-9P         PIC  9P    BINARY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE B-S99V99 TO C-S99V99
           IF C-S99V99 NOT = 1.23
              DISPLAY "C-S99V99 1: " C-S99V99.
           MOVE B-N99V99 TO C-S99V99
           IF C-S99V99 NOT = -1.32
              DISPLAY "C-S99V99 2: " C-S99V99.
           MOVE B-9V99   TO C-S99V99
           IF C-S99V99 NOT = 1.1
              DISPLAY "C-S99V99 3: " C-S99V99.
           MOVE B-S99    TO C-S99V99
           IF C-S99V99 NOT = 12
              DISPLAY "C-S99V99 4: " C-S99V99.
           MOVE B-99     TO C-S99V99
           IF C-S99V99 NOT = 2
              DISPLAY "C-S99V99 5: " C-S99V99.
           MOVE B-P99    TO C-S99V99
           IF C-S99V99 NOT = 0.02
              DISPLAY "C-S99V99 6: " C-S99V99.
           MOVE B-9PP    TO C-S99V99
           IF C-S99V99 NOT = 0
              DISPLAY "C-S99V99 7: " C-S99V99.

           MOVE B-S99V99 TO C-99V9
           IF C-99V9  NOT = 1.2
              DISPLAY "C-99V9   1: " C-99V9  .
           MOVE B-N99V99 TO C-99V9
           IF C-99V9  NOT = 1.3
              DISPLAY "C-99V9   2: " C-99V9  .
           MOVE B-9V99   TO C-99V9
           IF C-99V9  NOT = 1.1
              DISPLAY "C-99V9   3: " C-99V9  .
           MOVE B-S99    TO C-99V9
           IF C-99V9  NOT = 12
              DISPLAY "C-99V9   4: " C-99V9  .
           MOVE B-99     TO C-99V9
           IF C-99V9  NOT = 2
              DISPLAY "C-99V9   5: " C-99V9  .
           MOVE B-P99    TO C-99V9
           IF C-99V9  NOT = 0
              DISPLAY "C-99V9   6: " C-99V9  .
           MOVE B-9PP    TO C-99V9
           IF C-99V9  NOT = 0
              DISPLAY "C-99V9   7: " C-99V9  .

           MOVE B-S99V99 TO C-S999
           IF C-S999   NOT = 1
              DISPLAY "C-S999   1: " C-S999  .
           MOVE B-N99V99 TO C-S999
           IF C-S999   NOT = -1
              DISPLAY "C-S999   2: " C-S999  .
           MOVE B-9V99   TO C-S999
           IF C-S999   NOT = 1
              DISPLAY "C-S999   3: " C-S999  .
           MOVE B-S99    TO C-S999
           IF C-S999   NOT = 12
              DISPLAY "C-S999   4: " C-S999  .
           MOVE B-99     TO C-S999
           IF C-S999   NOT = 2
              DISPLAY "C-S999   5: " C-S999  .
           MOVE B-P99    TO C-S999
           IF C-S999   NOT = 0
              DISPLAY "C-S999   6: " C-S999  .
           MOVE B-9PP    TO C-S999
           IF C-S999   NOT = 200
              DISPLAY "C-S999   7: " C-S999  .

           MOVE B-S99V99 TO C-99
           IF C-99     NOT = 1
              DISPLAY "C-99     1: " C-99    .
           MOVE B-N99V99 TO C-99
           IF C-99     NOT = 1
              DISPLAY "C-99     2: " C-99    .
           MOVE B-9V99   TO C-99
           IF C-99     NOT = 1
              DISPLAY "C-99     3: " C-99    .
           MOVE B-S99    TO C-99
           IF C-99     NOT = 12
              DISPLAY "C-99     4: " C-99    .
           MOVE B-99     TO C-99
           IF C-99     NOT = 2
              DISPLAY "C-99     5: " C-99    .
           MOVE B-P99    TO C-99
           IF C-99     NOT = 0
              DISPLAY "C-99     6: " C-99    .
           MOVE B-9PP    TO C-99
           IF C-99     NOT = 0
              DISPLAY "C-99     7: " C-99    .

           MOVE B-S99V99 TO C-P9
           IF C-P9     NOT = 0.03
              DISPLAY "C-P9     1: " C-P9    .
           MOVE B-N99V99 TO C-P9
           IF C-P9     NOT = 0.02
              DISPLAY "C-P9     2: " C-P9    .
           MOVE B-9V99   TO C-P9
           IF C-P9     NOT = 0
              DISPLAY "C-P9     3: " C-P9    .
           MOVE B-S99    TO C-P9
           IF C-P9     NOT = 0
              DISPLAY "C-P9     4: " C-P9    .
           MOVE B-99     TO C-P9
           IF C-P9     NOT = 0
              DISPLAY "C-P9     5: " C-P9    .
           MOVE B-P99    TO C-P9
           IF C-P9     NOT = 0.02
              DISPLAY "C-P9     6: " C-P9    .
           MOVE B-9PP    TO C-P9
           IF C-P9     NOT = 0
              DISPLAY "C-P9     7: " C-P9    .

           MOVE B-S99V99 TO C-9P
           IF C-9P     NOT = 0
              DISPLAY "C-9P     1: " C-9P    .
           MOVE B-N99V99 TO C-9P
           IF C-9P     NOT = 0
              DISPLAY "C-9P     2: " C-9P    .
           MOVE B-9V99   TO C-9P
           IF C-9P     NOT = 0
              DISPLAY "C-9P     3: " C-9P    .
           MOVE B-S99    TO C-9P
           IF C-9P     NOT = 10
              DISPLAY "C-9P     4: " C-9P    .
           MOVE B-99     TO C-9P
           IF C-9P     NOT = 0
              DISPLAY "C-9P     5: " C-9P    .
           MOVE B-P99    TO C-9P
           IF C-9P     NOT = 0
              DISPLAY "C-9P     6: " C-9P    .
           MOVE B-9PP    TO C-9P
           IF C-9P     NOT = 0
              DISPLAY "C-9P     7: " C-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:2137: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:2137"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:2137"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:2138: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:2138"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:2138"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1247
#AT_START_1248
at_fn_group_banner 1248 'data_binary.at:2143' \
  "PPP COMP-5" "                                     " 5
at_xfail=no
(
  $as_echo "1248. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_display.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 XS.
         05 X-1  PIC 999PPP COMP-5  VALUE 91000.
         05 X-2  PIC 999PPP COMP-5  VALUE 92000.
         05 X-3  PIC X VALUE "$".
         05 X-4  PIC VPPP999 COMP-5 VALUE 0.000128.
       01 D-1    PIC 999PPP  COMP-5 VALUE 95000.
       01 D-2    PIC 9999PP  COMP-5 VALUE 193000.
       PROCEDURE        DIVISION.
           DISPLAY "INIT X-1 : " X-1 " .".
           DISPLAY "INIT X-2 : " X-2 " .".
           DISPLAY "INIT X-4 : " X-4 " .".
           DISPLAY "INIT D-1 : " D-1 " .".
           MOVE D-1 TO X-2 X-1
           MOVE X-2 TO D-1.
           DISPLAY "MOVE X-1 : " X-1 " .".
           DISPLAY "MOVE X-2 : " X-2 " .".
           MOVE 0.000256 TO X-4
           DISPLAY "MOVE X-4 : " X-4 " .".
           DISPLAY "MOVE D-1 : " D-1 " .".
           MOVE D-2 TO X-2 X-1
           DISPLAY "MOVE X-1 : " X-1 ":" D-2 " .".
           DISPLAY "MOVE X-2 : " X-2 ":" D-2 " .".
           MOVE 98000   TO X-1.
           IF X-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " X-1.
           MOVE 98000   TO D-1
           IF D-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " D-1.
           ADD 1000 TO X-1
           IF X-1 NOT = 99000
             DISPLAY "+ 1000 failed: " X-1.
           SUBTRACT 4000 FROM X-1.
           IF X-1 NOT = 95000
             DISPLAY "- 4000 failed: " X-1.
           DIVIDE 3 INTO X-1.
           IF X-1 NOT = 31000
             DISPLAY "/ 3 failed: " X-1.
           MULTIPLY 2 BY X-1 GIVING X-1.
           IF X-1 NOT = 62000
             DISPLAY "* 2 failed: " X-1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:2196: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:2196"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:2196"
$at_failed && at_fn_log_failure
$at_traceon; }


# CHECKME: currently the DISPLAYs all go to "real binary printing" and
# therefore no scale is printed at all; consider changing that and always
# pretty-print if requested by module
{ set +x
$as_echo "$at_srcdir/data_binary.at:2201: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:2201"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "INIT X-1 : 00091 .
INIT X-2 : 00092 .
INIT X-4 : 00128 .
INIT D-1 : 00095 .
MOVE X-1 : 00095 .
MOVE X-2 : 00095 .
MOVE X-4 : 00256 .
MOVE D-1 : 00095 .
MOVE X-1 : 00193:01930 .
MOVE X-2 : 00193:01930 .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:2201"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1248
#AT_START_1249
at_fn_group_banner 1249 'data_binary.at:2217' \
  "arithmetic truncation with USAGE BINARY" "        " 5
at_xfail=no
(
  $as_echo "1249. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_packed.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 RESULT        PIC 9(03) BINARY.
       PROCEDURE        DIVISION.
       MAIN.
      * internal arithmetic to DISPLAY
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 2 / RESULT
           IF RESULT NOT = 14
              DISPLAY "NOT 14: " RESULT.

      * internal arithmetic to DISPLAY, with sign drop
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 20 / RESULT
           IF RESULT NOT = 4
              DISPLAY "NOT - 4: " RESULT.

      * internal arithmetic to DISPLAY with truncation of decimal-part
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT / 2
           IF RESULT NOT = 15
              DISPLAY "NOT 15: " RESULT.

      * internal arithmetic to DISPLAY with truncation of integer-part
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 2000 / RESULT
           IF RESULT NOT = 984
              DISPLAY "NOT -1 984: " RESULT.

      * internal arithmetic to DISPLAY with truncation of integer-part
      * with leading zeros after truncation
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT + 2000 / RESULT
           IF RESULT NOT = 16
              DISPLAY "NOT +20 16: " RESULT.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_binary.at:2264: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_binary.at:2264"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:2264"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_binary.at:2265: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_binary.at:2265"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_binary.at:2265"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1249
#AT_START_1250
at_fn_group_banner 1250 'data_display.at:22' \
  "DISPLAY: Sign ASCII" "                            " 5
at_xfail=no
(
  $as_echo "1250. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X(5).
         02 X-9         REDEFINES X PIC 9(4).
         02 X-S9        REDEFINES X PIC S9(4).
         02 X-S9-L      REDEFINES X PIC S9(4) LEADING.
         02 X-S9-LS     REDEFINES X PIC S9(4) LEADING SEPARATE.
         02 X-S9-T      REDEFINES X PIC S9(4) TRAILING.
         02 X-S9-TS     REDEFINES X PIC S9(4) TRAILING SEPARATE.
       PROCEDURE        DIVISION.
           MOVE ZERO TO X. MOVE  1234 TO X-9.     DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE  1234 TO X-S9.    DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE -1234 TO X-S9.    DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE  1234 TO X-S9-L.  DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE -1234 TO X-S9-L.  DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE  1234 TO X-S9-LS. DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE -1234 TO X-S9-LS. DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE  1234 TO X-S9-T.  DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE -1234 TO X-S9-T.  DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE  1234 TO X-S9-TS. DISPLAY X
           END-DISPLAY.
           MOVE ZERO TO X. MOVE -1234 TO X-S9-TS. DISPLAY X
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:64: \$COMPILE -fsign=ascii prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fsign=ascii prog.cob" "data_display.at:64"
( $at_check_trace; $COMPILE -fsign=ascii prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:64"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:65: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:65"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "12340
12340
123t0
12340
q2340
+1234
-1234
12340
123t0
1234+
1234-
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:65"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1250
#AT_START_1251
at_fn_group_banner 1251 'data_display.at:81' \
  "DISPLAY: Sign ASCII (2)" "                        " 5
at_xfail=no
(
  $as_echo "1251. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X(10).
         02 X-S99       REDEFINES X PIC S99.
         02 X-S9        REDEFINES X PIC S9 OCCURS 10.
       PROCEDURE        DIVISION.
           MOVE 0 TO X-S9(1).
           MOVE 1 TO X-S9(2).
           MOVE 2 TO X-S9(3).
           MOVE 3 TO X-S9(4).
           MOVE 4 TO X-S9(5).
           MOVE 5 TO X-S9(6).
           MOVE 6 TO X-S9(7).
           MOVE 7 TO X-S9(8).
           MOVE 8 TO X-S9(9).
           MOVE 9 TO X-S9(10).
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           MOVE -10 TO X-S99. MOVE X(2:1) TO X(1:1).
           MOVE -1 TO X-S9(2).
           MOVE -2 TO X-S9(3).
           MOVE -3 TO X-S9(4).
           MOVE -4 TO X-S9(5).
           MOVE -5 TO X-S9(6).
           MOVE -6 TO X-S9(7).
           MOVE -7 TO X-S9(8).
           MOVE -8 TO X-S9(9).
           MOVE -9 TO X-S9(10).
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:121: \$COMPILE -fsign=ascii prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fsign=ascii prog.cob" "data_display.at:121"
( $at_check_trace; $COMPILE -fsign=ascii prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:121"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:122: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:122"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0123456789pqrstuvwxy" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:122"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1251
#AT_START_1252
at_fn_group_banner 1252 'data_display.at:127' \
  "DISPLAY: Sign EBCDIC" "                           " 5
at_xfail=no
(
  $as_echo "1252. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X           PIC X(10).
         02 X-S99       REDEFINES X PIC S99.
         02 X-S9        REDEFINES X PIC S9 OCCURS 10.
       PROCEDURE        DIVISION.
           MOVE 0 TO X-S9(1).
           MOVE 1 TO X-S9(2).
           MOVE 2 TO X-S9(3).
           MOVE 3 TO X-S9(4).
           MOVE 4 TO X-S9(5).
           MOVE 5 TO X-S9(6).
           MOVE 6 TO X-S9(7).
           MOVE 7 TO X-S9(8).
           MOVE 8 TO X-S9(9).
           MOVE 9 TO X-S9(10).
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           MOVE -10 TO X-S99. MOVE X(2:1) TO X(1:1).
           MOVE -1 TO X-S9(2).
           MOVE -2 TO X-S9(3).
           MOVE -3 TO X-S9(4).
           MOVE -4 TO X-S9(5).
           MOVE -5 TO X-S9(6).
           MOVE -6 TO X-S9(7).
           MOVE -7 TO X-S9(8).
           MOVE -8 TO X-S9(9).
           MOVE -9 TO X-S9(10).
           DISPLAY X NO ADVANCING
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:167: \$COMPILE -fsign=ebcdic prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fsign=ebcdic prog.cob" "data_display.at:167"
( $at_check_trace; $COMPILE -fsign=ebcdic prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:167"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:168: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:168"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "{ABCDEFGHI}JKLMNOPQR" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:168"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1252
#AT_START_1253
at_fn_group_banner 1253 'data_display.at:172' \
  "DISPLAY: unsigned" "                              " 5
at_xfail=no
(
  $as_echo "1253. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-BCU         BINARY-CHAR   UNSIGNED.
       01 X-BSU         BINARY-SHORT  UNSIGNED.
       01 X-BIU         BINARY-INT    UNSIGNED.
       01 X-BLU         BINARY-LONG   UNSIGNED.
       01 X-BDU         BINARY-DOUBLE UNSIGNED.
       01 X-US          UNSIGNED-SHORT.
       01 X-UI          UNSIGNED-INT.
       PROCEDURE        DIVISION.
           MOVE 127 TO X-BCU.               DISPLAY X-BCU END-DISPLAY.
           ADD 1 TO X-BCU END-ADD.          DISPLAY X-BCU END-DISPLAY.
           MOVE 32767 TO X-BSU.             DISPLAY X-BSU END-DISPLAY.
           ADD 1 TO X-BSU END-ADD.          DISPLAY X-BSU END-DISPLAY.
           MOVE 2147483647 TO X-BIU.        DISPLAY X-BIU END-DISPLAY.
           ADD 1 TO X-BIU END-ADD.          DISPLAY X-BIU END-DISPLAY.
           MOVE 2147483647 TO X-BLU.        DISPLAY X-BLU END-DISPLAY.
           ADD 1 TO X-BLU END-ADD.          DISPLAY X-BLU END-DISPLAY.
           MOVE 9223372036854775807 TO X-BDU. DISPLAY X-BDU END-DISPLAY.
           ADD 1 TO X-BDU END-ADD.          DISPLAY X-BDU END-DISPLAY.
           MOVE 32767 TO X-US.              DISPLAY X-US  END-DISPLAY.
           ADD 1 TO X-US END-ADD.           DISPLAY X-US  END-DISPLAY.
           MOVE 2147483647 TO X-UI.         DISPLAY X-UI  END-DISPLAY.
           ADD 1 TO X-UI END-ADD.           DISPLAY X-UI  END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:205: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_display.at:205"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:205"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:206: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:206"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "127
128
32767
32768
2147483647
2147483648
2147483647
2147483648
09223372036854775807
09223372036854775808
32767
32768
2147483647
2147483648
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:206"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1253
#AT_START_1254
at_fn_group_banner 1254 'data_display.at:226' \
  "MOVE DISPLAY to DISPLAY" "                        " 5
at_xfail=no
(
  $as_echo "1254. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_binary.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  D-S99V99     PIC S99V99 DISPLAY VALUE  1.23.
       01  D-N99V99     PIC S99V99 DISPLAY VALUE -1.32.
       01  D-9V99       PIC   9V99 DISPLAY VALUE  1.1.
       01  D-S99        PIC S99    DISPLAY VALUE  12.
       01  D-99         PIC  99    DISPLAY VALUE  2.
       01  D-P99        PIC P99    DISPLAY VALUE  0.02.
       01  D-9PP        PIC 9PP    DISPLAY VALUE  200.
       01  T-S99V99     PIC S99V99 DISPLAY.
       01  T-99V9       PIC  99V9  DISPLAY.
       01  T-S999       PIC S999   DISPLAY.
       01  T-99         PIC  99    DISPLAY.
       01  T-P9         PIC  P9    DISPLAY.
       01  T-9P         PIC  9P    DISPLAY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE D-S99V99 TO T-S99V99
           IF T-S99V99 NOT = 1.23
              DISPLAY "T-S99V99 1: " T-S99V99.
           MOVE D-N99V99 TO T-S99V99
           IF T-S99V99 NOT = -1.32
              DISPLAY "T-S99V99 2: " T-S99V99.
           MOVE D-9V99   TO T-S99V99
           IF T-S99V99 NOT = 1.1
              DISPLAY "T-S99V99 3: " T-S99V99.
           MOVE D-S99    TO T-S99V99
           IF T-S99V99 NOT = 12
              DISPLAY "T-S99V99 4: " T-S99V99.
           MOVE D-99     TO T-S99V99
           IF T-S99V99 NOT = 2
              DISPLAY "T-S99V99 5: " T-S99V99.
           MOVE D-P99    TO T-S99V99
           IF T-S99V99 NOT = 0.02
              DISPLAY "T-S99V99 6: " T-S99V99.
           MOVE D-9PP    TO T-S99V99
           IF T-S99V99 NOT = 0
              DISPLAY "T-S99V99 7: " T-S99V99.

           MOVE D-S99V99 TO T-99V9
           IF T-99V9  NOT = 1.2
              DISPLAY "T-99V9   1: " T-99V9  .
           MOVE D-N99V99 TO T-99V9
           IF T-99V9  NOT = 1.3
              DISPLAY "T-99V9   2: " T-99V9  .
           MOVE D-9V99   TO T-99V9
           IF T-99V9  NOT = 1.1
              DISPLAY "T-99V9   3: " T-99V9  .
           MOVE D-S99    TO T-99V9
           IF T-99V9  NOT = 12
              DISPLAY "T-99V9   4: " T-99V9  .
           MOVE D-99     TO T-99V9
           IF T-99V9  NOT = 2
              DISPLAY "T-99V9   5: " T-99V9  .
           MOVE D-P99    TO T-99V9
           IF T-99V9  NOT = 0
              DISPLAY "T-99V9   6: " T-99V9  .
           MOVE D-9PP    TO T-99V9
           IF T-99V9  NOT = 0
              DISPLAY "T-99V9   7: " T-99V9  .

           MOVE D-S99V99 TO T-S999
           IF T-S999   NOT = 1
              DISPLAY "T-S999   1: " T-S999  .
           MOVE D-N99V99 TO T-S999
           IF T-S999   NOT = -1
              DISPLAY "T-S999   2: " T-S999  .
           MOVE D-9V99   TO T-S999
           IF T-S999   NOT = 1
              DISPLAY "T-S999   3: " T-S999  .
           MOVE D-S99    TO T-S999
           IF T-S999   NOT = 12
              DISPLAY "T-S999   4: " T-S999  .
           MOVE D-99     TO T-S999
           IF T-S999   NOT = 2
              DISPLAY "T-S999   5: " T-S999  .
           MOVE D-P99    TO T-S999
           IF T-S999   NOT = 0
              DISPLAY "T-S999   6: " T-S999  .
           MOVE D-9PP    TO T-S999
           IF T-S999   NOT = 200
              DISPLAY "T-S999   7: " T-S999  .

           MOVE D-S99V99 TO T-99
           IF T-99     NOT = 1
              DISPLAY "T-99     1: " T-99    .
           MOVE D-N99V99 TO T-99
           IF T-99     NOT = 1
              DISPLAY "T-99     2: " T-99    .
           MOVE D-9V99   TO T-99
           IF T-99     NOT = 1
              DISPLAY "T-99     3: " T-99    .
           MOVE D-S99    TO T-99
           IF T-99     NOT = 12
              DISPLAY "T-99     4: " T-99    .
           MOVE D-99     TO T-99
           IF T-99     NOT = 2
              DISPLAY "T-99     5: " T-99    .
           MOVE D-P99    TO T-99
           IF T-99     NOT = 0
              DISPLAY "T-99     6: " T-99    .
           MOVE D-9PP    TO T-99
           IF T-99     NOT = 0
              DISPLAY "T-99     7: " T-99    .

           MOVE D-S99V99 TO T-P9
           IF T-P9     NOT = 0.03
              DISPLAY "T-P9     1: " T-P9    .
           MOVE D-N99V99 TO T-P9
           IF T-P9     NOT = 0.02
              DISPLAY "T-P9     2: " T-P9    .
           MOVE D-9V99   TO T-P9
           IF T-P9     NOT = 0
              DISPLAY "T-P9     3: " T-P9    .
           MOVE D-S99    TO T-P9
           IF T-P9     NOT = 0
              DISPLAY "T-P9     4: " T-P9    .
           MOVE D-99     TO T-P9
           IF T-P9     NOT = 0
              DISPLAY "T-P9     5: " T-P9    .
           MOVE D-P99    TO T-P9
           IF T-P9     NOT = 0.02
              DISPLAY "T-P9     6: " T-P9    .
           MOVE D-9PP    TO T-P9
           IF T-P9     NOT = 0
              DISPLAY "T-P9     7: " T-P9    .

           MOVE D-S99V99 TO T-9P
           IF T-9P     NOT = 0
              DISPLAY "T-9P     1: " T-9P    .
           MOVE D-N99V99 TO T-9P
           IF T-9P     NOT = 0
              DISPLAY "T-9P     2: " T-9P    .
           MOVE D-9V99   TO T-9P
           IF T-9P     NOT = 0
              DISPLAY "T-9P     3: " T-9P    .
           MOVE D-S99    TO T-9P
           IF T-9P     NOT = 10
              DISPLAY "T-9P     4: " T-9P    .
           MOVE D-99     TO T-9P
           IF T-9P     NOT = 0
              DISPLAY "T-9P     5: " T-9P    .
           MOVE D-P99    TO T-9P
           IF T-9P     NOT = 0
              DISPLAY "T-9P     6: " T-9P    .
           MOVE D-9PP    TO T-9P
           IF T-9P     NOT = 0
              DISPLAY "T-9P     7: " T-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:402: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_display.at:402"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:402"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:403: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:403"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:403"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1254
#AT_START_1255
at_fn_group_banner 1255 'data_display.at:408' \
  "PPP DISPLAY" "                                    " 5
at_xfail=no
(
  $as_echo "1255. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_binary.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 XS.
         05 X-1  PIC 999PPP DISPLAY  VALUE 91000.
         05 X-2  PIC 999PPP DISPLAY  VALUE 92000.
         05 X-3  PIC X VALUE "$".
         05 X-4  PIC VPPP999 DISPLAY VALUE 0.000128.
       01 D-1    PIC 999PPP  DISPLAY VALUE 95000.
       01 D-2    PIC 9999PP  DISPLAY VALUE 193000.
       PROCEDURE        DIVISION.
       MAIN.
           DISPLAY "INIT X-1 : " X-1 " .".
           DISPLAY "INIT X-2 : " X-2 " .".
           DISPLAY "INIT X-4 : " X-4 " .".
           DISPLAY "INIT D-1 : " D-1 " .".
           MOVE D-1 TO X-2 X-1
           MOVE X-2 TO D-1.
           DISPLAY "MOVE X-1 : " X-1 " .".
           DISPLAY "MOVE X-2 : " X-2 " .".
           MOVE 0.000256 TO X-4
           DISPLAY "MOVE X-4 : " X-4 " .".
           DISPLAY "MOVE D-1 : " D-1 " .".
           MOVE D-2 TO X-2 X-1
           DISPLAY "MOVE X-1 : " X-1 ":" D-2 " .".
           DISPLAY "MOVE X-2 : " X-2 ":" D-2 " .".
           MOVE 98000   TO X-1.
           IF X-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " X-1.
           MOVE 98000   TO D-1
           IF D-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " D-1.
           ADD 1000 TO X-1
           IF X-1 NOT = 99000
             DISPLAY "+ 1000 failed: " X-1.
           SUBTRACT 4000 FROM X-1.
           IF X-1 NOT = 95000
             DISPLAY "- 4000 failed: " X-1.
           DIVIDE 3 INTO X-1.
           IF X-1 NOT = 31000
             DISPLAY "/ 3 failed: " X-1.
           MULTIPLY 2 BY X-1 GIVING X-1.
           IF X-1 NOT = 62000
             DISPLAY "* 2 failed: " X-1.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:462: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_display.at:462"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:462"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_display.at:464: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:464"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "INIT X-1 : 091000 .
INIT X-2 : 092000 .
INIT X-4 : .000128 .
INIT D-1 : 095000 .
MOVE X-1 : 095000 .
MOVE X-2 : 095000 .
MOVE X-4 : .000256 .
MOVE D-1 : 095000 .
MOVE X-1 : 193000:193000 .
MOVE X-2 : 193000:193000 .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:464"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1255
#AT_START_1256
at_fn_group_banner 1256 'data_display.at:480' \
  "arithmetic truncation with USAGE DISPLAY" "       " 5
at_xfail=no
(
  $as_echo "1256. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_binary.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77 RESULT        PIC 9(03).
       PROCEDURE        DIVISION.
       MAIN.
      * internal arithmetic to DISPLAY
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 2 / RESULT
           IF RESULT NOT = 14
              DISPLAY "NOT 14: " RESULT.

      * internal arithmetic to DISPLAY, with sign drop
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 20 / RESULT
           IF RESULT NOT = 4
              DISPLAY "NOT - 4: " RESULT.

      * internal arithmetic to DISPLAY with truncation of decimal-part
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT / 2
           IF RESULT NOT = 15
              DISPLAY "NOT 15: " RESULT.

      * internal arithmetic to DISPLAY with truncation of integer-part
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 2000 / RESULT
           IF RESULT NOT = 984
              DISPLAY "NOT -1 984: " RESULT.

      * internal arithmetic to DISPLAY with truncation of integer-part
      * with leading zeros after truncation
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT + 2000 / RESULT
           IF RESULT NOT = 16
              DISPLAY "NOT +20 16: " RESULT.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:527: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_display.at:527"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:527"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:528: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:528"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:528"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1256
#AT_START_1257
at_fn_group_banner 1257 'data_display.at:533' \
  "DISPLAY: ADD and SUBTRACT w/o SIZE ERROR" "       " 5
at_xfail=no
(
  $as_echo "1257. $at_setup_line: testing $at_desc ..."
  $at_traceon



# This test was originally generated and contributed by Chuck Haatvedt.
# It tests a huge amount of ADD / SUBTRACT between DISPLAY (originally BCD)
# fields with different attributes (size, decimal places, sign) and checks
# for the expected value as well as the raise of a SIZE ERROR
# after the computation.
# This code is an adjusted duplicate of the test in data_packed.at
# and checking with cob_decimal (while the BCD uses its own optimized routine).

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTNR.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77  FLD0001A                       PIC  9(08)V9(19)
                   VALUE  72210483.5706116943150334464.
       77  FLD0001B                       PIC  9(01)
                   VALUE  0.
       77  FLD0001E                       PIC X  VALUE 'N'.

       77  FLD0002A                       PIC  9(05)V9(26)
                   VALUE  83954.98773698940597753903603006.
       77  FLD0002B                       PIC  9(05)V9(27)
                   VALUE  85526.912891598327881581553810974.
       77  FLD0002E                       PIC X  VALUE 'N'.

       77  FLD0003A                       PIC  9(01)
                   VALUE  0.
       77  FLD0003B                       PIC  9(10)V9(08)
                   VALUE  4976916625.40136914.
       77  FLD0003E                       PIC X  VALUE 'N'.

       77  FLD0004A                       PIC S9(08)V9(03)
                   VALUE +31348416.669.
       77  FLD0004B                       PIC  9(05)V9(01)
                   VALUE  16799.5.
       77  FLD0004E                       PIC X  VALUE 'N'.

       77  FLD0005A                       PIC S9(07)V9(01)
                   VALUE +2337334.8.
       77  FLD0005B                       PIC S9(09)V9(03)
                   VALUE +324331791.973.
       77  FLD0005E                       PIC X  VALUE 'N'.

       77  FLD0006A                       PIC  9(04)
                   VALUE  1169.
       77  FLD0006B                       PIC  9(03)V9(31)
                   VALUE  912.5850054312464321171205483551602.
       77  FLD0006E                       PIC X  VALUE 'N'.

       77  FLD0007A                       PIC S9(04)
                   VALUE +1123.
       77  FLD0007B                       PIC S9(08)V9(02)
                   VALUE -27032151.91.
       77  FLD0007E                       PIC X  VALUE 'N'.

       77  FLD0008A                       PIC  9(01)
                   VALUE  0.
       77  FLD0008B                       PIC S9(03)
                   VALUE -091.
       77  FLD0008E                       PIC X  VALUE 'N'.

       77  FLD0009A                       PIC  9(10)V9(07)
                   VALUE  4695987895.4491957.
       77  FLD0009B                       PIC  9(05)V9(28)
                   VALUE  87164.4396861416259625343627703841.
       77  FLD0009E                       PIC X  VALUE 'N'.

       77  FLD0010A                       PIC  9(03)V9(32)
                   VALUE  932.59120224122482589734772773226723.
       77  FLD0010B                       PIC S9(09)V9(06)
                   VALUE +401314086.816856.
       77  FLD0010E                       PIC X  VALUE 'N'.

       77  FLD0011A                       PIC  9(09)V9(04)
                   VALUE  356168291.4830.
       77  FLD0011B                       PIC  9(04)V9(29)
                   VALUE  8869.25340695890795927880390081554.
       77  FLD0011E                       PIC X  VALUE 'N'.

       77  FLD0012A                       PIC  9(03)
                   VALUE  087.
       77  FLD0012B                       PIC  9(08)V9(19)
                   VALUE  71485769.2486604356929547066.
       77  FLD0012E                       PIC X  VALUE 'N'.

       77  FLD0013A                       PIC  9(06)V9(25)
                   VALUE  829630.0004717120923913853403064.
       77  FLD0013B                       PIC  9(07)V9(02)
                   VALUE  2497013.60.
       77  FLD0013E                       PIC X  VALUE 'N'.

       77  FLD0014A                       PIC  9(09)V9(13)
                   VALUE  592943121.2490873237541.
       77  FLD0014B                       PIC  9(06)V9(01)
                   VALUE  186764.7.
       77  FLD0014E                       PIC X  VALUE 'N'.

       77  FLD0015A                       PIC  9(07)V9(23)
                   VALUE  7984732.71412134533164817185024.
       77  FLD0015B                       PIC  9(10)V9(08)
                   VALUE  4953047329.19498391.
       77  FLD0015E                       PIC X  VALUE 'N'.

       77  FLD0016A                       PIC  9(05)V9(28)
                   VALUE  87275.9557853607148558694461826235.
       77  FLD0016B                       PIC S9(10)V9(06)
                   VALUE +4316165362.791636.
       77  FLD0016E                       PIC X  VALUE 'N'.

       77  FLD0017A                       PIC  9(01)
                   VALUE  0.
       77  FLD0017B                       PIC  9(04)V9(30)
                   VALUE  8983.341087204116393039043941826093.
       77  FLD0017E                       PIC X  VALUE 'N'.

       77  FLD0018A                       PIC  9(07)V9(21)
                   VALUE  7619026.805277494540646898713.
       77  FLD0018B                       PIC S9(01)
                   VALUE -0.
       77  FLD0018E                       PIC X  VALUE 'N'.

       77  FLD0019A                       PIC S9(10)V9(08)
                   VALUE -4930528885.68236813.
       77  FLD0019B                       PIC S9(09)V9(06)
                   VALUE +402620216.542097.
       77  FLD0019E                       PIC X  VALUE 'N'.

       77  FLD0020A                       PIC  9(09)V9(15)
                   VALUE  643887452.720044328735582.
       77  FLD0020B                       PIC  9(09)V9(11)
                   VALUE  552340679.26366126055.
       77  FLD0020E                       PIC X  VALUE 'N'.

       77  FLD0021A                       PIC  9(01)V9(36)
                   VALUE  9.880441680787707126043528660375159233.
       77  FLD0021B                       PIC S9(01)
                   VALUE -0.
       77  FLD0021E                       PIC X  VALUE 'N'.

       77  FLD0022A                       PIC  9(06)V9(24)
                   VALUE  810040.192546636172998830716096.
       77  FLD0022B                       PIC  9(07)V9(21)
                   VALUE  7610660.641468062204140210269.
       77  FLD0022E                       PIC X  VALUE 'N'.

       77  FLD0023A                       PIC  9(02)
                   VALUE  06.
       77  FLD0023B                       PIC  9(02)V9(34)
                   VALUE  95.1865432391802879230624512274516746.
       77  FLD0023E                       PIC X  VALUE 'N'.

       77  FLD0024A                       PIC  9(09)V9(03)
                   VALUE  329406009.124.
       77  FLD0024B                       PIC S9(09)V9(06)
                   VALUE +410668612.232476.
       77  FLD0024E                       PIC X  VALUE 'N'.

       77  FLD0025A                       PIC S9(01)
                   VALUE +0.
       77  FLD0025B                       PIC  9(07)V9(02)
                   VALUE  2497488.27.
       77  FLD0025E                       PIC X  VALUE 'N'.

       77  FLD0026A                       PIC  9(01)
                   VALUE  0.
       77  FLD0026B                       PIC S9(09)V9(05)
                   VALUE -383757196.20564.
       77  FLD0026E                       PIC X  VALUE 'N'.

       77  FLD0027A                       PIC  9(09)V9(13)
                   VALUE  601026867.0937520818498.
       77  FLD0027B                       PIC  9(06)V9(25)
                   VALUE  815849.1045356750515082921992870.
       77  FLD0027E                       PIC X  VALUE 'N'.

       77  FLD0028A                       PIC  9(04)V9(29)
                   VALUE  8794.72782911061568000832266989164.
       77  FLD0028B                       PIC S9(01)
                   VALUE +0.
       77  FLD0028E                       PIC X  VALUE 'N'.

       77  FLD0029A                       PIC  9(05)
                   VALUE  13697.
       77  FLD0029B                       PIC  9(09)V9(17)
                   VALUE  684374480.18294422258378517.
       77  FLD0029E                       PIC X  VALUE 'N'.

       77  FLD0030A                       PIC S9(01)
                   VALUE +0.
       77  FLD0030B                       PIC  9(08)V9(18)
                   VALUE  70264210.169553353857452293.
       77  FLD0030E                       PIC X  VALUE 'N'.

       77  FLD0031A                       PIC  9(01)
                   VALUE  0.
       77  FLD0031B                       PIC  9(08)V9(18)
                   VALUE  70450280.588407820925311852.
       77  FLD0031E                       PIC X  VALUE 'N'.

       77  FLD0032A                       PIC  9(10)V9(10)
                   VALUE  5269599769.4606222516.
       77  FLD0032B                       PIC S9(09)V9(03)
                   VALUE +322379197.669.
       77  FLD0032E                       PIC X  VALUE 'N'.

       77  FLD0033A                       PIC  9(09)V9(15)
                   VALUE  641903038.069859710468278.
       77  FLD0033B                       PIC  9(09)V9(03)
                   VALUE  318353502.142.
       77  FLD0033E                       PIC X  VALUE 'N'.

       77  FLD0034A                       PIC S9(02)
                   VALUE -05.
       77  FLD0034B                       PIC S9(07)V9(01)
                   VALUE +2126766.9.
       77  FLD0034E                       PIC X  VALUE 'N'.

       77  FLD0035A                       PIC  9(06)V9(25)
                   VALUE  816285.5924199176049782522568420.
       77  FLD0035B                       PIC  9(07)V9(01)
                   VALUE  2276316.1.
       77  FLD0035E                       PIC X  VALUE 'N'.

       77  FLD0036A                       PIC  9(01)V9(36)
                   VALUE  9.789384107274801127829277902492322027.
       77  FLD0036B                       PIC  9(05)V9(27)
                   VALUE  84790.535447228665422159110676147.
       77  FLD0036E                       PIC X  VALUE 'N'.

       77  FLD0037A                       PIC  9(10)V9(11)
                   VALUE  5559560836.79804091701.
       77  FLD0037B                       PIC S9(05)
                   VALUE -15352.
       77  FLD0037E                       PIC X  VALUE 'N'.

       77  FLD0038A                       PIC  9(02)V9(34)
                   VALUE  95.5897506417712539139586169767426326.
       77  FLD0038B                       PIC  9(06)V9(25)
                   VALUE  819342.2486726212872198971126636.
       77  FLD0038E                       PIC X  VALUE 'N'.

       77  FLD0039A                       PIC  9(04)V9(29)
                   VALUE  8933.20399454893721014059337903745.
       77  FLD0039B                       PIC  9(06)V9(01)
                   VALUE  205344.3.
       77  FLD0039E                       PIC X  VALUE 'N'.

       77  FLD0040A                       PIC S9(06)
                   VALUE -162227.
       77  FLD0040B                       PIC S9(03)
                   VALUE +101.
       77  FLD0040E                       PIC X  VALUE 'N'.

       77  FLD0041A                       PIC  9(09)V9(17)
                   VALUE  687709210.19485042879892944.
       77  FLD0041B                       PIC  9(10)V9(09)
                   VALUE  5032246021.307608119.
       77  FLD0041E                       PIC X  VALUE 'N'.

       77  FLD0042A                       PIC  9(07)V9(22)
                   VALUE  7680734.5400734650109342283030.
       77  FLD0042B                       PIC  9(10)V9(10)
                   VALUE  5398987461.4943655917.
       77  FLD0042E                       PIC X  VALUE 'N'.

       77  FLD0043A                       PIC S9(08)V9(02)
                   VALUE -28038049.48.
       77  FLD0043B                       PIC  9(04)V9(30)
                   VALUE  9102.051349475740460448491830902639.
       77  FLD0043E                       PIC X  VALUE 'N'.

       77  FLD0044A                       PIC  9(06)V9(01)
                   VALUE  206224.3.
       77  FLD0044B                       PIC  9(09)V9(04)
                   VALUE  359534215.7883.
       77  FLD0044E                       PIC X  VALUE 'N'.

       77  FLD0045A                       PIC  9(08)V9(02)
                   VALUE  28592495.81.
       77  FLD0045B                       PIC  9(09)V9(05)
                   VALUE  377058873.76830.
       77  FLD0045E                       PIC X  VALUE 'N'.

       77  FLD0046A                       PIC  9(01)
                   VALUE  0.
       77  FLD0046B                       PIC  9(05)V9(27)
                   VALUE  86000.025910646182847330010190489.
       77  FLD0046E                       PIC X  VALUE 'N'.

       77  FLD0047A                       PIC  9(08)V9(02)
                   VALUE  26966592.97.
       77  FLD0047B                       PIC  9(10)V9(08)
                   VALUE  4982239515.90845814.
       77  FLD0047E                       PIC X  VALUE 'N'.

       77  FLD0048A                       PIC  9(05)V9(26)
                   VALUE  83962.84254838164429202151950448.
       77  FLD0048B                       PIC S9(05)V9(01)
                   VALUE -17309.9.
       77  FLD0048E                       PIC X  VALUE 'N'.

       77  FLD0049A                       PIC  9(09)V9(16)
                   VALUE  677621907.0336453320635428.
       77  FLD0049B                       PIC  9(01)V9(36)
                   VALUE  9.784571866912429305429554915463086217.
       77  FLD0049E                       PIC X  VALUE 'N'.

       77  FLD0050A                       PIC  9(09)V9(03)
                   VALUE  329667670.988.
       77  FLD0050B                       PIC  9(09)V9(06)
                   VALUE  408790070.710566.
       77  FLD0050E                       PIC X  VALUE 'N'.

       77  FLD0051A                       PIC  9(09)V9(15)
                   VALUE  643375703.689413991348544.
       77  FLD0051B                       PIC  9(04)V9(30)
                   VALUE  9064.871948640588206203005938732530.
       77  FLD0051E                       PIC X  VALUE 'N'.

       77  FLD0052A                       PIC  9(09)V9(04)
                   VALUE  367200483.8576.
       77  FLD0052B                       PIC  9(09)V9(11)
                   VALUE  550990476.15163754265.
       77  FLD0052E                       PIC X  VALUE 'N'.

       77  FLD0053A                       PIC  9(07)V9(01)
                   VALUE  2260324.6.
       77  FLD0053B                       PIC S9(09)V9(04)
                   VALUE -361176713.4701.
       77  FLD0053E                       PIC X  VALUE 'N'.

       77  FLD0054A                       PIC S9(01)
                   VALUE +0.
       77  FLD0054B                       PIC  9(09)V9(03)
                   VALUE  319288758.232.
       77  FLD0054E                       PIC X  VALUE 'N'.

       77  FLD0055A                       PIC  9(09)V9(14)
                   VALUE  622232417.66982828604426.
       77  FLD0055B                       PIC  9(08)V9(17)
                   VALUE  68254498.02012105715576240.
       77  FLD0055E                       PIC X  VALUE 'N'.

       77  FLD0056A                       PIC  9(07)V9(01)
                   VALUE  2161993.9.
       77  FLD0056B                       PIC  9(08)V9(02)
                   VALUE  27806089.73.
       77  FLD0056E                       PIC X  VALUE 'N'.

       77  FLD0057A                       PIC  9(03)V9(32)
                   VALUE  929.20878243011406638629523513372987.
       77  FLD0057B                       PIC S9(02)
                   VALUE -06.
       77  FLD0057E                       PIC X  VALUE 'N'.

       77  FLD0058A                       PIC  9(02)V9(34)
                   VALUE  96.6574119281082611010447180888149887.
       77  FLD0058B                       PIC S9(09)V9(04)
                   VALUE +343623662.0368.
       77  FLD0058E                       PIC X  VALUE 'N'.

       77  FLD0059A                       PIC  9(07)V9(02)
                   VALUE  2566438.61.
       77  FLD0059B                       PIC  9(09)V9(14)
                   VALUE  625762300.58564874525472.
       77  FLD0059E                       PIC X  VALUE 'N'.

       77  FLD0060A                       PIC  9(01)V9(36)
                   VALUE  9.888752946983269120906356874911580234.
       77  FLD0060B                       PIC  9(06)
                   VALUE  159150.
       77  FLD0060E                       PIC X  VALUE 'N'.

       77  FLD0061A                       PIC  9(03)
                   VALUE  095.
       77  FLD0061B                       PIC  9(06)V9(25)
                   VALUE  816564.2123096498172785118185856.
       77  FLD0061E                       PIC X  VALUE 'N'.

       77  FLD0062A                       PIC  9(10)V9(11)
                   VALUE  5579259193.81647705819.
       77  FLD0062B                       PIC  9(09)V9(13)
                   VALUE  602304146.8914084317631.
       77  FLD0062E                       PIC X  VALUE 'N'.

       77  FLD0063A                       PIC S9(07)V9(01)
                   VALUE +2106925.6.
       77  FLD0063B                       PIC  9(08)V9(19)
                   VALUE  73193550.7264897311507922950.
       77  FLD0063E                       PIC X  VALUE 'N'.

       77  FLD0064A                       PIC  9(06)V9(25)
                   VALUE  828553.1635867423583263757791428.
       77  FLD0064B                       PIC S9(04)
                   VALUE +1113.
       77  FLD0064E                       PIC X  VALUE 'N'.

       77  FLD0065A                       PIC  9(08)V9(02)
                   VALUE  26934154.73.
       77  FLD0065B                       PIC S9(04)
                   VALUE +1223.
       77  FLD0065E                       PIC X  VALUE 'N'.

       77  FLD0066A                       PIC  9(01)
                   VALUE  0.
       77  FLD0066B                       PIC  9(05)V9(27)
                   VALUE  85085.260849998822774153950376785.
       77  FLD0066E                       PIC X  VALUE 'N'.

       77  FLD0067A                       PIC S9(03)
                   VALUE -091.
       77  FLD0067B                       PIC S9(01)
                   VALUE +0.
       77  FLD0067E                       PIC X  VALUE 'N'.

       77  FLD0068A                       PIC  9(06)V9(25)
                   VALUE  838055.6814082209537986045688739.
       77  FLD0068B                       PIC  9(01)
                   VALUE  0.
       77  FLD0068E                       PIC X  VALUE 'N'.

       77  FLD0069A                       PIC  9(10)V9(08)
                   VALUE  4880885916.76487937.
       77  FLD0069B                       PIC  9(03)
                   VALUE  097.
       77  FLD0069E                       PIC X  VALUE 'N'.

       77  FLD0070A                       PIC  9(08)V9(18)
                   VALUE  69654747.914044090606466852.
       77  FLD0070B                       PIC S9(06)V9(01)
                   VALUE -192591.5.
       77  FLD0070E                       PIC X  VALUE 'N'.

       77  FLD0071A                       PIC  9(02)
                   VALUE  05.
       77  FLD0071B                       PIC  9(04)
                   VALUE  1269.
       77  FLD0071E                       PIC X  VALUE 'N'.

       77  FLD0072A                       PIC  9(01)V9(36)
                   VALUE  9.925387953744267965916492357791867107.
       77  FLD0072B                       PIC  9(09)V9(15)
                   VALUE  655377323.717403204028641.
       77  FLD0072E                       PIC X  VALUE 'N'.

       77  FLD0073A                       PIC  9(01)V9(36)
                   VALUE  9.812328554525302504174533169134519994.
       77  FLD0073B                       PIC  9(08)V9(18)
                   VALUE  70717230.890474991333860543.
       77  FLD0073E                       PIC X  VALUE 'N'.

       77  FLD0074A                       PIC  9(03)V9(32)
                   VALUE  925.84903592679257400277492706663906.
       77  FLD0074B                       PIC  9(01)V9(36)
                   VALUE  9.839916331263631743553332853480242192.
       77  FLD0074E                       PIC X  VALUE 'N'.

       77  FLD0075A                       PIC  9(10)V9(10)
                   VALUE  5446083738.8683014381.
       77  FLD0075B                       PIC S9(07)V9(01)
                   VALUE +2205661.8.
       77  FLD0075E                       PIC X  VALUE 'N'.

       77  FLD0076A                       PIC S9(07)V9(02)
                   VALUE +2412584.18.
       77  FLD0076B                       PIC  9(02)V9(34)
                   VALUE  95.1877730461857529675739897356834262.
       77  FLD0076E                       PIC X  VALUE 'N'.

       77  FLD0077A                       PIC  9(10)V9(08)
                   VALUE  4971042025.86989840.
       77  FLD0077B                       PIC  9(05)V9(28)
                   VALUE  87747.7884783979700245026833727024.
       77  FLD0077E                       PIC X  VALUE 'N'.

       77  FLD0078A                       PIC  9(06)V9(01)
                   VALUE  186044.2.
       77  FLD0078B                       PIC  9(10)V9(10)
                   VALUE  5264094377.6727222580.
       77  FLD0078E                       PIC X  VALUE 'N'.

       77  FLD0079A                       PIC  9(09)V9(15)
                   VALUE  638119223.314542294289708.
       77  FLD0079B                       PIC S9(03)
                   VALUE +101.
       77  FLD0079E                       PIC X  VALUE 'N'.

       77  FLD0080A                       PIC  9(07)V9(23)
                   VALUE  7905587.67133311302011122734256.
       77  FLD0080B                       PIC S9(09)V9(04)
                   VALUE -363247849.5626.
       77  FLD0080E                       PIC X  VALUE 'N'.

       77  FLD0081A                       PIC  9(01)V9(36)
                   VALUE  9.951308658902108250643436804239172488.
       77  FLD0081B                       PIC  9(09)V9(04)
                   VALUE  367206952.3371.
       77  FLD0081E                       PIC X  VALUE 'N'.

       77  FLD0082A                       PIC S9(08)V9(02)
                   VALUE -26324419.10.
       77  FLD0082B                       PIC  9(07)V9(22)
                   VALUE  7666475.1738066827524420432382.
       77  FLD0082E                       PIC X  VALUE 'N'.

       77  FLD0083A                       PIC  9(09)V9(14)
                   VALUE  631384121.39469823891602.
       77  FLD0083B                       PIC S9(07)V9(02)
                   VALUE -2518657.33.
       77  FLD0083E                       PIC X  VALUE 'N'.

       77  FLD0084A                       PIC  9(04)V9(29)
                   VALUE  8913.08379718931953483718189090723.
       77  FLD0084B                       PIC  9(09)V9(06)
                   VALUE  405118244.918866.
       77  FLD0084E                       PIC X  VALUE 'N'.

       77  FLD0085A                       PIC  9(05)
                   VALUE  15779.
       77  FLD0085B                       PIC  9(10)V9(06)
                   VALUE  4354227755.611629.
       77  FLD0085E                       PIC X  VALUE 'N'.

       77  FLD0086A                       PIC  9(01)V9(36)
                   VALUE  9.766547774737049936177868403319735080.
       77  FLD0086B                       PIC  9(10)V9(11)
                   VALUE  5711670223.78104349833.
       77  FLD0086E                       PIC X  VALUE 'N'.

       77  FLD0087A                       PIC  9(09)V9(14)
                   VALUE  617158605.01368802193411.
       77  FLD0087B                       PIC  9(04)
                   VALUE  1168.
       77  FLD0087E                       PIC X  VALUE 'N'.

       77  FLD0088A                       PIC  9(10)V9(12)
                   VALUE  5809468198.000283800652.
       77  FLD0088B                       PIC  9(09)V9(03)
                   VALUE  327927843.481.
       77  FLD0088E                       PIC X  VALUE 'N'.

       77  FLD0089A                       PIC  9(06)V9(24)
                   VALUE  802942.222446262787727278009697.
       77  FLD0089B                       PIC  9(03)V9(31)
                   VALUE  913.0556640200002682661306607769802.
       77  FLD0089E                       PIC X  VALUE 'N'.

       77  FLD0090A                       PIC S9(08)V9(02)
                   VALUE -28271627.31.
       77  FLD0090B                       PIC S9(08)V9(03)
                   VALUE -29023436.992.
       77  FLD0090E                       PIC X  VALUE 'N'.

       77  FLD0091A                       PIC  9(09)V9(07)
                   VALUE  438808038.0901770.
       77  FLD0091B                       PIC  9(08)V9(18)
                   VALUE  69809163.794725925811235356.
       77  FLD0091E                       PIC X  VALUE 'N'.

       77  FLD0092A                       PIC S9(07)V9(01)
                   VALUE +2146587.0.
       77  FLD0092B                       PIC  9(06)V9(25)
                   VALUE  828676.9901534452031910404912196.
       77  FLD0092E                       PIC X  VALUE 'N'.

       77  FLD0093A                       PIC  9(06)V9(25)
                   VALUE  831848.6927757260396276706160278.
       77  FLD0093B                       PIC  9(07)V9(23)
                   VALUE  7909193.25337388512409120266966.
       77  FLD0093E                       PIC X  VALUE 'N'.

       77  FLD0094A                       PIC  9(07)V9(01)
                   VALUE  2260698.5.
       77  FLD0094B                       PIC  9(10)V9(10)
                   VALUE  5308926344.5354850645.
       77  FLD0094E                       PIC X  VALUE 'N'.

       77  FLD0095A                       PIC  9(07)V9(22)
                   VALUE  7681159.7607563408818265315858.
       77  FLD0095B                       PIC  9(06)V9(25)
                   VALUE  835614.2190518044410296738533361.
       77  FLD0095E                       PIC X  VALUE 'N'.

       77  FLD0096A                       PIC  9(01)
                   VALUE  0.
       77  FLD0096B                       PIC  9(05)V9(28)
                   VALUE  87505.3049076218392166026660561328.
       77  FLD0096E                       PIC X  VALUE 'N'.

       77  FLD0097A                       PIC  9(03)
                   VALUE  085.
       77  FLD0097B                       PIC  9(07)V9(22)
                   VALUE  7663819.4132902548449948199049.
       77  FLD0097E                       PIC X  VALUE 'N'.

       77  FLD0098A                       PIC  9(05)V9(28)
                   VALUE  87637.1310136299430659789777564583.
       77  FLD0098B                       PIC  9(08)V9(04)
                   VALUE  33500668.0379.
       77  FLD0098E                       PIC X  VALUE 'N'.

       77  FLD0099A                       PIC S9(10)V9(08)
                   VALUE -4946809917.70565292.
       77  FLD0099B                       PIC S9(08)V9(03)
                   VALUE +30007106.715.
       77  FLD0099E                       PIC X  VALUE 'N'.

       77  FLD0100A                       PIC  9(10)V9(09)
                   VALUE  5148281813.288457797.
       77  FLD0100B                       PIC  9(09)V9(14)
                   VALUE  609442213.66168171982735.
       77  FLD0100E                       PIC X  VALUE 'N'.

       77  FLD0101A                       PIC S9(07)V9(02)
                   VALUE -2605358.58.
       77  FLD0101B                       PIC S9(07)V9(02)
                   VALUE -2515761.93.
       77  FLD0101E                       PIC X  VALUE 'N'.

       77  FLD0102A                       PIC  9(05)
                   VALUE  13880.
       77  FLD0102B                       PIC  9(09)V9(14)
                   VALUE  626009568.32775289662151.
       77  FLD0102E                       PIC X  VALUE 'N'.

       77  FLD0103A                       PIC  9(03)V9(32)
                   VALUE  929.51599988912647631877916865050792.
       77  FLD0103B                       PIC  9(01)
                   VALUE  0.
       77  FLD0103E                       PIC X  VALUE 'N'.

       77  FLD0104A                       PIC  9(07)V9(01)
                   VALUE  2254306.3.
       77  FLD0104B                       PIC S9(10)V9(08)
                   VALUE -4810300752.02174334.
       77  FLD0104E                       PIC X  VALUE 'N'.

       77  FLD0105A                       PIC S9(08)V9(03)
                   VALUE -29081388.428.
       77  FLD0105B                       PIC  9(08)V9(02)
                   VALUE  27558698.77.
       77  FLD0105E                       PIC X  VALUE 'N'.

       77  FLD0106A                       PIC S9(02)
                   VALUE -07.
       77  FLD0106B                       PIC S9(08)V9(02)
                   VALUE -26362185.29.
       77  FLD0106E                       PIC X  VALUE 'N'.

       77  FLD0107A                       PIC  9(09)V9(16)
                   VALUE  677462443.7557797973497031.
       77  FLD0107B                       PIC  9(08)V9(19)
                   VALUE  71705910.5997380985542122289.
       77  FLD0107E                       PIC X  VALUE 'N'.

       77  FLD0108A                       PIC  9(09)V9(14)
                   VALUE  610210882.31341436003418.
       77  FLD0108B                       PIC S9(08)V9(02)
                   VALUE -28421053.19.
       77  FLD0108E                       PIC X  VALUE 'N'.

       77  FLD0109A                       PIC S9(04)
                   VALUE +1136.
       77  FLD0109B                       PIC  9(04)V9(30)
                   VALUE  9020.720262660837374113498299266211.
       77  FLD0109E                       PIC X  VALUE 'N'.

       77  FLD0110A                       PIC  9(07)V9(23)
                   VALUE  7940109.55673497886841971649118.
       77  FLD0110B                       PIC  9(08)V9(18)
                   VALUE  69721135.284383173313926818.
       77  FLD0110E                       PIC X  VALUE 'N'.

       77  FLD0111A                       PIC  9(09)V9(03)
                   VALUE  326472185.831.
       77  FLD0111B                       PIC  9(10)V9(09)
                   VALUE  5255901748.964217912.
       77  FLD0111E                       PIC X  VALUE 'N'.

       77  FLD0112A                       PIC  9(08)V9(19)
                   VALUE  71238052.4624002697819946661.
       77  FLD0112B                       PIC S9(08)V9(02)
                   VALUE -27133920.74.
       77  FLD0112E                       PIC X  VALUE 'N'.

       77  FLD0113A                       PIC  9(04)V9(30)
                   VALUE  9092.566324157485002643852567416615.
       77  FLD0113B                       PIC  9(04)
                   VALUE  1277.
       77  FLD0113E                       PIC X  VALUE 'N'.

       77  FLD0114A                       PIC  9(09)V9(07)
                   VALUE  437805064.1539988.
       77  FLD0114B                       PIC  9(05)V9(01)
                   VALUE  17667.3.
       77  FLD0114E                       PIC X  VALUE 'N'.

       77  FLD0115A                       PIC  9(02)V9(34)
                   VALUE  96.2362934933669089687668929400388151.
       77  FLD0115B                       PIC S9(08)V9(03)
                   VALUE +30236682.408.
       77  FLD0115E                       PIC X  VALUE 'N'.

       77  FLD0116A                       PIC  9(07)V9(22)
                   VALUE  7646463.4359510952332783517704.
       77  FLD0116B                       PIC  9(01)
                   VALUE  0.
       77  FLD0116E                       PIC X  VALUE 'N'.

       77  FLD0117A                       PIC  9(09)V9(14)
                   VALUE  617509561.34001855346582.
       77  FLD0117B                       PIC  9(05)
                   VALUE  13612.
       77  FLD0117E                       PIC X  VALUE 'N'.

       77  FLD0118A                       PIC  9(10)V9(10)
                   VALUE  5408402726.5490597358.
       77  FLD0118B                       PIC S9(03)
                   VALUE -080.
       77  FLD0118E                       PIC X  VALUE 'N'.

       77  FLD0119A                       PIC S9(08)V9(03)
                   VALUE +30078875.458.
       77  FLD0119B                       PIC  9(07)V9(02)
                   VALUE  2460449.05.
       77  FLD0119E                       PIC X  VALUE 'N'.

       77  FLD0120A                       PIC  9(06)V9(25)
                   VALUE  830160.1137616416714593015058198.
       77  FLD0120B                       PIC S9(02)
                   VALUE -07.
       77  FLD0120E                       PIC X  VALUE 'N'.

       77  FLD0121A                       PIC S9(07)V9(01)
                   VALUE +2338292.2.
       77  FLD0121B                       PIC S9(09)V9(03)
                   VALUE +320991974.822.
       77  FLD0121E                       PIC X  VALUE 'N'.

       77  FLD0122A                       PIC S9(06)V9(01)
                   VALUE -184951.8.
       77  FLD0122B                       PIC  9(08)V9(02)
                   VALUE  26752619.72.
       77  FLD0122E                       PIC X  VALUE 'N'.

       77  FLD0123A                       PIC S9(02)
                   VALUE -05.
       77  FLD0123B                       PIC  9(07)V9(21)
                   VALUE  7502027.502690824523057244732.
       77  FLD0123E                       PIC X  VALUE 'N'.

       77  FLD0124A                       PIC  9(01)
                   VALUE  0.
       77  FLD0124B                       PIC S9(10)V9(06)
                   VALUE +4223876720.963152.
       77  FLD0124E                       PIC X  VALUE 'N'.

       77  FLD0125A                       PIC  9(04)V9(29)
                   VALUE  8800.31826789913984576685379579430.
       77  FLD0125B                       PIC  9(09)V9(15)
                   VALUE  637787216.045794358443288.
       77  FLD0125E                       PIC X  VALUE 'N'.

       77  FLD0126A                       PIC  9(06)V9(24)
                   VALUE  807990.071015203703552742808824.
       77  FLD0126B                       PIC  9(07)V9(01)
                   VALUE  2285688.0.
       77  FLD0126E                       PIC X  VALUE 'N'.

       77  FLD0127A                       PIC  9(04)V9(30)
                   VALUE  8981.860178820127993404298649693373.
       77  FLD0127B                       PIC  9(05)V9(28)
                   VALUE  87878.0390073648609572387613297905.
       77  FLD0127E                       PIC X  VALUE 'N'.

       77  FLD0128A                       PIC  9(10)V9(06)
                   VALUE  4298489587.591516.
       77  FLD0128B                       PIC  9(08)V9(02)
                   VALUE  26904320.50.
       77  FLD0128E                       PIC X  VALUE 'N'.

       77  FLD0129A                       PIC S9(08)V9(04)
                   VALUE +33460508.1048.
       77  FLD0129B                       PIC  9(09)V9(14)
                   VALUE  629564859.51748508700376.
       77  FLD0129E                       PIC X  VALUE 'N'.

       77  FLD0130A                       PIC  9(01)
                   VALUE  0.
       77  FLD0130B                       PIC  9(08)V9(03)
                   VALUE  30500681.275.
       77  FLD0130E                       PIC X  VALUE 'N'.

       77  FLD0131A                       PIC  9(08)V9(02)
                   VALUE  26916210.05.
       77  FLD0131B                       PIC  9(08)V9(18)
                   VALUE  70626515.642831921848454612.
       77  FLD0131E                       PIC X  VALUE 'N'.

       77  FLD0132A                       PIC  9(04)
                   VALUE  1270.
       77  FLD0132B                       PIC  9(07)V9(01)
                   VALUE  2163498.7.
       77  FLD0132E                       PIC X  VALUE 'N'.

       77  FLD0133A                       PIC  9(01)V9(36)
                   VALUE  9.890353542063604619372085835493635386.
       77  FLD0133B                       PIC S9(07)V9(02)
                   VALUE -2528421.98.
       77  FLD0133E                       PIC X  VALUE 'N'.

       77  FLD0134A                       PIC  9(08)V9(18)
                   VALUE  70385499.741438917187252855.
       77  FLD0134B                       PIC  9(09)V9(16)
                   VALUE  673960062.4739148226893803.
       77  FLD0134E                       PIC X  VALUE 'N'.

       77  FLD0135A                       PIC  9(10)V9(07)
                   VALUE  4678335500.0128495.
       77  FLD0135B                       PIC  9(07)V9(02)
                   VALUE  2561321.97.
       77  FLD0135E                       PIC X  VALUE 'N'.

       77  FLD0136A                       PIC S9(05)
                   VALUE -15169.
       77  FLD0136B                       PIC  9(08)V9(19)
                   VALUE  72091249.9695820607747975827.
       77  FLD0136E                       PIC X  VALUE 'N'.

       77  FLD0137A                       PIC S9(08)V9(02)
                   VALUE -27190319.39.
       77  FLD0137B                       PIC  9(03)V9(32)
                   VALUE  921.23024961283406231160597599227912.
       77  FLD0137E                       PIC X  VALUE 'N'.

       77  FLD0138A                       PIC S9(10)V9(08)
                   VALUE -4824223828.94490853.
       77  FLD0138B                       PIC  9(04)V9(30)
                   VALUE  8976.142294415691003095503219810780.
       77  FLD0138E                       PIC X  VALUE 'N'.

       77  FLD0139A                       PIC  9(09)V9(03)
                   VALUE  319644653.394.
       77  FLD0139B                       PIC  9(06)V9(25)
                   VALUE  818318.3537620841718762676464393.
       77  FLD0139E                       PIC X  VALUE 'N'.

       77  FLD0140A                       PIC S9(01)
                   VALUE +0.
       77  FLD0140B                       PIC  9(03)V9(31)
                   VALUE  913.4502802484925076953459210926666.
       77  FLD0140E                       PIC X  VALUE 'N'.

       77  FLD0141A                       PIC  9(09)V9(14)
                   VALUE  612266512.11346116987499.
       77  FLD0141B                       PIC  9(06)V9(01)
                   VALUE  198046.5.
       77  FLD0141E                       PIC X  VALUE 'N'.

       77  FLD0142A                       PIC  9(09)V9(04)
                   VALUE  356201246.7531.
       77  FLD0142B                       PIC S9(04)
                   VALUE +1134.
       77  FLD0142E                       PIC X  VALUE 'N'.

       77  FLD0143A                       PIC S9(07)V9(02)
                   VALUE -2608987.15.
       77  FLD0143B                       PIC  9(06)V9(01)
                   VALUE  205887.8.
       77  FLD0143E                       PIC X  VALUE 'N'.

       77  FLD0144A                       PIC  9(10)V9(11)
                   VALUE  5664625691.64754570216.
       77  FLD0144B                       PIC  9(07)V9(01)
                   VALUE  2170292.3.
       77  FLD0144E                       PIC X  VALUE 'N'.

       77  FLD0145A                       PIC  9(09)V9(13)
                   VALUE  592809780.4295365813587.
       77  FLD0145B                       PIC  9(09)V9(06)
                   VALUE  416669902.306984.
       77  FLD0145E                       PIC X  VALUE 'N'.

       77  FLD0146A                       PIC S9(03)
                   VALUE -091.
       77  FLD0146B                       PIC  9(09)V9(13)
                   VALUE  592675280.7490164309811.
       77  FLD0146E                       PIC X  VALUE 'N'.

       77  FLD0147A                       PIC  9(03)
                   VALUE  085.
       77  FLD0147B                       PIC  9(10)V9(05)
                   VALUE  3974420340.21838.
       77  FLD0147E                       PIC X  VALUE 'N'.

       77  FLD0148A                       PIC  9(04)
                   VALUE  1189.
       77  FLD0148B                       PIC  9(08)V9(04)
                   VALUE  33583306.9980.
       77  FLD0148E                       PIC X  VALUE 'N'.

       77  FLD0149A                       PIC  9(05)V9(27)
                   VALUE  86469.811002464236349140946913394.
       77  FLD0149B                       PIC S9(02)
                   VALUE -05.
       77  FLD0149E                       PIC X  VALUE 'N'.

       77  FLD0150A                       PIC S9(02)
                   VALUE -06.
       77  FLD0150B                       PIC  9(01)V9(36)
                   VALUE  9.779789481524289174174668914929497987.
       77  FLD0150E                       PIC X  VALUE 'N'.

       77  FLD0151A                       PIC  9(09)V9(13)
                   VALUE  602633749.4884196344102.
       77  FLD0151B                       PIC  9(07)V9(22)
                   VALUE  7715228.5011189425389943608024.
       77  FLD0151E                       PIC X  VALUE 'N'.

       77  FLD0152A                       PIC S9(08)V9(02)
                   VALUE -28005400.65.
       77  FLD0152B                       PIC  9(02)V9(34)
                   VALUE  96.9689035330467796747200281970435753.
       77  FLD0152E                       PIC X  VALUE 'N'.

       77  FLD0153A                       PIC  9(08)V9(18)
                   VALUE  69246387.672994647033419823.
       77  FLD0153B                       PIC  9(07)V9(22)
                   VALUE  7700147.9845998110906890588012.
       77  FLD0153E                       PIC X  VALUE 'N'.

       77  FLD0154A                       PIC  9(09)V9(14)
                   VALUE  618531644.61004783714059.
       77  FLD0154B                       PIC  9(10)V9(07)
                   VALUE  4667533939.9326892.
       77  FLD0154E                       PIC X  VALUE 'N'.

       77  FLD0155A                       PIC  9(10)V9(12)
                   VALUE  5816028861.286740569980.
       77  FLD0155B                       PIC  9(03)V9(31)
                   VALUE  920.9824083062539967770021576143335.
       77  FLD0155E                       PIC X  VALUE 'N'.

       77  FLD0156A                       PIC  9(02)V9(34)
                   VALUE  95.3830714078202746009083057288080453.
       77  FLD0156B                       PIC  9(04)V9(30)
                   VALUE  9080.971133779824899789900882751680.
       77  FLD0156E                       PIC X  VALUE 'N'.

       77  FLD0157A                       PIC  9(09)V9(16)
                   VALUE  659745695.0483697735165833.
       77  FLD0157B                       PIC  9(10)V9(06)
                   VALUE  4359875032.276696.
       77  FLD0157E                       PIC X  VALUE 'N'.

       77  FLD0158A                       PIC S9(09)V9(06)
                   VALUE +412656981.234114.
       77  FLD0158B                       PIC  9(09)V9(14)
                   VALUE  611832243.66474420197192.
       77  FLD0158E                       PIC X  VALUE 'N'.

       77  FLD0159A                       PIC  9(01)
                   VALUE  0.
       77  FLD0159B                       PIC  9(09)V9(15)
                   VALUE  643529357.674236912600918.
       77  FLD0159E                       PIC X  VALUE 'N'.

       77  FLD0160A                       PIC  9(08)V9(20)
                   VALUE  74656107.83998073429756914265.
       77  FLD0160B                       PIC  9(06)V9(01)
                   VALUE  207077.8.
       77  FLD0160E                       PIC X  VALUE 'N'.

       77  FLD0161A                       PIC  9(07)V9(22)
                   VALUE  7887170.9741627593626134284932.
       77  FLD0161B                       PIC  9(08)V9(19)
                   VALUE  71702582.3615881408024108623.
       77  FLD0161E                       PIC X  VALUE 'N'.

       77  FLD0162A                       PIC S9(02)
                   VALUE -07.
       77  FLD0162B                       PIC  9(10)V9(11)
                   VALUE  5668143857.58160899086.
       77  FLD0162E                       PIC X  VALUE 'N'.

       77  FLD0163A                       PIC  9(09)V9(14)
                   VALUE  618392824.19829444403802.
       77  FLD0163B                       PIC  9(09)V9(15)
                   VALUE  650815786.826470232817598.
       77  FLD0163E                       PIC X  VALUE 'N'.

       77  FLD0164A                       PIC S9(06)V9(01)
                   VALUE +204076.7.
       77  FLD0164B                       PIC  9(04)
                   VALUE  1076.
       77  FLD0164E                       PIC X  VALUE 'N'.

       77  FLD0165A                       PIC  9(09)V9(14)
                   VALUE  610409164.63927785695631.
       77  FLD0165B                       PIC  9(04)
                   VALUE  1267.
       77  FLD0165E                       PIC X  VALUE 'N'.

       77  FLD0166A                       PIC  9(07)V9(02)
                   VALUE  2460589.98.
       77  FLD0166B                       PIC  9(05)V9(01)
                   VALUE  17630.0.
       77  FLD0166E                       PIC X  VALUE 'N'.

       77  FLD0167A                       PIC S9(09)V9(03)
                   VALUE +323253458.962.
       77  FLD0167B                       PIC  9(06)V9(25)
                   VALUE  838285.1322478405142746282763255.
       77  FLD0167E                       PIC X  VALUE 'N'.

       77  FLD0168A                       PIC S9(04)
                   VALUE +1200.
       77  FLD0168B                       PIC S9(10)V9(06)
                   VALUE +4326937205.661665.
       77  FLD0168E                       PIC X  VALUE 'N'.

       77  FLD0169A                       PIC  9(06)V9(25)
                   VALUE  834885.7368063762329768451309064.
       77  FLD0169B                       PIC  9(08)V9(18)
                   VALUE  70699865.109667991980302304.
       77  FLD0169E                       PIC X  VALUE 'N'.

       77  FLD0170A                       PIC  9(08)V9(19)
                   VALUE  72325482.4666709539293663056.
       77  FLD0170B                       PIC  9(01)V9(36)
                   VALUE  9.863493423765207213094186045054811984.
       77  FLD0170E                       PIC X  VALUE 'N'.

       77  FLD0171A                       PIC  9(09)V9(16)
                   VALUE  675345293.4675296948086042.
       77  FLD0171B                       PIC  9(10)V9(06)
                   VALUE  4258478422.558273.
       77  FLD0171E                       PIC X  VALUE 'N'.

       77  FLD0172A                       PIC  9(02)V9(34)
                   VALUE  96.0216523360032936373897882731398567.
       77  FLD0172B                       PIC  9(04)V9(30)
                   VALUE  8999.798406174591702821885519369971.
       77  FLD0172E                       PIC X  VALUE 'N'.

       77  FLD0173A                       PIC S9(09)V9(06)
                   VALUE +412472914.336663.
       77  FLD0173B                       PIC  9(10)V9(08)
                   VALUE  4786981213.45750904.
       77  FLD0173E                       PIC X  VALUE 'N'.

       77  FLD0174A                       PIC S9(04)
                   VALUE +1244.
       77  FLD0174B                       PIC  9(10)V9(09)
                   VALUE  5152586737.087611057.
       77  FLD0174E                       PIC X  VALUE 'N'.

       77  FLD0175A                       PIC S9(05)
                   VALUE +13456.
       77  FLD0175B                       PIC S9(02)
                   VALUE -05.
       77  FLD0175E                       PIC X  VALUE 'N'.

       77  FLD0176A                       PIC  9(07)V9(23)
                   VALUE  7902178.74582138546379894705751.
       77  FLD0176B                       PIC  9(08)V9(03)
                   VALUE  29797398.003.
       77  FLD0176E                       PIC X  VALUE 'N'.

       77  FLD0177A                       PIC  9(07)V9(21)
                   VALUE  7618839.577049143496623173632.
       77  FLD0177B                       PIC  9(07)V9(02)
                   VALUE  2373414.07.
       77  FLD0177E                       PIC X  VALUE 'N'.

       77  FLD0178A                       PIC  9(09)V9(04)
                   VALUE  355502105.3348.
       77  FLD0178B                       PIC S9(08)V9(03)
                   VALUE +31397739.222.
       77  FLD0178E                       PIC X  VALUE 'N'.

       77  FLD0179A                       PIC  9(09)V9(05)
                   VALUE  388560564.63472.
       77  FLD0179B                       PIC  9(03)
                   VALUE  099.
       77  FLD0179E                       PIC X  VALUE 'N'.

       77  FLD0180A                       PIC  9(05)V9(27)
                   VALUE  85946.157652659294079455776227405.
       77  FLD0180B                       PIC  9(10)V9(10)
                   VALUE  5435189439.3573940700.
       77  FLD0180E                       PIC X  VALUE 'N'.

       77  FLD0181A                       PIC  9(06)V9(01)
                   VALUE  188908.8.
       77  FLD0181B                       PIC S9(10)V9(08)
                   VALUE -4740924741.33910868.
       77  FLD0181E                       PIC X  VALUE 'N'.

       77  FLD0182A                       PIC  9(10)V9(13)
                   VALUE  6061401860.3468300394609.
       77  FLD0182B                       PIC  9(09)V9(15)
                   VALUE  643493508.008180281620980.
       77  FLD0182E                       PIC X  VALUE 'N'.

       77  FLD0183A                       PIC  9(07)V9(23)
                   VALUE  7910108.10526126539876656806882.
       77  FLD0183B                       PIC S9(02)
                   VALUE -05.
       77  FLD0183E                       PIC X  VALUE 'N'.

       77  FLD0184A                       PIC  9(09)V9(15)
                   VALUE  635945742.812533687526865.
       77  FLD0184B                       PIC S9(07)V9(01)
                   VALUE +2343773.6.
       77  FLD0184E                       PIC X  VALUE 'N'.

       77  FLD0185A                       PIC  9(05)
                   VALUE  15666.
       77  FLD0185B                       PIC  9(08)V9(20)
                   VALUE  73935660.38753716096465495866.
       77  FLD0185E                       PIC X  VALUE 'N'.

       77  FLD0186A                       PIC  9(02)
                   VALUE  07.
       77  FLD0186B                       PIC  9(05)V9(26)
                   VALUE  84084.08947119312415452441200613.
       77  FLD0186E                       PIC X  VALUE 'N'.

       77  FLD0187A                       PIC  9(09)V9(13)
                   VALUE  604672028.7423602568921.
       77  FLD0187B                       PIC  9(10)V9(12)
                   VALUE  5893278013.192120301511.
       77  FLD0187E                       PIC X  VALUE 'N'.

       77  FLD0188A                       PIC  9(08)V9(17)
                   VALUE  68008236.87569536035724127.
       77  FLD0188B                       PIC  9(07)V9(21)
                   VALUE  7537078.198448752264226868646.
       77  FLD0188E                       PIC X  VALUE 'N'.

       77  FLD0189A                       PIC  9(10)V9(09)
                   VALUE  5115071016.238050827.
       77  FLD0189B                       PIC  9(10)V9(11)
                   VALUE  5668524677.20726727051.
       77  FLD0189E                       PIC X  VALUE 'N'.

       77  FLD0190A                       PIC  9(07)V9(02)
                   VALUE  2382137.54.
       77  FLD0190B                       PIC  9(09)V9(14)
                   VALUE  627148648.94273569806415.
       77  FLD0190E                       PIC X  VALUE 'N'.

       77  FLD0191A                       PIC  9(05)
                   VALUE  13720.
       77  FLD0191B                       PIC  9(06)V9(24)
                   VALUE  803717.168989411478996487403492.
       77  FLD0191E                       PIC X  VALUE 'N'.

       77  FLD0192A                       PIC  9(01)V9(36)
                   VALUE  9.894259454195439840162862310535274446.
       77  FLD0192B                       PIC  9(09)V9(04)
                   VALUE  358034239.3955.
       77  FLD0192E                       PIC X  VALUE 'N'.

       77  FLD0193A                       PIC  9(10)V9(06)
                   VALUE  4252943677.090519.
       77  FLD0193B                       PIC  9(09)V9(14)
                   VALUE  612048644.17243076690766.
       77  FLD0193E                       PIC X  VALUE 'N'.

       77  FLD0194A                       PIC  9(09)V9(06)
                   VALUE  417168379.939779.
       77  FLD0194B                       PIC  9(09)V9(15)
                   VALUE  634454032.998696626499679.
       77  FLD0194E                       PIC X  VALUE 'N'.

       77  FLD0195A                       PIC  9(08)V9(02)
                   VALUE  26645846.45.
       77  FLD0195B                       PIC  9(05)
                   VALUE  14921.
       77  FLD0195E                       PIC X  VALUE 'N'.

       77  FLD0196A                       PIC  9(01)
                   VALUE  0.
       77  FLD0196B                       PIC S9(05)V9(01)
                   VALUE -18000.7.
       77  FLD0196E                       PIC X  VALUE 'N'.

       77  FLD0197A                       PIC  9(01)V9(36)
                   VALUE  9.847788375924405590566834689525421708.
       77  FLD0197B                       PIC  9(02)
                   VALUE  05.
       77  FLD0197E                       PIC X  VALUE 'N'.

       77  FLD0198A                       PIC  9(09)V9(13)
                   VALUE  593293108.5591157671643.
       77  FLD0198B                       PIC S9(05)
                   VALUE +14072.
       77  FLD0198E                       PIC X  VALUE 'N'.

       77  FLD0199A                       PIC  9(07)V9(02)
                   VALUE  2483287.24.
       77  FLD0199B                       PIC  9(07)V9(23)
                   VALUE  7969040.17410605347571106449322.
       77  FLD0199E                       PIC X  VALUE 'N'.

       77  FLD0200A                       PIC S9(10)V9(08)
                   VALUE -4935972790.60619176.
       77  FLD0200B                       PIC  9(10)V9(07)
                   VALUE  4582475224.7206340.
       77  FLD0200E                       PIC X  VALUE 'N'.

       77  FLD0201A                       PIC  9(04)
                   VALUE  1282.
       77  FLD0201B                       PIC  9(07)V9(23)
                   VALUE  7926313.90444417882612526682351.
       77  FLD0201E                       PIC X  VALUE 'N'.

       77  FLD0202A                       PIC S9(09)V9(04)
                   VALUE -360603443.7503.
       77  FLD0202B                       PIC  9(03)V9(32)
                   VALUE  935.68197555010013122256395945441909.
       77  FLD0202E                       PIC X  VALUE 'N'.

       77  FLD0203A                       PIC  9(09)V9(14)
                   VALUE  628607663.38264040253847.
       77  FLD0203B                       PIC  9(03)V9(31)
                   VALUE  920.1886012491730104656539879215415.
       77  FLD0203E                       PIC X  VALUE 'N'.

       77  FLD0204A                       PIC  9(01)V9(35)
                   VALUE  9.73054030732718233664968465745914727.
       77  FLD0204B                       PIC  9(07)V9(01)
                   VALUE  2363275.3.
       77  FLD0204E                       PIC X  VALUE 'N'.

       77  FLD0205A                       PIC  9(09)V9(15)
                   VALUE  648926914.508991536933990.
       77  FLD0205B                       PIC  9(09)V9(15)
                   VALUE  639814213.238647178094709.
       77  FLD0205E                       PIC X  VALUE 'N'.

       77  FLD0206A                       PIC  9(06)V9(01)
                   VALUE  186967.7.
       77  FLD0206B                       PIC  9(08)V9(18)
                   VALUE  70826356.466434425840361654.
       77  FLD0206E                       PIC X  VALUE 'N'.

       77  FLD0207A                       PIC  9(05)V9(26)
                   VALUE  83944.39242287422553445708217623.
       77  FLD0207B                       PIC  9(07)V9(21)
                   VALUE  7607846.993308088334728722657.
       77  FLD0207E                       PIC X  VALUE 'N'.

       77  FLD0208A                       PIC  9(02)V9(34)
                   VALUE  96.7940040016311842308027735271025449.
       77  FLD0208B                       PIC  9(07)V9(01)
                   VALUE  2151595.4.
       77  FLD0208E                       PIC X  VALUE 'N'.

       77  FLD0209A                       PIC  9(03)V9(32)
                   VALUE  926.61149050802726900855077474261634.
       77  FLD0209B                       PIC  9(07)V9(23)
                   VALUE  7951784.48263920700789242346218.
       77  FLD0209E                       PIC X  VALUE 'N'.

       77  FLD0210A                       PIC  9(08)V9(19)
                   VALUE  72323528.1456575562764044207.
       77  FLD0210B                       PIC  9(01)
                   VALUE  0.
       77  FLD0210E                       PIC X  VALUE 'N'.

       77  FLD0211A                       PIC  9(01)
                   VALUE  0.
       77  FLD0211B                       PIC S9(09)V9(07)
                   VALUE +442113770.7554604.
       77  FLD0211E                       PIC X  VALUE 'N'.

       77  FLD0212A                       PIC  9(10)V9(08)
                   VALUE  4892032792.55731038.
       77  FLD0212B                       PIC S9(09)V9(05)
                   VALUE -372935567.70682.
       77  FLD0212E                       PIC X  VALUE 'N'.

       77  FLD0213A                       PIC S9(03)
                   VALUE -082.
       77  FLD0213B                       PIC  9(07)V9(21)
                   VALUE  7525721.770631302875997903356.
       77  FLD0213E                       PIC X  VALUE 'N'.

       77  FLD0214A                       PIC  9(01)
                   VALUE  0.
       77  FLD0214B                       PIC  9(09)V9(16)
                   VALUE  666893270.4655321508369070.
       77  FLD0214E                       PIC X  VALUE 'N'.

       77  FLD0215A                       PIC  9(03)V9(32)
                   VALUE  926.34033699271633999217101518297567.
       77  FLD0215B                       PIC S9(05)V9(01)
                   VALUE -18226.5.
       77  FLD0215E                       PIC X  VALUE 'N'.

       77  FLD0216A                       PIC S9(08)V9(02)
                   VALUE -28095374.87.
       77  FLD0216B                       PIC  9(08)V9(02)
                   VALUE  28541793.87.
       77  FLD0216E                       PIC X  VALUE 'N'.

       77  FLD0217A                       PIC  9(08)V9(20)
                   VALUE  74562962.48658396130792880285.
       77  FLD0217B                       PIC S9(09)V9(07)
                   VALUE +444563659.0422049.
       77  FLD0217E                       PIC X  VALUE 'N'.

       77  FLD0218A                       PIC S9(05)V9(01)
                   VALUE -18094.6.
       77  FLD0218B                       PIC  9(01)V9(36)
                   VALUE  9.867255193327033602201936446363106369.
       77  FLD0218E                       PIC X  VALUE 'N'.

       77  FLD0219A                       PIC  9(09)V9(12)
                   VALUE  578788992.127507229135.
       77  FLD0219B                       PIC  9(10)V9(10)
                   VALUE  5297903516.0907261836.
       77  FLD0219E                       PIC X  VALUE 'N'.

       77  FLD0220A                       PIC  9(09)V9(12)
                   VALUE  573343525.907533679841.
       77  FLD0220B                       PIC S9(05)
                   VALUE +14161.
       77  FLD0220E                       PIC X  VALUE 'N'.

       77  FLD0221A                       PIC  9(01)
                   VALUE  0.
       77  FLD0221B                       PIC  9(04)V9(29)
                   VALUE  8789.10367794605407176788958167890.
       77  FLD0221E                       PIC X  VALUE 'N'.

       77  FLD0222A                       PIC  9(09)V9(14)
                   VALUE  628182805.25174396977661.
       77  FLD0222B                       PIC S9(05)
                   VALUE -15228.
       77  FLD0222E                       PIC X  VALUE 'N'.

       77  FLD0223A                       PIC  9(01)
                   VALUE  0.
       77  FLD0223B                       PIC  9(08)V9(18)
                   VALUE  69950927.082806102497158917.
       77  FLD0223E                       PIC X  VALUE 'N'.

       77  FLD0224A                       PIC  9(06)V9(25)
                   VALUE  838187.2267509891116787912324070.
       77  FLD0224B                       PIC S9(09)V9(05)
                   VALUE -382169497.04991.
       77  FLD0224E                       PIC X  VALUE 'N'.

       77  FLD0225A                       PIC  9(05)
                   VALUE  13797.
       77  FLD0225B                       PIC  9(09)V9(12)
                   VALUE  572598612.808938978169.
       77  FLD0225E                       PIC X  VALUE 'N'.

       77  FLD0226A                       PIC  9(05)
                   VALUE  14900.
       77  FLD0226B                       PIC S9(07)V9(01)
                   VALUE +2129995.4.
       77  FLD0226E                       PIC X  VALUE 'N'.

       77  FLD0227A                       PIC  9(09)V9(14)
                   VALUE  629583055.15940859997670.
       77  FLD0227B                       PIC  9(04)V9(30)
                   VALUE  8983.577034983017961522477889957372.
       77  FLD0227E                       PIC X  VALUE 'N'.

       77  FLD0228A                       PIC S9(07)V9(01)
                   VALUE +2225916.3.
       77  FLD0228B                       PIC  9(01)V9(36)
                   VALUE  9.739690596877397243957830141880549490.
       77  FLD0228E                       PIC X  VALUE 'N'.

       77  FLD0229A                       PIC  9(01)V9(36)
                   VALUE  9.870473603260505601753038718015886843.
       77  FLD0229B                       PIC  9(08)V9(20)
                   VALUE  73838029.76208535540081356884.
       77  FLD0229E                       PIC X  VALUE 'N'.

       77  FLD0230A                       PIC S9(06)V9(01)
                   VALUE +201492.2.
       77  FLD0230B                       PIC S9(02)
                   VALUE -06.
       77  FLD0230E                       PIC X  VALUE 'N'.

       77  FLD0231A                       PIC  9(05)V9(28)
                   VALUE  87781.6812716511907233041256404248.
       77  FLD0231B                       PIC S9(08)V9(02)
                   VALUE -27182116.43.
       77  FLD0231E                       PIC X  VALUE 'N'.

       77  FLD0232A                       PIC  9(09)V9(04)
                   VALUE  356308264.5328.
       77  FLD0232B                       PIC  9(06)V9(25)
                   VALUE  833280.3014261945806495646138500.
       77  FLD0232E                       PIC X  VALUE 'N'.

       77  FLD0233A                       PIC  9(07)V9(21)
                   VALUE  7552156.809035388551620826547.
       77  FLD0233B                       PIC  9(08)V9(04)
                   VALUE  33739768.3403.
       77  FLD0233E                       PIC X  VALUE 'N'.

       77  FLD0234A                       PIC  9(08)V9(04)
                   VALUE  33831052.6754.
       77  FLD0234B                       PIC  9(09)V9(13)
                   VALUE  593899144.9424572133253.
       77  FLD0234E                       PIC X  VALUE 'N'.

       77  FLD0235A                       PIC S9(05)
                   VALUE +14123.
       77  FLD0235B                       PIC S9(10)V9(08)
                   VALUE -4808329310.19295639.
       77  FLD0235E                       PIC X  VALUE 'N'.

       77  FLD0236A                       PIC  9(04)V9(29)
                   VALUE  8818.23528289915170574886360554955.
       77  FLD0236B                       PIC  9(08)V9(18)
                   VALUE  70480160.116860446350983693.
       77  FLD0236E                       PIC X  VALUE 'N'.

       77  FLD0237A                       PIC  9(08)V9(02)
                   VALUE  28742037.59.
       77  FLD0237B                       PIC  9(04)V9(29)
                   VALUE  8850.90488581330880890618573175743.
       77  FLD0237E                       PIC X  VALUE 'N'.

       77  FLD0238A                       PIC  9(09)V9(15)
                   VALUE  634521096.430120334908053.
       77  FLD0238B                       PIC  9(06)V9(01)
                   VALUE  198396.3.
       77  FLD0238E                       PIC X  VALUE 'N'.

       77  FLD0239A                       PIC  9(09)V9(16)
                   VALUE  678585779.2924817610824561.
       77  FLD0239B                       PIC  9(09)V9(14)
                   VALUE  614739880.97122655993587.
       77  FLD0239E                       PIC X  VALUE 'N'.

       77  FLD0240A                       PIC  9(10)V9(06)
                   VALUE  4289853576.446766.
       77  FLD0240B                       PIC  9(06)V9(25)
                   VALUE  833165.4817075836438888813972880.
       77  FLD0240E                       PIC X  VALUE 'N'.

       77  FLD0241A                       PIC S9(05)
                   VALUE +14407.
       77  FLD0241B                       PIC  9(09)V9(14)
                   VALUE  608742950.23205993171444.
       77  FLD0241E                       PIC X  VALUE 'N'.

       77  FLD0242A                       PIC  9(10)V9(12)
                   VALUE  5860383854.989427154791.
       77  FLD0242B                       PIC S9(06)V9(01)
                   VALUE +201770.8.
       77  FLD0242E                       PIC X  VALUE 'N'.

       77  FLD0243A                       PIC  9(02)V9(34)
                   VALUE  97.0409660969254295181940506154205650.
       77  FLD0243B                       PIC  9(05)V9(28)
                   VALUE  86928.4847432245544318618613033322.
       77  FLD0243E                       PIC X  VALUE 'N'.

       77  FLD0244A                       PIC S9(01)
                   VALUE +0.
       77  FLD0244B                       PIC  9(09)V9(13)
                   VALUE  596454149.7067354924865.
       77  FLD0244E                       PIC X  VALUE 'N'.

       77  FLD0245A                       PIC S9(09)V9(05)
                   VALUE -371716886.14542.
       77  FLD0245B                       PIC  9(09)V9(15)
                   VALUE  636050719.355519267317333.
       77  FLD0245E                       PIC X  VALUE 'N'.

       77  FLD0246A                       PIC  9(05)V9(28)
                   VALUE  87216.9313623637143528810611314838.
       77  FLD0246B                       PIC  9(06)V9(01)
                   VALUE  208199.5.
       77  FLD0246E                       PIC X  VALUE 'N'.

       77  FLD0247A                       PIC  9(06)V9(25)
                   VALUE  834494.8214770686600871840710169.
       77  FLD0247B                       PIC  9(08)V9(19)
                   VALUE  73372232.8570783122181353519.
       77  FLD0247E                       PIC X  VALUE 'N'.

       77  FLD0248A                       PIC  9(04)V9(29)
                   VALUE  8885.56418584546814365410227765096.
       77  FLD0248B                       PIC  9(10)V9(11)
                   VALUE  5683594830.11341870550.
       77  FLD0248E                       PIC X  VALUE 'N'.

       77  FLD0249A                       PIC  9(09)V9(16)
                   VALUE  678470839.5950102000071524.
       77  FLD0249B                       PIC  9(09)V9(16)
                   VALUE  673175418.3146980707874718.
       77  FLD0249E                       PIC X  VALUE 'N'.

       77  FLD0250A                       PIC  9(09)V9(15)
                   VALUE  643468324.926731005675151.
       77  FLD0250B                       PIC  9(04)V9(30)
                   VALUE  9057.675398841628089385835664870683.
       77  FLD0250E                       PIC X  VALUE 'N'.

       77  FLD0251A                       PIC S9(09)V9(06)
                   VALUE +402548910.007195.
       77  FLD0251B                       PIC  9(06)V9(25)
                   VALUE  830149.1080513825338016431487631.
       77  FLD0251E                       PIC X  VALUE 'N'.

       77  FLD0252A                       PIC S9(05)V9(01)
                   VALUE -18339.3.
       77  FLD0252B                       PIC S9(07)V9(01)
                   VALUE +2343087.3.
       77  FLD0252E                       PIC X  VALUE 'N'.

       77  FLD0253A                       PIC  9(06)V9(25)
                   VALUE  822593.8518184680026124055984837.
       77  FLD0253B                       PIC  9(07)V9(01)
                   VALUE  2159897.7.
       77  FLD0253E                       PIC X  VALUE 'N'.

       77  FLD0254A                       PIC  9(10)V9(10)
                   VALUE  5401895692.3872574193.
       77  FLD0254B                       PIC S9(07)V9(02)
                   VALUE +2405256.16.
       77  FLD0254E                       PIC X  VALUE 'N'.

       77  FLD0255A                       PIC  9(02)V9(34)
                   VALUE  94.8299297085154591080424779647728428.
       77  FLD0255B                       PIC  9(10)V9(10)
                   VALUE  5408143412.7739858030.
       77  FLD0255E                       PIC X  VALUE 'N'.

       77  FLD0256A                       PIC S9(09)V9(08)
                   VALUE -473179644.06591722.
       77  FLD0256B                       PIC  9(04)V9(30)
                   VALUE  9107.434804383051085707734273455571.
       77  FLD0256E                       PIC X  VALUE 'N'.

       77  FLD0257A                       PIC  9(09)V9(12)
                   VALUE  577029491.737192756772.
       77  FLD0257B                       PIC S9(03)
                   VALUE -084.
       77  FLD0257E                       PIC X  VALUE 'N'.

       77  FLD0258A                       PIC  9(10)V9(12)
                   VALUE  5908893351.960881057394.
       77  FLD0258B                       PIC  9(05)V9(27)
                   VALUE  84978.202175808337237583600654033.
       77  FLD0258E                       PIC X  VALUE 'N'.

       77  FLD0259A                       PIC  9(03)V9(32)
                   VALUE  937.55337057593879368511124994256533.
       77  FLD0259B                       PIC S9(09)V9(05)
                   VALUE -374669242.27931.
       77  FLD0259E                       PIC X  VALUE 'N'.

       77  FLD0260A                       PIC  9(05)V9(27)
                   VALUE  86648.984966754782899300835197209.
       77  FLD0260B                       PIC  9(09)V9(13)
                   VALUE  601823310.0433563187436.
       77  FLD0260E                       PIC X  VALUE 'N'.

       77  FLD0261A                       PIC S9(09)V9(05)
                   VALUE -374213925.47904.
       77  FLD0261B                       PIC  9(09)V9(05)
                   VALUE  379885544.06227.
       77  FLD0261E                       PIC X  VALUE 'N'.

       77  FLD0262A                       PIC S9(05)V9(01)
                   VALUE -17015.9.
       77  FLD0262B                       PIC  9(09)V9(17)
                   VALUE  687559565.36759821329241049.
       77  FLD0262E                       PIC X  VALUE 'N'.

       77  FLD0263A                       PIC  9(05)V9(26)
                   VALUE  84046.29767805690265802809335582.
       77  FLD0263B                       PIC S9(02)
                   VALUE -06.
       77  FLD0263E                       PIC X  VALUE 'N'.

       77  FLD0264A                       PIC  9(03)V9(32)
                   VALUE  935.78568596491340514376133796758949.
       77  FLD0264B                       PIC  9(05)V9(01)
                   VALUE  17620.4.
       77  FLD0264E                       PIC X  VALUE 'N'.

       77  FLD0265A                       PIC S9(09)V9(05)
                   VALUE -380334582.15301.
       77  FLD0265B                       PIC  9(01)V9(36)
                   VALUE  9.854231270822284560750858872779645025.
       77  FLD0265E                       PIC X  VALUE 'N'.

       77  FLD0266A                       PIC  9(05)V9(27)
                   VALUE  84707.693570856212872399737534578.
       77  FLD0266B                       PIC  9(02)V9(34)
                   VALUE  96.1883348354436562566149859776487573.
       77  FLD0266E                       PIC X  VALUE 'N'.

       77  FLD0267A                       PIC  9(03)
                   VALUE  087.
       77  FLD0267B                       PIC S9(07)V9(01)
                   VALUE +2348814.4.
       77  FLD0267E                       PIC X  VALUE 'N'.

       77  FLD0268A                       PIC S9(01)
                   VALUE -0.
       77  FLD0268B                       PIC  9(06)V9(25)
                   VALUE  821150.0957830146774085733341053.
       77  FLD0268E                       PIC X  VALUE 'N'.

       77  FLD0269A                       PIC  9(08)V9(18)
                   VALUE  69955495.182247551255727557.
       77  FLD0269B                       PIC  9(01)
                   VALUE  0.
       77  FLD0269E                       PIC X  VALUE 'N'.

       77  FLD0270A                       PIC  9(08)V9(18)
                   VALUE  69584936.933990082508216801.
       77  FLD0270B                       PIC S9(04)
                   VALUE +1200.
       77  FLD0270E                       PIC X  VALUE 'N'.

       77  FLD0271A                       PIC  9(10)V9(07)
                   VALUE  4478155927.4435323.
       77  FLD0271B                       PIC  9(07)V9(02)
                   VALUE  2371664.59.
       77  FLD0271E                       PIC X  VALUE 'N'.

       77  FLD0272A                       PIC S9(09)V9(06)
                   VALUE +411514667.070764.
       77  FLD0272B                       PIC S9(10)V9(08)
                   VALUE -4748492295.95657285.
       77  FLD0272E                       PIC X  VALUE 'N'.

       77  FLD0273A                       PIC  9(10)V9(07)
                   VALUE  4698099460.5024867.
       77  FLD0273B                       PIC S9(10)V9(06)
                   VALUE +4338009792.593093.
       77  FLD0273E                       PIC X  VALUE 'N'.

       77  FLD0274A                       PIC  9(07)V9(01)
                   VALUE  2190249.4.
       77  FLD0274B                       PIC  9(10)V9(10)
                   VALUE  5271665070.2586675958.
       77  FLD0274E                       PIC X  VALUE 'N'.

       77  FLD0275A                       PIC  9(04)
                   VALUE  1157.
       77  FLD0275B                       PIC S9(07)V9(02)
                   VALUE +2422980.94.
       77  FLD0275E                       PIC X  VALUE 'N'.

       77  FLD0276A                       PIC  9(04)V9(30)
                   VALUE  9021.044697283423507983002309629227.
       77  FLD0276B                       PIC  9(02)V9(33)
                   VALUE  94.591784695476577304873444518307223.
       77  FLD0276E                       PIC X  VALUE 'N'.

       77  FLD0277A                       PIC  9(01)V9(36)
                   VALUE  9.749582162084949876756923003995325416.
       77  FLD0277B                       PIC  9(10)V9(08)
                   VALUE  4992154586.01645512.
       77  FLD0277E                       PIC X  VALUE 'N'.

       77  FLD0278A                       PIC  9(10)V9(06)
                   VALUE  4251062706.993476.
       77  FLD0278B                       PIC  9(03)V9(31)
                   VALUE  914.7657257947739983805490737722720.
       77  FLD0278E                       PIC X  VALUE 'N'.

       77  FLD0279A                       PIC S9(08)V9(02)
                   VALUE -27159201.10.
       77  FLD0279B                       PIC  9(03)V9(32)
                   VALUE  921.08160397424898579998853165307082.
       77  FLD0279E                       PIC X  VALUE 'N'.

       77  FLD0280A                       PIC  9(07)V9(02)
                   VALUE  2571968.92.
       77  FLD0280B                       PIC  9(08)V9(19)
                   VALUE  71229222.1254675839148262639.
       77  FLD0280E                       PIC X  VALUE 'N'.

       77  FLD0281A                       PIC S9(09)V9(04)
                   VALUE +342861689.3811.
       77  FLD0281B                       PIC  9(10)V9(07)
                   VALUE  4662459797.7205073.
       77  FLD0281E                       PIC X  VALUE 'N'.

       77  FLD0282A                       PIC S9(10)V9(07)
                   VALUE -4600147325.4430291.
       77  FLD0282B                       PIC  9(07)V9(22)
                   VALUE  7889304.3658446049271049105300.
       77  FLD0282E                       PIC X  VALUE 'N'.

       77  FLD0283A                       PIC  9(01)
                   VALUE  0.
       77  FLD0283B                       PIC S9(05)V9(01)
                   VALUE -18273.9.
       77  FLD0283E                       PIC X  VALUE 'N'.

       77  FLD0284A                       PIC  9(09)V9(17)
                   VALUE  689733171.20512533939802324.
       77  FLD0284B                       PIC  9(01)
                   VALUE  0.
       77  FLD0284E                       PIC X  VALUE 'N'.

       77  FLD0285A                       PIC  9(03)V9(32)
                   VALUE  928.78828230193799520009179104818031.
       77  FLD0285B                       PIC  9(08)V9(20)
                   VALUE  73692142.62351649891158444916.
       77  FLD0285E                       PIC X  VALUE 'N'.

       77  FLD0286A                       PIC  9(08)V9(18)
                   VALUE  70426964.322731444578806758.
       77  FLD0286B                       PIC  9(07)V9(01)
                   VALUE  2181620.7.
       77  FLD0286E                       PIC X  VALUE 'N'.

       77  FLD0287A                       PIC S9(07)V9(02)
                   VALUE -2521413.84.
       77  FLD0287B                       PIC  9(06)
                   VALUE  158585.
       77  FLD0287E                       PIC X  VALUE 'N'.

       77  FLD0288A                       PIC  9(09)V9(17)
                   VALUE  688074525.02240640246355951.
       77  FLD0288B                       PIC  9(04)V9(29)
                   VALUE  8936.92752615119712089608583482913.
       77  FLD0288E                       PIC X  VALUE 'N'.

       77  FLD0289A                       PIC S9(03)
                   VALUE -092.
       77  FLD0289B                       PIC  9(10)V9(11)
                   VALUE  5676330984.14293657540.
       77  FLD0289E                       PIC X  VALUE 'N'.

       77  FLD0290A                       PIC S9(09)V9(05)
                   VALUE -382951207.35442.
       77  FLD0290B                       PIC S9(03)
                   VALUE -094.
       77  FLD0290E                       PIC X  VALUE 'N'.

       77  FLD0291A                       PIC  9(01)V9(36)
                   VALUE  9.859384124391753490002088256005663424.
       77  FLD0291B                       PIC  9(06)V9(25)
                   VALUE  830008.1335268413296191170047677.
       77  FLD0291E                       PIC X  VALUE 'N'.

       77  FLD0292A                       PIC S9(08)V9(03)
                   VALUE +31020519.916.
       77  FLD0292B                       PIC  9(01)
                   VALUE  0.
       77  FLD0292E                       PIC X  VALUE 'N'.

       77  FLD0293A                       PIC S9(03)
                   VALUE -093.
       77  FLD0293B                       PIC  9(08)V9(03)
                   VALUE  30744484.924.
       77  FLD0293E                       PIC X  VALUE 'N'.

       77  FLD0294A                       PIC S9(09)V9(06)
                   VALUE +412445339.504106.
       77  FLD0294B                       PIC  9(01)
                   VALUE  0.
       77  FLD0294E                       PIC X  VALUE 'N'.

       77  FLD0295A                       PIC S9(07)V9(02)
                   VALUE -2502548.06.
       77  FLD0295B                       PIC S9(07)V9(01)
                   VALUE +2138373.7.
       77  FLD0295E                       PIC X  VALUE 'N'.

       77  FLD0296A                       PIC S9(06)
                   VALUE -160918.
       77  FLD0296B                       PIC  9(09)V9(12)
                   VALUE  574303107.736577889141.
       77  FLD0296E                       PIC X  VALUE 'N'.

       77  FLD0297A                       PIC  9(08)V9(03)
                   VALUE  30843552.269.
       77  FLD0297B                       PIC  9(10)V9(09)
                   VALUE  5180156945.333709295.
       77  FLD0297E                       PIC X  VALUE 'N'.

       77  FLD0298A                       PIC S9(10)V9(08)
                   VALUE -4831587379.88150510.
       77  FLD0298B                       PIC  9(01)V9(36)
                   VALUE  9.983859909908295859892746193509083241.
       77  FLD0298E                       PIC X  VALUE 'N'.

       77  FLD0299A                       PIC  9(10)V9(13)
                   VALUE  6064872573.5835784522720.
       77  FLD0299B                       PIC  9(09)V9(16)
                   VALUE  669818284.8844781434038964.
       77  FLD0299E                       PIC X  VALUE 'N'.

       77  FLD0300A                       PIC  9(08)V9(20)
                   VALUE  73956142.30661028409841151187.
       77  FLD0300B                       PIC  9(09)V9(14)
                   VALUE  624082886.12038953502292.
       77  FLD0300E                       PIC X  VALUE 'N'.

       77  FLD0301A                       PIC S9(10)V9(07)
                   VALUE -4524568495.0704084.
       77  FLD0301B                       PIC S9(01)
                   VALUE +0.
       77  FLD0301E                       PIC X  VALUE 'N'.

       77  FLD0302A                       PIC  9(02)V9(34)
                   VALUE  94.9764690231816866017311440373305231.
       77  FLD0302B                       PIC  9(10)V9(06)
                   VALUE  4291773437.216153.
       77  FLD0302E                       PIC X  VALUE 'N'.

       77  FLD0303A                       PIC  9(01)V9(36)
                   VALUE  9.998247249142951931233369577967096120.
       77  FLD0303B                       PIC  9(01)
                   VALUE  0.
       77  FLD0303E                       PIC X  VALUE 'N'.

       77  FLD0304A                       PIC S9(03)
                   VALUE -083.
       77  FLD0304B                       PIC  9(10)V9(11)
                   VALUE  5565734306.84127234968.
       77  FLD0304E                       PIC X  VALUE 'N'.

       77  FLD0305A                       PIC  9(09)V9(03)
                   VALUE  328435884.788.
       77  FLD0305B                       PIC S9(01)
                   VALUE +0.
       77  FLD0305E                       PIC X  VALUE 'N'.

       77  FLD0306A                       PIC S9(03)
                   VALUE -083.
       77  FLD0306B                       PIC S9(10)V9(08)
                   VALUE -4936418970.17687181.
       77  FLD0306E                       PIC X  VALUE 'N'.

       77  FLD0307A                       PIC  9(10)V9(10)
                   VALUE  5430567751.9659767416.
       77  FLD0307B                       PIC  9(03)V9(32)
                   VALUE  928.08547489686554765597747973515652.
       77  FLD0307E                       PIC X  VALUE 'N'.

       77  FLD0308A                       PIC  9(09)V9(05)
                   VALUE  377189267.62120.
       77  FLD0308B                       PIC  9(02)V9(34)
                   VALUE  96.4274365663057242414879510761238634.
       77  FLD0308E                       PIC X  VALUE 'N'.

       77  FLD0309A                       PIC  9(09)V9(03)
                   VALUE  325461096.612.
       77  FLD0309B                       PIC S9(03)
                   VALUE -093.
       77  FLD0309E                       PIC X  VALUE 'N'.

       77  FLD0310A                       PIC  9(09)V9(05)
                   VALUE  377541451.37210.
       77  FLD0310B                       PIC  9(09)V9(06)
                   VALUE  416709099.760976.
       77  FLD0310E                       PIC X  VALUE 'N'.

       77  FLD0311A                       PIC S9(02)
                   VALUE -06.
       77  FLD0311B                       PIC  9(01)V9(36)
                   VALUE  9.931117203050255914931199185957666486.
       77  FLD0311E                       PIC X  VALUE 'N'.

       77  FLD0312A                       PIC S9(10)V9(07)
                   VALUE -4631183834.9707568.
       77  FLD0312B                       PIC  9(01)
                   VALUE  0.
       77  FLD0312E                       PIC X  VALUE 'N'.

       77  FLD0313A                       PIC  9(05)V9(27)
                   VALUE  86493.365621715367907995641871821.
       77  FLD0313B                       PIC  9(09)V9(05)
                   VALUE  375066571.23058.
       77  FLD0313E                       PIC X  VALUE 'N'.

       77  FLD0314A                       PIC  9(03)
                   VALUE  088.
       77  FLD0314B                       PIC  9(08)V9(18)
                   VALUE  69720866.107690404600560896.
       77  FLD0314E                       PIC X  VALUE 'N'.

       77  FLD0315A                       PIC  9(07)V9(23)
                   VALUE  7933336.74589681625555215305212.
       77  FLD0315B                       PIC  9(09)V9(17)
                   VALUE  688307785.43204196306959374.
       77  FLD0315E                       PIC X  VALUE 'N'.

       77  FLD0316A                       PIC  9(06)V9(01)
                   VALUE  195827.4.
       77  FLD0316B                       PIC  9(10)V9(11)
                   VALUE  5611864585.06384822086.
       77  FLD0316E                       PIC X  VALUE 'N'.

       77  FLD0317A                       PIC  9(10)V9(08)
                   VALUE  4983225307.65216153.
       77  FLD0317B                       PIC S9(09)V9(03)
                   VALUE +331361572.492.
       77  FLD0317E                       PIC X  VALUE 'N'.

       77  FLD0318A                       PIC  9(08)V9(02)
                   VALUE  26926374.69.
       77  FLD0318B                       PIC  9(04)V9(29)
                   VALUE  8825.34717446214034275442372745601.
       77  FLD0318E                       PIC X  VALUE 'N'.

       77  FLD0319A                       PIC  9(08)V9(18)
                   VALUE  69931441.978879860243978328.
       77  FLD0319B                       PIC  9(09)V9(15)
                   VALUE  650439668.121860714578019.
       77  FLD0319E                       PIC X  VALUE 'N'.

       77  FLD0320A                       PIC  9(08)V9(19)
                   VALUE  71973495.8824565840274090078.
       77  FLD0320B                       PIC  9(10)V9(11)
                   VALUE  5542215777.53993832615.
       77  FLD0320E                       PIC X  VALUE 'N'.

       77  FLD0321A                       PIC  9(10)V9(09)
                   VALUE  5005504874.853489161.
       77  FLD0321B                       PIC  9(09)V9(16)
                   VALUE  660163921.0521921263818967.
       77  FLD0321E                       PIC X  VALUE 'N'.

       77  FLD0322A                       PIC S9(09)V9(07)
                   VALUE +442005310.2249054.
       77  FLD0322B                       PIC  9(09)V9(14)
                   VALUE  617916374.92097983841432.
       77  FLD0322E                       PIC X  VALUE 'N'.

       77  FLD0323A                       PIC S9(05)
                   VALUE -15097.
       77  FLD0323B                       PIC  9(01)V9(35)
                   VALUE  9.73366140153258840861383305309573188.
       77  FLD0323E                       PIC X  VALUE 'N'.

       77  FLD0324A                       PIC  9(10)V9(11)
                   VALUE  5601604504.75820970162.
       77  FLD0324B                       PIC  9(10)V9(10)
                   VALUE  5319146871.9734047443.
       77  FLD0324E                       PIC X  VALUE 'N'.

       77  FLD0325A                       PIC  9(04)
                   VALUE  1169.
       77  FLD0325B                       PIC  9(08)V9(19)
                   VALUE  72332591.2353324218528882738.
       77  FLD0325E                       PIC X  VALUE 'N'.

       77  FLD0326A                       PIC S9(08)V9(03)
                   VALUE +31312044.720.
       77  FLD0326B                       PIC S9(02)
                   VALUE -05.
       77  FLD0326E                       PIC X  VALUE 'N'.

       77  FLD0327A                       PIC S9(03)
                   VALUE -090.
       77  FLD0327B                       PIC S9(07)V9(01)
                   VALUE +2122536.7.
       77  FLD0327E                       PIC X  VALUE 'N'.

       77  FLD0328A                       PIC  9(08)V9(19)
                   VALUE  71147504.7716873310044150002.
       77  FLD0328B                       PIC S9(09)V9(05)
                   VALUE -393175029.86891.
       77  FLD0328E                       PIC X  VALUE 'N'.

       77  FLD0329A                       PIC S9(01)
                   VALUE +0.
       77  FLD0329B                       PIC  9(02)V9(34)
                   VALUE  95.2096907591406971249625712516717612.
       77  FLD0329E                       PIC X  VALUE 'N'.

       77  FLD0330A                       PIC  9(09)V9(07)
                   VALUE  445280746.1581723.
       77  FLD0330B                       PIC  9(07)V9(23)
                   VALUE  7955244.25555017788980194382020.
       77  FLD0330E                       PIC X  VALUE 'N'.

       77  FLD0331A                       PIC S9(07)V9(01)
                   VALUE +2232816.8.
       77  FLD0331B                       PIC  9(08)V9(02)
                   VALUE  27670053.03.
       77  FLD0331E                       PIC X  VALUE 'N'.

       77  FLD0332A                       PIC  9(05)V9(27)
                   VALUE  86562.988696340348315771962006692.
       77  FLD0332B                       PIC  9(09)V9(04)
                   VALUE  355930982.9079.
       77  FLD0332E                       PIC X  VALUE 'N'.

       77  FLD0333A                       PIC  9(02)V9(34)
                   VALUE  95.6494138775326296908474432711955159.
       77  FLD0333B                       PIC S9(07)V9(02)
                   VALUE +2431333.31.
       77  FLD0333E                       PIC X  VALUE 'N'.

       77  FLD0334A                       PIC  9(08)V9(03)
                   VALUE  28999492.466.
       77  FLD0334B                       PIC  9(09)V9(03)
                   VALUE  326043905.981.
       77  FLD0334E                       PIC X  VALUE 'N'.

       77  FLD0335A                       PIC S9(08)V9(03)
                   VALUE +30334218.791.
       77  FLD0335B                       PIC  9(10)V9(09)
                   VALUE  5075855226.668805064.
       77  FLD0335E                       PIC X  VALUE 'N'.

       77  FLD0336A                       PIC  9(05)V9(27)
                   VALUE  85800.255545984371874368434873758.
       77  FLD0336B                       PIC S9(08)V9(03)
                   VALUE -29245898.644.
       77  FLD0336E                       PIC X  VALUE 'N'.

       77  FLD0337A                       PIC  9(08)V9(19)
                   VALUE  72003996.5448931451597047725.
       77  FLD0337B                       PIC  9(08)V9(19)
                   VALUE  71409231.4076567258318561925.
       77  FLD0337E                       PIC X  VALUE 'N'.

       77  FLD0338A                       PIC S9(01)
                   VALUE -0.
       77  FLD0338B                       PIC  9(10)V9(10)
                   VALUE  5304768900.0456310637.
       77  FLD0338E                       PIC X  VALUE 'N'.

       77  FLD0339A                       PIC S9(06)
                   VALUE -160552.
       77  FLD0339B                       PIC  9(09)V9(13)
                   VALUE  594533435.7259434154840.
       77  FLD0339E                       PIC X  VALUE 'N'.

       77  FLD0340A                       PIC  9(10)V9(09)
                   VALUE  5028381651.473269320.
       77  FLD0340B                       PIC S9(09)V9(04)
                   VALUE -361499697.6055.
       77  FLD0340E                       PIC X  VALUE 'N'.

       77  FLD0341A                       PIC  9(10)V9(11)
                   VALUE  5676316159.01010966318.
       77  FLD0341B                       PIC  9(09)V9(12)
                   VALUE  572076310.146404809486.
       77  FLD0341E                       PIC X  VALUE 'N'.

       77  FLD0342A                       PIC S9(07)V9(01)
                   VALUE +2347143.0.
       77  FLD0342B                       PIC S9(10)V9(07)
                   VALUE -4530575977.8135124.
       77  FLD0342E                       PIC X  VALUE 'N'.

       77  FLD0343A                       PIC  9(08)V9(19)
                   VALUE  72866356.1504289902792663724.
       77  FLD0343B                       PIC  9(06)V9(01)
                   VALUE  195736.6.
       77  FLD0343E                       PIC X  VALUE 'N'.

       77  FLD0344A                       PIC  9(09)V9(07)
                   VALUE  439744878.9947105.
       77  FLD0344B                       PIC  9(04)V9(29)
                   VALUE  8815.39565612843856179381418769480.
       77  FLD0344E                       PIC X  VALUE 'N'.

       77  FLD0345A                       PIC  9(01)
                   VALUE  0.
       77  FLD0345B                       PIC  9(09)V9(06)
                   VALUE  405441574.894889.
       77  FLD0345E                       PIC X  VALUE 'N'.

       77  FLD0346A                       PIC  9(07)V9(22)
                   VALUE  7807860.0333687642187641131386.
       77  FLD0346B                       PIC  9(09)V9(16)
                   VALUE  674345587.8778652490268541.
       77  FLD0346E                       PIC X  VALUE 'N'.

       77  FLD0347A                       PIC  9(08)V9(18)
                   VALUE  70165985.253748408556617732.
       77  FLD0347B                       PIC  9(06)
                   VALUE  158396.
       77  FLD0347E                       PIC X  VALUE 'N'.

       77  FLD0348A                       PIC  9(08)V9(04)
                   VALUE  33778742.7133.
       77  FLD0348B                       PIC  9(09)V9(12)
                   VALUE  575387126.330844100863.
       77  FLD0348E                       PIC X  VALUE 'N'.

       77  FLD0349A                       PIC  9(10)V9(09)
                   VALUE  5122785066.779668161.
       77  FLD0349B                       PIC  9(03)V9(32)
                   VALUE  924.84903066843715535583214659709483.
       77  FLD0349E                       PIC X  VALUE 'N'.

       77  FLD0350A                       PIC  9(02)
                   VALUE  07.
       77  FLD0350B                       PIC  9(06)V9(25)
                   VALUE  826494.1389960360762501068165875.
       77  FLD0350E                       PIC X  VALUE 'N'.

       77  FLD0351A                       PIC  9(05)V9(27)
                   VALUE  84942.576912519174303639601930626.
       77  FLD0351B                       PIC  9(10)V9(10)
                   VALUE  5388327188.5283523516.
       77  FLD0351E                       PIC X  VALUE 'N'.

       77  FLD0352A                       PIC  9(03)V9(32)
                   VALUE  937.88592938035042489985926295048557.
       77  FLD0352B                       PIC  9(06)V9(01)
                   VALUE  195629.8.
       77  FLD0352E                       PIC X  VALUE 'N'.

       77  FLD0353A                       PIC S9(07)V9(02)
                   VALUE -2544588.73.
       77  FLD0353B                       PIC  9(02)V9(33)
                   VALUE  94.340663054368900652946194895775988.
       77  FLD0353E                       PIC X  VALUE 'N'.

       77  FLD0354A                       PIC  9(07)V9(01)
                   VALUE  2152460.4.
       77  FLD0354B                       PIC S9(08)V9(03)
                   VALUE -29015200.342.
       77  FLD0354E                       PIC X  VALUE 'N'.

       77  FLD0355A                       PIC  9(06)V9(01)
                   VALUE  208715.4.
       77  FLD0355B                       PIC S9(05)
                   VALUE -15428.
       77  FLD0355E                       PIC X  VALUE 'N'.

       77  FLD0356A                       PIC S9(09)V9(05)
                   VALUE -391398983.37050.
       77  FLD0356B                       PIC  9(05)V9(27)
                   VALUE  84690.187478976841628508509529638.
       77  FLD0356E                       PIC X  VALUE 'N'.

       77  FLD0357A                       PIC  9(10)V9(10)
                   VALUE  5323345989.0667944591.
       77  FLD0357B                       PIC  9(03)
                   VALUE  079.
       77  FLD0357E                       PIC X  VALUE 'N'.

       77  FLD0358A                       PIC  9(08)V9(03)
                   VALUE  29848403.943.
       77  FLD0358B                       PIC  9(09)V9(17)
                   VALUE  688595894.53938552239264936.
       77  FLD0358E                       PIC X  VALUE 'N'.

       77  FLD0359A                       PIC  9(07)V9(22)
                   VALUE  7654789.5985185210321333215688.
       77  FLD0359B                       PIC  9(01)V9(36)
                   VALUE  9.927521413787718795873615817981772124.
       77  FLD0359E                       PIC X  VALUE 'N'.

       77  FLD0360A                       PIC S9(09)V9(06)
                   VALUE +400277612.276280.
       77  FLD0360B                       PIC  9(08)V9(02)
                   VALUE  26666225.04.
       77  FLD0360E                       PIC X  VALUE 'N'.

       77  FLD0361A                       PIC  9(06)V9(25)
                   VALUE  823089.8044061112361902132761315.
       77  FLD0361B                       PIC  9(05)V9(27)
                   VALUE  84762.044237681810621154454565839.
       77  FLD0361E                       PIC X  VALUE 'N'.

       77  FLD0362A                       PIC S9(01)
                   VALUE -0.
       77  FLD0362B                       PIC  9(04)V9(30)
                   VALUE  8970.899599407193836242413453874178.
       77  FLD0362E                       PIC X  VALUE 'N'.

       77  FLD0363A                       PIC  9(09)V9(04)
                   VALUE  358575926.2078.
       77  FLD0363B                       PIC  9(04)V9(30)
                   VALUE  9034.927431796696550847514117776881.
       77  FLD0363E                       PIC X  VALUE 'N'.

       77  FLD0364A                       PIC S9(04)
                   VALUE +1234.
       77  FLD0364B                       PIC  9(06)V9(25)
                   VALUE  830028.0009277749559970516202156.
       77  FLD0364E                       PIC X  VALUE 'N'.

       77  FLD0365A                       PIC  9(09)V9(11)
                   VALUE  551967009.62472056151.
       77  FLD0365B                       PIC  9(09)V9(16)
                   VALUE  658782379.9892106313436102.
       77  FLD0365E                       PIC X  VALUE 'N'.

       77  FLD0366A                       PIC  9(06)V9(25)
                   VALUE  822414.3642778768414913770357088.
       77  FLD0366B                       PIC  9(06)V9(25)
                   VALUE  838180.2974044693099742175945721.
       77  FLD0366E                       PIC X  VALUE 'N'.

       77  FLD0367A                       PIC  9(09)V9(13)
                   VALUE  595975436.9256639039420.
       77  FLD0367B                       PIC S9(06)V9(01)
                   VALUE -191378.3.
       77  FLD0367E                       PIC X  VALUE 'N'.

       77  FLD0368A                       PIC  9(05)
                   VALUE  15663.
       77  FLD0368B                       PIC  9(01)
                   VALUE  0.
       77  FLD0368E                       PIC X  VALUE 'N'.

       77  FLD0369A                       PIC  9(01)
                   VALUE  0.
       77  FLD0369B                       PIC S9(08)V9(03)
                   VALUE +31224128.387.
       77  FLD0369E                       PIC X  VALUE 'N'.

       77  FLD0370A                       PIC  9(01)
                   VALUE  0.
       77  FLD0370B                       PIC S9(01)
                   VALUE -0.
       77  FLD0370E                       PIC X  VALUE 'N'.

       77  FLD0371A                       PIC S9(01)
                   VALUE +0.
       77  FLD0371B                       PIC S9(03)
                   VALUE -082.
       77  FLD0371E                       PIC X  VALUE 'N'.

       77  FLD0372A                       PIC  9(10)V9(09)
                   VALUE  5067586024.551302692.
       77  FLD0372B                       PIC  9(10)V9(09)
                   VALUE  5017586497.117959565.
       77  FLD0372E                       PIC X  VALUE 'N'.

       77  FLD0373A                       PIC  9(09)V9(16)
                   VALUE  660730415.8912360447786227.
       77  FLD0373B                       PIC S9(09)V9(04)
                   VALUE -352559577.5040.
       77  FLD0373E                       PIC X  VALUE 'N'.

       77  FLD0374A                       PIC  9(01)
                   VALUE  0.
       77  FLD0374B                       PIC  9(08)V9(19)
                   VALUE  71126449.7973442155753787119.
       77  FLD0374E                       PIC X  VALUE 'N'.

       77  FLD0375A                       PIC  9(07)V9(22)
                   VALUE  7816763.9605777072819847717255.
       77  FLD0375B                       PIC  9(01)
                   VALUE  0.
       77  FLD0375E                       PIC X  VALUE 'N'.

       77  FLD0376A                       PIC  9(05)V9(27)
                   VALUE  84980.958923270843996533585595898.
       77  FLD0376B                       PIC  9(10)V9(09)
                   VALUE  5240094598.000759607.
       77  FLD0376E                       PIC X  VALUE 'N'.

       77  FLD0377A                       PIC  9(02)V9(34)
                   VALUE  96.7759547981370871205797357106348499.
       77  FLD0377B                       PIC  9(07)V9(22)
                   VALUE  7813622.4062247550126159012506.
       77  FLD0377E                       PIC X  VALUE 'N'.

       77  FLD0378A                       PIC S9(01)
                   VALUE -0.
       77  FLD0378B                       PIC S9(06)
                   VALUE -163135.
       77  FLD0378E                       PIC X  VALUE 'N'.

       77  FLD0379A                       PIC  9(10)V9(10)
                   VALUE  5351160784.1302399890.
       77  FLD0379B                       PIC  9(01)
                   VALUE  0.
       77  FLD0379E                       PIC X  VALUE 'N'.

       77  FLD0380A                       PIC  9(09)V9(03)
                   VALUE  318886259.138.
       77  FLD0380B                       PIC S9(01)
                   VALUE +0.
       77  FLD0380E                       PIC X  VALUE 'N'.

       77  FLD0381A                       PIC  9(10)V9(09)
                   VALUE  5188977124.912377281.
       77  FLD0381B                       PIC  9(03)
                   VALUE  096.
       77  FLD0381E                       PIC X  VALUE 'N'.

       77  FLD0382A                       PIC  9(10)V9(10)
                   VALUE  5469463185.9002762475.
       77  FLD0382B                       PIC  9(04)
                   VALUE  1276.
       77  FLD0382E                       PIC X  VALUE 'N'.

       77  FLD0383A                       PIC  9(04)V9(29)
                   VALUE  8846.28028341020278269013488170458.
       77  FLD0383B                       PIC  9(06)V9(24)
                   VALUE  801588.906111812216082057602761.
       77  FLD0383E                       PIC X  VALUE 'N'.

       77  FLD0384A                       PIC S9(07)V9(02)
                   VALUE +2410021.83.
       77  FLD0384B                       PIC  9(01)
                   VALUE  0.
       77  FLD0384E                       PIC X  VALUE 'N'.

       77  FLD0385A                       PIC  9(09)V9(14)
                   VALUE  616198826.41569234671408.
       77  FLD0385B                       PIC  9(04)V9(29)
                   VALUE  8914.93363280043138452413131744833.
       77  FLD0385E                       PIC X  VALUE 'N'.

       77  FLD0386A                       PIC  9(10)V9(11)
                   VALUE  5671006446.22052230126.
       77  FLD0386B                       PIC  9(07)V9(21)
                   VALUE  7538453.430795608589676248811.
       77  FLD0386E                       PIC X  VALUE 'N'.

       77  FLD0387A                       PIC  9(08)V9(03)
                   VALUE  30516405.931.
       77  FLD0387B                       PIC  9(09)V9(16)
                   VALUE  660134959.6835575095354897.
       77  FLD0387E                       PIC X  VALUE 'N'.

       77  FLD0388A                       PIC  9(10)V9(11)
                   VALUE  5691303425.20841603359.
       77  FLD0388B                       PIC  9(03)
                   VALUE  099.
       77  FLD0388E                       PIC X  VALUE 'N'.

       77  FLD0389A                       PIC S9(10)V9(06)
                   VALUE +4300560615.719126.
       77  FLD0389B                       PIC  9(10)V9(12)
                   VALUE  5882065365.633618592156.
       77  FLD0389E                       PIC X  VALUE 'N'.

       77  FLD0390A                       PIC S9(02)
                   VALUE -07.
       77  FLD0390B                       PIC  9(03)
                   VALUE  095.
       77  FLD0390E                       PIC X  VALUE 'N'.

       77  FLD0391A                       PIC S9(08)V9(03)
                   VALUE +30066642.536.
       77  FLD0391B                       PIC S9(08)V9(02)
                   VALUE -26329271.26.
       77  FLD0391E                       PIC X  VALUE 'N'.

       77  FLD0392A                       PIC  9(02)V9(34)
                   VALUE  95.7627258628673261320329856971511617.
       77  FLD0392B                       PIC  9(10)V9(07)
                   VALUE  4682510725.0510572.
       77  FLD0392E                       PIC X  VALUE 'N'.

       77  FLD0393A                       PIC  9(02)
                   VALUE  05.
       77  FLD0393B                       PIC  9(04)V9(30)
                   VALUE  9067.420163680885991652758093550801.
       77  FLD0393E                       PIC X  VALUE 'N'.

       77  FLD0394A                       PIC  9(05)V9(01)
                   VALUE  16807.8.
       77  FLD0394B                       PIC S9(10)V9(08)
                   VALUE -4746288002.63585892.
       77  FLD0394E                       PIC X  VALUE 'N'.

       77  FLD0395A                       PIC  9(10)V9(09)
                   VALUE  5206691882.901124390.
       77  FLD0395B                       PIC S9(01)
                   VALUE +0.
       77  FLD0395E                       PIC X  VALUE 'N'.

       77  FLD0396A                       PIC  9(09)V9(06)
                   VALUE  419939827.280791.
       77  FLD0396B                       PIC  9(09)V9(07)
                   VALUE  446487444.5871826.
       77  FLD0396E                       PIC X  VALUE 'N'.

       77  FLD0397A                       PIC  9(05)V9(27)
                   VALUE  85569.982924983467587054519754019.
       77  FLD0397B                       PIC S9(02)
                   VALUE -07.
       77  FLD0397E                       PIC X  VALUE 'N'.

       77  FLD0398A                       PIC  9(05)V9(26)
                   VALUE  84110.85692078776876456913669244.
       77  FLD0398B                       PIC S9(08)V9(02)
                   VALUE -28358417.67.
       77  FLD0398E                       PIC X  VALUE 'N'.

       77  FLD0399A                       PIC  9(05)V9(27)
                   VALUE  86215.377080746946614198122915695.
       77  FLD0399B                       PIC  9(07)V9(02)
                   VALUE  2481207.70.
       77  FLD0399E                       PIC X  VALUE 'N'.

       77  FLD0400A                       PIC  9(10)V9(08)
                   VALUE  4880703034.67910082.
       77  FLD0400B                       PIC  9(06)V9(25)
                   VALUE  835199.6491942943467989834971376.
       77  FLD0400E                       PIC X  VALUE 'N'.

       77  FLD0401A                       PIC  9(08)V9(03)
                   VALUE  30757829.425.
       77  FLD0401B                       PIC  9(01)
                   VALUE  0.
       77  FLD0401E                       PIC X  VALUE 'N'.

       77  FLD0402A                       PIC  9(04)V9(29)
                   VALUE  8843.41306989221531686951038864208.
       77  FLD0402B                       PIC  9(08)V9(18)
                   VALUE  69652895.633901057426129455.
       77  FLD0402E                       PIC X  VALUE 'N'.

       77  FLD0403A                       PIC  9(10)V9(10)
                   VALUE  5351391185.2119278034.
       77  FLD0403B                       PIC  9(03)V9(32)
                   VALUE  939.96913575689089448417234962107613.
       77  FLD0403E                       PIC X  VALUE 'N'.

       77  FLD0404A                       PIC S9(10)V9(08)
                   VALUE -4810592903.51378177.
       77  FLD0404B                       PIC  9(09)V9(16)
                   VALUE  670850774.7441430080215241.
       77  FLD0404E                       PIC X  VALUE 'N'.

       77  FLD0405A                       PIC S9(09)V9(04)
                   VALUE -360620744.0007.
       77  FLD0405B                       PIC S9(05)
                   VALUE +14133.
       77  FLD0405E                       PIC X  VALUE 'N'.

       77  FLD0406A                       PIC S9(07)V9(02)
                   VALUE -2503018.94.
       77  FLD0406B                       PIC  9(07)V9(23)
                   VALUE  7996063.91391730064732712435215.
       77  FLD0406E                       PIC X  VALUE 'N'.

       77  FLD0407A                       PIC  9(09)V9(13)
                   VALUE  592634898.8738083800598.
       77  FLD0407B                       PIC  9(01)V9(36)
                   VALUE  9.879241102928391082826919955550692975.
       77  FLD0407E                       PIC X  VALUE 'N'.

       77  FLD0408A                       PIC  9(09)V9(07)
                   VALUE  438100099.1119252.
       77  FLD0408B                       PIC  9(08)V9(02)
                   VALUE  28626783.20.
       77  FLD0408E                       PIC X  VALUE 'N'.

       77  FLD0409A                       PIC  9(08)V9(02)
                   VALUE  28575188.65.
       77  FLD0409B                       PIC  9(09)V9(12)
                   VALUE  576691261.515216657684.
       77  FLD0409E                       PIC X  VALUE 'N'.

       77  FLD0410A                       PIC  9(09)V9(14)
                   VALUE  615937928.60877261130525.
       77  FLD0410B                       PIC  9(01)V9(36)
                   VALUE  9.822719722312858170454319406417198479.
       77  FLD0410E                       PIC X  VALUE 'N'.

       77  FLD0411A                       PIC  9(09)V9(17)
                   VALUE  688573322.26995748847286904.
       77  FLD0411B                       PIC  9(07)V9(22)
                   VALUE  7775778.4281136710369253250973.
       77  FLD0411E                       PIC X  VALUE 'N'.

       77  FLD0412A                       PIC  9(09)V9(12)
                   VALUE  572677017.522024045526.
       77  FLD0412B                       PIC S9(01)
                   VALUE +0.
       77  FLD0412E                       PIC X  VALUE 'N'.

       77  FLD0413A                       PIC  9(06)V9(25)
                   VALUE  828822.6462986850728853482905833.
       77  FLD0413B                       PIC S9(01)
                   VALUE +0.
       77  FLD0413E                       PIC X  VALUE 'N'.

       77  FLD0414A                       PIC  9(05)V9(27)
                   VALUE  84413.303017262042438062508153961.
       77  FLD0414B                       PIC S9(05)
                   VALUE -15377.
       77  FLD0414E                       PIC X  VALUE 'N'.

       77  FLD0415A                       PIC  9(09)V9(15)
                   VALUE  650722988.227690701812377.
       77  FLD0415B                       PIC  9(03)V9(31)
                   VALUE  919.0351051613949717733476063585840.
       77  FLD0415E                       PIC X  VALUE 'N'.

       77  FLD0416A                       PIC  9(09)V9(16)
                   VALUE  675584038.8269652718733482.
       77  FLD0416B                       PIC S9(01)
                   VALUE +0.
       77  FLD0416E                       PIC X  VALUE 'N'.

       77  FLD0417A                       PIC  9(03)V9(32)
                   VALUE  942.59186417160190085695603556814603.
       77  FLD0417B                       PIC  9(04)V9(29)
                   VALUE  8943.54109346381376255408213182818.
       77  FLD0417E                       PIC X  VALUE 'N'.

       77  FLD0418A                       PIC  9(01)
                   VALUE  0.
       77  FLD0418B                       PIC  9(01)
                   VALUE  0.
       77  FLD0418E                       PIC X  VALUE 'N'.

       77  FLD0419A                       PIC  9(09)V9(06)
                   VALUE  415695619.544491.
       77  FLD0419B                       PIC  9(10)V9(10)
                   VALUE  5349169017.3884820502.
       77  FLD0419E                       PIC X  VALUE 'N'.

       77  FLD0420A                       PIC  9(08)V9(02)
                   VALUE  26881191.37.
       77  FLD0420B                       PIC  9(04)V9(30)
                   VALUE  9092.387304867948216724471421912312.
       77  FLD0420E                       PIC X  VALUE 'N'.

       77  FLD0421A                       PIC  9(08)V9(19)
                   VALUE  71124707.9077118260492795798.
       77  FLD0421B                       PIC S9(06)V9(01)
                   VALUE +210383.3.
       77  FLD0421E                       PIC X  VALUE 'N'.

       77  FLD0422A                       PIC  9(08)V9(18)
                   VALUE  69276472.004700051510184266.
       77  FLD0422B                       PIC  9(02)V9(34)
                   VALUE  96.7464238557165900900258748151827603.
       77  FLD0422E                       PIC X  VALUE 'N'.

       77  FLD0423A                       PIC  9(09)V9(13)
                   VALUE  595417774.2919815052857.
       77  FLD0423B                       PIC  9(09)V9(17)
                   VALUE  689527286.14626146441679566.
       77  FLD0423E                       PIC X  VALUE 'N'.

       77  FLD0424A                       PIC  9(09)V9(11)
                   VALUE  551151541.59885582085.
       77  FLD0424B                       PIC  9(08)V9(19)
                   VALUE  72724692.5117367437607640567.
       77  FLD0424E                       PIC X  VALUE 'N'.

       77  FLD0425A                       PIC S9(10)V9(08)
                   VALUE -4741628720.81754727.
       77  FLD0425B                       PIC  9(10)V9(12)
                   VALUE  5846836543.074439562772.
       77  FLD0425E                       PIC X  VALUE 'N'.

       77  FLD0426A                       PIC  9(10)V9(11)
                   VALUE  5601456695.80725313885.
       77  FLD0426B                       PIC  9(10)V9(11)
                   VALUE  5581868249.31393821280.
       77  FLD0426E                       PIC X  VALUE 'N'.

       77  FLD0427A                       PIC  9(09)V9(04)
                   VALUE  365284621.5641.
       77  FLD0427B                       PIC  9(07)V9(22)
                   VALUE  7792109.4871910845380824639505.
       77  FLD0427E                       PIC X  VALUE 'N'.

       77  FLD0428A                       PIC  9(05)V9(27)
                   VALUE  85913.234918316627730661139139556.
       77  FLD0428B                       PIC  9(01)V9(36)
                   VALUE  9.753152813075189886404814387788064777.
       77  FLD0428E                       PIC X  VALUE 'N'.

       77  FLD0429A                       PIC  9(07)V9(22)
                   VALUE  7833347.6062909002113343603923.
       77  FLD0429B                       PIC  9(09)V9(06)
                   VALUE  415311789.274485.
       77  FLD0429E                       PIC X  VALUE 'N'.

       77  FLD0430A                       PIC  9(08)V9(03)
                   VALUE  30820998.502.
       77  FLD0430B                       PIC  9(09)V9(04)
                   VALUE  345613119.3468.
       77  FLD0430E                       PIC X  VALUE 'N'.

       77  FLD0431A                       PIC S9(01)
                   VALUE +0.
       77  FLD0431B                       PIC  9(03)V9(31)
                   VALUE  920.3928254587173674039490833820309.
       77  FLD0431E                       PIC X  VALUE 'N'.

       77  FLD0432A                       PIC  9(10)V9(11)
                   VALUE  5612307034.00538710745.
       77  FLD0432B                       PIC S9(06)
                   VALUE -161655.
       77  FLD0432E                       PIC X  VALUE 'N'.

       77  FLD0433A                       PIC  9(08)V9(19)
                   VALUE  72012955.8244768763763943297.
       77  FLD0433B                       PIC  9(06)V9(01)
                   VALUE  206502.1.
       77  FLD0433E                       PIC X  VALUE 'N'.

       77  FLD0434A                       PIC S9(10)V9(07)
                   VALUE -4547054675.3415619.
       77  FLD0434B                       PIC  9(03)V9(32)
                   VALUE  931.50114075800283242045907172723673.
       77  FLD0434E                       PIC X  VALUE 'N'.

       77  FLD0435A                       PIC  9(03)
                   VALUE  087.
       77  FLD0435B                       PIC  9(10)V9(12)
                   VALUE  5848414344.863717140299.
       77  FLD0435E                       PIC X  VALUE 'N'.

       77  FLD0436A                       PIC S9(01)
                   VALUE +0.
       77  FLD0436B                       PIC  9(06)V9(25)
                   VALUE  830719.5843004202551185244374210.
       77  FLD0436E                       PIC X  VALUE 'N'.

       77  FLD0437A                       PIC  9(09)V9(15)
                   VALUE  632897272.198471361193128.
       77  FLD0437B                       PIC  9(09)V9(15)
                   VALUE  644015379.475938010145341.
       77  FLD0437E                       PIC X  VALUE 'N'.

       77  FLD0438A                       PIC  9(09)V9(16)
                   VALUE  664694021.6365745390802999.
       77  FLD0438B                       PIC  9(05)V9(28)
                   VALUE  87427.7230957161255453513604152249.
       77  FLD0438E                       PIC X  VALUE 'N'.

       77  FLD0439A                       PIC  9(10)V9(08)
                   VALUE  4961134805.43429519.
       77  FLD0439B                       PIC  9(10)V9(11)
                   VALUE  5610850764.78219813012.
       77  FLD0439E                       PIC X  VALUE 'N'.

       77  FLD0440A                       PIC  9(04)V9(29)
                   VALUE  8899.07507055040514210020319296745.
       77  FLD0440B                       PIC  9(10)V9(07)
                   VALUE  4554701137.8932739.
       77  FLD0440E                       PIC X  VALUE 'N'.

       77  FLD0441A                       PIC  9(08)V9(19)
                   VALUE  71126905.4406556744396539215.
       77  FLD0441B                       PIC S9(10)V9(06)
                   VALUE +4339238601.837461.
       77  FLD0441E                       PIC X  VALUE 'N'.

       77  FLD0442A                       PIC  9(05)V9(01)
                   VALUE  16995.1.
       77  FLD0442B                       PIC  9(03)V9(31)
                   VALUE  915.7753741786495149668212434335146.
       77  FLD0442E                       PIC X  VALUE 'N'.

       77  FLD0443A                       PIC S9(10)V9(08)
                   VALUE -4744984255.46487689.
       77  FLD0443B                       PIC  9(09)V9(14)
                   VALUE  620915031.52970173307068.
       77  FLD0443E                       PIC X  VALUE 'N'.

       77  FLD0444A                       PIC  9(02)V9(33)
                   VALUE  94.673816662087151296844922399031929.
       77  FLD0444B                       PIC  9(10)V9(09)
                   VALUE  5047752845.189990011.
       77  FLD0444E                       PIC X  VALUE 'N'.

       77  FLD0445A                       PIC  9(10)V9(10)
                   VALUE  5416554544.5299512206.
       77  FLD0445B                       PIC S9(10)V9(07)
                   VALUE -4623541965.4562581.
       77  FLD0445E                       PIC X  VALUE 'N'.

       77  FLD0446A                       PIC  9(10)V9(09)
                   VALUE  5044897846.697211640.
       77  FLD0446B                       PIC  9(09)V9(16)
                   VALUE  665206327.4939082893055797.
       77  FLD0446E                       PIC X  VALUE 'N'.

       77  FLD0447A                       PIC  9(02)
                   VALUE  06.
       77  FLD0447B                       PIC  9(08)V9(02)
                   VALUE  27717300.69.
       77  FLD0447E                       PIC X  VALUE 'N'.

       77  FLD0448A                       PIC  9(06)V9(01)
                   VALUE  186565.4.
       77  FLD0448B                       PIC  9(10)V9(10)
                   VALUE  5373290497.5367845601.
       77  FLD0448E                       PIC X  VALUE 'N'.

       77  FLD0449A                       PIC S9(09)V9(05)
                   VALUE -384988094.18704.
       77  FLD0449B                       PIC S9(08)V9(04)
                   VALUE +34016016.2924.
       77  FLD0449E                       PIC X  VALUE 'N'.

       77  FLD0450A                       PIC  9(09)V9(14)
                   VALUE  625578375.50228334588808.
       77  FLD0450B                       PIC  9(09)V9(13)
                   VALUE  597300618.6146695428718.
       77  FLD0450E                       PIC X  VALUE 'N'.

       77  FLD0451A                       PIC  9(01)
                   VALUE  0.
       77  FLD0451B                       PIC S9(07)V9(02)
                   VALUE -2517390.40.
       77  FLD0451E                       PIC X  VALUE 'N'.

       77  FLD0452A                       PIC  9(08)V9(02)
                   VALUE  26826484.18.
       77  FLD0452B                       PIC  9(10)V9(11)
                   VALUE  5576443525.30127562772.
       77  FLD0452E                       PIC X  VALUE 'N'.

       77  FLD0453A                       PIC  9(10)V9(10)
                   VALUE  5383526546.5392911909.
       77  FLD0453B                       PIC  9(02)V9(34)
                   VALUE  96.7573296701221163829131910461001098.
       77  FLD0453E                       PIC X  VALUE 'N'.

       77  FLD0454A                       PIC S9(03)
                   VALUE -090.
       77  FLD0454B                       PIC S9(01)
                   VALUE -0.
       77  FLD0454E                       PIC X  VALUE 'N'.

       77  FLD0455A                       PIC S9(01)
                   VALUE -0.
       77  FLD0455B                       PIC  9(05)V9(27)
                   VALUE  85105.998788168291113720442808698.
       77  FLD0455E                       PIC X  VALUE 'N'.

       77  FLD0456A                       PIC S9(03)
                   VALUE -093.
       77  FLD0456B                       PIC  9(05)
                   VALUE  15509.
       77  FLD0456E                       PIC X  VALUE 'N'.

       77  FLD0457A                       PIC  9(04)V9(30)
                   VALUE  9063.641671624598217249513254500925.
       77  FLD0457B                       PIC  9(01)
                   VALUE  0.
       77  FLD0457E                       PIC X  VALUE 'N'.

       77  FLD0458A                       PIC  9(02)
                   VALUE  06.
       77  FLD0458B                       PIC  9(09)V9(03)
                   VALUE  319507540.378.
       77  FLD0458E                       PIC X  VALUE 'N'.

       77  FLD0459A                       PIC  9(06)V9(01)
                   VALUE  198479.9.
       77  FLD0459B                       PIC  9(10)V9(11)
                   VALUE  5635468078.16151518188.
       77  FLD0459E                       PIC X  VALUE 'N'.

       77  FLD0460A                       PIC  9(01)
                   VALUE  0.
       77  FLD0460B                       PIC  9(07)V9(22)
                   VALUE  7834589.5335320658858790920930.
       77  FLD0460E                       PIC X  VALUE 'N'.

       77  FLD0461A                       PIC S9(01)
                   VALUE +0.
       77  FLD0461B                       PIC S9(07)V9(01)
                   VALUE +2146839.2.
       77  FLD0461E                       PIC X  VALUE 'N'.

       77  FLD0462A                       PIC  9(08)V9(02)
                   VALUE  26776595.69.
       77  FLD0462B                       PIC  9(02)V9(34)
                   VALUE  95.2391194548525610308331579290097579.
       77  FLD0462E                       PIC X  VALUE 'N'.

       77  FLD0463A                       PIC  9(05)V9(27)
                   VALUE  85490.666934027292889197724434779.
       77  FLD0463B                       PIC  9(09)V9(06)
                   VALUE  407249114.981761.
       77  FLD0463E                       PIC X  VALUE 'N'.

       77  FLD0464A                       PIC  9(10)V9(07)
                   VALUE  4587031190.3834293.
       77  FLD0464B                       PIC  9(08)V9(19)
                   VALUE  71857481.5704608793609509120.
       77  FLD0464E                       PIC X  VALUE 'N'.

       77  FLD0465A                       PIC  9(10)V9(12)
                   VALUE  5816563985.597106301028.
       77  FLD0465B                       PIC  9(06)V9(25)
                   VALUE  837937.1800695708527584315561398.
       77  FLD0465E                       PIC X  VALUE 'N'.

       77  FLD0466A                       PIC  9(09)V9(15)
                   VALUE  654381306.333900236715805.
       77  FLD0466B                       PIC  9(05)
                   VALUE  14616.
       77  FLD0466E                       PIC X  VALUE 'N'.

       77  FLD0467A                       PIC S9(07)V9(01)
                   VALUE +2343287.0.
       77  FLD0467B                       PIC  9(04)V9(29)
                   VALUE  8929.74677715112297171629052172647.
       77  FLD0467E                       PIC X  VALUE 'N'.

       77  FLD0468A                       PIC S9(10)V9(06)
                   VALUE +4344132145.767680.
       77  FLD0468B                       PIC  9(08)V9(03)
                   VALUE  29592230.696.
       77  FLD0468E                       PIC X  VALUE 'N'.

       77  FLD0469A                       PIC  9(08)V9(18)
                   VALUE  70961503.876956555370014712.
       77  FLD0469B                       PIC  9(10)V9(09)
                   VALUE  5200119971.346918168.
       77  FLD0469E                       PIC X  VALUE 'N'.

       77  FLD0470A                       PIC  9(03)V9(31)
                   VALUE  913.6810028966669827710234130790922.
       77  FLD0470B                       PIC S9(09)V9(05)
                   VALUE -383130523.18889.
       77  FLD0470E                       PIC X  VALUE 'N'.

       77  FLD0471A                       PIC S9(07)V9(02)
                   VALUE -2507103.69.
       77  FLD0471B                       PIC  9(01)
                   VALUE  0.
       77  FLD0471E                       PIC X  VALUE 'N'.

       77  FLD0472A                       PIC  9(10)V9(09)
                   VALUE  5103990869.050332168.
       77  FLD0472B                       PIC  9(06)V9(26)
                   VALUE  843393.74409143441635450244575622.
       77  FLD0472E                       PIC X  VALUE 'N'.

       77  FLD0473A                       PIC  9(08)V9(20)
                   VALUE  74367162.06805468187823748849.
       77  FLD0473B                       PIC  9(08)V9(18)
                   VALUE  70143773.259305752798553612.
       77  FLD0473E                       PIC X  VALUE 'N'.

       77  FLD0474A                       PIC  9(08)V9(19)
                   VALUE  72625744.5118117406224200749.
       77  FLD0474B                       PIC S9(05)
                   VALUE +13295.
       77  FLD0474E                       PIC X  VALUE 'N'.

       77  FLD0475A                       PIC  9(10)V9(07)
                   VALUE  4588724634.2999971.
       77  FLD0475B                       PIC S9(09)V9(06)
                   VALUE +420010897.357724.
       77  FLD0475E                       PIC X  VALUE 'N'.

       77  FLD0476A                       PIC  9(08)V9(02)
                   VALUE  28869933.49.
       77  FLD0476B                       PIC  9(06)V9(01)
                   VALUE  197306.5.
       77  FLD0476E                       PIC X  VALUE 'N'.

       77  FLD0477A                       PIC  9(08)V9(20)
                   VALUE  74492482.99155191155307420558.
       77  FLD0477B                       PIC S9(09)V9(05)
                   VALUE -380644102.28203.
       77  FLD0477E                       PIC X  VALUE 'N'.

       77  FLD0478A                       PIC  9(08)V9(19)
                   VALUE  72616162.5751895356550846827.
       77  FLD0478B                       PIC  9(09)V9(04)
                   VALUE  345871637.9604.
       77  FLD0478E                       PIC X  VALUE 'N'.

       77  FLD0479A                       PIC S9(09)V9(06)
                   VALUE +413502052.896697.
       77  FLD0479B                       PIC  9(06)V9(25)
                   VALUE  820524.8465168897276100778981344.
       77  FLD0479E                       PIC X  VALUE 'N'.

       77  FLD0480A                       PIC S9(06)V9(01)
                   VALUE +203017.8.
       77  FLD0480B                       PIC  9(08)V9(20)
                   VALUE  74798417.21657910502685240317.
       77  FLD0480E                       PIC X  VALUE 'N'.

       77  FLD0481A                       PIC  9(05)
                   VALUE  15658.
       77  FLD0481B                       PIC  9(01)V9(36)
                   VALUE  9.907459007614364265847939350351225584.
       77  FLD0481E                       PIC X  VALUE 'N'.

       77  FLD0482A                       PIC  9(08)V9(18)
                   VALUE  70905037.950447225014727337.
       77  FLD0482B                       PIC S9(10)V9(08)
                   VALUE -4922020906.16106868.
       77  FLD0482E                       PIC X  VALUE 'N'.

       77  FLD0483A                       PIC  9(03)
                   VALUE  079.
       77  FLD0483B                       PIC S9(09)V9(03)
                   VALUE +323420049.144.
       77  FLD0483E                       PIC X  VALUE 'N'.

       77  FLD0484A                       PIC S9(01)
                   VALUE +0.
       77  FLD0484B                       PIC  9(09)V9(12)
                   VALUE  577123861.473882282524.
       77  FLD0484E                       PIC X  VALUE 'N'.

       77  FLD0485A                       PIC  9(07)V9(02)
                   VALUE  2567572.97.
       77  FLD0485B                       PIC  9(05)V9(01)
                   VALUE  16688.0.
       77  FLD0485E                       PIC X  VALUE 'N'.

       77  FLD0486A                       PIC  9(05)
                   VALUE  13937.
       77  FLD0486B                       PIC  9(10)V9(07)
                   VALUE  4583814690.4965959.
       77  FLD0486E                       PIC X  VALUE 'N'.

       77  FLD0487A                       PIC  9(06)V9(01)
                   VALUE  209384.2.
       77  FLD0487B                       PIC  9(08)V9(18)
                   VALUE  70207035.549040885946681100.
       77  FLD0487E                       PIC X  VALUE 'N'.

       77  FLD0488A                       PIC S9(10)V9(07)
                   VALUE -4519198906.7966076.
       77  FLD0488B                       PIC  9(09)V9(16)
                   VALUE  669660091.3134611587906874.
       77  FLD0488E                       PIC X  VALUE 'N'.

       77  FLD0489A                       PIC S9(05)V9(01)
                   VALUE -17360.6.
       77  FLD0489B                       PIC  9(01)V9(36)
                   VALUE  9.950567826331271348294649214949458837.
       77  FLD0489E                       PIC X  VALUE 'N'.

       77  FLD0490A                       PIC  9(10)V9(10)
                   VALUE  5352566580.2623056954.
       77  FLD0490B                       PIC  9(08)V9(02)
                   VALUE  28596817.06.
       77  FLD0490E                       PIC X  VALUE 'N'.

       77  FLD0491A                       PIC  9(03)V9(31)
                   VALUE  918.2459205467069507378141679510008.
       77  FLD0491B                       PIC  9(09)V9(16)
                   VALUE  661285516.5476814178759923.
       77  FLD0491E                       PIC X  VALUE 'N'.

       77  FLD0492A                       PIC  9(06)V9(25)
                   VALUE  819266.4570447540928199714471702.
       77  FLD0492B                       PIC S9(09)V9(04)
                   VALUE +343135449.1145.
       77  FLD0492E                       PIC X  VALUE 'N'.

       77  FLD0493A                       PIC S9(05)V9(01)
                   VALUE -18038.5.
       77  FLD0493B                       PIC  9(06)V9(24)
                   VALUE  808734.959278862186593528349476.
       77  FLD0493E                       PIC X  VALUE 'N'.

       77  FLD0494A                       PIC  9(05)V9(28)
                   VALUE  87574.5417791477964719604187848744.
       77  FLD0494B                       PIC  9(10)V9(09)
                   VALUE  5133082903.157394349.
       77  FLD0494E                       PIC X  VALUE 'N'.

       77  FLD0495A                       PIC S9(02)
                   VALUE -05.
       77  FLD0495B                       PIC  9(09)V9(15)
                   VALUE  646882578.915106698502768.
       77  FLD0495E                       PIC X  VALUE 'N'.

       77  FLD0496A                       PIC  9(06)V9(25)
                   VALUE  816763.6415427422802437718019064.
       77  FLD0496B                       PIC S9(04)
                   VALUE +1240.
       77  FLD0496E                       PIC X  VALUE 'N'.

       77  FLD0497A                       PIC  9(06)V9(25)
                   VALUE  836230.6435874340415637107071233.
       77  FLD0497B                       PIC  9(09)V9(16)
                   VALUE  665491997.9684780217965567.
       77  FLD0497E                       PIC X  VALUE 'N'.

       77  FLD0498A                       PIC  9(10)V9(08)
                   VALUE  4792455293.49441590.
       77  FLD0498B                       PIC  9(06)V9(01)
                   VALUE  189449.4.
       77  FLD0498E                       PIC X  VALUE 'N'.

       77  FLD0499A                       PIC  9(02)
                   VALUE  05.
       77  FLD0499B                       PIC  9(09)V9(15)
                   VALUE  634131211.402607308791345.
       77  FLD0499E                       PIC X  VALUE 'N'.

      * RESULTS-AREA.
       78  XPC-FLD0001B
           VALUE '3'.
       78  XPC-FLD0001E          VALUE 'N'.
       78  XPC-FLD0002B
           VALUE '01571925154608921904042517780914'.
       78  XPC-FLD0002E          VALUE 'N'.
       78  XPC-FLD0003B
           VALUE '497691662540136914'.
       78  XPC-FLD0003E          VALUE 'N'.
       78  XPC-FLD0004B
           VALUE '316171'.
       78  XPC-FLD0004E          VALUE 'N'.
       78  XPC-FLD0005B
           VALUE '326669126773'.
       78  XPC-FLD0005E          VALUE 'N'.
       78  XPC-FLD0006B
           VALUE '2564149945687535678828794516448398'.
       78  XPC-FLD0006E          VALUE 'N'.
       78  XPC-FLD0007B
           VALUE '270310289q'.
       78  XPC-FLD0007E          VALUE 'N'.
       78  XPC-FLD0008B
           VALUE '09q'.
       78  XPC-FLD0008E          VALUE 'N'.
       78  XPC-FLD0009B
           VALUE '871644396861416259625343627703841'.
       78  XPC-FLD0009E          VALUE 'Y'.
       78  XPC-FLD0010B
           VALUE '401313154225653'.
       78  XPC-FLD0010E          VALUE 'N'.
       78  XPC-FLD0011B
           VALUE '716073640695890795927880390081554'.
       78  XPC-FLD0011E          VALUE 'N'.
       78  XPC-FLD0012B
           VALUE '714856822486604356929547066'.
       78  XPC-FLD0012E          VALUE 'N'.
       78  XPC-FLD0013B
           VALUE '332664360'.
       78  XPC-FLD0013E          VALUE 'N'.
       78  XPC-FLD0014B
           VALUE '7563565'.
       78  XPC-FLD0014E          VALUE 'N'.
       78  XPC-FLD0015B
           VALUE '496103206190910525'.
       78  XPC-FLD0015E          VALUE 'N'.
       78  XPC-FLD0016B
           VALUE '4316078086835850'.
       78  XPC-FLD0016E          VALUE 'N'.
       78  XPC-FLD0017B
           VALUE '8983341087204116393039043941826093'.
       78  XPC-FLD0017E          VALUE 'N'.
       78  XPC-FLD0018B
           VALUE 'p'.
       78  XPC-FLD0018E          VALUE 'Y'.
       78  XPC-FLD0019B
           VALUE '52790866914027q'.
       78  XPC-FLD0019E          VALUE 'N'.
       78  XPC-FLD0020B
           VALUE '09154677345638306818'.
       78  XPC-FLD0020E          VALUE 'N'.
       78  XPC-FLD0021B
           VALUE '9'.
       78  XPC-FLD0021E          VALUE 'N'.
       78  XPC-FLD0022B
           VALUE '6800620448921426031141379552'.
       78  XPC-FLD0022E          VALUE 'N'.
       78  XPC-FLD0023B
           VALUE '011865432391802879230624512274516746'.
       78  XPC-FLD0023E          VALUE 'N'.
       78  XPC-FLD0024B
           VALUE '081262603108476'.
       78  XPC-FLD0024E          VALUE 'N'.
       78  XPC-FLD0025B
           VALUE '249748827'.
       78  XPC-FLD0025E          VALUE 'N'.
       78  XPC-FLD0026B
           VALUE '3837571962056t'.
       78  XPC-FLD0026E          VALUE 'N'.
       78  XPC-FLD0027B
           VALUE '8158491045356750515082921992870'.
       78  XPC-FLD0027E          VALUE 'Y'.
       78  XPC-FLD0028B
           VALUE 't'.
       78  XPC-FLD0028E          VALUE 'N'.
       78  XPC-FLD0029B
           VALUE '68438817718294422258378517'.
       78  XPC-FLD0029E          VALUE 'N'.
       78  XPC-FLD0030B
           VALUE '70264210169553353857452293'.
       78  XPC-FLD0030E          VALUE 'N'.
       78  XPC-FLD0031B
           VALUE '70450280588407820925311852'.
       78  XPC-FLD0031E          VALUE 'N'.
       78  XPC-FLD0032B
           VALUE '94722057179q'.
       78  XPC-FLD0032E          VALUE 'N'.
       78  XPC-FLD0033B
           VALUE '960256540211'.
       78  XPC-FLD0033E          VALUE 'N'.
       78  XPC-FLD0034B
           VALUE '21267719'.
       78  XPC-FLD0034E          VALUE 'N'.
       78  XPC-FLD0035B
           VALUE '30926016'.
       78  XPC-FLD0035E          VALUE 'N'.
       78  XPC-FLD0036B
           VALUE '84780746063121390621031281398244'.
       78  XPC-FLD0036E          VALUE 'N'.
       78  XPC-FLD0037B
           VALUE '45484'.
       78  XPC-FLD0037E          VALUE 'N'.
       78  XPC-FLD0038B
           VALUE '8192466589219795159659831540466'.
       78  XPC-FLD0038E          VALUE 'N'.
       78  XPC-FLD0039B
           VALUE '2142775'.
       78  XPC-FLD0039E          VALUE 'N'.
       78  XPC-FLD0040B
           VALUE '328'.
       78  XPC-FLD0040E          VALUE 'N'.
       78  XPC-FLD0041B
           VALUE '5719955231502458547'.
       78  XPC-FLD0041E          VALUE 'N'.
       78  XPC-FLD0042B
           VALUE '53913067269542921266'.
       78  XPC-FLD0042E          VALUE 'N'.
       78  XPC-FLD0043B
           VALUE '8947428650524259539551508169097361'.
       78  XPC-FLD0043E          VALUE 'N'.
       78  XPC-FLD0044B
           VALUE '3593279914883'.
       78  XPC-FLD0044E          VALUE 'N'.
       78  XPC-FLD0045B
           VALUE '40565136957830'.
       78  XPC-FLD0045E          VALUE 'N'.
       78  XPC-FLD0046B
           VALUE '86000025910646182847330010190489'.
       78  XPC-FLD0046E          VALUE 'N'.
       78  XPC-FLD0047B
           VALUE '500920610887845814'.
       78  XPC-FLD0047E          VALUE 'N'.
       78  XPC-FLD0048B
           VALUE '17309y'.
       78  XPC-FLD0048E          VALUE 'Y'.
       78  XPC-FLD0049B
           VALUE '6818217198975972105429554915463086217'.
       78  XPC-FLD0049E          VALUE 'N'.
       78  XPC-FLD0050B
           VALUE '079122399722566'.
       78  XPC-FLD0050E          VALUE 'N'.
       78  XPC-FLD0051B
           VALUE '9064871948640588206203005938732530'.
       78  XPC-FLD0051E          VALUE 'Y'.
       78  XPC-FLD0052B
           VALUE '18378999229403754265'.
       78  XPC-FLD0052E          VALUE 'N'.
       78  XPC-FLD0053B
           VALUE '358916388870q'.
       78  XPC-FLD0053E          VALUE 'N'.
       78  XPC-FLD0054B
           VALUE '319288758232'.
       78  XPC-FLD0054E          VALUE 'N'.
       78  XPC-FLD0055B
           VALUE '9048691568994934320002240'.
       78  XPC-FLD0055E          VALUE 'N'.
       78  XPC-FLD0056B
           VALUE '2564409583'.
       78  XPC-FLD0056E          VALUE 'N'.
       78  XPC-FLD0057B
           VALUE '0v'.
       78  XPC-FLD0057E          VALUE 'Y'.
       78  XPC-FLD0058B
           VALUE '3436235653793'.
       78  XPC-FLD0058E          VALUE 'N'.
       78  XPC-FLD0059B
           VALUE '62832873919564874525472'.
       78  XPC-FLD0059E          VALUE 'N'.
       78  XPC-FLD0060B
           VALUE '159140'.
       78  XPC-FLD0060E          VALUE 'N'.
       78  XPC-FLD0061B
           VALUE '8166592123096498172785118185856'.
       78  XPC-FLD0061E          VALUE 'N'.
       78  XPC-FLD0062B
           VALUE '9769550469250686264269'.
       78  XPC-FLD0062E          VALUE 'N'.
       78  XPC-FLD0063B
           VALUE '753004763264897311507922950'.
       78  XPC-FLD0063E          VALUE 'N'.
       78  XPC-FLD0064B
           VALUE '744p'.
       78  XPC-FLD0064E          VALUE 'N'.
       78  XPC-FLD0065B
           VALUE '5377'.
       78  XPC-FLD0065E          VALUE 'N'.
       78  XPC-FLD0066B
           VALUE '85085260849998822774153950376785'.
       78  XPC-FLD0066E          VALUE 'N'.
       78  XPC-FLD0067B
           VALUE 'q'.
       78  XPC-FLD0067E          VALUE 'N'.
       78  XPC-FLD0068B
           VALUE '5'.
       78  XPC-FLD0068E          VALUE 'N'.
       78  XPC-FLD0069B
           VALUE '097'.
       78  XPC-FLD0069E          VALUE 'Y'.
       78  XPC-FLD0070B
           VALUE '847339t'.
       78  XPC-FLD0070E          VALUE 'N'.
       78  XPC-FLD0071B
           VALUE '1274'.
       78  XPC-FLD0071E          VALUE 'N'.
       78  XPC-FLD0072B
           VALUE '655377313792015250284373'.
       78  XPC-FLD0072E          VALUE 'N'.
       78  XPC-FLD0073B
           VALUE '70717240702803545859163047'.
       78  XPC-FLD0073E          VALUE 'N'.
       78  XPC-FLD0074B
           VALUE '6009119595528942259221594213158817808'.
       78  XPC-FLD0074E          VALUE 'N'.
       78  XPC-FLD0075B
           VALUE '22056618'.
       78  XPC-FLD0075E          VALUE 'Y'.
       78  XPC-FLD0076B
           VALUE '889922269538142470324260102643165738'.
       78  XPC-FLD0076E          VALUE 'N'.
       78  XPC-FLD0077B
           VALUE '297736583767979700245026833727024'.
       78  XPC-FLD0077E          VALUE 'N'.
       78  XPC-FLD0078B
           VALUE '52639083334727222580'.
       78  XPC-FLD0078E          VALUE 'N'.
       78  XPC-FLD0079B
           VALUE '324'.
       78  XPC-FLD0079E          VALUE 'N'.
       78  XPC-FLD0080B
           VALUE '371153437233y'.
       78  XPC-FLD0080E          VALUE 'N'.
       78  XPC-FLD0081B
           VALUE '3672069622884'.
       78  XPC-FLD0081E          VALUE 'N'.
       78  XPC-FLD0082B
           VALUE '39908942738066827524420432382'.
       78  XPC-FLD0082E          VALUE 'N'.
       78  XPC-FLD0083B
           VALUE '886546406'.
       78  XPC-FLD0083E          VALUE 'N'.
       78  XPC-FLD0084B
           VALUE '405109331835068'.
       78  XPC-FLD0084E          VALUE 'N'.
       78  XPC-FLD0085B
           VALUE '4354243534611629'.
       78  XPC-FLD0085E          VALUE 'N'.
       78  XPC-FLD0086B
           VALUE '571167021401449572359'.
       78  XPC-FLD0086E          VALUE 'N'.
       78  XPC-FLD0087B
           VALUE '1168'.
       78  XPC-FLD0087E          VALUE 'Y'.
       78  XPC-FLD0088B
           VALUE '481540354519'.
       78  XPC-FLD0088E          VALUE 'N'.
       78  XPC-FLD0089B
           VALUE '8552781102827879955441403577769802'.
       78  XPC-FLD0089E          VALUE 'N'.
       78  XPC-FLD0090B
           VALUE '0075180968r'.
       78  XPC-FLD0090E          VALUE 'N'.
       78  XPC-FLD0091B
           VALUE '08617201884902925811235356'.
       78  XPC-FLD0091E          VALUE 'N'.
       78  XPC-FLD0092B
           VALUE '3179100098465547968089595087804'.
       78  XPC-FLD0092E          VALUE 'N'.
       78  XPC-FLD0093B
           VALUE '874104194614961116371887328568'.
       78  XPC-FLD0093E          VALUE 'N'.
       78  XPC-FLD0094B
           VALUE '53066656460354850645'.
       78  XPC-FLD0094E          VALUE 'N'.
       78  XPC-FLD0095B
           VALUE '5167739798081453228562054391361'.
       78  XPC-FLD0095E          VALUE 'N'.
       78  XPC-FLD0096B
           VALUE '875053049076218392166026660561328'.
       78  XPC-FLD0096E          VALUE 'N'.
       78  XPC-FLD0097B
           VALUE '76639044132902548449948199049'.
       78  XPC-FLD0097E          VALUE 'N'.
       78  XPC-FLD0098B
           VALUE '334130309068'.
       78  XPC-FLD0098E          VALUE 'N'.
       78  XPC-FLD0099B
           VALUE '30007106715'.
       78  XPC-FLD0099E          VALUE 'Y'.
       78  XPC-FLD0100B
           VALUE '53883959962677607717265'.
       78  XPC-FLD0100E          VALUE 'N'.
       78  XPC-FLD0101B
           VALUE '51211205q'.
       78  XPC-FLD0101E          VALUE 'N'.
       78  XPC-FLD0102B
           VALUE '62599568832775289662151'.
       78  XPC-FLD0102E          VALUE 'N'.
       78  XPC-FLD0103B
           VALUE '9'.
       78  XPC-FLD0103E          VALUE 'N'.
       78  XPC-FLD0104B
           VALUE '48125550583217433t'.
       78  XPC-FLD0104E          VALUE 'N'.
       78  XPC-FLD0105B
           VALUE '0152268965'.
       78  XPC-FLD0105E          VALUE 'N'.
       78  XPC-FLD0106B
           VALUE '263621782y'.
       78  XPC-FLD0106E          VALUE 'N'.
       78  XPC-FLD0107B
           VALUE '491683543555178959039153289'.
       78  XPC-FLD0107E          VALUE 'N'.
       78  XPC-FLD0108B
           VALUE '284210531y'.
       78  XPC-FLD0108E          VALUE 'Y'.
       78  XPC-FLD0109B
           VALUE '0156720262660837374113498299266211'.
       78  XPC-FLD0109E          VALUE 'N'.
       78  XPC-FLD0110B
           VALUE '61781025727648194445507101'.
       78  XPC-FLD0110E          VALUE 'N'.
       78  XPC-FLD0111B
           VALUE '5582373934795217912'.
       78  XPC-FLD0111E          VALUE 'N'.
       78  XPC-FLD0112B
           VALUE '983719732p'.
       78  XPC-FLD0112E          VALUE 'N'.
       78  XPC-FLD0113B
           VALUE '0369'.
       78  XPC-FLD0113E          VALUE 'N'.
       78  XPC-FLD0114B
           VALUE '176673'.
       78  XPC-FLD0114E          VALUE 'Y'.
       78  XPC-FLD0115B
           VALUE '30236778644'.
       78  XPC-FLD0115E          VALUE 'N'.
       78  XPC-FLD0116B
           VALUE '3'.
       78  XPC-FLD0116E          VALUE 'N'.
       78  XPC-FLD0117B
           VALUE '13612'.
       78  XPC-FLD0117E          VALUE 'Y'.
       78  XPC-FLD0118B
           VALUE '80v'.
       78  XPC-FLD0118E          VALUE 'N'.
       78  XPC-FLD0119B
           VALUE '253932450'.
       78  XPC-FLD0119E          VALUE 'N'.
       78  XPC-FLD0120B
           VALUE '0w'.
       78  XPC-FLD0120E          VALUE 'Y'.
       78  XPC-FLD0121B
           VALUE '323330267022'.
       78  XPC-FLD0121E          VALUE 'N'.
       78  XPC-FLD0122B
           VALUE '2693757152'.
       78  XPC-FLD0122E          VALUE 'N'.
       78  XPC-FLD0123B
           VALUE '7502022502690824523057244732'.
       78  XPC-FLD0123E          VALUE 'N'.
       78  XPC-FLD0124B
           VALUE '4223876720963152'.
       78  XPC-FLD0124E          VALUE 'N'.
       78  XPC-FLD0125B
           VALUE '637796016364062257583133'.
       78  XPC-FLD0125E          VALUE 'N'.
       78  XPC-FLD0126B
           VALUE '14776979'.
       78  XPC-FLD0126E          VALUE 'N'.
       78  XPC-FLD0127B
           VALUE '968598991861849889506430599794838'.
       78  XPC-FLD0127E          VALUE 'N'.
       78  XPC-FLD0128B
           VALUE '7158526709'.
       78  XPC-FLD0128E          VALUE 'N'.
       78  XPC-FLD0129B
           VALUE '66302536762228508700376'.
       78  XPC-FLD0129E          VALUE 'N'.
       78  XPC-FLD0130B
           VALUE '30500681275'.
       78  XPC-FLD0130E          VALUE 'N'.
       78  XPC-FLD0131B
           VALUE '97542725692831921848454612'.
       78  XPC-FLD0131E          VALUE 'N'.
       78  XPC-FLD0132B
           VALUE '21622287'.
       78  XPC-FLD0132E          VALUE 'N'.
       78  XPC-FLD0133B
           VALUE '25284120x'.
       78  XPC-FLD0133E          VALUE 'N'.
       78  XPC-FLD0134B
           VALUE '6035745627324759055021274'.
       78  XPC-FLD0134E          VALUE 'N'.
       78  XPC-FLD0135B
           VALUE '256132197'.
       78  XPC-FLD0135E          VALUE 'Y'.
       78  XPC-FLD0136B
           VALUE '721064189695820607747975827'.
       78  XPC-FLD0136E          VALUE 'N'.
       78  XPC-FLD0137B
           VALUE '39815975038716593768839402400772088'.
       78  XPC-FLD0137E          VALUE 'N'.
       78  XPC-FLD0138B
           VALUE '8976142294415691003095503219810780'.
       78  XPC-FLD0138E          VALUE 'Y'.
       78  XPC-FLD0139B
           VALUE '4629717477620841718762676464393'.
       78  XPC-FLD0139E          VALUE 'N'.
       78  XPC-FLD0140B
           VALUE '9134502802484925076953459210926666'.
       78  XPC-FLD0140E          VALUE 'N'.
       78  XPC-FLD0141B
           VALUE '1980465'.
       78  XPC-FLD0141E          VALUE 'Y'.
       78  XPC-FLD0142B
           VALUE '011r'.
       78  XPC-FLD0142E          VALUE 'N'.
       78  XPC-FLD0143B
           VALUE '4030993'.
       78  XPC-FLD0143E          VALUE 'N'.
       78  XPC-FLD0144B
           VALUE '21702923'.
       78  XPC-FLD0144E          VALUE 'Y'.
       78  XPC-FLD0145B
           VALUE '009479682736520'.
       78  XPC-FLD0145E          VALUE 'N'.
       78  XPC-FLD0146B
           VALUE '5926753717490164309811'.
       78  XPC-FLD0146E          VALUE 'N'.
       78  XPC-FLD0147B
           VALUE '397442042521838'.
       78  XPC-FLD0147E          VALUE 'N'.
       78  XPC-FLD0148B
           VALUE '335821179980'.
       78  XPC-FLD0148E          VALUE 'N'.
       78  XPC-FLD0149B
           VALUE '64'.
       78  XPC-FLD0149E          VALUE 'N'.
       78  XPC-FLD0150B
           VALUE '9779789481524289174174668914929497987'.
       78  XPC-FLD0150E          VALUE 'Y'.
       78  XPC-FLD0151B
           VALUE '03489779895385769491943608024'.
       78  XPC-FLD0151E          VALUE 'N'.
       78  XPC-FLD0152B
           VALUE '976189035330467796747200281970435753'.
       78  XPC-FLD0152E          VALUE 'N'.
       78  XPC-FLD0153B
           VALUE '77001479845998110906890588012'.
       78  XPC-FLD0153E          VALUE 'Y'.
       78  XPC-FLD0154B
           VALUE '40490022953226413'.
       78  XPC-FLD0154E          VALUE 'N'.
       78  XPC-FLD0155B
           VALUE '7822691488762339967770021576143335'.
       78  XPC-FLD0155E          VALUE 'N'.
       78  XPC-FLD0156B
           VALUE '8985588062372004625188992577022871'.
       78  XPC-FLD0156E          VALUE 'N'.
       78  XPC-FLD0157B
           VALUE '5019620727325065'.
       78  XPC-FLD0157E          VALUE 'N'.
       78  XPC-FLD0158B
           VALUE '19917526243063020197192'.
       78  XPC-FLD0158E          VALUE 'N'.
       78  XPC-FLD0159B
           VALUE '643529357674236912600918'.
       78  XPC-FLD0159E          VALUE 'N'.
       78  XPC-FLD0160B
           VALUE '4490300'.
       78  XPC-FLD0160E          VALUE 'N'.
       78  XPC-FLD0161B
           VALUE '795897533357509001650242907'.
       78  XPC-FLD0161E          VALUE 'N'.
       78  XPC-FLD0162B
           VALUE '566814386458160899086'.
       78  XPC-FLD0162E          VALUE 'N'.
       78  XPC-FLD0163B
           VALUE '269208611024764676855618'.
       78  XPC-FLD0163E          VALUE 'N'.
       78  XPC-FLD0164B
           VALUE '3000'.
       78  XPC-FLD0164E          VALUE 'N'.
       78  XPC-FLD0165B
           VALUE '1267'.
       78  XPC-FLD0165E          VALUE 'Y'.
       78  XPC-FLD0166B
           VALUE '429599'.
       78  XPC-FLD0166E          VALUE 'N'.
       78  XPC-FLD0167B
           VALUE '0917440942478405142746282763255'.
       78  XPC-FLD0167E          VALUE 'N'.
       78  XPC-FLD0168B
           VALUE '4326936005661665'.
       78  XPC-FLD0168E          VALUE 'N'.
       78  XPC-FLD0169B
           VALUE '71534750846474368213279149'.
       78  XPC-FLD0169E          VALUE 'N'.
       78  XPC-FLD0170B
           VALUE '2603177530164159092505813954945188016'.
       78  XPC-FLD0170E          VALUE 'N'.
       78  XPC-FLD0171B
           VALUE '4933823716025802'.
       78  XPC-FLD0171E          VALUE 'N'.
       78  XPC-FLD0172B
           VALUE '8903776753838588409184495731096831'.
       78  XPC-FLD0172E          VALUE 'N'.
       78  XPC-FLD0173B
           VALUE '519945412779417204'.
       78  XPC-FLD0173E          VALUE 'N'.
       78  XPC-FLD0174B
           VALUE '5152585493087611057'.
       78  XPC-FLD0174E          VALUE 'N'.
       78  XPC-FLD0175B
           VALUE '51'.
       78  XPC-FLD0175E          VALUE 'N'.
       78  XPC-FLD0176B
           VALUE '21895219257'.
       78  XPC-FLD0176E          VALUE 'N'.
       78  XPC-FLD0177B
           VALUE '999225364'.
       78  XPC-FLD0177E          VALUE 'N'.
       78  XPC-FLD0178B
           VALUE '2410436611r'.
       78  XPC-FLD0178E          VALUE 'N'.
       78  XPC-FLD0179B
           VALUE '663'.
       78  XPC-FLD0179E          VALUE 'N'.
       78  XPC-FLD0180B
           VALUE '54351034931997414107'.
       78  XPC-FLD0180E          VALUE 'N'.
       78  XPC-FLD0181B
           VALUE '47407358325391086x'.
       78  XPC-FLD0181E          VALUE 'N'.
       78  XPC-FLD0182B
           VALUE '417908352338649757839920'.
       78  XPC-FLD0182E          VALUE 'N'.
       78  XPC-FLD0183B
           VALUE '0u'.
       78  XPC-FLD0183E          VALUE 'Y'.
       78  XPC-FLD0184B
           VALUE '3601969r'.
       78  XPC-FLD0184E          VALUE 'N'.
       78  XPC-FLD0185B
           VALUE '7395132638753716096465495866'.
       78  XPC-FLD0185E          VALUE 'N'.
       78  XPC-FLD0186B
           VALUE '8407708947119312415452441200613'.
       78  XPC-FLD0186E          VALUE 'N'.
       78  XPC-FLD0187B
           VALUE '6497950041934480558403'.
       78  XPC-FLD0187E          VALUE 'N'.
       78  XPC-FLD0188B
           VALUE '0471158677246608093014401354'.
       78  XPC-FLD0188E          VALUE 'N'.
       78  XPC-FLD0189B
           VALUE '566852467720726727051'.
       78  XPC-FLD0189E          VALUE 'Y'.
       78  XPC-FLD0190B
           VALUE '62476651140273569806415'.
       78  XPC-FLD0190E          VALUE 'N'.
       78  XPC-FLD0191B
           VALUE '817437168989411478996487403492'.
       78  XPC-FLD0191E          VALUE 'N'.
       78  XPC-FLD0192B
           VALUE '3580342295012'.
       78  XPC-FLD0192E          VALUE 'N'.
       78  XPC-FLD0193B
           VALUE '86499232126294976690766'.
       78  XPC-FLD0193E          VALUE 'N'.
       78  XPC-FLD0194B
           VALUE '217285653058917626499679'.
       78  XPC-FLD0194E          VALUE 'N'.
       78  XPC-FLD0195B
           VALUE '14921'.
       78  XPC-FLD0195E          VALUE 'Y'.
       78  XPC-FLD0196B
           VALUE '18000w'.
       78  XPC-FLD0196E          VALUE 'N'.
       78  XPC-FLD0197B
           VALUE '14'.
       78  XPC-FLD0197E          VALUE 'N'.
       78  XPC-FLD0198B
           VALUE '14072'.
       78  XPC-FLD0198E          VALUE 'Y'.
       78  XPC-FLD0199B
           VALUE '045232741410605347571106449322'.
       78  XPC-FLD0199E          VALUE 'N'.
       78  XPC-FLD0200B
           VALUE '95184480153268257'.
       78  XPC-FLD0200E          VALUE 'N'.
       78  XPC-FLD0201B
           VALUE '792759590444417882612526682351'.
       78  XPC-FLD0201E          VALUE 'N'.
       78  XPC-FLD0202B
           VALUE '37943227555010013122256395945441909'.
       78  XPC-FLD0202E          VALUE 'N'.
       78  XPC-FLD0203B
           VALUE '5835712416517114804656539879215415'.
       78  XPC-FLD0203E          VALUE 'N'.
       78  XPC-FLD0204B
           VALUE '23632655'.
       78  XPC-FLD0204E          VALUE 'N'.
       78  XPC-FLD0205B
           VALUE '288741127747638715028699'.
       78  XPC-FLD0205E          VALUE 'N'.
       78  XPC-FLD0206B
           VALUE '70639388766434425840361654'.
       78  XPC-FLD0206E          VALUE 'N'.
       78  XPC-FLD0207B
           VALUE '7691791385730962560263179739'.
       78  XPC-FLD0207E          VALUE 'N'.
       78  XPC-FLD0208B
           VALUE '21514986'.
       78  XPC-FLD0208E          VALUE 'N'.
       78  XPC-FLD0209B
           VALUE '795271109412971503516143201295'.
       78  XPC-FLD0209E          VALUE 'N'.
       78  XPC-FLD0210B
           VALUE '0'.
       78  XPC-FLD0210E          VALUE 'Y'.
       78  XPC-FLD0211B
           VALUE '4421137707554604'.
       78  XPC-FLD0211E          VALUE 'N'.
       78  XPC-FLD0212B
           VALUE '2649683602641s'.
       78  XPC-FLD0212E          VALUE 'N'.
       78  XPC-FLD0213B
           VALUE '7525639770631302875997903356'.
       78  XPC-FLD0213E          VALUE 'N'.
       78  XPC-FLD0214B
           VALUE '6668932704655321508369070'.
       78  XPC-FLD0214E          VALUE 'N'.
       78  XPC-FLD0215B
           VALUE '17300q'.
       78  XPC-FLD0215E          VALUE 'N'.
       78  XPC-FLD0216B
           VALUE '5663716874'.
       78  XPC-FLD0216E          VALUE 'N'.
       78  XPC-FLD0217B
           VALUE '5191266215287888'.
       78  XPC-FLD0217E          VALUE 'N'.
       78  XPC-FLD0218B
           VALUE '4467255193327033602201936446363106369'.
       78  XPC-FLD0218E          VALUE 'N'.
       78  XPC-FLD0219B
           VALUE '58766925082182334127'.
       78  XPC-FLD0219E          VALUE 'N'.
       78  XPC-FLD0220B
           VALUE '2936t'.
       78  XPC-FLD0220E          VALUE 'N'.
       78  XPC-FLD0221B
           VALUE '878910367794605407176788958167890'.
       78  XPC-FLD0221E          VALUE 'N'.
       78  XPC-FLD0222B
           VALUE '1522x'.
       78  XPC-FLD0222E          VALUE 'Y'.
       78  XPC-FLD0223B
           VALUE '69950927082806102497158917'.
       78  XPC-FLD0223E          VALUE 'N'.
       78  XPC-FLD0224B
           VALUE '3830076842766v'.
       78  XPC-FLD0224E          VALUE 'N'.
       78  XPC-FLD0225B
           VALUE '572612409808938978169'.
       78  XPC-FLD0225E          VALUE 'N'.
       78  XPC-FLD0226B
           VALUE '21150954'.
       78  XPC-FLD0226E          VALUE 'N'.
       78  XPC-FLD0227B
           VALUE '2038736443582994661522477889957372'.
       78  XPC-FLD0227E          VALUE 'N'.
       78  XPC-FLD0228B
           VALUE '9739690596877397243957830141880549490'.
       78  XPC-FLD0228E          VALUE 'Y'.
       78  XPC-FLD0229B
           VALUE '7383803963255895866131917059'.
       78  XPC-FLD0229E          VALUE 'N'.
       78  XPC-FLD0230B
           VALUE '9x'.
       78  XPC-FLD0230E          VALUE 'N'.
       78  XPC-FLD0231B
           VALUE '270943347t'.
       78  XPC-FLD0231E          VALUE 'N'.
       78  XPC-FLD0232B
           VALUE '4749842313738054193504353861500'.
       78  XPC-FLD0232E          VALUE 'N'.
       78  XPC-FLD0233B
           VALUE '412919251493'.
       78  XPC-FLD0233E          VALUE 'N'.
       78  XPC-FLD0234B
           VALUE '5600680922670572133253'.
       78  XPC-FLD0234E          VALUE 'N'.
       78  XPC-FLD0235B
           VALUE '48083151871929563y'.
       78  XPC-FLD0235E          VALUE 'N'.
       78  XPC-FLD0236B
           VALUE '70471341881577547199277944'.
       78  XPC-FLD0236E          VALUE 'N'.
       78  XPC-FLD0237B
           VALUE '885090488581330880890618573175743'.
       78  XPC-FLD0237E          VALUE 'Y'.
       78  XPC-FLD0238B
           VALUE '3227001'.
       78  XPC-FLD0238E          VALUE 'N'.
       78  XPC-FLD0239B
           VALUE '29332566026370832101832'.
       78  XPC-FLD0239E          VALUE 'N'.
       78  XPC-FLD0240B
           VALUE '8331654817075836438888813972880'.
       78  XPC-FLD0240E          VALUE 'Y'.
       78  XPC-FLD0241B
           VALUE '60875735723205993171444'.
       78  XPC-FLD0241E          VALUE 'N'.
       78  XPC-FLD0242B
           VALUE '182084q'.
       78  XPC-FLD0242E          VALUE 'N'.
       78  XPC-FLD0243B
           VALUE '870255257093214798613800553539476'.
       78  XPC-FLD0243E          VALUE 'N'.
       78  XPC-FLD0244B
           VALUE '5964541497067354924865'.
       78  XPC-FLD0244E          VALUE 'N'.
       78  XPC-FLD0245B
           VALUE '264333833210099267317333'.
       78  XPC-FLD0245E          VALUE 'N'.
       78  XPC-FLD0246B
           VALUE '1209825'.
       78  XPC-FLD0246E          VALUE 'N'.
       78  XPC-FLD0247B
           VALUE '742067276785553808782225359'.
       78  XPC-FLD0247E          VALUE 'N'.
       78  XPC-FLD0248B
           VALUE '568358594454923286003'.
       78  XPC-FLD0248E          VALUE 'N'.
       78  XPC-FLD0249B
           VALUE '6731754183146980707874718'.
       78  XPC-FLD0249E          VALUE 'Y'.
       78  XPC-FLD0250B
           VALUE '9267251332164047061614164335129317'.
       78  XPC-FLD0250E          VALUE 'N'.
       78  XPC-FLD0251B
           VALUE '3790591152463825338016431487631'.
       78  XPC-FLD0251E          VALUE 'N'.
       78  XPC-FLD0252B
           VALUE '23614266'.
       78  XPC-FLD0252E          VALUE 'N'.
       78  XPC-FLD0253B
           VALUE '29824915'.
       78  XPC-FLD0253E          VALUE 'N'.
       78  XPC-FLD0254B
           VALUE '94904362r'.
       78  XPC-FLD0254E          VALUE 'N'.
       78  XPC-FLD0255B
           VALUE '54081435076039155115'.
       78  XPC-FLD0255E          VALUE 'N'.
       78  XPC-FLD0256B
           VALUE '8751500721603051085707734273455571'.
       78  XPC-FLD0256E          VALUE 'N'.
       78  XPC-FLD0257B
           VALUE '407'.
       78  XPC-FLD0257E          VALUE 'N'.
       78  XPC-FLD0258B
           VALUE '84978202175808337237583600654033'.
       78  XPC-FLD0258E          VALUE 'Y'.
       78  XPC-FLD0259B
           VALUE '3746683047259s'.
       78  XPC-FLD0259E          VALUE 'N'.
       78  XPC-FLD0260B
           VALUE '6017366610583895639607'.
       78  XPC-FLD0260E          VALUE 'N'.
       78  XPC-FLD0261B
           VALUE '00567161858323'.
       78  XPC-FLD0261E          VALUE 'N'.
       78  XPC-FLD0262B
           VALUE '68757658126759821329241049'.
       78  XPC-FLD0262E          VALUE 'N'.
       78  XPC-FLD0263B
           VALUE '40'.
       78  XPC-FLD0263E          VALUE 'N'.
       78  XPC-FLD0264B
           VALUE '166846'.
       78  XPC-FLD0264E          VALUE 'N'.
       78  XPC-FLD0265B
           VALUE '2298778729177715439249141127220354975'.
       78  XPC-FLD0265E          VALUE 'N'.
       78  XPC-FLD0266B
           VALUE '115052360207692161431225486003512427'.
       78  XPC-FLD0266E          VALUE 'N'.
       78  XPC-FLD0267B
           VALUE '23489014'.
       78  XPC-FLD0267E          VALUE 'N'.
       78  XPC-FLD0268B
           VALUE '8211500957830146774085733341053'.
       78  XPC-FLD0268E          VALUE 'N'.
       78  XPC-FLD0269B
           VALUE '5'.
       78  XPC-FLD0269E          VALUE 'N'.
       78  XPC-FLD0270B
           VALUE '1200'.
       78  XPC-FLD0270E          VALUE 'Y'.
       78  XPC-FLD0271B
           VALUE '052759203'.
       78  XPC-FLD0271E          VALUE 'N'.
       78  XPC-FLD0272B
           VALUE '51600069630273368u'.
       78  XPC-FLD0272E          VALUE 'N'.
       78  XPC-FLD0273B
           VALUE '9036109253095579'.
       78  XPC-FLD0273E          VALUE 'N'.
       78  XPC-FLD0274B
           VALUE '52694748208586675958'.
       78  XPC-FLD0274E          VALUE 'N'.
       78  XPC-FLD0275B
           VALUE '242413794'.
       78  XPC-FLD0275E          VALUE 'N'.
       78  XPC-FLD0276B
           VALUE '94591784695476577304873444518307223'.
       78  XPC-FLD0276E          VALUE 'Y'.
       78  XPC-FLD0277B
           VALUE '499215459576603728'.
       78  XPC-FLD0277E          VALUE 'N'.
       78  XPC-FLD0278B
           VALUE '7922277502052260016194509262277280'.
       78  XPC-FLD0278E          VALUE 'N'.
       78  XPC-FLD0279B
           VALUE '92108160397424898579998853165307082'.
       78  XPC-FLD0279E          VALUE 'Y'.
       78  XPC-FLD0280B
           VALUE '686572532054675839148262639'.
       78  XPC-FLD0280E          VALUE 'N'.
       78  XPC-FLD0281B
           VALUE '50053214871016073'.
       78  XPC-FLD0281E          VALUE 'N'.
       78  XPC-FLD0282B
           VALUE '78893043658446049271049105300'.
       78  XPC-FLD0282E          VALUE 'Y'.
       78  XPC-FLD0283B
           VALUE '18273y'.
       78  XPC-FLD0283E          VALUE 'N'.
       78  XPC-FLD0284B
           VALUE '1'.
       78  XPC-FLD0284E          VALUE 'N'.
       78  XPC-FLD0285B
           VALUE '7369307141179880084957964925'.
       78  XPC-FLD0285E          VALUE 'N'.
       78  XPC-FLD0286B
           VALUE '82453436'.
       78  XPC-FLD0286E          VALUE 'N'.
       78  XPC-FLD0287B
           VALUE '362828'.
       78  XPC-FLD0287E          VALUE 'N'.
       78  XPC-FLD0288B
           VALUE '893692752615119712089608583482913'.
       78  XPC-FLD0288E          VALUE 'Y'.
       78  XPC-FLD0289B
           VALUE '567633089214293657540'.
       78  XPC-FLD0289E          VALUE 'N'.
       78  XPC-FLD0290B
           VALUE '113'.
       78  XPC-FLD0290E          VALUE 'N'.
       78  XPC-FLD0291B
           VALUE '8300179929109657213726070068559'.
       78  XPC-FLD0291E          VALUE 'N'.
       78  XPC-FLD0292B
           VALUE '9'.
       78  XPC-FLD0292E          VALUE 'N'.
       78  XPC-FLD0293B
           VALUE '30744391924'.
       78  XPC-FLD0293E          VALUE 'N'.
       78  XPC-FLD0294B
           VALUE '0'.
       78  XPC-FLD0294E          VALUE 'Y'.
       78  XPC-FLD0295B
           VALUE '0364174s'.
       78  XPC-FLD0295E          VALUE 'N'.
       78  XPC-FLD0296B
           VALUE '574464025736577889141'.
       78  XPC-FLD0296E          VALUE 'N'.
       78  XPC-FLD0297B
           VALUE '5211000497602709295'.
       78  XPC-FLD0297E          VALUE 'N'.
       78  XPC-FLD0298B
           VALUE '9865365009908295859892746193509083241'.
       78  XPC-FLD0298E          VALUE 'N'.
       78  XPC-FLD0299B
           VALUE '7346908584680565956758964'.
       78  XPC-FLD0299E          VALUE 'N'.
       78  XPC-FLD0300B
           VALUE '55012674381377925092450'.
       78  XPC-FLD0300E          VALUE 'N'.
       78  XPC-FLD0301B
           VALUE 'u'.
       78  XPC-FLD0301E          VALUE 'N'.
       78  XPC-FLD0302B
           VALUE '4291773342239683'.
       78  XPC-FLD0302E          VALUE 'N'.
       78  XPC-FLD0303B
           VALUE '9'.
       78  XPC-FLD0303E          VALUE 'N'.
       78  XPC-FLD0304B
           VALUE '556573438984127234968'.
       78  XPC-FLD0304E          VALUE 'N'.
       78  XPC-FLD0305B
           VALUE '4'.
       78  XPC-FLD0305E          VALUE 'N'.
       78  XPC-FLD0306B
           VALUE '49364188871768718q'.
       78  XPC-FLD0306E          VALUE 'N'.
       78  XPC-FLD0307B
           VALUE '68005145163846554765597747973515652'.
       78  XPC-FLD0307E          VALUE 'N'.
       78  XPC-FLD0308B
           VALUE '711937634336942757585120489238761366'.
       78  XPC-FLD0308E          VALUE 'N'.
       78  XPC-FLD0309B
           VALUE '09s'.
       78  XPC-FLD0309E          VALUE 'Y'.
       78  XPC-FLD0310B
           VALUE '039167648388876'.
       78  XPC-FLD0310E          VALUE 'N'.
       78  XPC-FLD0311B
           VALUE '3931117203050255914931199185957666486'.
       78  XPC-FLD0311E          VALUE 'N'.
       78  XPC-FLD0312B
           VALUE '0'.
       78  XPC-FLD0312E          VALUE 'Y'.
       78  XPC-FLD0313B
           VALUE '37515306459620'.
       78  XPC-FLD0313E          VALUE 'N'.
       78  XPC-FLD0314B
           VALUE '69720778107690404600560896'.
       78  XPC-FLD0314E          VALUE 'N'.
       78  XPC-FLD0315B
           VALUE '69624112217793877932514589'.
       78  XPC-FLD0315E          VALUE 'N'.
       78  XPC-FLD0316B
           VALUE '561166875766384822086'.
       78  XPC-FLD0316E          VALUE 'N'.
       78  XPC-FLD0317B
           VALUE '314586880144'.
       78  XPC-FLD0317E          VALUE 'N'.
       78  XPC-FLD0318B
           VALUE '882534717446214034275442372745601'.
       78  XPC-FLD0318E          VALUE 'Y'.
       78  XPC-FLD0319B
           VALUE '720371110100740574821997'.
       78  XPC-FLD0319E          VALUE 'N'.
       78  XPC-FLD0320B
           VALUE '547024228165748174212'.
       78  XPC-FLD0320E          VALUE 'N'.
       78  XPC-FLD0321B
           VALUE '6601639210521921263818967'.
       78  XPC-FLD0321E          VALUE 'Y'.
       78  XPC-FLD0322B
           VALUE '17591106469607443841432'.
       78  XPC-FLD0322E          VALUE 'N'.
       78  XPC-FLD0323B
           VALUE '726633859846741159138616694690426812'.
       78  XPC-FLD0323E          VALUE 'N'.
       78  XPC-FLD0324B
           VALUE '02824576327848049573'.
       78  XPC-FLD0324E          VALUE 'N'.
       78  XPC-FLD0325B
           VALUE '723337602353324218528882738'.
       78  XPC-FLD0325E          VALUE 'N'.
       78  XPC-FLD0326B
           VALUE '4y'.
       78  XPC-FLD0326E          VALUE 'N'.
       78  XPC-FLD0327B
           VALUE '21224467'.
       78  XPC-FLD0327E          VALUE 'N'.
       78  XPC-FLD0328B
           VALUE '4643225346405y'.
       78  XPC-FLD0328E          VALUE 'N'.
       78  XPC-FLD0329B
           VALUE '952096907591406971249625712516717612'.
       78  XPC-FLD0329E          VALUE 'N'.
       78  XPC-FLD0330B
           VALUE '795524425555017788980194382020'.
       78  XPC-FLD0330E          VALUE 'Y'.
       78  XPC-FLD0331B
           VALUE '2990286983'.
       78  XPC-FLD0331E          VALUE 'N'.
       78  XPC-FLD0332B
           VALUE '3558444199192'.
       78  XPC-FLD0332E          VALUE 'N'.
       78  XPC-FLD0333B
           VALUE '243142895'.
       78  XPC-FLD0333E          VALUE 'N'.
       78  XPC-FLD0334B
           VALUE '297044413515'.
       78  XPC-FLD0334E          VALUE 'N'.
       78  XPC-FLD0335B
           VALUE '5106189445459805064'.
       78  XPC-FLD0335E          VALUE 'N'.
       78  XPC-FLD0336B
           VALUE '2933169889y'.
       78  XPC-FLD0336E          VALUE 'N'.
       78  XPC-FLD0337B
           VALUE '434132279525498709915609650'.
       78  XPC-FLD0337E          VALUE 'N'.
       78  XPC-FLD0338B
           VALUE '53047689000456310637'.
       78  XPC-FLD0338E          VALUE 'N'.
       78  XPC-FLD0339B
           VALUE '5943728837259434154840'.
       78  XPC-FLD0339E          VALUE 'N'.
       78  XPC-FLD0340B
           VALUE '389881349078w'.
       78  XPC-FLD0340E          VALUE 'N'.
       78  XPC-FLD0341B
           VALUE '248392469156514472666'.
       78  XPC-FLD0341E          VALUE 'N'.
       78  XPC-FLD0342B
           VALUE '4532923120813512t'.
       78  XPC-FLD0342E          VALUE 'N'.
       78  XPC-FLD0343B
           VALUE '0620927'.
       78  XPC-FLD0343E          VALUE 'N'.
       78  XPC-FLD0344B
           VALUE '606359905437156143820618581230520'.
       78  XPC-FLD0344E          VALUE 'N'.
       78  XPC-FLD0345B
           VALUE '405441574894889'.
       78  XPC-FLD0345E          VALUE 'N'.
       78  XPC-FLD0346B
           VALUE '6665377278444964848080899'.
       78  XPC-FLD0346E          VALUE 'N'.
       78  XPC-FLD0347B
           VALUE '324381'.
       78  XPC-FLD0347E          VALUE 'N'.
       78  XPC-FLD0348B
           VALUE '541608383617544100863'.
       78  XPC-FLD0348E          VALUE 'N'.
       78  XPC-FLD0349B
           VALUE '99162869882943715535583214659709483'.
       78  XPC-FLD0349E          VALUE 'N'.
       78  XPC-FLD0350B
           VALUE '8264871389960360762501068165875'.
       78  XPC-FLD0350E          VALUE 'N'.
       78  XPC-FLD0351B
           VALUE '53884121311052648707'.
       78  XPC-FLD0351E          VALUE 'N'.
       78  XPC-FLD0352B
           VALUE '1946919'.
       78  XPC-FLD0352E          VALUE 'N'.
       78  XPC-FLD0353B
           VALUE '94389336945631099347053805104224012'.
       78  XPC-FLD0353E          VALUE 'N'.
       78  XPC-FLD0354B
           VALUE '3116766074r'.
       78  XPC-FLD0354E          VALUE 'N'.
       78  XPC-FLD0355B
           VALUE '93287'.
       78  XPC-FLD0355E          VALUE 'N'.
       78  XPC-FLD0356B
           VALUE '83673557978976841628508509529638'.
       78  XPC-FLD0356E          VALUE 'N'.
       78  XPC-FLD0357B
           VALUE '079'.
       78  XPC-FLD0357E          VALUE 'Y'.
       78  XPC-FLD0358B
           VALUE '65874749059638552239264936'.
       78  XPC-FLD0358E          VALUE 'N'.
       78  XPC-FLD0359B
           VALUE '9526039934819852117442415817981772124'.
       78  XPC-FLD0359E          VALUE 'N'.
       78  XPC-FLD0360B
           VALUE '2666622504'.
       78  XPC-FLD0360E          VALUE 'Y'.
       78  XPC-FLD0361B
           VALUE '07851848643793046811367730697339'.
       78  XPC-FLD0361E          VALUE 'N'.
       78  XPC-FLD0362B
           VALUE '8970899599407193836242413453874178'.
       78  XPC-FLD0362E          VALUE 'N'.
       78  XPC-FLD0363B
           VALUE '9034927431796696550847514117776881'.
       78  XPC-FLD0363E          VALUE 'Y'.
       78  XPC-FLD0364B
           VALUE '8287940009277749559970516202156'.
       78  XPC-FLD0364E          VALUE 'N'.
       78  XPC-FLD0365B
           VALUE '2107493896139311928536102'.
       78  XPC-FLD0365E          VALUE 'N'.
       78  XPC-FLD0366B
           VALUE '0157659331265924684828405588633'.
       78  XPC-FLD0366E          VALUE 'N'.
       78  XPC-FLD0367B
           VALUE '7840586'.
       78  XPC-FLD0367E          VALUE 'N'.
       78  XPC-FLD0368B
           VALUE '3'.
       78  XPC-FLD0368E          VALUE 'N'.
       78  XPC-FLD0369B
           VALUE '31224128387'.
       78  XPC-FLD0369E          VALUE 'N'.
       78  XPC-FLD0370B
           VALUE 'p'.
       78  XPC-FLD0370E          VALUE 'N'.
       78  XPC-FLD0371B
           VALUE '08r'.
       78  XPC-FLD0371E          VALUE 'N'.
       78  XPC-FLD0372B
           VALUE '0049999527433343127'.
       78  XPC-FLD0372E          VALUE 'N'.
       78  XPC-FLD0373B
           VALUE '3081708383872'.
       78  XPC-FLD0373E          VALUE 'N'.
       78  XPC-FLD0374B
           VALUE '711264497973442155753787119'.
       78  XPC-FLD0374E          VALUE 'N'.
       78  XPC-FLD0375B
           VALUE '0'.
       78  XPC-FLD0375E          VALUE 'Y'.
       78  XPC-FLD0376B
           VALUE '5240009617041836336'.
       78  XPC-FLD0376E          VALUE 'N'.
       78  XPC-FLD0377B
           VALUE '78137191821795531497030218303'.
       78  XPC-FLD0377E          VALUE 'N'.
       78  XPC-FLD0378B
           VALUE '16313u'.
       78  XPC-FLD0378E          VALUE 'N'.
       78  XPC-FLD0379B
           VALUE '4'.
       78  XPC-FLD0379E          VALUE 'N'.
       78  XPC-FLD0380B
           VALUE 'y'.
       78  XPC-FLD0380E          VALUE 'N'.
       78  XPC-FLD0381B
           VALUE '096'.
       78  XPC-FLD0381E          VALUE 'Y'.
       78  XPC-FLD0382B
           VALUE '1909'.
       78  XPC-FLD0382E          VALUE 'N'.
       78  XPC-FLD0383B
           VALUE '810435186395222418864747737642'.
       78  XPC-FLD0383E          VALUE 'N'.
       78  XPC-FLD0384B
           VALUE '0'.
       78  XPC-FLD0384E          VALUE 'Y'.
       78  XPC-FLD0385B
           VALUE '774134932514714546452413131744833'.
       78  XPC-FLD0385E          VALUE 'N'.
       78  XPC-FLD0386B
           VALUE '3467992789726692670323751189'.
       78  XPC-FLD0386E          VALUE 'N'.
       78  XPC-FLD0387B
           VALUE '6906513656145575095354897'.
       78  XPC-FLD0387E          VALUE 'N'.
       78  XPC-FLD0388B
           VALUE '326'.
       78  XPC-FLD0388E          VALUE 'N'.
       78  XPC-FLD0389B
           VALUE '0182625981352744592156'.
       78  XPC-FLD0389E          VALUE 'N'.
       78  XPC-FLD0390B
           VALUE '102'.
       78  XPC-FLD0390E          VALUE 'N'.
       78  XPC-FLD0391B
           VALUE '0373737127'.
       78  XPC-FLD0391E          VALUE 'N'.
       78  XPC-FLD0392B
           VALUE '46825106292883313'.
       78  XPC-FLD0392E          VALUE 'N'.
       78  XPC-FLD0393B
           VALUE '9072420163680885991652758093550801'.
       78  XPC-FLD0393E          VALUE 'N'.
       78  XPC-FLD0394B
           VALUE '47463048104358589r'.
       78  XPC-FLD0394E          VALUE 'N'.
       78  XPC-FLD0395B
           VALUE '2'.
       78  XPC-FLD0395E          VALUE 'N'.
       78  XPC-FLD0396B
           VALUE '0265476173063916'.
       78  XPC-FLD0396E          VALUE 'N'.
       78  XPC-FLD0397B
           VALUE '62'.
       78  XPC-FLD0397E          VALUE 'N'.
       78  XPC-FLD0398B
           VALUE '284425285r'.
       78  XPC-FLD0398E          VALUE 'N'.
       78  XPC-FLD0399B
           VALUE '256742307'.
       78  XPC-FLD0399E          VALUE 'N'.
       78  XPC-FLD0400B
           VALUE '8678350299065256532010165028624'.
       78  XPC-FLD0400E          VALUE 'N'.
       78  XPC-FLD0401B
           VALUE '9'.
       78  XPC-FLD0401E          VALUE 'N'.
       78  XPC-FLD0402B
           VALUE '69644052220831165210812585'.
       78  XPC-FLD0402E          VALUE 'N'.
       78  XPC-FLD0403B
           VALUE '12518106356029089448417234962107613'.
       78  XPC-FLD0403E          VALUE 'N'.
       78  XPC-FLD0404B
           VALUE '4814436782579247780215241'.
       78  XPC-FLD0404E          VALUE 'N'.
       78  XPC-FLD0405B
           VALUE '14133'.
       78  XPC-FLD0405E          VALUE 'Y'.
       78  XPC-FLD0406B
           VALUE '049908285391730064732712435215'.
       78  XPC-FLD0406E          VALUE 'N'.
       78  XPC-FLD0407B
           VALUE '8753049482988191082826919955550692975'.
       78  XPC-FLD0407E          VALUE 'N'.
       78  XPC-FLD0408B
           VALUE '2862678320'.
       78  XPC-FLD0408E          VALUE 'Y'.
       78  XPC-FLD0409B
           VALUE '605266450165216657684'.
       78  XPC-FLD0409E          VALUE 'N'.
       78  XPC-FLD0410B
           VALUE '8786052888992391829545680593582801521'.
       78  XPC-FLD0410E          VALUE 'N'.
       78  XPC-FLD0411B
           VALUE '77757784281136710369253250973'.
       78  XPC-FLD0411E          VALUE 'Y'.
       78  XPC-FLD0412B
           VALUE 'w'.
       78  XPC-FLD0412E          VALUE 'N'.
       78  XPC-FLD0413B
           VALUE '2'.
       78  XPC-FLD0413E          VALUE 'N'.
       78  XPC-FLD0414B
           VALUE '9979p'.
       78  XPC-FLD0414E          VALUE 'N'.
       78  XPC-FLD0415B
           VALUE '9072627958632073487733476063585840'.
       78  XPC-FLD0415E          VALUE 'N'.
       78  XPC-FLD0416B
           VALUE 'x'.
       78  XPC-FLD0416E          VALUE 'N'.
       78  XPC-FLD0417B
           VALUE '988613295763541566341103816739632'.
       78  XPC-FLD0417E          VALUE 'N'.
       78  XPC-FLD0418B
           VALUE '0'.
       78  XPC-FLD0418E          VALUE 'N'.
       78  XPC-FLD0419B
           VALUE '57648646369329730502'.
       78  XPC-FLD0419E          VALUE 'N'.
       78  XPC-FLD0420B
           VALUE '9092387304867948216724471421912312'.
       78  XPC-FLD0420E          VALUE 'Y'.
       78  XPC-FLD0421B
           VALUE '3350912'.
       78  XPC-FLD0421E          VALUE 'N'.
       78  XPC-FLD0422B
           VALUE '752582761957935941759741251848172397'.
       78  XPC-FLD0422E          VALUE 'N'.
       78  XPC-FLD0423B
           VALUE '68952728614626146441679566'.
       78  XPC-FLD0423E          VALUE 'Y'.
       78  XPC-FLD0424B
           VALUE '784268490871190770892359433'.
       78  XPC-FLD0424E          VALUE 'N'.
       78  XPC-FLD0425B
           VALUE '1105207822256892292772'.
       78  XPC-FLD0425E          VALUE 'N'.
       78  XPC-FLD0426B
           VALUE '001958844649331492605'.
       78  XPC-FLD0426E          VALUE 'N'.
       78  XPC-FLD0427B
           VALUE '30767310512910845380824639505'.
       78  XPC-FLD0427E          VALUE 'N'.
       78  XPC-FLD0428B
           VALUE '3481765503552540774734325168211935223'.
       78  XPC-FLD0428E          VALUE 'N'.
       78  XPC-FLD0429B
           VALUE '423145136880775'.
       78  XPC-FLD0429E          VALUE 'N'.
       78  XPC-FLD0430B
           VALUE '3147921208448'.
       78  XPC-FLD0430E          VALUE 'N'.
       78  XPC-FLD0431B
           VALUE '9203928254587173674039490833820309'.
       78  XPC-FLD0431E          VALUE 'N'.
       78  XPC-FLD0432B
           VALUE '16165u'.
       78  XPC-FLD0432E          VALUE 'Y'.
       78  XPC-FLD0433B
           VALUE '2194579'.
       78  XPC-FLD0433E          VALUE 'N'.
       78  XPC-FLD0434B
           VALUE '60684270265800283242045907172723673'.
       78  XPC-FLD0434E          VALUE 'N'.
       78  XPC-FLD0435B
           VALUE '5848414431863717140299'.
       78  XPC-FLD0435E          VALUE 'N'.
       78  XPC-FLD0436B
           VALUE '8307195843004202551185244374210'.
       78  XPC-FLD0436E          VALUE 'N'.
       78  XPC-FLD0437B
           VALUE '276912651674409371338469'.
       78  XPC-FLD0437E          VALUE 'N'.
       78  XPC-FLD0438B
           VALUE '874277230957161255453513604152249'.
       78  XPC-FLD0438E          VALUE 'Y'.
       78  XPC-FLD0439B
           VALUE '057198557021649332012'.
       78  XPC-FLD0439E          VALUE 'N'.
       78  XPC-FLD0440B
           VALUE '45546922388182033'.
       78  XPC-FLD0440E          VALUE 'N'.
       78  XPC-FLD0441B
           VALUE '4410365507278116'.
       78  XPC-FLD0441E          VALUE 'N'.
       78  XPC-FLD0442B
           VALUE '0793246258213504850331787565664854'.
       78  XPC-FLD0442E          VALUE 'N'.
       78  XPC-FLD0443B
           VALUE '12406922393517515692932'.
       78  XPC-FLD0443E          VALUE 'N'.
       78  XPC-FLD0444B
           VALUE '5047752750516173348'.
       78  XPC-FLD0444E          VALUE 'N'.
       78  XPC-FLD0445B
           VALUE '07930125790736931'.
       78  XPC-FLD0445E          VALUE 'N'.
       78  XPC-FLD0446B
           VALUE '3796915192033033506944203'.
       78  XPC-FLD0446E          VALUE 'N'.
       78  XPC-FLD0447B
           VALUE '2771730669'.
       78  XPC-FLD0447E          VALUE 'N'.
       78  XPC-FLD0448B
           VALUE '53731039321367845601'.
       78  XPC-FLD0448E          VALUE 'N'.
       78  XPC-FLD0449B
           VALUE '50972077894v'.
       78  XPC-FLD0449E          VALUE 'N'.
       78  XPC-FLD0450B
           VALUE '0282777568876138030162'.
       78  XPC-FLD0450E          VALUE 'N'.
       78  XPC-FLD0451B
           VALUE '25173904p'.
       78  XPC-FLD0451E          VALUE 'N'.
       78  XPC-FLD0452B
           VALUE '554961704112127562772'.
       78  XPC-FLD0452E          VALUE 'N'.
       78  XPC-FLD0453B
           VALUE '967573296701221163829131910461001098'.
       78  XPC-FLD0453E          VALUE 'Y'.
       78  XPC-FLD0454B
           VALUE '0'.
       78  XPC-FLD0454E          VALUE 'N'.
       78  XPC-FLD0455B
           VALUE '85105998788168291113720442808698'.
       78  XPC-FLD0455E          VALUE 'N'.
       78  XPC-FLD0456B
           VALUE '15602'.
       78  XPC-FLD0456E          VALUE 'N'.
       78  XPC-FLD0457B
           VALUE '3'.
       78  XPC-FLD0457E          VALUE 'N'.
       78  XPC-FLD0458B
           VALUE '319507534378'.
       78  XPC-FLD0458E          VALUE 'N'.
       78  XPC-FLD0459B
           VALUE '563566655806151518188'.
       78  XPC-FLD0459E          VALUE 'N'.
       78  XPC-FLD0460B
           VALUE '78345895335320658858790920930'.
       78  XPC-FLD0460E          VALUE 'N'.
       78  XPC-FLD0461B
           VALUE '21468392'.
       78  XPC-FLD0461E          VALUE 'N'.
       78  XPC-FLD0462B
           VALUE '952391194548525610308331579290097579'.
       78  XPC-FLD0462E          VALUE 'Y'.
       78  XPC-FLD0463B
           VALUE '407334605648695'.
       78  XPC-FLD0463E          VALUE 'N'.
       78  XPC-FLD0464B
           VALUE '151737088129684206390490880'.
       78  XPC-FLD0464E          VALUE 'N'.
       78  XPC-FLD0465B
           VALUE '8379371800695708527584315561398'.
       78  XPC-FLD0465E          VALUE 'Y'.
       78  XPC-FLD0466B
           VALUE '66690'.
       78  XPC-FLD0466E          VALUE 'N'.
       78  XPC-FLD0467B
           VALUE '221674677715112297171629052172647'.
       78  XPC-FLD0467E          VALUE 'N'.
       78  XPC-FLD0468B
           VALUE '29592230696'.
       78  XPC-FLD0468E          VALUE 'Y'.
       78  XPC-FLD0469B
           VALUE '5271081475223874723'.
       78  XPC-FLD0469E          VALUE 'N'.
       78  XPC-FLD0470B
           VALUE '3831314368698y'.
       78  XPC-FLD0470E          VALUE 'N'.
       78  XPC-FLD0471B
           VALUE '0'.
       78  XPC-FLD0471E          VALUE 'Y'.
       78  XPC-FLD0472B
           VALUE '14747530624073358364549755424378'.
       78  XPC-FLD0472E          VALUE 'N'.
       78  XPC-FLD0473B
           VALUE '44510935327360434676791100'.
       78  XPC-FLD0473E          VALUE 'N'.
       78  XPC-FLD0474B
           VALUE '13295'.
       78  XPC-FLD0474E          VALUE 'Y'.
       78  XPC-FLD0475B
           VALUE '008735531657721'.
       78  XPC-FLD0475E          VALUE 'N'.
       78  XPC-FLD0476B
           VALUE '6726269'.
       78  XPC-FLD0476E          VALUE 'N'.
       78  XPC-FLD0477B
           VALUE '3061516192904w'.
       78  XPC-FLD0477E          VALUE 'N'.
       78  XPC-FLD0478B
           VALUE '2732554753852'.
       78  XPC-FLD0478E          VALUE 'N'.
       78  XPC-FLD0479B
           VALUE '3225777432138897276100778981344'.
       78  XPC-FLD0479E          VALUE 'N'.
       78  XPC-FLD0480B
           VALUE '7459539941657910502685240317'.
       78  XPC-FLD0480E          VALUE 'N'.
       78  XPC-FLD0481B
           VALUE '7907459007614364265847939350351225584'.
       78  XPC-FLD0481E          VALUE 'N'.
       78  XPC-FLD0482B
           VALUE '49929259441115159p'.
       78  XPC-FLD0482E          VALUE 'N'.
       78  XPC-FLD0483B
           VALUE '323420128144'.
       78  XPC-FLD0483E          VALUE 'N'.
       78  XPC-FLD0484B
           VALUE '577123861473882282524'.
       78  XPC-FLD0484E          VALUE 'N'.
       78  XPC-FLD0485B
           VALUE '842609'.
       78  XPC-FLD0485E          VALUE 'N'.
       78  XPC-FLD0486B
           VALUE '45838007534965959'.
       78  XPC-FLD0486E          VALUE 'N'.
       78  XPC-FLD0487B
           VALUE '70416419749040885946681100'.
       78  XPC-FLD0487E          VALUE 'N'.
       78  XPC-FLD0488B
           VALUE '1888589981100687587906874'.
       78  XPC-FLD0488E          VALUE 'N'.
       78  XPC-FLD0489B
           VALUE '9950567826331271348294649214949458837'.
       78  XPC-FLD0489E          VALUE 'Y'.
       78  XPC-FLD0490B
           VALUE '2396976320'.
       78  XPC-FLD0490E          VALUE 'N'.
       78  XPC-FLD0491B
           VALUE '6612864347936019645829430'.
       78  XPC-FLD0491E          VALUE 'N'.
       78  XPC-FLD0492B
           VALUE '3423161826574'.
       78  XPC-FLD0492E          VALUE 'N'.
       78  XPC-FLD0493B
           VALUE '790696459278862186593528349476'.
       78  XPC-FLD0493E          VALUE 'N'.
       78  XPC-FLD0494B
           VALUE '5132995328615615201'.
       78  XPC-FLD0494E          VALUE 'N'.
       78  XPC-FLD0495B
           VALUE '646882573915106698502768'.
       78  XPC-FLD0495E          VALUE 'N'.
       78  XPC-FLD0496B
           VALUE '552s'.
       78  XPC-FLD0496E          VALUE 'N'.
       78  XPC-FLD0497B
           VALUE '6663282286120654558381204'.
       78  XPC-FLD0497E          VALUE 'N'.
       78  XPC-FLD0498B
           VALUE '1894494'.
       78  XPC-FLD0498E          VALUE 'Y'.
       78  XPC-FLD0499B
           VALUE '634131216402607308791345'.
       78  XPC-FLD0499E          VALUE 'N'.


       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           ADD FLD0001A        TO FLD0001B.
           SUBTRACT FLD0002A        FROM FLD0002B.
           ADD FLD0003A        TO FLD0003B
               ON SIZE ERROR MOVE 'Y' TO FLD0003E.
           SUBTRACT FLD0004A        FROM FLD0004B.
           ADD FLD0005A        TO FLD0005B.
           SUBTRACT FLD0006A        FROM FLD0006B
               ON SIZE ERROR MOVE 'Y' TO FLD0006E.
           ADD FLD0007A        TO FLD0007B.
           SUBTRACT FLD0008A        FROM FLD0008B.
           ADD FLD0009A        TO FLD0009B
               ON SIZE ERROR MOVE 'Y' TO FLD0009E.
           SUBTRACT FLD0010A        FROM FLD0010B.
           ADD FLD0011A        TO FLD0011B.
           SUBTRACT FLD0012A        FROM FLD0012B
               ON SIZE ERROR MOVE 'Y' TO FLD0012E.
           ADD FLD0013A        TO FLD0013B.
           SUBTRACT FLD0014A        FROM FLD0014B.
           ADD FLD0015A        TO FLD0015B
               ON SIZE ERROR MOVE 'Y' TO FLD0015E.
           SUBTRACT FLD0016A        FROM FLD0016B.
           ADD FLD0017A        TO FLD0017B.
           SUBTRACT FLD0018A        FROM FLD0018B
               ON SIZE ERROR MOVE 'Y' TO FLD0018E.
           ADD FLD0019A        TO FLD0019B.
           SUBTRACT FLD0020A        FROM FLD0020B.
           ADD FLD0021A        TO FLD0021B
               ON SIZE ERROR MOVE 'Y' TO FLD0021E.
           SUBTRACT FLD0022A        FROM FLD0022B.
           ADD FLD0023A        TO FLD0023B.
           SUBTRACT FLD0024A        FROM FLD0024B
               ON SIZE ERROR MOVE 'Y' TO FLD0024E.
           ADD FLD0025A        TO FLD0025B.
           SUBTRACT FLD0026A        FROM FLD0026B.
           ADD FLD0027A        TO FLD0027B
               ON SIZE ERROR MOVE 'Y' TO FLD0027E.
           SUBTRACT FLD0028A        FROM FLD0028B.
           ADD FLD0029A        TO FLD0029B.
           SUBTRACT FLD0030A        FROM FLD0030B
               ON SIZE ERROR MOVE 'Y' TO FLD0030E.
           ADD FLD0031A        TO FLD0031B.
           SUBTRACT FLD0032A        FROM FLD0032B.
           ADD FLD0033A        TO FLD0033B
               ON SIZE ERROR MOVE 'Y' TO FLD0033E.
           SUBTRACT FLD0034A        FROM FLD0034B.
           ADD FLD0035A        TO FLD0035B.
           SUBTRACT FLD0036A        FROM FLD0036B
               ON SIZE ERROR MOVE 'Y' TO FLD0036E.
           ADD FLD0037A        TO FLD0037B.
           SUBTRACT FLD0038A        FROM FLD0038B.
           ADD FLD0039A        TO FLD0039B
               ON SIZE ERROR MOVE 'Y' TO FLD0039E.
           SUBTRACT FLD0040A        FROM FLD0040B.
           ADD FLD0041A        TO FLD0041B.
           SUBTRACT FLD0042A        FROM FLD0042B
               ON SIZE ERROR MOVE 'Y' TO FLD0042E.
           ADD FLD0043A        TO FLD0043B.
           SUBTRACT FLD0044A        FROM FLD0044B.
           ADD FLD0045A        TO FLD0045B
               ON SIZE ERROR MOVE 'Y' TO FLD0045E.
           SUBTRACT FLD0046A        FROM FLD0046B.
           ADD FLD0047A        TO FLD0047B.
           SUBTRACT FLD0048A        FROM FLD0048B
               ON SIZE ERROR MOVE 'Y' TO FLD0048E.
           ADD FLD0049A        TO FLD0049B.
           SUBTRACT FLD0050A        FROM FLD0050B.
           ADD FLD0051A        TO FLD0051B
               ON SIZE ERROR MOVE 'Y' TO FLD0051E.
           SUBTRACT FLD0052A        FROM FLD0052B.
           ADD FLD0053A        TO FLD0053B.
           SUBTRACT FLD0054A        FROM FLD0054B
               ON SIZE ERROR MOVE 'Y' TO FLD0054E.
           ADD FLD0055A        TO FLD0055B.
           SUBTRACT FLD0056A        FROM FLD0056B.
           ADD FLD0057A        TO FLD0057B
               ON SIZE ERROR MOVE 'Y' TO FLD0057E.
           SUBTRACT FLD0058A        FROM FLD0058B.
           ADD FLD0059A        TO FLD0059B.
           SUBTRACT FLD0060A        FROM FLD0060B
               ON SIZE ERROR MOVE 'Y' TO FLD0060E.
           ADD FLD0061A        TO FLD0061B.
           SUBTRACT FLD0062A        FROM FLD0062B.
           ADD FLD0063A        TO FLD0063B
               ON SIZE ERROR MOVE 'Y' TO FLD0063E.
           SUBTRACT FLD0064A        FROM FLD0064B.
           ADD FLD0065A        TO FLD0065B.
           SUBTRACT FLD0066A        FROM FLD0066B
               ON SIZE ERROR MOVE 'Y' TO FLD0066E.
           ADD FLD0067A        TO FLD0067B.
           SUBTRACT FLD0068A        FROM FLD0068B.
           ADD FLD0069A        TO FLD0069B
               ON SIZE ERROR MOVE 'Y' TO FLD0069E.
           SUBTRACT FLD0070A        FROM FLD0070B.
           ADD FLD0071A        TO FLD0071B.
           SUBTRACT FLD0072A        FROM FLD0072B
               ON SIZE ERROR MOVE 'Y' TO FLD0072E.
           ADD FLD0073A        TO FLD0073B.
           SUBTRACT FLD0074A        FROM FLD0074B.
           ADD FLD0075A        TO FLD0075B
               ON SIZE ERROR MOVE 'Y' TO FLD0075E.
           SUBTRACT FLD0076A        FROM FLD0076B.
           ADD FLD0077A        TO FLD0077B.
           SUBTRACT FLD0078A        FROM FLD0078B
               ON SIZE ERROR MOVE 'Y' TO FLD0078E.
           ADD FLD0079A        TO FLD0079B.
           SUBTRACT FLD0080A        FROM FLD0080B.
           ADD FLD0081A        TO FLD0081B
               ON SIZE ERROR MOVE 'Y' TO FLD0081E.
           SUBTRACT FLD0082A        FROM FLD0082B.
           ADD FLD0083A        TO FLD0083B.
           SUBTRACT FLD0084A        FROM FLD0084B
               ON SIZE ERROR MOVE 'Y' TO FLD0084E.
           ADD FLD0085A        TO FLD0085B.
           SUBTRACT FLD0086A        FROM FLD0086B.
           ADD FLD0087A        TO FLD0087B
               ON SIZE ERROR MOVE 'Y' TO FLD0087E.
           SUBTRACT FLD0088A        FROM FLD0088B.
           ADD FLD0089A        TO FLD0089B.
           SUBTRACT FLD0090A        FROM FLD0090B
               ON SIZE ERROR MOVE 'Y' TO FLD0090E.
           ADD FLD0091A        TO FLD0091B.
           SUBTRACT FLD0092A        FROM FLD0092B.
           ADD FLD0093A        TO FLD0093B
               ON SIZE ERROR MOVE 'Y' TO FLD0093E.
           SUBTRACT FLD0094A        FROM FLD0094B.
           ADD FLD0095A        TO FLD0095B.
           SUBTRACT FLD0096A        FROM FLD0096B
               ON SIZE ERROR MOVE 'Y' TO FLD0096E.
           ADD FLD0097A        TO FLD0097B.
           SUBTRACT FLD0098A        FROM FLD0098B.
           ADD FLD0099A        TO FLD0099B
               ON SIZE ERROR MOVE 'Y' TO FLD0099E.
           SUBTRACT FLD0100A        FROM FLD0100B.
           ADD FLD0101A        TO FLD0101B.
           SUBTRACT FLD0102A        FROM FLD0102B
               ON SIZE ERROR MOVE 'Y' TO FLD0102E.
           ADD FLD0103A        TO FLD0103B.
           SUBTRACT FLD0104A        FROM FLD0104B.
           ADD FLD0105A        TO FLD0105B
               ON SIZE ERROR MOVE 'Y' TO FLD0105E.
           SUBTRACT FLD0106A        FROM FLD0106B.
           ADD FLD0107A        TO FLD0107B.
           SUBTRACT FLD0108A        FROM FLD0108B
               ON SIZE ERROR MOVE 'Y' TO FLD0108E.
           ADD FLD0109A        TO FLD0109B.
           SUBTRACT FLD0110A        FROM FLD0110B.
           ADD FLD0111A        TO FLD0111B
               ON SIZE ERROR MOVE 'Y' TO FLD0111E.
           SUBTRACT FLD0112A        FROM FLD0112B.
           ADD FLD0113A        TO FLD0113B.
           SUBTRACT FLD0114A        FROM FLD0114B
               ON SIZE ERROR MOVE 'Y' TO FLD0114E.
           ADD FLD0115A        TO FLD0115B.
           SUBTRACT FLD0116A        FROM FLD0116B.
           ADD FLD0117A        TO FLD0117B
               ON SIZE ERROR MOVE 'Y' TO FLD0117E.
           SUBTRACT FLD0118A        FROM FLD0118B.
           ADD FLD0119A        TO FLD0119B.
           SUBTRACT FLD0120A        FROM FLD0120B
               ON SIZE ERROR MOVE 'Y' TO FLD0120E.
           ADD FLD0121A        TO FLD0121B.
           SUBTRACT FLD0122A        FROM FLD0122B.
           ADD FLD0123A        TO FLD0123B
               ON SIZE ERROR MOVE 'Y' TO FLD0123E.
           SUBTRACT FLD0124A        FROM FLD0124B.
           ADD FLD0125A        TO FLD0125B.
           SUBTRACT FLD0126A        FROM FLD0126B
               ON SIZE ERROR MOVE 'Y' TO FLD0126E.
           ADD FLD0127A        TO FLD0127B.
           SUBTRACT FLD0128A        FROM FLD0128B.
           ADD FLD0129A        TO FLD0129B
               ON SIZE ERROR MOVE 'Y' TO FLD0129E.
           SUBTRACT FLD0130A        FROM FLD0130B.
           ADD FLD0131A        TO FLD0131B.
           SUBTRACT FLD0132A        FROM FLD0132B
               ON SIZE ERROR MOVE 'Y' TO FLD0132E.
           ADD FLD0133A        TO FLD0133B.
           SUBTRACT FLD0134A        FROM FLD0134B.
           ADD FLD0135A        TO FLD0135B
               ON SIZE ERROR MOVE 'Y' TO FLD0135E.
           SUBTRACT FLD0136A        FROM FLD0136B.
           ADD FLD0137A        TO FLD0137B.
           SUBTRACT FLD0138A        FROM FLD0138B
               ON SIZE ERROR MOVE 'Y' TO FLD0138E.
           ADD FLD0139A        TO FLD0139B.
           SUBTRACT FLD0140A        FROM FLD0140B.
           ADD FLD0141A        TO FLD0141B
               ON SIZE ERROR MOVE 'Y' TO FLD0141E.
           SUBTRACT FLD0142A        FROM FLD0142B.
           ADD FLD0143A        TO FLD0143B.
           SUBTRACT FLD0144A        FROM FLD0144B
               ON SIZE ERROR MOVE 'Y' TO FLD0144E.
           ADD FLD0145A        TO FLD0145B.
           SUBTRACT FLD0146A        FROM FLD0146B.
           ADD FLD0147A        TO FLD0147B
               ON SIZE ERROR MOVE 'Y' TO FLD0147E.
           SUBTRACT FLD0148A        FROM FLD0148B.
           ADD FLD0149A        TO FLD0149B.
           SUBTRACT FLD0150A        FROM FLD0150B
               ON SIZE ERROR MOVE 'Y' TO FLD0150E.
           ADD FLD0151A        TO FLD0151B.
           SUBTRACT FLD0152A        FROM FLD0152B.
           ADD FLD0153A        TO FLD0153B
               ON SIZE ERROR MOVE 'Y' TO FLD0153E.
           SUBTRACT FLD0154A        FROM FLD0154B.
           ADD FLD0155A        TO FLD0155B.
           SUBTRACT FLD0156A        FROM FLD0156B
               ON SIZE ERROR MOVE 'Y' TO FLD0156E.
           ADD FLD0157A        TO FLD0157B.
           SUBTRACT FLD0158A        FROM FLD0158B.
           ADD FLD0159A        TO FLD0159B
               ON SIZE ERROR MOVE 'Y' TO FLD0159E.
           SUBTRACT FLD0160A        FROM FLD0160B.
           ADD FLD0161A        TO FLD0161B.
           SUBTRACT FLD0162A        FROM FLD0162B
               ON SIZE ERROR MOVE 'Y' TO FLD0162E.
           ADD FLD0163A        TO FLD0163B.
           SUBTRACT FLD0164A        FROM FLD0164B.
           ADD FLD0165A        TO FLD0165B
               ON SIZE ERROR MOVE 'Y' TO FLD0165E.
           SUBTRACT FLD0166A        FROM FLD0166B.
           ADD FLD0167A        TO FLD0167B.
           SUBTRACT FLD0168A        FROM FLD0168B
               ON SIZE ERROR MOVE 'Y' TO FLD0168E.
           ADD FLD0169A        TO FLD0169B.
           SUBTRACT FLD0170A        FROM FLD0170B.
           ADD FLD0171A        TO FLD0171B
               ON SIZE ERROR MOVE 'Y' TO FLD0171E.
           SUBTRACT FLD0172A        FROM FLD0172B.
           ADD FLD0173A        TO FLD0173B.
           SUBTRACT FLD0174A        FROM FLD0174B
               ON SIZE ERROR MOVE 'Y' TO FLD0174E.
           ADD FLD0175A        TO FLD0175B.
           SUBTRACT FLD0176A        FROM FLD0176B.
           ADD FLD0177A        TO FLD0177B
               ON SIZE ERROR MOVE 'Y' TO FLD0177E.
           SUBTRACT FLD0178A        FROM FLD0178B.
           ADD FLD0179A        TO FLD0179B.
           SUBTRACT FLD0180A        FROM FLD0180B
               ON SIZE ERROR MOVE 'Y' TO FLD0180E.
           ADD FLD0181A        TO FLD0181B.
           SUBTRACT FLD0182A        FROM FLD0182B.
           ADD FLD0183A        TO FLD0183B
               ON SIZE ERROR MOVE 'Y' TO FLD0183E.
           SUBTRACT FLD0184A        FROM FLD0184B.
           ADD FLD0185A        TO FLD0185B.
           SUBTRACT FLD0186A        FROM FLD0186B
               ON SIZE ERROR MOVE 'Y' TO FLD0186E.
           ADD FLD0187A        TO FLD0187B.
           SUBTRACT FLD0188A        FROM FLD0188B.
           ADD FLD0189A        TO FLD0189B
               ON SIZE ERROR MOVE 'Y' TO FLD0189E.
           SUBTRACT FLD0190A        FROM FLD0190B.
           ADD FLD0191A        TO FLD0191B.
           SUBTRACT FLD0192A        FROM FLD0192B
               ON SIZE ERROR MOVE 'Y' TO FLD0192E.
           ADD FLD0193A        TO FLD0193B.
           SUBTRACT FLD0194A        FROM FLD0194B.
           ADD FLD0195A        TO FLD0195B
               ON SIZE ERROR MOVE 'Y' TO FLD0195E.
           SUBTRACT FLD0196A        FROM FLD0196B.
           ADD FLD0197A        TO FLD0197B.
           SUBTRACT FLD0198A        FROM FLD0198B
               ON SIZE ERROR MOVE 'Y' TO FLD0198E.
           ADD FLD0199A        TO FLD0199B.
           SUBTRACT FLD0200A        FROM FLD0200B.
           ADD FLD0201A        TO FLD0201B
               ON SIZE ERROR MOVE 'Y' TO FLD0201E.
           SUBTRACT FLD0202A        FROM FLD0202B.
           ADD FLD0203A        TO FLD0203B.
           SUBTRACT FLD0204A        FROM FLD0204B
               ON SIZE ERROR MOVE 'Y' TO FLD0204E.
           ADD FLD0205A        TO FLD0205B.
           SUBTRACT FLD0206A        FROM FLD0206B.
           ADD FLD0207A        TO FLD0207B
               ON SIZE ERROR MOVE 'Y' TO FLD0207E.
           SUBTRACT FLD0208A        FROM FLD0208B.
           ADD FLD0209A        TO FLD0209B.
           SUBTRACT FLD0210A        FROM FLD0210B
               ON SIZE ERROR MOVE 'Y' TO FLD0210E.
           ADD FLD0211A        TO FLD0211B.
           SUBTRACT FLD0212A        FROM FLD0212B.
           ADD FLD0213A        TO FLD0213B
               ON SIZE ERROR MOVE 'Y' TO FLD0213E.
           SUBTRACT FLD0214A        FROM FLD0214B.
           ADD FLD0215A        TO FLD0215B.
           SUBTRACT FLD0216A        FROM FLD0216B
               ON SIZE ERROR MOVE 'Y' TO FLD0216E.
           ADD FLD0217A        TO FLD0217B.
           SUBTRACT FLD0218A        FROM FLD0218B.
           ADD FLD0219A        TO FLD0219B
               ON SIZE ERROR MOVE 'Y' TO FLD0219E.
           SUBTRACT FLD0220A        FROM FLD0220B.
           ADD FLD0221A        TO FLD0221B.
           SUBTRACT FLD0222A        FROM FLD0222B
               ON SIZE ERROR MOVE 'Y' TO FLD0222E.
           ADD FLD0223A        TO FLD0223B.
           SUBTRACT FLD0224A        FROM FLD0224B.
           ADD FLD0225A        TO FLD0225B
               ON SIZE ERROR MOVE 'Y' TO FLD0225E.
           SUBTRACT FLD0226A        FROM FLD0226B.
           ADD FLD0227A        TO FLD0227B.
           SUBTRACT FLD0228A        FROM FLD0228B
               ON SIZE ERROR MOVE 'Y' TO FLD0228E.
           ADD FLD0229A        TO FLD0229B.
           SUBTRACT FLD0230A        FROM FLD0230B.
           ADD FLD0231A        TO FLD0231B
               ON SIZE ERROR MOVE 'Y' TO FLD0231E.
           SUBTRACT FLD0232A        FROM FLD0232B.
           ADD FLD0233A        TO FLD0233B.
           SUBTRACT FLD0234A        FROM FLD0234B
               ON SIZE ERROR MOVE 'Y' TO FLD0234E.
           ADD FLD0235A        TO FLD0235B.
           SUBTRACT FLD0236A        FROM FLD0236B.
           ADD FLD0237A        TO FLD0237B
               ON SIZE ERROR MOVE 'Y' TO FLD0237E.
           SUBTRACT FLD0238A        FROM FLD0238B.
           ADD FLD0239A        TO FLD0239B.
           SUBTRACT FLD0240A        FROM FLD0240B
               ON SIZE ERROR MOVE 'Y' TO FLD0240E.
           ADD FLD0241A        TO FLD0241B.
           SUBTRACT FLD0242A        FROM FLD0242B.
           ADD FLD0243A        TO FLD0243B
               ON SIZE ERROR MOVE 'Y' TO FLD0243E.
           SUBTRACT FLD0244A        FROM FLD0244B.
           ADD FLD0245A        TO FLD0245B.
           SUBTRACT FLD0246A        FROM FLD0246B
               ON SIZE ERROR MOVE 'Y' TO FLD0246E.
           ADD FLD0247A        TO FLD0247B.
           SUBTRACT FLD0248A        FROM FLD0248B.
           ADD FLD0249A        TO FLD0249B
               ON SIZE ERROR MOVE 'Y' TO FLD0249E.
           SUBTRACT FLD0250A        FROM FLD0250B.
           ADD FLD0251A        TO FLD0251B.
           SUBTRACT FLD0252A        FROM FLD0252B
               ON SIZE ERROR MOVE 'Y' TO FLD0252E.
           ADD FLD0253A        TO FLD0253B.
           SUBTRACT FLD0254A        FROM FLD0254B.
           ADD FLD0255A        TO FLD0255B
               ON SIZE ERROR MOVE 'Y' TO FLD0255E.
           SUBTRACT FLD0256A        FROM FLD0256B.
           ADD FLD0257A        TO FLD0257B.
           SUBTRACT FLD0258A        FROM FLD0258B
               ON SIZE ERROR MOVE 'Y' TO FLD0258E.
           ADD FLD0259A        TO FLD0259B.
           SUBTRACT FLD0260A        FROM FLD0260B.
           ADD FLD0261A        TO FLD0261B
               ON SIZE ERROR MOVE 'Y' TO FLD0261E.
           SUBTRACT FLD0262A        FROM FLD0262B.
           ADD FLD0263A        TO FLD0263B.
           SUBTRACT FLD0264A        FROM FLD0264B
               ON SIZE ERROR MOVE 'Y' TO FLD0264E.
           ADD FLD0265A        TO FLD0265B.
           SUBTRACT FLD0266A        FROM FLD0266B.
           ADD FLD0267A        TO FLD0267B
               ON SIZE ERROR MOVE 'Y' TO FLD0267E.
           SUBTRACT FLD0268A        FROM FLD0268B.
           ADD FLD0269A        TO FLD0269B.
           SUBTRACT FLD0270A        FROM FLD0270B
               ON SIZE ERROR MOVE 'Y' TO FLD0270E.
           ADD FLD0271A        TO FLD0271B.
           SUBTRACT FLD0272A        FROM FLD0272B.
           ADD FLD0273A        TO FLD0273B
               ON SIZE ERROR MOVE 'Y' TO FLD0273E.
           SUBTRACT FLD0274A        FROM FLD0274B.
           ADD FLD0275A        TO FLD0275B.
           SUBTRACT FLD0276A        FROM FLD0276B
               ON SIZE ERROR MOVE 'Y' TO FLD0276E.
           ADD FLD0277A        TO FLD0277B.
           SUBTRACT FLD0278A        FROM FLD0278B.
           ADD FLD0279A        TO FLD0279B
               ON SIZE ERROR MOVE 'Y' TO FLD0279E.
           SUBTRACT FLD0280A        FROM FLD0280B.
           ADD FLD0281A        TO FLD0281B.
           SUBTRACT FLD0282A        FROM FLD0282B
               ON SIZE ERROR MOVE 'Y' TO FLD0282E.
           ADD FLD0283A        TO FLD0283B.
           SUBTRACT FLD0284A        FROM FLD0284B.
           ADD FLD0285A        TO FLD0285B
               ON SIZE ERROR MOVE 'Y' TO FLD0285E.
           SUBTRACT FLD0286A        FROM FLD0286B.
           ADD FLD0287A        TO FLD0287B.
           SUBTRACT FLD0288A        FROM FLD0288B
               ON SIZE ERROR MOVE 'Y' TO FLD0288E.
           ADD FLD0289A        TO FLD0289B.
           SUBTRACT FLD0290A        FROM FLD0290B.
           ADD FLD0291A        TO FLD0291B
               ON SIZE ERROR MOVE 'Y' TO FLD0291E.
           SUBTRACT FLD0292A        FROM FLD0292B.
           ADD FLD0293A        TO FLD0293B.
           SUBTRACT FLD0294A        FROM FLD0294B
               ON SIZE ERROR MOVE 'Y' TO FLD0294E.
           ADD FLD0295A        TO FLD0295B.
           SUBTRACT FLD0296A        FROM FLD0296B.
           ADD FLD0297A        TO FLD0297B
               ON SIZE ERROR MOVE 'Y' TO FLD0297E.
           SUBTRACT FLD0298A        FROM FLD0298B.
           ADD FLD0299A        TO FLD0299B.
           SUBTRACT FLD0300A        FROM FLD0300B
               ON SIZE ERROR MOVE 'Y' TO FLD0300E.
           ADD FLD0301A        TO FLD0301B.
           SUBTRACT FLD0302A        FROM FLD0302B.
           ADD FLD0303A        TO FLD0303B
               ON SIZE ERROR MOVE 'Y' TO FLD0303E.
           SUBTRACT FLD0304A        FROM FLD0304B.
           ADD FLD0305A        TO FLD0305B.
           SUBTRACT FLD0306A        FROM FLD0306B
               ON SIZE ERROR MOVE 'Y' TO FLD0306E.
           ADD FLD0307A        TO FLD0307B.
           SUBTRACT FLD0308A        FROM FLD0308B.
           ADD FLD0309A        TO FLD0309B
               ON SIZE ERROR MOVE 'Y' TO FLD0309E.
           SUBTRACT FLD0310A        FROM FLD0310B.
           ADD FLD0311A        TO FLD0311B.
           SUBTRACT FLD0312A        FROM FLD0312B
               ON SIZE ERROR MOVE 'Y' TO FLD0312E.
           ADD FLD0313A        TO FLD0313B.
           SUBTRACT FLD0314A        FROM FLD0314B.
           ADD FLD0315A        TO FLD0315B
               ON SIZE ERROR MOVE 'Y' TO FLD0315E.
           SUBTRACT FLD0316A        FROM FLD0316B.
           ADD FLD0317A        TO FLD0317B.
           SUBTRACT FLD0318A        FROM FLD0318B
               ON SIZE ERROR MOVE 'Y' TO FLD0318E.
           ADD FLD0319A        TO FLD0319B.
           SUBTRACT FLD0320A        FROM FLD0320B.
           ADD FLD0321A        TO FLD0321B
               ON SIZE ERROR MOVE 'Y' TO FLD0321E.
           SUBTRACT FLD0322A        FROM FLD0322B.
           ADD FLD0323A        TO FLD0323B.
           SUBTRACT FLD0324A        FROM FLD0324B
               ON SIZE ERROR MOVE 'Y' TO FLD0324E.
           ADD FLD0325A        TO FLD0325B.
           SUBTRACT FLD0326A        FROM FLD0326B.
           ADD FLD0327A        TO FLD0327B
               ON SIZE ERROR MOVE 'Y' TO FLD0327E.
           SUBTRACT FLD0328A        FROM FLD0328B.
           ADD FLD0329A        TO FLD0329B.
           SUBTRACT FLD0330A        FROM FLD0330B
               ON SIZE ERROR MOVE 'Y' TO FLD0330E.
           ADD FLD0331A        TO FLD0331B.
           SUBTRACT FLD0332A        FROM FLD0332B.
           ADD FLD0333A        TO FLD0333B
               ON SIZE ERROR MOVE 'Y' TO FLD0333E.
           SUBTRACT FLD0334A        FROM FLD0334B.
           ADD FLD0335A        TO FLD0335B.
           SUBTRACT FLD0336A        FROM FLD0336B
               ON SIZE ERROR MOVE 'Y' TO FLD0336E.
           ADD FLD0337A        TO FLD0337B.
           SUBTRACT FLD0338A        FROM FLD0338B.
           ADD FLD0339A        TO FLD0339B
               ON SIZE ERROR MOVE 'Y' TO FLD0339E.
           SUBTRACT FLD0340A        FROM FLD0340B.
           ADD FLD0341A        TO FLD0341B.
           SUBTRACT FLD0342A        FROM FLD0342B
               ON SIZE ERROR MOVE 'Y' TO FLD0342E.
           ADD FLD0343A        TO FLD0343B.
           SUBTRACT FLD0344A        FROM FLD0344B.
           ADD FLD0345A        TO FLD0345B
               ON SIZE ERROR MOVE 'Y' TO FLD0345E.
           SUBTRACT FLD0346A        FROM FLD0346B.
           ADD FLD0347A        TO FLD0347B.
           SUBTRACT FLD0348A        FROM FLD0348B
               ON SIZE ERROR MOVE 'Y' TO FLD0348E.
           ADD FLD0349A        TO FLD0349B.
           SUBTRACT FLD0350A        FROM FLD0350B.
           ADD FLD0351A        TO FLD0351B
               ON SIZE ERROR MOVE 'Y' TO FLD0351E.
           SUBTRACT FLD0352A        FROM FLD0352B.
           ADD FLD0353A        TO FLD0353B.
           SUBTRACT FLD0354A        FROM FLD0354B
               ON SIZE ERROR MOVE 'Y' TO FLD0354E.
           ADD FLD0355A        TO FLD0355B.
           SUBTRACT FLD0356A        FROM FLD0356B.
           ADD FLD0357A        TO FLD0357B
               ON SIZE ERROR MOVE 'Y' TO FLD0357E.
           SUBTRACT FLD0358A        FROM FLD0358B.
           ADD FLD0359A        TO FLD0359B.
           SUBTRACT FLD0360A        FROM FLD0360B
               ON SIZE ERROR MOVE 'Y' TO FLD0360E.
           ADD FLD0361A        TO FLD0361B.
           SUBTRACT FLD0362A        FROM FLD0362B.
           ADD FLD0363A        TO FLD0363B
               ON SIZE ERROR MOVE 'Y' TO FLD0363E.
           SUBTRACT FLD0364A        FROM FLD0364B.
           ADD FLD0365A        TO FLD0365B.
           SUBTRACT FLD0366A        FROM FLD0366B
               ON SIZE ERROR MOVE 'Y' TO FLD0366E.
           ADD FLD0367A        TO FLD0367B.
           SUBTRACT FLD0368A        FROM FLD0368B.
           ADD FLD0369A        TO FLD0369B
               ON SIZE ERROR MOVE 'Y' TO FLD0369E.
           SUBTRACT FLD0370A        FROM FLD0370B.
           ADD FLD0371A        TO FLD0371B.
           SUBTRACT FLD0372A        FROM FLD0372B
               ON SIZE ERROR MOVE 'Y' TO FLD0372E.
           ADD FLD0373A        TO FLD0373B.
           SUBTRACT FLD0374A        FROM FLD0374B.
           ADD FLD0375A        TO FLD0375B
               ON SIZE ERROR MOVE 'Y' TO FLD0375E.
           SUBTRACT FLD0376A        FROM FLD0376B.
           ADD FLD0377A        TO FLD0377B.
           SUBTRACT FLD0378A        FROM FLD0378B
               ON SIZE ERROR MOVE 'Y' TO FLD0378E.
           ADD FLD0379A        TO FLD0379B.
           SUBTRACT FLD0380A        FROM FLD0380B.
           ADD FLD0381A        TO FLD0381B
               ON SIZE ERROR MOVE 'Y' TO FLD0381E.
           SUBTRACT FLD0382A        FROM FLD0382B.
           ADD FLD0383A        TO FLD0383B.
           SUBTRACT FLD0384A        FROM FLD0384B
               ON SIZE ERROR MOVE 'Y' TO FLD0384E.
           ADD FLD0385A        TO FLD0385B.
           SUBTRACT FLD0386A        FROM FLD0386B.
           ADD FLD0387A        TO FLD0387B
               ON SIZE ERROR MOVE 'Y' TO FLD0387E.
           SUBTRACT FLD0388A        FROM FLD0388B.
           ADD FLD0389A        TO FLD0389B.
           SUBTRACT FLD0390A        FROM FLD0390B
               ON SIZE ERROR MOVE 'Y' TO FLD0390E.
           ADD FLD0391A        TO FLD0391B.
           SUBTRACT FLD0392A        FROM FLD0392B.
           ADD FLD0393A        TO FLD0393B
               ON SIZE ERROR MOVE 'Y' TO FLD0393E.
           SUBTRACT FLD0394A        FROM FLD0394B.
           ADD FLD0395A        TO FLD0395B.
           SUBTRACT FLD0396A        FROM FLD0396B
               ON SIZE ERROR MOVE 'Y' TO FLD0396E.
           ADD FLD0397A        TO FLD0397B.
           SUBTRACT FLD0398A        FROM FLD0398B.
           ADD FLD0399A        TO FLD0399B
               ON SIZE ERROR MOVE 'Y' TO FLD0399E.
           SUBTRACT FLD0400A        FROM FLD0400B.
           ADD FLD0401A        TO FLD0401B.
           SUBTRACT FLD0402A        FROM FLD0402B
               ON SIZE ERROR MOVE 'Y' TO FLD0402E.
           ADD FLD0403A        TO FLD0403B.
           SUBTRACT FLD0404A        FROM FLD0404B.
           ADD FLD0405A        TO FLD0405B
               ON SIZE ERROR MOVE 'Y' TO FLD0405E.
           SUBTRACT FLD0406A        FROM FLD0406B.
           ADD FLD0407A        TO FLD0407B.
           SUBTRACT FLD0408A        FROM FLD0408B
               ON SIZE ERROR MOVE 'Y' TO FLD0408E.
           ADD FLD0409A        TO FLD0409B.
           SUBTRACT FLD0410A        FROM FLD0410B.
           ADD FLD0411A        TO FLD0411B
               ON SIZE ERROR MOVE 'Y' TO FLD0411E.
           SUBTRACT FLD0412A        FROM FLD0412B.
           ADD FLD0413A        TO FLD0413B.
           SUBTRACT FLD0414A        FROM FLD0414B
               ON SIZE ERROR MOVE 'Y' TO FLD0414E.
           ADD FLD0415A        TO FLD0415B.
           SUBTRACT FLD0416A        FROM FLD0416B.
           ADD FLD0417A        TO FLD0417B
               ON SIZE ERROR MOVE 'Y' TO FLD0417E.
           SUBTRACT FLD0418A        FROM FLD0418B.
           ADD FLD0419A        TO FLD0419B.
           SUBTRACT FLD0420A        FROM FLD0420B
               ON SIZE ERROR MOVE 'Y' TO FLD0420E.
           ADD FLD0421A        TO FLD0421B.
           SUBTRACT FLD0422A        FROM FLD0422B.
           ADD FLD0423A        TO FLD0423B
               ON SIZE ERROR MOVE 'Y' TO FLD0423E.
           SUBTRACT FLD0424A        FROM FLD0424B.
           ADD FLD0425A        TO FLD0425B.
           SUBTRACT FLD0426A        FROM FLD0426B
               ON SIZE ERROR MOVE 'Y' TO FLD0426E.
           ADD FLD0427A        TO FLD0427B.
           SUBTRACT FLD0428A        FROM FLD0428B.
           ADD FLD0429A        TO FLD0429B
               ON SIZE ERROR MOVE 'Y' TO FLD0429E.
           SUBTRACT FLD0430A        FROM FLD0430B.
           ADD FLD0431A        TO FLD0431B.
           SUBTRACT FLD0432A        FROM FLD0432B
               ON SIZE ERROR MOVE 'Y' TO FLD0432E.
           ADD FLD0433A        TO FLD0433B.
           SUBTRACT FLD0434A        FROM FLD0434B.
           ADD FLD0435A        TO FLD0435B
               ON SIZE ERROR MOVE 'Y' TO FLD0435E.
           SUBTRACT FLD0436A        FROM FLD0436B.
           ADD FLD0437A        TO FLD0437B.
           SUBTRACT FLD0438A        FROM FLD0438B
               ON SIZE ERROR MOVE 'Y' TO FLD0438E.
           ADD FLD0439A        TO FLD0439B.
           SUBTRACT FLD0440A        FROM FLD0440B.
           ADD FLD0441A        TO FLD0441B
               ON SIZE ERROR MOVE 'Y' TO FLD0441E.
           SUBTRACT FLD0442A        FROM FLD0442B.
           ADD FLD0443A        TO FLD0443B.
           SUBTRACT FLD0444A        FROM FLD0444B
               ON SIZE ERROR MOVE 'Y' TO FLD0444E.
           ADD FLD0445A        TO FLD0445B.
           SUBTRACT FLD0446A        FROM FLD0446B.
           ADD FLD0447A        TO FLD0447B
               ON SIZE ERROR MOVE 'Y' TO FLD0447E.
           SUBTRACT FLD0448A        FROM FLD0448B.
           ADD FLD0449A        TO FLD0449B.
           SUBTRACT FLD0450A        FROM FLD0450B
               ON SIZE ERROR MOVE 'Y' TO FLD0450E.
           ADD FLD0451A        TO FLD0451B.
           SUBTRACT FLD0452A        FROM FLD0452B.
           ADD FLD0453A        TO FLD0453B
               ON SIZE ERROR MOVE 'Y' TO FLD0453E.
           SUBTRACT FLD0454A        FROM FLD0454B.
           ADD FLD0455A        TO FLD0455B.
           SUBTRACT FLD0456A        FROM FLD0456B
               ON SIZE ERROR MOVE 'Y' TO FLD0456E.
           ADD FLD0457A        TO FLD0457B.
           SUBTRACT FLD0458A        FROM FLD0458B.
           ADD FLD0459A        TO FLD0459B
               ON SIZE ERROR MOVE 'Y' TO FLD0459E.
           SUBTRACT FLD0460A        FROM FLD0460B.
           ADD FLD0461A        TO FLD0461B.
           SUBTRACT FLD0462A        FROM FLD0462B
               ON SIZE ERROR MOVE 'Y' TO FLD0462E.
           ADD FLD0463A        TO FLD0463B.
           SUBTRACT FLD0464A        FROM FLD0464B.
           ADD FLD0465A        TO FLD0465B
               ON SIZE ERROR MOVE 'Y' TO FLD0465E.
           SUBTRACT FLD0466A        FROM FLD0466B.
           ADD FLD0467A        TO FLD0467B.
           SUBTRACT FLD0468A        FROM FLD0468B
               ON SIZE ERROR MOVE 'Y' TO FLD0468E.
           ADD FLD0469A        TO FLD0469B.
           SUBTRACT FLD0470A        FROM FLD0470B.
           ADD FLD0471A        TO FLD0471B
               ON SIZE ERROR MOVE 'Y' TO FLD0471E.
           SUBTRACT FLD0472A        FROM FLD0472B.
           ADD FLD0473A        TO FLD0473B.
           SUBTRACT FLD0474A        FROM FLD0474B
               ON SIZE ERROR MOVE 'Y' TO FLD0474E.
           ADD FLD0475A        TO FLD0475B.
           SUBTRACT FLD0476A        FROM FLD0476B.
           ADD FLD0477A        TO FLD0477B
               ON SIZE ERROR MOVE 'Y' TO FLD0477E.
           SUBTRACT FLD0478A        FROM FLD0478B.
           ADD FLD0479A        TO FLD0479B.
           SUBTRACT FLD0480A        FROM FLD0480B
               ON SIZE ERROR MOVE 'Y' TO FLD0480E.
           ADD FLD0481A        TO FLD0481B.
           SUBTRACT FLD0482A        FROM FLD0482B.
           ADD FLD0483A        TO FLD0483B
               ON SIZE ERROR MOVE 'Y' TO FLD0483E.
           SUBTRACT FLD0484A        FROM FLD0484B.
           ADD FLD0485A        TO FLD0485B.
           SUBTRACT FLD0486A        FROM FLD0486B
               ON SIZE ERROR MOVE 'Y' TO FLD0486E.
           ADD FLD0487A        TO FLD0487B.
           SUBTRACT FLD0488A        FROM FLD0488B.
           ADD FLD0489A        TO FLD0489B
               ON SIZE ERROR MOVE 'Y' TO FLD0489E.
           SUBTRACT FLD0490A        FROM FLD0490B.
           ADD FLD0491A        TO FLD0491B.
           SUBTRACT FLD0492A        FROM FLD0492B
               ON SIZE ERROR MOVE 'Y' TO FLD0492E.
           ADD FLD0493A        TO FLD0493B.
           SUBTRACT FLD0494A        FROM FLD0494B.
           ADD FLD0495A        TO FLD0495B
               ON SIZE ERROR MOVE 'Y' TO FLD0495E.
           SUBTRACT FLD0496A        FROM FLD0496B.
           ADD FLD0497A        TO FLD0497B.
           SUBTRACT FLD0498A        FROM FLD0498B
               ON SIZE ERROR MOVE 'Y' TO FLD0498E.
           ADD FLD0499A        TO FLD0499B.

      *4000-COMPARE.

           IF FLD0001B (1:)    NOT EQUAL XPC-FLD0001B
              DISPLAY 'FLD0001B ==> ' FLD0001B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0001B.
           IF FLD0001E   NOT EQUAL XPC-FLD0001E
              DISPLAY 'FLD0001E ==> ' FLD0001E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0001E.
           IF FLD0002B (1:)    NOT EQUAL XPC-FLD0002B
              DISPLAY 'FLD0002B ==> ' FLD0002B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0002B.
           IF FLD0002E   NOT EQUAL XPC-FLD0002E
              DISPLAY 'FLD0002E ==> ' FLD0002E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0002E.
           IF FLD0003B (1:)    NOT EQUAL XPC-FLD0003B
              DISPLAY 'FLD0003B ==> ' FLD0003B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0003B.
           IF FLD0003E   NOT EQUAL XPC-FLD0003E
              DISPLAY 'FLD0003E ==> ' FLD0003E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0003E.
           IF FLD0004B (1:)    NOT EQUAL XPC-FLD0004B
              DISPLAY 'FLD0004B ==> ' FLD0004B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0004B.
           IF FLD0004E   NOT EQUAL XPC-FLD0004E
              DISPLAY 'FLD0004E ==> ' FLD0004E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0004E.
           IF FLD0005B (1:)    NOT EQUAL XPC-FLD0005B
              DISPLAY 'FLD0005B ==> ' FLD0005B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0005B.
           IF FLD0005E   NOT EQUAL XPC-FLD0005E
              DISPLAY 'FLD0005E ==> ' FLD0005E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0005E.
           IF FLD0006B (1:)    NOT EQUAL XPC-FLD0006B
              DISPLAY 'FLD0006B ==> ' FLD0006B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0006B.
           IF FLD0006E   NOT EQUAL XPC-FLD0006E
              DISPLAY 'FLD0006E ==> ' FLD0006E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0006E.
           IF FLD0007B (1:)    NOT EQUAL XPC-FLD0007B
              DISPLAY 'FLD0007B ==> ' FLD0007B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0007B.
           IF FLD0007E   NOT EQUAL XPC-FLD0007E
              DISPLAY 'FLD0007E ==> ' FLD0007E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0007E.
           IF FLD0008B (1:)    NOT EQUAL XPC-FLD0008B
              DISPLAY 'FLD0008B ==> ' FLD0008B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0008B.
           IF FLD0008E   NOT EQUAL XPC-FLD0008E
              DISPLAY 'FLD0008E ==> ' FLD0008E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0008E.
           IF FLD0009B (1:)    NOT EQUAL XPC-FLD0009B
              DISPLAY 'FLD0009B ==> ' FLD0009B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0009B.
           IF FLD0009E   NOT EQUAL XPC-FLD0009E
              DISPLAY 'FLD0009E ==> ' FLD0009E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0009E.
           IF FLD0010B (1:)    NOT EQUAL XPC-FLD0010B
              DISPLAY 'FLD0010B ==> ' FLD0010B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0010B.
           IF FLD0010E   NOT EQUAL XPC-FLD0010E
              DISPLAY 'FLD0010E ==> ' FLD0010E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0010E.
           IF FLD0011B (1:)    NOT EQUAL XPC-FLD0011B
              DISPLAY 'FLD0011B ==> ' FLD0011B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0011B.
           IF FLD0011E   NOT EQUAL XPC-FLD0011E
              DISPLAY 'FLD0011E ==> ' FLD0011E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0011E.
           IF FLD0012B (1:)    NOT EQUAL XPC-FLD0012B
              DISPLAY 'FLD0012B ==> ' FLD0012B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0012B.
           IF FLD0012E   NOT EQUAL XPC-FLD0012E
              DISPLAY 'FLD0012E ==> ' FLD0012E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0012E.
           IF FLD0013B (1:)    NOT EQUAL XPC-FLD0013B
              DISPLAY 'FLD0013B ==> ' FLD0013B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0013B.
           IF FLD0013E   NOT EQUAL XPC-FLD0013E
              DISPLAY 'FLD0013E ==> ' FLD0013E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0013E.
           IF FLD0014B (1:)    NOT EQUAL XPC-FLD0014B
              DISPLAY 'FLD0014B ==> ' FLD0014B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0014B.
           IF FLD0014E   NOT EQUAL XPC-FLD0014E
              DISPLAY 'FLD0014E ==> ' FLD0014E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0014E.
           IF FLD0015B (1:)    NOT EQUAL XPC-FLD0015B
              DISPLAY 'FLD0015B ==> ' FLD0015B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0015B.
           IF FLD0015E   NOT EQUAL XPC-FLD0015E
              DISPLAY 'FLD0015E ==> ' FLD0015E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0015E.
           IF FLD0016B (1:)    NOT EQUAL XPC-FLD0016B
              DISPLAY 'FLD0016B ==> ' FLD0016B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0016B.
           IF FLD0016E   NOT EQUAL XPC-FLD0016E
              DISPLAY 'FLD0016E ==> ' FLD0016E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0016E.
           IF FLD0017B (1:)    NOT EQUAL XPC-FLD0017B
              DISPLAY 'FLD0017B ==> ' FLD0017B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0017B.
           IF FLD0017E   NOT EQUAL XPC-FLD0017E
              DISPLAY 'FLD0017E ==> ' FLD0017E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0017E.
           IF FLD0018B (1:)    NOT EQUAL XPC-FLD0018B
              DISPLAY 'FLD0018B ==> ' FLD0018B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0018B.
           IF FLD0018E   NOT EQUAL XPC-FLD0018E
              DISPLAY 'FLD0018E ==> ' FLD0018E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0018E.
           IF FLD0019B (1:)    NOT EQUAL XPC-FLD0019B
              DISPLAY 'FLD0019B ==> ' FLD0019B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0019B.
           IF FLD0019E   NOT EQUAL XPC-FLD0019E
              DISPLAY 'FLD0019E ==> ' FLD0019E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0019E.
           IF FLD0020B (1:)    NOT EQUAL XPC-FLD0020B
              DISPLAY 'FLD0020B ==> ' FLD0020B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0020B.
           IF FLD0020E   NOT EQUAL XPC-FLD0020E
              DISPLAY 'FLD0020E ==> ' FLD0020E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0020E.
           IF FLD0021B (1:)    NOT EQUAL XPC-FLD0021B
              DISPLAY 'FLD0021B ==> ' FLD0021B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0021B.
           IF FLD0021E   NOT EQUAL XPC-FLD0021E
              DISPLAY 'FLD0021E ==> ' FLD0021E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0021E.
           IF FLD0022B (1:)    NOT EQUAL XPC-FLD0022B
              DISPLAY 'FLD0022B ==> ' FLD0022B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0022B.
           IF FLD0022E   NOT EQUAL XPC-FLD0022E
              DISPLAY 'FLD0022E ==> ' FLD0022E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0022E.
           IF FLD0023B (1:)    NOT EQUAL XPC-FLD0023B
              DISPLAY 'FLD0023B ==> ' FLD0023B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0023B.
           IF FLD0023E   NOT EQUAL XPC-FLD0023E
              DISPLAY 'FLD0023E ==> ' FLD0023E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0023E.
           IF FLD0024B (1:)    NOT EQUAL XPC-FLD0024B
              DISPLAY 'FLD0024B ==> ' FLD0024B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0024B.
           IF FLD0024E   NOT EQUAL XPC-FLD0024E
              DISPLAY 'FLD0024E ==> ' FLD0024E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0024E.
           IF FLD0025B (1:)    NOT EQUAL XPC-FLD0025B
              DISPLAY 'FLD0025B ==> ' FLD0025B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0025B.
           IF FLD0025E   NOT EQUAL XPC-FLD0025E
              DISPLAY 'FLD0025E ==> ' FLD0025E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0025E.
           IF FLD0026B (1:)    NOT EQUAL XPC-FLD0026B
              DISPLAY 'FLD0026B ==> ' FLD0026B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0026B.
           IF FLD0026E   NOT EQUAL XPC-FLD0026E
              DISPLAY 'FLD0026E ==> ' FLD0026E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0026E.
           IF FLD0027B (1:)    NOT EQUAL XPC-FLD0027B
              DISPLAY 'FLD0027B ==> ' FLD0027B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0027B.
           IF FLD0027E   NOT EQUAL XPC-FLD0027E
              DISPLAY 'FLD0027E ==> ' FLD0027E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0027E.
           IF FLD0028B (1:)    NOT EQUAL XPC-FLD0028B
              DISPLAY 'FLD0028B ==> ' FLD0028B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0028B.
           IF FLD0028E   NOT EQUAL XPC-FLD0028E
              DISPLAY 'FLD0028E ==> ' FLD0028E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0028E.
           IF FLD0029B (1:)    NOT EQUAL XPC-FLD0029B
              DISPLAY 'FLD0029B ==> ' FLD0029B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0029B.
           IF FLD0029E   NOT EQUAL XPC-FLD0029E
              DISPLAY 'FLD0029E ==> ' FLD0029E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0029E.
           IF FLD0030B (1:)    NOT EQUAL XPC-FLD0030B
              DISPLAY 'FLD0030B ==> ' FLD0030B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0030B.
           IF FLD0030E   NOT EQUAL XPC-FLD0030E
              DISPLAY 'FLD0030E ==> ' FLD0030E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0030E.
           IF FLD0031B (1:)    NOT EQUAL XPC-FLD0031B
              DISPLAY 'FLD0031B ==> ' FLD0031B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0031B.
           IF FLD0031E   NOT EQUAL XPC-FLD0031E
              DISPLAY 'FLD0031E ==> ' FLD0031E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0031E.
           IF FLD0032B (1:)    NOT EQUAL XPC-FLD0032B
              DISPLAY 'FLD0032B ==> ' FLD0032B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0032B.
           IF FLD0032E   NOT EQUAL XPC-FLD0032E
              DISPLAY 'FLD0032E ==> ' FLD0032E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0032E.
           IF FLD0033B (1:)    NOT EQUAL XPC-FLD0033B
              DISPLAY 'FLD0033B ==> ' FLD0033B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0033B.
           IF FLD0033E   NOT EQUAL XPC-FLD0033E
              DISPLAY 'FLD0033E ==> ' FLD0033E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0033E.
           IF FLD0034B (1:)    NOT EQUAL XPC-FLD0034B
              DISPLAY 'FLD0034B ==> ' FLD0034B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0034B.
           IF FLD0034E   NOT EQUAL XPC-FLD0034E
              DISPLAY 'FLD0034E ==> ' FLD0034E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0034E.
           IF FLD0035B (1:)    NOT EQUAL XPC-FLD0035B
              DISPLAY 'FLD0035B ==> ' FLD0035B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0035B.
           IF FLD0035E   NOT EQUAL XPC-FLD0035E
              DISPLAY 'FLD0035E ==> ' FLD0035E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0035E.
           IF FLD0036B (1:)    NOT EQUAL XPC-FLD0036B
              DISPLAY 'FLD0036B ==> ' FLD0036B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0036B.
           IF FLD0036E   NOT EQUAL XPC-FLD0036E
              DISPLAY 'FLD0036E ==> ' FLD0036E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0036E.
           IF FLD0037B (1:)    NOT EQUAL XPC-FLD0037B
              DISPLAY 'FLD0037B ==> ' FLD0037B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0037B.
           IF FLD0037E   NOT EQUAL XPC-FLD0037E
              DISPLAY 'FLD0037E ==> ' FLD0037E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0037E.
           IF FLD0038B (1:)    NOT EQUAL XPC-FLD0038B
              DISPLAY 'FLD0038B ==> ' FLD0038B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0038B.
           IF FLD0038E   NOT EQUAL XPC-FLD0038E
              DISPLAY 'FLD0038E ==> ' FLD0038E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0038E.
           IF FLD0039B (1:)    NOT EQUAL XPC-FLD0039B
              DISPLAY 'FLD0039B ==> ' FLD0039B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0039B.
           IF FLD0039E   NOT EQUAL XPC-FLD0039E
              DISPLAY 'FLD0039E ==> ' FLD0039E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0039E.
           IF FLD0040B (1:)    NOT EQUAL XPC-FLD0040B
              DISPLAY 'FLD0040B ==> ' FLD0040B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0040B.
           IF FLD0040E   NOT EQUAL XPC-FLD0040E
              DISPLAY 'FLD0040E ==> ' FLD0040E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0040E.
           IF FLD0041B (1:)    NOT EQUAL XPC-FLD0041B
              DISPLAY 'FLD0041B ==> ' FLD0041B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0041B.
           IF FLD0041E   NOT EQUAL XPC-FLD0041E
              DISPLAY 'FLD0041E ==> ' FLD0041E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0041E.
           IF FLD0042B (1:)    NOT EQUAL XPC-FLD0042B
              DISPLAY 'FLD0042B ==> ' FLD0042B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0042B.
           IF FLD0042E   NOT EQUAL XPC-FLD0042E
              DISPLAY 'FLD0042E ==> ' FLD0042E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0042E.
           IF FLD0043B (1:)    NOT EQUAL XPC-FLD0043B
              DISPLAY 'FLD0043B ==> ' FLD0043B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0043B.
           IF FLD0043E   NOT EQUAL XPC-FLD0043E
              DISPLAY 'FLD0043E ==> ' FLD0043E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0043E.
           IF FLD0044B (1:)    NOT EQUAL XPC-FLD0044B
              DISPLAY 'FLD0044B ==> ' FLD0044B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0044B.
           IF FLD0044E   NOT EQUAL XPC-FLD0044E
              DISPLAY 'FLD0044E ==> ' FLD0044E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0044E.
           IF FLD0045B (1:)    NOT EQUAL XPC-FLD0045B
              DISPLAY 'FLD0045B ==> ' FLD0045B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0045B.
           IF FLD0045E   NOT EQUAL XPC-FLD0045E
              DISPLAY 'FLD0045E ==> ' FLD0045E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0045E.
           IF FLD0046B (1:)    NOT EQUAL XPC-FLD0046B
              DISPLAY 'FLD0046B ==> ' FLD0046B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0046B.
           IF FLD0046E   NOT EQUAL XPC-FLD0046E
              DISPLAY 'FLD0046E ==> ' FLD0046E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0046E.
           IF FLD0047B (1:)    NOT EQUAL XPC-FLD0047B
              DISPLAY 'FLD0047B ==> ' FLD0047B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0047B.
           IF FLD0047E   NOT EQUAL XPC-FLD0047E
              DISPLAY 'FLD0047E ==> ' FLD0047E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0047E.
           IF FLD0048B (1:)    NOT EQUAL XPC-FLD0048B
              DISPLAY 'FLD0048B ==> ' FLD0048B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0048B.
           IF FLD0048E   NOT EQUAL XPC-FLD0048E
              DISPLAY 'FLD0048E ==> ' FLD0048E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0048E.
           IF FLD0049B (1:)    NOT EQUAL XPC-FLD0049B
              DISPLAY 'FLD0049B ==> ' FLD0049B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0049B.
           IF FLD0049E   NOT EQUAL XPC-FLD0049E
              DISPLAY 'FLD0049E ==> ' FLD0049E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0049E.
           IF FLD0050B (1:)    NOT EQUAL XPC-FLD0050B
              DISPLAY 'FLD0050B ==> ' FLD0050B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0050B.
           IF FLD0050E   NOT EQUAL XPC-FLD0050E
              DISPLAY 'FLD0050E ==> ' FLD0050E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0050E.
           IF FLD0051B (1:)    NOT EQUAL XPC-FLD0051B
              DISPLAY 'FLD0051B ==> ' FLD0051B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0051B.
           IF FLD0051E   NOT EQUAL XPC-FLD0051E
              DISPLAY 'FLD0051E ==> ' FLD0051E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0051E.
           IF FLD0052B (1:)    NOT EQUAL XPC-FLD0052B
              DISPLAY 'FLD0052B ==> ' FLD0052B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0052B.
           IF FLD0052E   NOT EQUAL XPC-FLD0052E
              DISPLAY 'FLD0052E ==> ' FLD0052E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0052E.
           IF FLD0053B (1:)    NOT EQUAL XPC-FLD0053B
              DISPLAY 'FLD0053B ==> ' FLD0053B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0053B.
           IF FLD0053E   NOT EQUAL XPC-FLD0053E
              DISPLAY 'FLD0053E ==> ' FLD0053E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0053E.
           IF FLD0054B (1:)    NOT EQUAL XPC-FLD0054B
              DISPLAY 'FLD0054B ==> ' FLD0054B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0054B.
           IF FLD0054E   NOT EQUAL XPC-FLD0054E
              DISPLAY 'FLD0054E ==> ' FLD0054E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0054E.
           IF FLD0055B (1:)    NOT EQUAL XPC-FLD0055B
              DISPLAY 'FLD0055B ==> ' FLD0055B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0055B.
           IF FLD0055E   NOT EQUAL XPC-FLD0055E
              DISPLAY 'FLD0055E ==> ' FLD0055E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0055E.
           IF FLD0056B (1:)    NOT EQUAL XPC-FLD0056B
              DISPLAY 'FLD0056B ==> ' FLD0056B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0056B.
           IF FLD0056E   NOT EQUAL XPC-FLD0056E
              DISPLAY 'FLD0056E ==> ' FLD0056E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0056E.
           IF FLD0057B (1:)    NOT EQUAL XPC-FLD0057B
              DISPLAY 'FLD0057B ==> ' FLD0057B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0057B.
           IF FLD0057E   NOT EQUAL XPC-FLD0057E
              DISPLAY 'FLD0057E ==> ' FLD0057E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0057E.
           IF FLD0058B (1:)    NOT EQUAL XPC-FLD0058B
              DISPLAY 'FLD0058B ==> ' FLD0058B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0058B.
           IF FLD0058E   NOT EQUAL XPC-FLD0058E
              DISPLAY 'FLD0058E ==> ' FLD0058E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0058E.
           IF FLD0059B (1:)    NOT EQUAL XPC-FLD0059B
              DISPLAY 'FLD0059B ==> ' FLD0059B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0059B.
           IF FLD0059E   NOT EQUAL XPC-FLD0059E
              DISPLAY 'FLD0059E ==> ' FLD0059E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0059E.
           IF FLD0060B (1:)    NOT EQUAL XPC-FLD0060B
              DISPLAY 'FLD0060B ==> ' FLD0060B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0060B.
           IF FLD0060E   NOT EQUAL XPC-FLD0060E
              DISPLAY 'FLD0060E ==> ' FLD0060E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0060E.
           IF FLD0061B (1:)    NOT EQUAL XPC-FLD0061B
              DISPLAY 'FLD0061B ==> ' FLD0061B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0061B.
           IF FLD0061E   NOT EQUAL XPC-FLD0061E
              DISPLAY 'FLD0061E ==> ' FLD0061E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0061E.
           IF FLD0062B (1:)    NOT EQUAL XPC-FLD0062B
              DISPLAY 'FLD0062B ==> ' FLD0062B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0062B.
           IF FLD0062E   NOT EQUAL XPC-FLD0062E
              DISPLAY 'FLD0062E ==> ' FLD0062E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0062E.
           IF FLD0063B (1:)    NOT EQUAL XPC-FLD0063B
              DISPLAY 'FLD0063B ==> ' FLD0063B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0063B.
           IF FLD0063E   NOT EQUAL XPC-FLD0063E
              DISPLAY 'FLD0063E ==> ' FLD0063E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0063E.
           IF FLD0064B (1:)    NOT EQUAL XPC-FLD0064B
              DISPLAY 'FLD0064B ==> ' FLD0064B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0064B.
           IF FLD0064E   NOT EQUAL XPC-FLD0064E
              DISPLAY 'FLD0064E ==> ' FLD0064E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0064E.
           IF FLD0065B (1:)    NOT EQUAL XPC-FLD0065B
              DISPLAY 'FLD0065B ==> ' FLD0065B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0065B.
           IF FLD0065E   NOT EQUAL XPC-FLD0065E
              DISPLAY 'FLD0065E ==> ' FLD0065E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0065E.
           IF FLD0066B (1:)    NOT EQUAL XPC-FLD0066B
              DISPLAY 'FLD0066B ==> ' FLD0066B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0066B.
           IF FLD0066E   NOT EQUAL XPC-FLD0066E
              DISPLAY 'FLD0066E ==> ' FLD0066E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0066E.
           IF FLD0067B (1:)    NOT EQUAL XPC-FLD0067B
              DISPLAY 'FLD0067B ==> ' FLD0067B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0067B.
           IF FLD0067E   NOT EQUAL XPC-FLD0067E
              DISPLAY 'FLD0067E ==> ' FLD0067E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0067E.
           IF FLD0068B (1:)    NOT EQUAL XPC-FLD0068B
              DISPLAY 'FLD0068B ==> ' FLD0068B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0068B.
           IF FLD0068E   NOT EQUAL XPC-FLD0068E
              DISPLAY 'FLD0068E ==> ' FLD0068E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0068E.
           IF FLD0069B (1:)    NOT EQUAL XPC-FLD0069B
              DISPLAY 'FLD0069B ==> ' FLD0069B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0069B.
           IF FLD0069E   NOT EQUAL XPC-FLD0069E
              DISPLAY 'FLD0069E ==> ' FLD0069E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0069E.
           IF FLD0070B (1:)    NOT EQUAL XPC-FLD0070B
              DISPLAY 'FLD0070B ==> ' FLD0070B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0070B.
           IF FLD0070E   NOT EQUAL XPC-FLD0070E
              DISPLAY 'FLD0070E ==> ' FLD0070E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0070E.
           IF FLD0071B (1:)    NOT EQUAL XPC-FLD0071B
              DISPLAY 'FLD0071B ==> ' FLD0071B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0071B.
           IF FLD0071E   NOT EQUAL XPC-FLD0071E
              DISPLAY 'FLD0071E ==> ' FLD0071E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0071E.
           IF FLD0072B (1:)    NOT EQUAL XPC-FLD0072B
              DISPLAY 'FLD0072B ==> ' FLD0072B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0072B.
           IF FLD0072E   NOT EQUAL XPC-FLD0072E
              DISPLAY 'FLD0072E ==> ' FLD0072E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0072E.
           IF FLD0073B (1:)    NOT EQUAL XPC-FLD0073B
              DISPLAY 'FLD0073B ==> ' FLD0073B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0073B.
           IF FLD0073E   NOT EQUAL XPC-FLD0073E
              DISPLAY 'FLD0073E ==> ' FLD0073E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0073E.
           IF FLD0074B (1:)    NOT EQUAL XPC-FLD0074B
              DISPLAY 'FLD0074B ==> ' FLD0074B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0074B.
           IF FLD0074E   NOT EQUAL XPC-FLD0074E
              DISPLAY 'FLD0074E ==> ' FLD0074E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0074E.
           IF FLD0075B (1:)    NOT EQUAL XPC-FLD0075B
              DISPLAY 'FLD0075B ==> ' FLD0075B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0075B.
           IF FLD0075E   NOT EQUAL XPC-FLD0075E
              DISPLAY 'FLD0075E ==> ' FLD0075E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0075E.
           IF FLD0076B (1:)    NOT EQUAL XPC-FLD0076B
              DISPLAY 'FLD0076B ==> ' FLD0076B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0076B.
           IF FLD0076E   NOT EQUAL XPC-FLD0076E
              DISPLAY 'FLD0076E ==> ' FLD0076E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0076E.
           IF FLD0077B (1:)    NOT EQUAL XPC-FLD0077B
              DISPLAY 'FLD0077B ==> ' FLD0077B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0077B.
           IF FLD0077E   NOT EQUAL XPC-FLD0077E
              DISPLAY 'FLD0077E ==> ' FLD0077E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0077E.
           IF FLD0078B (1:)    NOT EQUAL XPC-FLD0078B
              DISPLAY 'FLD0078B ==> ' FLD0078B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0078B.
           IF FLD0078E   NOT EQUAL XPC-FLD0078E
              DISPLAY 'FLD0078E ==> ' FLD0078E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0078E.
           IF FLD0079B (1:)    NOT EQUAL XPC-FLD0079B
              DISPLAY 'FLD0079B ==> ' FLD0079B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0079B.
           IF FLD0079E   NOT EQUAL XPC-FLD0079E
              DISPLAY 'FLD0079E ==> ' FLD0079E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0079E.
           IF FLD0080B (1:)    NOT EQUAL XPC-FLD0080B
              DISPLAY 'FLD0080B ==> ' FLD0080B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0080B.
           IF FLD0080E   NOT EQUAL XPC-FLD0080E
              DISPLAY 'FLD0080E ==> ' FLD0080E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0080E.
           IF FLD0081B (1:)    NOT EQUAL XPC-FLD0081B
              DISPLAY 'FLD0081B ==> ' FLD0081B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0081B.
           IF FLD0081E   NOT EQUAL XPC-FLD0081E
              DISPLAY 'FLD0081E ==> ' FLD0081E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0081E.
           IF FLD0082B (1:)    NOT EQUAL XPC-FLD0082B
              DISPLAY 'FLD0082B ==> ' FLD0082B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0082B.
           IF FLD0082E   NOT EQUAL XPC-FLD0082E
              DISPLAY 'FLD0082E ==> ' FLD0082E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0082E.
           IF FLD0083B (1:)    NOT EQUAL XPC-FLD0083B
              DISPLAY 'FLD0083B ==> ' FLD0083B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0083B.
           IF FLD0083E   NOT EQUAL XPC-FLD0083E
              DISPLAY 'FLD0083E ==> ' FLD0083E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0083E.
           IF FLD0084B (1:)    NOT EQUAL XPC-FLD0084B
              DISPLAY 'FLD0084B ==> ' FLD0084B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0084B.
           IF FLD0084E   NOT EQUAL XPC-FLD0084E
              DISPLAY 'FLD0084E ==> ' FLD0084E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0084E.
           IF FLD0085B (1:)    NOT EQUAL XPC-FLD0085B
              DISPLAY 'FLD0085B ==> ' FLD0085B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0085B.
           IF FLD0085E   NOT EQUAL XPC-FLD0085E
              DISPLAY 'FLD0085E ==> ' FLD0085E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0085E.
           IF FLD0086B (1:)    NOT EQUAL XPC-FLD0086B
              DISPLAY 'FLD0086B ==> ' FLD0086B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0086B.
           IF FLD0086E   NOT EQUAL XPC-FLD0086E
              DISPLAY 'FLD0086E ==> ' FLD0086E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0086E.
           IF FLD0087B (1:)    NOT EQUAL XPC-FLD0087B
              DISPLAY 'FLD0087B ==> ' FLD0087B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0087B.
           IF FLD0087E   NOT EQUAL XPC-FLD0087E
              DISPLAY 'FLD0087E ==> ' FLD0087E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0087E.
           IF FLD0088B (1:)    NOT EQUAL XPC-FLD0088B
              DISPLAY 'FLD0088B ==> ' FLD0088B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0088B.
           IF FLD0088E   NOT EQUAL XPC-FLD0088E
              DISPLAY 'FLD0088E ==> ' FLD0088E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0088E.
           IF FLD0089B (1:)    NOT EQUAL XPC-FLD0089B
              DISPLAY 'FLD0089B ==> ' FLD0089B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0089B.
           IF FLD0089E   NOT EQUAL XPC-FLD0089E
              DISPLAY 'FLD0089E ==> ' FLD0089E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0089E.
           IF FLD0090B (1:)    NOT EQUAL XPC-FLD0090B
              DISPLAY 'FLD0090B ==> ' FLD0090B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0090B.
           IF FLD0090E   NOT EQUAL XPC-FLD0090E
              DISPLAY 'FLD0090E ==> ' FLD0090E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0090E.
           IF FLD0091B (1:)    NOT EQUAL XPC-FLD0091B
              DISPLAY 'FLD0091B ==> ' FLD0091B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0091B.
           IF FLD0091E   NOT EQUAL XPC-FLD0091E
              DISPLAY 'FLD0091E ==> ' FLD0091E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0091E.
           IF FLD0092B (1:)    NOT EQUAL XPC-FLD0092B
              DISPLAY 'FLD0092B ==> ' FLD0092B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0092B.
           IF FLD0092E   NOT EQUAL XPC-FLD0092E
              DISPLAY 'FLD0092E ==> ' FLD0092E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0092E.
           IF FLD0093B (1:)    NOT EQUAL XPC-FLD0093B
              DISPLAY 'FLD0093B ==> ' FLD0093B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0093B.
           IF FLD0093E   NOT EQUAL XPC-FLD0093E
              DISPLAY 'FLD0093E ==> ' FLD0093E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0093E.
           IF FLD0094B (1:)    NOT EQUAL XPC-FLD0094B
              DISPLAY 'FLD0094B ==> ' FLD0094B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0094B.
           IF FLD0094E   NOT EQUAL XPC-FLD0094E
              DISPLAY 'FLD0094E ==> ' FLD0094E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0094E.
           IF FLD0095B (1:)    NOT EQUAL XPC-FLD0095B
              DISPLAY 'FLD0095B ==> ' FLD0095B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0095B.
           IF FLD0095E   NOT EQUAL XPC-FLD0095E
              DISPLAY 'FLD0095E ==> ' FLD0095E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0095E.
           IF FLD0096B (1:)    NOT EQUAL XPC-FLD0096B
              DISPLAY 'FLD0096B ==> ' FLD0096B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0096B.
           IF FLD0096E   NOT EQUAL XPC-FLD0096E
              DISPLAY 'FLD0096E ==> ' FLD0096E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0096E.
           IF FLD0097B (1:)    NOT EQUAL XPC-FLD0097B
              DISPLAY 'FLD0097B ==> ' FLD0097B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0097B.
           IF FLD0097E   NOT EQUAL XPC-FLD0097E
              DISPLAY 'FLD0097E ==> ' FLD0097E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0097E.
           IF FLD0098B (1:)    NOT EQUAL XPC-FLD0098B
              DISPLAY 'FLD0098B ==> ' FLD0098B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0098B.
           IF FLD0098E   NOT EQUAL XPC-FLD0098E
              DISPLAY 'FLD0098E ==> ' FLD0098E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0098E.
           IF FLD0099B (1:)    NOT EQUAL XPC-FLD0099B
              DISPLAY 'FLD0099B ==> ' FLD0099B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0099B.
           IF FLD0099E   NOT EQUAL XPC-FLD0099E
              DISPLAY 'FLD0099E ==> ' FLD0099E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0099E.
           IF FLD0100B (1:)    NOT EQUAL XPC-FLD0100B
              DISPLAY 'FLD0100B ==> ' FLD0100B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0100B.
           IF FLD0100E   NOT EQUAL XPC-FLD0100E
              DISPLAY 'FLD0100E ==> ' FLD0100E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0100E.
           IF FLD0101B (1:)    NOT EQUAL XPC-FLD0101B
              DISPLAY 'FLD0101B ==> ' FLD0101B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0101B.
           IF FLD0101E   NOT EQUAL XPC-FLD0101E
              DISPLAY 'FLD0101E ==> ' FLD0101E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0101E.
           IF FLD0102B (1:)    NOT EQUAL XPC-FLD0102B
              DISPLAY 'FLD0102B ==> ' FLD0102B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0102B.
           IF FLD0102E   NOT EQUAL XPC-FLD0102E
              DISPLAY 'FLD0102E ==> ' FLD0102E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0102E.
           IF FLD0103B (1:)    NOT EQUAL XPC-FLD0103B
              DISPLAY 'FLD0103B ==> ' FLD0103B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0103B.
           IF FLD0103E   NOT EQUAL XPC-FLD0103E
              DISPLAY 'FLD0103E ==> ' FLD0103E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0103E.
           IF FLD0104B (1:)    NOT EQUAL XPC-FLD0104B
              DISPLAY 'FLD0104B ==> ' FLD0104B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0104B.
           IF FLD0104E   NOT EQUAL XPC-FLD0104E
              DISPLAY 'FLD0104E ==> ' FLD0104E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0104E.
           IF FLD0105B (1:)    NOT EQUAL XPC-FLD0105B
              DISPLAY 'FLD0105B ==> ' FLD0105B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0105B.
           IF FLD0105E   NOT EQUAL XPC-FLD0105E
              DISPLAY 'FLD0105E ==> ' FLD0105E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0105E.
           IF FLD0106B (1:)    NOT EQUAL XPC-FLD0106B
              DISPLAY 'FLD0106B ==> ' FLD0106B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0106B.
           IF FLD0106E   NOT EQUAL XPC-FLD0106E
              DISPLAY 'FLD0106E ==> ' FLD0106E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0106E.
           IF FLD0107B (1:)    NOT EQUAL XPC-FLD0107B
              DISPLAY 'FLD0107B ==> ' FLD0107B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0107B.
           IF FLD0107E   NOT EQUAL XPC-FLD0107E
              DISPLAY 'FLD0107E ==> ' FLD0107E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0107E.
           IF FLD0108B (1:)    NOT EQUAL XPC-FLD0108B
              DISPLAY 'FLD0108B ==> ' FLD0108B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0108B.
           IF FLD0108E   NOT EQUAL XPC-FLD0108E
              DISPLAY 'FLD0108E ==> ' FLD0108E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0108E.
           IF FLD0109B (1:)    NOT EQUAL XPC-FLD0109B
              DISPLAY 'FLD0109B ==> ' FLD0109B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0109B.
           IF FLD0109E   NOT EQUAL XPC-FLD0109E
              DISPLAY 'FLD0109E ==> ' FLD0109E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0109E.
           IF FLD0110B (1:)    NOT EQUAL XPC-FLD0110B
              DISPLAY 'FLD0110B ==> ' FLD0110B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0110B.
           IF FLD0110E   NOT EQUAL XPC-FLD0110E
              DISPLAY 'FLD0110E ==> ' FLD0110E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0110E.
           IF FLD0111B (1:)    NOT EQUAL XPC-FLD0111B
              DISPLAY 'FLD0111B ==> ' FLD0111B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0111B.
           IF FLD0111E   NOT EQUAL XPC-FLD0111E
              DISPLAY 'FLD0111E ==> ' FLD0111E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0111E.
           IF FLD0112B (1:)    NOT EQUAL XPC-FLD0112B
              DISPLAY 'FLD0112B ==> ' FLD0112B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0112B.
           IF FLD0112E   NOT EQUAL XPC-FLD0112E
              DISPLAY 'FLD0112E ==> ' FLD0112E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0112E.
           IF FLD0113B (1:)    NOT EQUAL XPC-FLD0113B
              DISPLAY 'FLD0113B ==> ' FLD0113B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0113B.
           IF FLD0113E   NOT EQUAL XPC-FLD0113E
              DISPLAY 'FLD0113E ==> ' FLD0113E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0113E.
           IF FLD0114B (1:)    NOT EQUAL XPC-FLD0114B
              DISPLAY 'FLD0114B ==> ' FLD0114B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0114B.
           IF FLD0114E   NOT EQUAL XPC-FLD0114E
              DISPLAY 'FLD0114E ==> ' FLD0114E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0114E.
           IF FLD0115B (1:)    NOT EQUAL XPC-FLD0115B
              DISPLAY 'FLD0115B ==> ' FLD0115B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0115B.
           IF FLD0115E   NOT EQUAL XPC-FLD0115E
              DISPLAY 'FLD0115E ==> ' FLD0115E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0115E.
           IF FLD0116B (1:)    NOT EQUAL XPC-FLD0116B
              DISPLAY 'FLD0116B ==> ' FLD0116B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0116B.
           IF FLD0116E   NOT EQUAL XPC-FLD0116E
              DISPLAY 'FLD0116E ==> ' FLD0116E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0116E.
           IF FLD0117B (1:)    NOT EQUAL XPC-FLD0117B
              DISPLAY 'FLD0117B ==> ' FLD0117B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0117B.
           IF FLD0117E   NOT EQUAL XPC-FLD0117E
              DISPLAY 'FLD0117E ==> ' FLD0117E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0117E.
           IF FLD0118B (1:)    NOT EQUAL XPC-FLD0118B
              DISPLAY 'FLD0118B ==> ' FLD0118B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0118B.
           IF FLD0118E   NOT EQUAL XPC-FLD0118E
              DISPLAY 'FLD0118E ==> ' FLD0118E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0118E.
           IF FLD0119B (1:)    NOT EQUAL XPC-FLD0119B
              DISPLAY 'FLD0119B ==> ' FLD0119B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0119B.
           IF FLD0119E   NOT EQUAL XPC-FLD0119E
              DISPLAY 'FLD0119E ==> ' FLD0119E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0119E.
           IF FLD0120B (1:)    NOT EQUAL XPC-FLD0120B
              DISPLAY 'FLD0120B ==> ' FLD0120B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0120B.
           IF FLD0120E   NOT EQUAL XPC-FLD0120E
              DISPLAY 'FLD0120E ==> ' FLD0120E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0120E.
           IF FLD0121B (1:)    NOT EQUAL XPC-FLD0121B
              DISPLAY 'FLD0121B ==> ' FLD0121B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0121B.
           IF FLD0121E   NOT EQUAL XPC-FLD0121E
              DISPLAY 'FLD0121E ==> ' FLD0121E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0121E.
           IF FLD0122B (1:)    NOT EQUAL XPC-FLD0122B
              DISPLAY 'FLD0122B ==> ' FLD0122B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0122B.
           IF FLD0122E   NOT EQUAL XPC-FLD0122E
              DISPLAY 'FLD0122E ==> ' FLD0122E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0122E.
           IF FLD0123B (1:)    NOT EQUAL XPC-FLD0123B
              DISPLAY 'FLD0123B ==> ' FLD0123B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0123B.
           IF FLD0123E   NOT EQUAL XPC-FLD0123E
              DISPLAY 'FLD0123E ==> ' FLD0123E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0123E.
           IF FLD0124B (1:)    NOT EQUAL XPC-FLD0124B
              DISPLAY 'FLD0124B ==> ' FLD0124B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0124B.
           IF FLD0124E   NOT EQUAL XPC-FLD0124E
              DISPLAY 'FLD0124E ==> ' FLD0124E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0124E.
           IF FLD0125B (1:)    NOT EQUAL XPC-FLD0125B
              DISPLAY 'FLD0125B ==> ' FLD0125B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0125B.
           IF FLD0125E   NOT EQUAL XPC-FLD0125E
              DISPLAY 'FLD0125E ==> ' FLD0125E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0125E.
           IF FLD0126B (1:)    NOT EQUAL XPC-FLD0126B
              DISPLAY 'FLD0126B ==> ' FLD0126B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0126B.
           IF FLD0126E   NOT EQUAL XPC-FLD0126E
              DISPLAY 'FLD0126E ==> ' FLD0126E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0126E.
           IF FLD0127B (1:)    NOT EQUAL XPC-FLD0127B
              DISPLAY 'FLD0127B ==> ' FLD0127B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0127B.
           IF FLD0127E   NOT EQUAL XPC-FLD0127E
              DISPLAY 'FLD0127E ==> ' FLD0127E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0127E.
           IF FLD0128B (1:)    NOT EQUAL XPC-FLD0128B
              DISPLAY 'FLD0128B ==> ' FLD0128B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0128B.
           IF FLD0128E   NOT EQUAL XPC-FLD0128E
              DISPLAY 'FLD0128E ==> ' FLD0128E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0128E.
           IF FLD0129B (1:)    NOT EQUAL XPC-FLD0129B
              DISPLAY 'FLD0129B ==> ' FLD0129B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0129B.
           IF FLD0129E   NOT EQUAL XPC-FLD0129E
              DISPLAY 'FLD0129E ==> ' FLD0129E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0129E.
           IF FLD0130B (1:)    NOT EQUAL XPC-FLD0130B
              DISPLAY 'FLD0130B ==> ' FLD0130B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0130B.
           IF FLD0130E   NOT EQUAL XPC-FLD0130E
              DISPLAY 'FLD0130E ==> ' FLD0130E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0130E.
           IF FLD0131B (1:)    NOT EQUAL XPC-FLD0131B
              DISPLAY 'FLD0131B ==> ' FLD0131B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0131B.
           IF FLD0131E   NOT EQUAL XPC-FLD0131E
              DISPLAY 'FLD0131E ==> ' FLD0131E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0131E.
           IF FLD0132B (1:)    NOT EQUAL XPC-FLD0132B
              DISPLAY 'FLD0132B ==> ' FLD0132B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0132B.
           IF FLD0132E   NOT EQUAL XPC-FLD0132E
              DISPLAY 'FLD0132E ==> ' FLD0132E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0132E.
           IF FLD0133B (1:)    NOT EQUAL XPC-FLD0133B
              DISPLAY 'FLD0133B ==> ' FLD0133B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0133B.
           IF FLD0133E   NOT EQUAL XPC-FLD0133E
              DISPLAY 'FLD0133E ==> ' FLD0133E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0133E.
           IF FLD0134B (1:)    NOT EQUAL XPC-FLD0134B
              DISPLAY 'FLD0134B ==> ' FLD0134B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0134B.
           IF FLD0134E   NOT EQUAL XPC-FLD0134E
              DISPLAY 'FLD0134E ==> ' FLD0134E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0134E.
           IF FLD0135B (1:)    NOT EQUAL XPC-FLD0135B
              DISPLAY 'FLD0135B ==> ' FLD0135B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0135B.
           IF FLD0135E   NOT EQUAL XPC-FLD0135E
              DISPLAY 'FLD0135E ==> ' FLD0135E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0135E.
           IF FLD0136B (1:)    NOT EQUAL XPC-FLD0136B
              DISPLAY 'FLD0136B ==> ' FLD0136B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0136B.
           IF FLD0136E   NOT EQUAL XPC-FLD0136E
              DISPLAY 'FLD0136E ==> ' FLD0136E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0136E.
           IF FLD0137B (1:)    NOT EQUAL XPC-FLD0137B
              DISPLAY 'FLD0137B ==> ' FLD0137B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0137B.
           IF FLD0137E   NOT EQUAL XPC-FLD0137E
              DISPLAY 'FLD0137E ==> ' FLD0137E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0137E.
           IF FLD0138B (1:)    NOT EQUAL XPC-FLD0138B
              DISPLAY 'FLD0138B ==> ' FLD0138B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0138B.
           IF FLD0138E   NOT EQUAL XPC-FLD0138E
              DISPLAY 'FLD0138E ==> ' FLD0138E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0138E.
           IF FLD0139B (1:)    NOT EQUAL XPC-FLD0139B
              DISPLAY 'FLD0139B ==> ' FLD0139B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0139B.
           IF FLD0139E   NOT EQUAL XPC-FLD0139E
              DISPLAY 'FLD0139E ==> ' FLD0139E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0139E.
           IF FLD0140B (1:)    NOT EQUAL XPC-FLD0140B
              DISPLAY 'FLD0140B ==> ' FLD0140B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0140B.
           IF FLD0140E   NOT EQUAL XPC-FLD0140E
              DISPLAY 'FLD0140E ==> ' FLD0140E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0140E.
           IF FLD0141B (1:)    NOT EQUAL XPC-FLD0141B
              DISPLAY 'FLD0141B ==> ' FLD0141B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0141B.
           IF FLD0141E   NOT EQUAL XPC-FLD0141E
              DISPLAY 'FLD0141E ==> ' FLD0141E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0141E.
           IF FLD0142B (1:)    NOT EQUAL XPC-FLD0142B
              DISPLAY 'FLD0142B ==> ' FLD0142B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0142B.
           IF FLD0142E   NOT EQUAL XPC-FLD0142E
              DISPLAY 'FLD0142E ==> ' FLD0142E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0142E.
           IF FLD0143B (1:)    NOT EQUAL XPC-FLD0143B
              DISPLAY 'FLD0143B ==> ' FLD0143B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0143B.
           IF FLD0143E   NOT EQUAL XPC-FLD0143E
              DISPLAY 'FLD0143E ==> ' FLD0143E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0143E.
           IF FLD0144B (1:)    NOT EQUAL XPC-FLD0144B
              DISPLAY 'FLD0144B ==> ' FLD0144B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0144B.
           IF FLD0144E   NOT EQUAL XPC-FLD0144E
              DISPLAY 'FLD0144E ==> ' FLD0144E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0144E.
           IF FLD0145B (1:)    NOT EQUAL XPC-FLD0145B
              DISPLAY 'FLD0145B ==> ' FLD0145B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0145B.
           IF FLD0145E   NOT EQUAL XPC-FLD0145E
              DISPLAY 'FLD0145E ==> ' FLD0145E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0145E.
           IF FLD0146B (1:)    NOT EQUAL XPC-FLD0146B
              DISPLAY 'FLD0146B ==> ' FLD0146B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0146B.
           IF FLD0146E   NOT EQUAL XPC-FLD0146E
              DISPLAY 'FLD0146E ==> ' FLD0146E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0146E.
           IF FLD0147B (1:)    NOT EQUAL XPC-FLD0147B
              DISPLAY 'FLD0147B ==> ' FLD0147B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0147B.
           IF FLD0147E   NOT EQUAL XPC-FLD0147E
              DISPLAY 'FLD0147E ==> ' FLD0147E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0147E.
           IF FLD0148B (1:)    NOT EQUAL XPC-FLD0148B
              DISPLAY 'FLD0148B ==> ' FLD0148B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0148B.
           IF FLD0148E   NOT EQUAL XPC-FLD0148E
              DISPLAY 'FLD0148E ==> ' FLD0148E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0148E.
           IF FLD0149B (1:)    NOT EQUAL XPC-FLD0149B
              DISPLAY 'FLD0149B ==> ' FLD0149B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0149B.
           IF FLD0149E   NOT EQUAL XPC-FLD0149E
              DISPLAY 'FLD0149E ==> ' FLD0149E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0149E.
           IF FLD0150B (1:)    NOT EQUAL XPC-FLD0150B
              DISPLAY 'FLD0150B ==> ' FLD0150B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0150B.
           IF FLD0150E   NOT EQUAL XPC-FLD0150E
              DISPLAY 'FLD0150E ==> ' FLD0150E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0150E.
           IF FLD0151B (1:)    NOT EQUAL XPC-FLD0151B
              DISPLAY 'FLD0151B ==> ' FLD0151B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0151B.
           IF FLD0151E   NOT EQUAL XPC-FLD0151E
              DISPLAY 'FLD0151E ==> ' FLD0151E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0151E.
           IF FLD0152B (1:)    NOT EQUAL XPC-FLD0152B
              DISPLAY 'FLD0152B ==> ' FLD0152B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0152B.
           IF FLD0152E   NOT EQUAL XPC-FLD0152E
              DISPLAY 'FLD0152E ==> ' FLD0152E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0152E.
           IF FLD0153B (1:)    NOT EQUAL XPC-FLD0153B
              DISPLAY 'FLD0153B ==> ' FLD0153B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0153B.
           IF FLD0153E   NOT EQUAL XPC-FLD0153E
              DISPLAY 'FLD0153E ==> ' FLD0153E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0153E.
           IF FLD0154B (1:)    NOT EQUAL XPC-FLD0154B
              DISPLAY 'FLD0154B ==> ' FLD0154B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0154B.
           IF FLD0154E   NOT EQUAL XPC-FLD0154E
              DISPLAY 'FLD0154E ==> ' FLD0154E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0154E.
           IF FLD0155B (1:)    NOT EQUAL XPC-FLD0155B
              DISPLAY 'FLD0155B ==> ' FLD0155B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0155B.
           IF FLD0155E   NOT EQUAL XPC-FLD0155E
              DISPLAY 'FLD0155E ==> ' FLD0155E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0155E.
           IF FLD0156B (1:)    NOT EQUAL XPC-FLD0156B
              DISPLAY 'FLD0156B ==> ' FLD0156B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0156B.
           IF FLD0156E   NOT EQUAL XPC-FLD0156E
              DISPLAY 'FLD0156E ==> ' FLD0156E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0156E.
           IF FLD0157B (1:)    NOT EQUAL XPC-FLD0157B
              DISPLAY 'FLD0157B ==> ' FLD0157B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0157B.
           IF FLD0157E   NOT EQUAL XPC-FLD0157E
              DISPLAY 'FLD0157E ==> ' FLD0157E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0157E.
           IF FLD0158B (1:)    NOT EQUAL XPC-FLD0158B
              DISPLAY 'FLD0158B ==> ' FLD0158B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0158B.
           IF FLD0158E   NOT EQUAL XPC-FLD0158E
              DISPLAY 'FLD0158E ==> ' FLD0158E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0158E.
           IF FLD0159B (1:)    NOT EQUAL XPC-FLD0159B
              DISPLAY 'FLD0159B ==> ' FLD0159B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0159B.
           IF FLD0159E   NOT EQUAL XPC-FLD0159E
              DISPLAY 'FLD0159E ==> ' FLD0159E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0159E.
           IF FLD0160B (1:)    NOT EQUAL XPC-FLD0160B
              DISPLAY 'FLD0160B ==> ' FLD0160B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0160B.
           IF FLD0160E   NOT EQUAL XPC-FLD0160E
              DISPLAY 'FLD0160E ==> ' FLD0160E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0160E.
           IF FLD0161B (1:)    NOT EQUAL XPC-FLD0161B
              DISPLAY 'FLD0161B ==> ' FLD0161B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0161B.
           IF FLD0161E   NOT EQUAL XPC-FLD0161E
              DISPLAY 'FLD0161E ==> ' FLD0161E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0161E.
           IF FLD0162B (1:)    NOT EQUAL XPC-FLD0162B
              DISPLAY 'FLD0162B ==> ' FLD0162B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0162B.
           IF FLD0162E   NOT EQUAL XPC-FLD0162E
              DISPLAY 'FLD0162E ==> ' FLD0162E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0162E.
           IF FLD0163B (1:)    NOT EQUAL XPC-FLD0163B
              DISPLAY 'FLD0163B ==> ' FLD0163B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0163B.
           IF FLD0163E   NOT EQUAL XPC-FLD0163E
              DISPLAY 'FLD0163E ==> ' FLD0163E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0163E.
           IF FLD0164B (1:)    NOT EQUAL XPC-FLD0164B
              DISPLAY 'FLD0164B ==> ' FLD0164B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0164B.
           IF FLD0164E   NOT EQUAL XPC-FLD0164E
              DISPLAY 'FLD0164E ==> ' FLD0164E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0164E.
           IF FLD0165B (1:)    NOT EQUAL XPC-FLD0165B
              DISPLAY 'FLD0165B ==> ' FLD0165B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0165B.
           IF FLD0165E   NOT EQUAL XPC-FLD0165E
              DISPLAY 'FLD0165E ==> ' FLD0165E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0165E.
           IF FLD0166B (1:)    NOT EQUAL XPC-FLD0166B
              DISPLAY 'FLD0166B ==> ' FLD0166B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0166B.
           IF FLD0166E   NOT EQUAL XPC-FLD0166E
              DISPLAY 'FLD0166E ==> ' FLD0166E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0166E.
           IF FLD0167B (1:)    NOT EQUAL XPC-FLD0167B
              DISPLAY 'FLD0167B ==> ' FLD0167B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0167B.
           IF FLD0167E   NOT EQUAL XPC-FLD0167E
              DISPLAY 'FLD0167E ==> ' FLD0167E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0167E.
           IF FLD0168B (1:)    NOT EQUAL XPC-FLD0168B
              DISPLAY 'FLD0168B ==> ' FLD0168B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0168B.
           IF FLD0168E   NOT EQUAL XPC-FLD0168E
              DISPLAY 'FLD0168E ==> ' FLD0168E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0168E.
           IF FLD0169B (1:)    NOT EQUAL XPC-FLD0169B
              DISPLAY 'FLD0169B ==> ' FLD0169B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0169B.
           IF FLD0169E   NOT EQUAL XPC-FLD0169E
              DISPLAY 'FLD0169E ==> ' FLD0169E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0169E.
           IF FLD0170B (1:)    NOT EQUAL XPC-FLD0170B
              DISPLAY 'FLD0170B ==> ' FLD0170B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0170B.
           IF FLD0170E   NOT EQUAL XPC-FLD0170E
              DISPLAY 'FLD0170E ==> ' FLD0170E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0170E.
           IF FLD0171B (1:)    NOT EQUAL XPC-FLD0171B
              DISPLAY 'FLD0171B ==> ' FLD0171B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0171B.
           IF FLD0171E   NOT EQUAL XPC-FLD0171E
              DISPLAY 'FLD0171E ==> ' FLD0171E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0171E.
           IF FLD0172B (1:)    NOT EQUAL XPC-FLD0172B
              DISPLAY 'FLD0172B ==> ' FLD0172B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0172B.
           IF FLD0172E   NOT EQUAL XPC-FLD0172E
              DISPLAY 'FLD0172E ==> ' FLD0172E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0172E.
           IF FLD0173B (1:)    NOT EQUAL XPC-FLD0173B
              DISPLAY 'FLD0173B ==> ' FLD0173B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0173B.
           IF FLD0173E   NOT EQUAL XPC-FLD0173E
              DISPLAY 'FLD0173E ==> ' FLD0173E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0173E.
           IF FLD0174B (1:)    NOT EQUAL XPC-FLD0174B
              DISPLAY 'FLD0174B ==> ' FLD0174B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0174B.
           IF FLD0174E   NOT EQUAL XPC-FLD0174E
              DISPLAY 'FLD0174E ==> ' FLD0174E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0174E.
           IF FLD0175B (1:)    NOT EQUAL XPC-FLD0175B
              DISPLAY 'FLD0175B ==> ' FLD0175B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0175B.
           IF FLD0175E   NOT EQUAL XPC-FLD0175E
              DISPLAY 'FLD0175E ==> ' FLD0175E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0175E.
           IF FLD0176B (1:)    NOT EQUAL XPC-FLD0176B
              DISPLAY 'FLD0176B ==> ' FLD0176B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0176B.
           IF FLD0176E   NOT EQUAL XPC-FLD0176E
              DISPLAY 'FLD0176E ==> ' FLD0176E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0176E.
           IF FLD0177B (1:)    NOT EQUAL XPC-FLD0177B
              DISPLAY 'FLD0177B ==> ' FLD0177B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0177B.
           IF FLD0177E   NOT EQUAL XPC-FLD0177E
              DISPLAY 'FLD0177E ==> ' FLD0177E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0177E.
           IF FLD0178B (1:)    NOT EQUAL XPC-FLD0178B
              DISPLAY 'FLD0178B ==> ' FLD0178B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0178B.
           IF FLD0178E   NOT EQUAL XPC-FLD0178E
              DISPLAY 'FLD0178E ==> ' FLD0178E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0178E.
           IF FLD0179B (1:)    NOT EQUAL XPC-FLD0179B
              DISPLAY 'FLD0179B ==> ' FLD0179B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0179B.
           IF FLD0179E   NOT EQUAL XPC-FLD0179E
              DISPLAY 'FLD0179E ==> ' FLD0179E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0179E.
           IF FLD0180B (1:)    NOT EQUAL XPC-FLD0180B
              DISPLAY 'FLD0180B ==> ' FLD0180B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0180B.
           IF FLD0180E   NOT EQUAL XPC-FLD0180E
              DISPLAY 'FLD0180E ==> ' FLD0180E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0180E.
           IF FLD0181B (1:)    NOT EQUAL XPC-FLD0181B
              DISPLAY 'FLD0181B ==> ' FLD0181B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0181B.
           IF FLD0181E   NOT EQUAL XPC-FLD0181E
              DISPLAY 'FLD0181E ==> ' FLD0181E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0181E.
           IF FLD0182B (1:)    NOT EQUAL XPC-FLD0182B
              DISPLAY 'FLD0182B ==> ' FLD0182B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0182B.
           IF FLD0182E   NOT EQUAL XPC-FLD0182E
              DISPLAY 'FLD0182E ==> ' FLD0182E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0182E.
           IF FLD0183B (1:)    NOT EQUAL XPC-FLD0183B
              DISPLAY 'FLD0183B ==> ' FLD0183B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0183B.
           IF FLD0183E   NOT EQUAL XPC-FLD0183E
              DISPLAY 'FLD0183E ==> ' FLD0183E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0183E.
           IF FLD0184B (1:)    NOT EQUAL XPC-FLD0184B
              DISPLAY 'FLD0184B ==> ' FLD0184B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0184B.
           IF FLD0184E   NOT EQUAL XPC-FLD0184E
              DISPLAY 'FLD0184E ==> ' FLD0184E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0184E.
           IF FLD0185B (1:)    NOT EQUAL XPC-FLD0185B
              DISPLAY 'FLD0185B ==> ' FLD0185B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0185B.
           IF FLD0185E   NOT EQUAL XPC-FLD0185E
              DISPLAY 'FLD0185E ==> ' FLD0185E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0185E.
           IF FLD0186B (1:)    NOT EQUAL XPC-FLD0186B
              DISPLAY 'FLD0186B ==> ' FLD0186B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0186B.
           IF FLD0186E   NOT EQUAL XPC-FLD0186E
              DISPLAY 'FLD0186E ==> ' FLD0186E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0186E.
           IF FLD0187B (1:)    NOT EQUAL XPC-FLD0187B
              DISPLAY 'FLD0187B ==> ' FLD0187B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0187B.
           IF FLD0187E   NOT EQUAL XPC-FLD0187E
              DISPLAY 'FLD0187E ==> ' FLD0187E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0187E.
           IF FLD0188B (1:)    NOT EQUAL XPC-FLD0188B
              DISPLAY 'FLD0188B ==> ' FLD0188B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0188B.
           IF FLD0188E   NOT EQUAL XPC-FLD0188E
              DISPLAY 'FLD0188E ==> ' FLD0188E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0188E.
           IF FLD0189B (1:)    NOT EQUAL XPC-FLD0189B
              DISPLAY 'FLD0189B ==> ' FLD0189B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0189B.
           IF FLD0189E   NOT EQUAL XPC-FLD0189E
              DISPLAY 'FLD0189E ==> ' FLD0189E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0189E.
           IF FLD0190B (1:)    NOT EQUAL XPC-FLD0190B
              DISPLAY 'FLD0190B ==> ' FLD0190B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0190B.
           IF FLD0190E   NOT EQUAL XPC-FLD0190E
              DISPLAY 'FLD0190E ==> ' FLD0190E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0190E.
           IF FLD0191B (1:)    NOT EQUAL XPC-FLD0191B
              DISPLAY 'FLD0191B ==> ' FLD0191B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0191B.
           IF FLD0191E   NOT EQUAL XPC-FLD0191E
              DISPLAY 'FLD0191E ==> ' FLD0191E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0191E.
           IF FLD0192B (1:)    NOT EQUAL XPC-FLD0192B
              DISPLAY 'FLD0192B ==> ' FLD0192B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0192B.
           IF FLD0192E   NOT EQUAL XPC-FLD0192E
              DISPLAY 'FLD0192E ==> ' FLD0192E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0192E.
           IF FLD0193B (1:)    NOT EQUAL XPC-FLD0193B
              DISPLAY 'FLD0193B ==> ' FLD0193B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0193B.
           IF FLD0193E   NOT EQUAL XPC-FLD0193E
              DISPLAY 'FLD0193E ==> ' FLD0193E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0193E.
           IF FLD0194B (1:)    NOT EQUAL XPC-FLD0194B
              DISPLAY 'FLD0194B ==> ' FLD0194B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0194B.
           IF FLD0194E   NOT EQUAL XPC-FLD0194E
              DISPLAY 'FLD0194E ==> ' FLD0194E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0194E.
           IF FLD0195B (1:)    NOT EQUAL XPC-FLD0195B
              DISPLAY 'FLD0195B ==> ' FLD0195B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0195B.
           IF FLD0195E   NOT EQUAL XPC-FLD0195E
              DISPLAY 'FLD0195E ==> ' FLD0195E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0195E.
           IF FLD0196B (1:)    NOT EQUAL XPC-FLD0196B
              DISPLAY 'FLD0196B ==> ' FLD0196B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0196B.
           IF FLD0196E   NOT EQUAL XPC-FLD0196E
              DISPLAY 'FLD0196E ==> ' FLD0196E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0196E.
           IF FLD0197B (1:)    NOT EQUAL XPC-FLD0197B
              DISPLAY 'FLD0197B ==> ' FLD0197B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0197B.
           IF FLD0197E   NOT EQUAL XPC-FLD0197E
              DISPLAY 'FLD0197E ==> ' FLD0197E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0197E.
           IF FLD0198B (1:)    NOT EQUAL XPC-FLD0198B
              DISPLAY 'FLD0198B ==> ' FLD0198B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0198B.
           IF FLD0198E   NOT EQUAL XPC-FLD0198E
              DISPLAY 'FLD0198E ==> ' FLD0198E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0198E.
           IF FLD0199B (1:)    NOT EQUAL XPC-FLD0199B
              DISPLAY 'FLD0199B ==> ' FLD0199B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0199B.
           IF FLD0199E   NOT EQUAL XPC-FLD0199E
              DISPLAY 'FLD0199E ==> ' FLD0199E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0199E.
           IF FLD0200B (1:)    NOT EQUAL XPC-FLD0200B
              DISPLAY 'FLD0200B ==> ' FLD0200B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0200B.
           IF FLD0200E   NOT EQUAL XPC-FLD0200E
              DISPLAY 'FLD0200E ==> ' FLD0200E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0200E.
           IF FLD0201B (1:)    NOT EQUAL XPC-FLD0201B
              DISPLAY 'FLD0201B ==> ' FLD0201B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0201B.
           IF FLD0201E   NOT EQUAL XPC-FLD0201E
              DISPLAY 'FLD0201E ==> ' FLD0201E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0201E.
           IF FLD0202B (1:)    NOT EQUAL XPC-FLD0202B
              DISPLAY 'FLD0202B ==> ' FLD0202B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0202B.
           IF FLD0202E   NOT EQUAL XPC-FLD0202E
              DISPLAY 'FLD0202E ==> ' FLD0202E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0202E.
           IF FLD0203B (1:)    NOT EQUAL XPC-FLD0203B
              DISPLAY 'FLD0203B ==> ' FLD0203B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0203B.
           IF FLD0203E   NOT EQUAL XPC-FLD0203E
              DISPLAY 'FLD0203E ==> ' FLD0203E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0203E.
           IF FLD0204B (1:)    NOT EQUAL XPC-FLD0204B
              DISPLAY 'FLD0204B ==> ' FLD0204B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0204B.
           IF FLD0204E   NOT EQUAL XPC-FLD0204E
              DISPLAY 'FLD0204E ==> ' FLD0204E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0204E.
           IF FLD0205B (1:)    NOT EQUAL XPC-FLD0205B
              DISPLAY 'FLD0205B ==> ' FLD0205B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0205B.
           IF FLD0205E   NOT EQUAL XPC-FLD0205E
              DISPLAY 'FLD0205E ==> ' FLD0205E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0205E.
           IF FLD0206B (1:)    NOT EQUAL XPC-FLD0206B
              DISPLAY 'FLD0206B ==> ' FLD0206B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0206B.
           IF FLD0206E   NOT EQUAL XPC-FLD0206E
              DISPLAY 'FLD0206E ==> ' FLD0206E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0206E.
           IF FLD0207B (1:)    NOT EQUAL XPC-FLD0207B
              DISPLAY 'FLD0207B ==> ' FLD0207B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0207B.
           IF FLD0207E   NOT EQUAL XPC-FLD0207E
              DISPLAY 'FLD0207E ==> ' FLD0207E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0207E.
           IF FLD0208B (1:)    NOT EQUAL XPC-FLD0208B
              DISPLAY 'FLD0208B ==> ' FLD0208B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0208B.
           IF FLD0208E   NOT EQUAL XPC-FLD0208E
              DISPLAY 'FLD0208E ==> ' FLD0208E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0208E.
           IF FLD0209B (1:)    NOT EQUAL XPC-FLD0209B
              DISPLAY 'FLD0209B ==> ' FLD0209B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0209B.
           IF FLD0209E   NOT EQUAL XPC-FLD0209E
              DISPLAY 'FLD0209E ==> ' FLD0209E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0209E.
           IF FLD0210B (1:)    NOT EQUAL XPC-FLD0210B
              DISPLAY 'FLD0210B ==> ' FLD0210B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0210B.
           IF FLD0210E   NOT EQUAL XPC-FLD0210E
              DISPLAY 'FLD0210E ==> ' FLD0210E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0210E.
           IF FLD0211B (1:)    NOT EQUAL XPC-FLD0211B
              DISPLAY 'FLD0211B ==> ' FLD0211B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0211B.
           IF FLD0211E   NOT EQUAL XPC-FLD0211E
              DISPLAY 'FLD0211E ==> ' FLD0211E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0211E.
           IF FLD0212B (1:)    NOT EQUAL XPC-FLD0212B
              DISPLAY 'FLD0212B ==> ' FLD0212B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0212B.
           IF FLD0212E   NOT EQUAL XPC-FLD0212E
              DISPLAY 'FLD0212E ==> ' FLD0212E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0212E.
           IF FLD0213B (1:)    NOT EQUAL XPC-FLD0213B
              DISPLAY 'FLD0213B ==> ' FLD0213B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0213B.
           IF FLD0213E   NOT EQUAL XPC-FLD0213E
              DISPLAY 'FLD0213E ==> ' FLD0213E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0213E.
           IF FLD0214B (1:)    NOT EQUAL XPC-FLD0214B
              DISPLAY 'FLD0214B ==> ' FLD0214B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0214B.
           IF FLD0214E   NOT EQUAL XPC-FLD0214E
              DISPLAY 'FLD0214E ==> ' FLD0214E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0214E.
           IF FLD0215B (1:)    NOT EQUAL XPC-FLD0215B
              DISPLAY 'FLD0215B ==> ' FLD0215B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0215B.
           IF FLD0215E   NOT EQUAL XPC-FLD0215E
              DISPLAY 'FLD0215E ==> ' FLD0215E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0215E.
           IF FLD0216B (1:)    NOT EQUAL XPC-FLD0216B
              DISPLAY 'FLD0216B ==> ' FLD0216B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0216B.
           IF FLD0216E   NOT EQUAL XPC-FLD0216E
              DISPLAY 'FLD0216E ==> ' FLD0216E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0216E.
           IF FLD0217B (1:)    NOT EQUAL XPC-FLD0217B
              DISPLAY 'FLD0217B ==> ' FLD0217B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0217B.
           IF FLD0217E   NOT EQUAL XPC-FLD0217E
              DISPLAY 'FLD0217E ==> ' FLD0217E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0217E.
           IF FLD0218B (1:)    NOT EQUAL XPC-FLD0218B
              DISPLAY 'FLD0218B ==> ' FLD0218B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0218B.
           IF FLD0218E   NOT EQUAL XPC-FLD0218E
              DISPLAY 'FLD0218E ==> ' FLD0218E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0218E.
           IF FLD0219B (1:)    NOT EQUAL XPC-FLD0219B
              DISPLAY 'FLD0219B ==> ' FLD0219B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0219B.
           IF FLD0219E   NOT EQUAL XPC-FLD0219E
              DISPLAY 'FLD0219E ==> ' FLD0219E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0219E.
           IF FLD0220B (1:)    NOT EQUAL XPC-FLD0220B
              DISPLAY 'FLD0220B ==> ' FLD0220B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0220B.
           IF FLD0220E   NOT EQUAL XPC-FLD0220E
              DISPLAY 'FLD0220E ==> ' FLD0220E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0220E.
           IF FLD0221B (1:)    NOT EQUAL XPC-FLD0221B
              DISPLAY 'FLD0221B ==> ' FLD0221B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0221B.
           IF FLD0221E   NOT EQUAL XPC-FLD0221E
              DISPLAY 'FLD0221E ==> ' FLD0221E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0221E.
           IF FLD0222B (1:)    NOT EQUAL XPC-FLD0222B
              DISPLAY 'FLD0222B ==> ' FLD0222B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0222B.
           IF FLD0222E   NOT EQUAL XPC-FLD0222E
              DISPLAY 'FLD0222E ==> ' FLD0222E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0222E.
           IF FLD0223B (1:)    NOT EQUAL XPC-FLD0223B
              DISPLAY 'FLD0223B ==> ' FLD0223B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0223B.
           IF FLD0223E   NOT EQUAL XPC-FLD0223E
              DISPLAY 'FLD0223E ==> ' FLD0223E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0223E.
           IF FLD0224B (1:)    NOT EQUAL XPC-FLD0224B
              DISPLAY 'FLD0224B ==> ' FLD0224B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0224B.
           IF FLD0224E   NOT EQUAL XPC-FLD0224E
              DISPLAY 'FLD0224E ==> ' FLD0224E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0224E.
           IF FLD0225B (1:)    NOT EQUAL XPC-FLD0225B
              DISPLAY 'FLD0225B ==> ' FLD0225B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0225B.
           IF FLD0225E   NOT EQUAL XPC-FLD0225E
              DISPLAY 'FLD0225E ==> ' FLD0225E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0225E.
           IF FLD0226B (1:)    NOT EQUAL XPC-FLD0226B
              DISPLAY 'FLD0226B ==> ' FLD0226B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0226B.
           IF FLD0226E   NOT EQUAL XPC-FLD0226E
              DISPLAY 'FLD0226E ==> ' FLD0226E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0226E.
           IF FLD0227B (1:)    NOT EQUAL XPC-FLD0227B
              DISPLAY 'FLD0227B ==> ' FLD0227B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0227B.
           IF FLD0227E   NOT EQUAL XPC-FLD0227E
              DISPLAY 'FLD0227E ==> ' FLD0227E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0227E.
           IF FLD0228B (1:)    NOT EQUAL XPC-FLD0228B
              DISPLAY 'FLD0228B ==> ' FLD0228B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0228B.
           IF FLD0228E   NOT EQUAL XPC-FLD0228E
              DISPLAY 'FLD0228E ==> ' FLD0228E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0228E.
           IF FLD0229B (1:)    NOT EQUAL XPC-FLD0229B
              DISPLAY 'FLD0229B ==> ' FLD0229B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0229B.
           IF FLD0229E   NOT EQUAL XPC-FLD0229E
              DISPLAY 'FLD0229E ==> ' FLD0229E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0229E.
           IF FLD0230B (1:)    NOT EQUAL XPC-FLD0230B
              DISPLAY 'FLD0230B ==> ' FLD0230B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0230B.
           IF FLD0230E   NOT EQUAL XPC-FLD0230E
              DISPLAY 'FLD0230E ==> ' FLD0230E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0230E.
           IF FLD0231B (1:)    NOT EQUAL XPC-FLD0231B
              DISPLAY 'FLD0231B ==> ' FLD0231B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0231B.
           IF FLD0231E   NOT EQUAL XPC-FLD0231E
              DISPLAY 'FLD0231E ==> ' FLD0231E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0231E.
           IF FLD0232B (1:)    NOT EQUAL XPC-FLD0232B
              DISPLAY 'FLD0232B ==> ' FLD0232B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0232B.
           IF FLD0232E   NOT EQUAL XPC-FLD0232E
              DISPLAY 'FLD0232E ==> ' FLD0232E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0232E.
           IF FLD0233B (1:)    NOT EQUAL XPC-FLD0233B
              DISPLAY 'FLD0233B ==> ' FLD0233B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0233B.
           IF FLD0233E   NOT EQUAL XPC-FLD0233E
              DISPLAY 'FLD0233E ==> ' FLD0233E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0233E.
           IF FLD0234B (1:)    NOT EQUAL XPC-FLD0234B
              DISPLAY 'FLD0234B ==> ' FLD0234B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0234B.
           IF FLD0234E   NOT EQUAL XPC-FLD0234E
              DISPLAY 'FLD0234E ==> ' FLD0234E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0234E.
           IF FLD0235B (1:)    NOT EQUAL XPC-FLD0235B
              DISPLAY 'FLD0235B ==> ' FLD0235B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0235B.
           IF FLD0235E   NOT EQUAL XPC-FLD0235E
              DISPLAY 'FLD0235E ==> ' FLD0235E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0235E.
           IF FLD0236B (1:)    NOT EQUAL XPC-FLD0236B
              DISPLAY 'FLD0236B ==> ' FLD0236B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0236B.
           IF FLD0236E   NOT EQUAL XPC-FLD0236E
              DISPLAY 'FLD0236E ==> ' FLD0236E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0236E.
           IF FLD0237B (1:)    NOT EQUAL XPC-FLD0237B
              DISPLAY 'FLD0237B ==> ' FLD0237B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0237B.
           IF FLD0237E   NOT EQUAL XPC-FLD0237E
              DISPLAY 'FLD0237E ==> ' FLD0237E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0237E.
           IF FLD0238B (1:)    NOT EQUAL XPC-FLD0238B
              DISPLAY 'FLD0238B ==> ' FLD0238B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0238B.
           IF FLD0238E   NOT EQUAL XPC-FLD0238E
              DISPLAY 'FLD0238E ==> ' FLD0238E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0238E.
           IF FLD0239B (1:)    NOT EQUAL XPC-FLD0239B
              DISPLAY 'FLD0239B ==> ' FLD0239B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0239B.
           IF FLD0239E   NOT EQUAL XPC-FLD0239E
              DISPLAY 'FLD0239E ==> ' FLD0239E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0239E.
           IF FLD0240B (1:)    NOT EQUAL XPC-FLD0240B
              DISPLAY 'FLD0240B ==> ' FLD0240B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0240B.
           IF FLD0240E   NOT EQUAL XPC-FLD0240E
              DISPLAY 'FLD0240E ==> ' FLD0240E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0240E.
           IF FLD0241B (1:)    NOT EQUAL XPC-FLD0241B
              DISPLAY 'FLD0241B ==> ' FLD0241B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0241B.
           IF FLD0241E   NOT EQUAL XPC-FLD0241E
              DISPLAY 'FLD0241E ==> ' FLD0241E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0241E.
           IF FLD0242B (1:)    NOT EQUAL XPC-FLD0242B
              DISPLAY 'FLD0242B ==> ' FLD0242B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0242B.
           IF FLD0242E   NOT EQUAL XPC-FLD0242E
              DISPLAY 'FLD0242E ==> ' FLD0242E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0242E.
           IF FLD0243B (1:)    NOT EQUAL XPC-FLD0243B
              DISPLAY 'FLD0243B ==> ' FLD0243B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0243B.
           IF FLD0243E   NOT EQUAL XPC-FLD0243E
              DISPLAY 'FLD0243E ==> ' FLD0243E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0243E.
           IF FLD0244B (1:)    NOT EQUAL XPC-FLD0244B
              DISPLAY 'FLD0244B ==> ' FLD0244B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0244B.
           IF FLD0244E   NOT EQUAL XPC-FLD0244E
              DISPLAY 'FLD0244E ==> ' FLD0244E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0244E.
           IF FLD0245B (1:)    NOT EQUAL XPC-FLD0245B
              DISPLAY 'FLD0245B ==> ' FLD0245B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0245B.
           IF FLD0245E   NOT EQUAL XPC-FLD0245E
              DISPLAY 'FLD0245E ==> ' FLD0245E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0245E.
           IF FLD0246B (1:)    NOT EQUAL XPC-FLD0246B
              DISPLAY 'FLD0246B ==> ' FLD0246B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0246B.
           IF FLD0246E   NOT EQUAL XPC-FLD0246E
              DISPLAY 'FLD0246E ==> ' FLD0246E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0246E.
           IF FLD0247B (1:)    NOT EQUAL XPC-FLD0247B
              DISPLAY 'FLD0247B ==> ' FLD0247B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0247B.
           IF FLD0247E   NOT EQUAL XPC-FLD0247E
              DISPLAY 'FLD0247E ==> ' FLD0247E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0247E.
           IF FLD0248B (1:)    NOT EQUAL XPC-FLD0248B
              DISPLAY 'FLD0248B ==> ' FLD0248B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0248B.
           IF FLD0248E   NOT EQUAL XPC-FLD0248E
              DISPLAY 'FLD0248E ==> ' FLD0248E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0248E.
           IF FLD0249B (1:)    NOT EQUAL XPC-FLD0249B
              DISPLAY 'FLD0249B ==> ' FLD0249B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0249B.
           IF FLD0249E   NOT EQUAL XPC-FLD0249E
              DISPLAY 'FLD0249E ==> ' FLD0249E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0249E.
           IF FLD0250B (1:)    NOT EQUAL XPC-FLD0250B
              DISPLAY 'FLD0250B ==> ' FLD0250B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0250B.
           IF FLD0250E   NOT EQUAL XPC-FLD0250E
              DISPLAY 'FLD0250E ==> ' FLD0250E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0250E.
           IF FLD0251B (1:)    NOT EQUAL XPC-FLD0251B
              DISPLAY 'FLD0251B ==> ' FLD0251B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0251B.
           IF FLD0251E   NOT EQUAL XPC-FLD0251E
              DISPLAY 'FLD0251E ==> ' FLD0251E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0251E.
           IF FLD0252B (1:)    NOT EQUAL XPC-FLD0252B
              DISPLAY 'FLD0252B ==> ' FLD0252B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0252B.
           IF FLD0252E   NOT EQUAL XPC-FLD0252E
              DISPLAY 'FLD0252E ==> ' FLD0252E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0252E.
           IF FLD0253B (1:)    NOT EQUAL XPC-FLD0253B
              DISPLAY 'FLD0253B ==> ' FLD0253B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0253B.
           IF FLD0253E   NOT EQUAL XPC-FLD0253E
              DISPLAY 'FLD0253E ==> ' FLD0253E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0253E.
           IF FLD0254B (1:)    NOT EQUAL XPC-FLD0254B
              DISPLAY 'FLD0254B ==> ' FLD0254B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0254B.
           IF FLD0254E   NOT EQUAL XPC-FLD0254E
              DISPLAY 'FLD0254E ==> ' FLD0254E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0254E.
           IF FLD0255B (1:)    NOT EQUAL XPC-FLD0255B
              DISPLAY 'FLD0255B ==> ' FLD0255B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0255B.
           IF FLD0255E   NOT EQUAL XPC-FLD0255E
              DISPLAY 'FLD0255E ==> ' FLD0255E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0255E.
           IF FLD0256B (1:)    NOT EQUAL XPC-FLD0256B
              DISPLAY 'FLD0256B ==> ' FLD0256B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0256B.
           IF FLD0256E   NOT EQUAL XPC-FLD0256E
              DISPLAY 'FLD0256E ==> ' FLD0256E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0256E.
           IF FLD0257B (1:)    NOT EQUAL XPC-FLD0257B
              DISPLAY 'FLD0257B ==> ' FLD0257B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0257B.
           IF FLD0257E   NOT EQUAL XPC-FLD0257E
              DISPLAY 'FLD0257E ==> ' FLD0257E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0257E.
           IF FLD0258B (1:)    NOT EQUAL XPC-FLD0258B
              DISPLAY 'FLD0258B ==> ' FLD0258B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0258B.
           IF FLD0258E   NOT EQUAL XPC-FLD0258E
              DISPLAY 'FLD0258E ==> ' FLD0258E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0258E.
           IF FLD0259B (1:)    NOT EQUAL XPC-FLD0259B
              DISPLAY 'FLD0259B ==> ' FLD0259B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0259B.
           IF FLD0259E   NOT EQUAL XPC-FLD0259E
              DISPLAY 'FLD0259E ==> ' FLD0259E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0259E.
           IF FLD0260B (1:)    NOT EQUAL XPC-FLD0260B
              DISPLAY 'FLD0260B ==> ' FLD0260B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0260B.
           IF FLD0260E   NOT EQUAL XPC-FLD0260E
              DISPLAY 'FLD0260E ==> ' FLD0260E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0260E.
           IF FLD0261B (1:)    NOT EQUAL XPC-FLD0261B
              DISPLAY 'FLD0261B ==> ' FLD0261B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0261B.
           IF FLD0261E   NOT EQUAL XPC-FLD0261E
              DISPLAY 'FLD0261E ==> ' FLD0261E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0261E.
           IF FLD0262B (1:)    NOT EQUAL XPC-FLD0262B
              DISPLAY 'FLD0262B ==> ' FLD0262B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0262B.
           IF FLD0262E   NOT EQUAL XPC-FLD0262E
              DISPLAY 'FLD0262E ==> ' FLD0262E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0262E.
           IF FLD0263B (1:)    NOT EQUAL XPC-FLD0263B
              DISPLAY 'FLD0263B ==> ' FLD0263B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0263B.
           IF FLD0263E   NOT EQUAL XPC-FLD0263E
              DISPLAY 'FLD0263E ==> ' FLD0263E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0263E.
           IF FLD0264B (1:)    NOT EQUAL XPC-FLD0264B
              DISPLAY 'FLD0264B ==> ' FLD0264B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0264B.
           IF FLD0264E   NOT EQUAL XPC-FLD0264E
              DISPLAY 'FLD0264E ==> ' FLD0264E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0264E.
           IF FLD0265B (1:)    NOT EQUAL XPC-FLD0265B
              DISPLAY 'FLD0265B ==> ' FLD0265B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0265B.
           IF FLD0265E   NOT EQUAL XPC-FLD0265E
              DISPLAY 'FLD0265E ==> ' FLD0265E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0265E.
           IF FLD0266B (1:)    NOT EQUAL XPC-FLD0266B
              DISPLAY 'FLD0266B ==> ' FLD0266B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0266B.
           IF FLD0266E   NOT EQUAL XPC-FLD0266E
              DISPLAY 'FLD0266E ==> ' FLD0266E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0266E.
           IF FLD0267B (1:)    NOT EQUAL XPC-FLD0267B
              DISPLAY 'FLD0267B ==> ' FLD0267B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0267B.
           IF FLD0267E   NOT EQUAL XPC-FLD0267E
              DISPLAY 'FLD0267E ==> ' FLD0267E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0267E.
           IF FLD0268B (1:)    NOT EQUAL XPC-FLD0268B
              DISPLAY 'FLD0268B ==> ' FLD0268B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0268B.
           IF FLD0268E   NOT EQUAL XPC-FLD0268E
              DISPLAY 'FLD0268E ==> ' FLD0268E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0268E.
           IF FLD0269B (1:)    NOT EQUAL XPC-FLD0269B
              DISPLAY 'FLD0269B ==> ' FLD0269B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0269B.
           IF FLD0269E   NOT EQUAL XPC-FLD0269E
              DISPLAY 'FLD0269E ==> ' FLD0269E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0269E.
           IF FLD0270B (1:)    NOT EQUAL XPC-FLD0270B
              DISPLAY 'FLD0270B ==> ' FLD0270B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0270B.
           IF FLD0270E   NOT EQUAL XPC-FLD0270E
              DISPLAY 'FLD0270E ==> ' FLD0270E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0270E.
           IF FLD0271B (1:)    NOT EQUAL XPC-FLD0271B
              DISPLAY 'FLD0271B ==> ' FLD0271B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0271B.
           IF FLD0271E   NOT EQUAL XPC-FLD0271E
              DISPLAY 'FLD0271E ==> ' FLD0271E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0271E.
           IF FLD0272B (1:)    NOT EQUAL XPC-FLD0272B
              DISPLAY 'FLD0272B ==> ' FLD0272B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0272B.
           IF FLD0272E   NOT EQUAL XPC-FLD0272E
              DISPLAY 'FLD0272E ==> ' FLD0272E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0272E.
           IF FLD0273B (1:)    NOT EQUAL XPC-FLD0273B
              DISPLAY 'FLD0273B ==> ' FLD0273B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0273B.
           IF FLD0273E   NOT EQUAL XPC-FLD0273E
              DISPLAY 'FLD0273E ==> ' FLD0273E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0273E.
           IF FLD0274B (1:)    NOT EQUAL XPC-FLD0274B
              DISPLAY 'FLD0274B ==> ' FLD0274B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0274B.
           IF FLD0274E   NOT EQUAL XPC-FLD0274E
              DISPLAY 'FLD0274E ==> ' FLD0274E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0274E.
           IF FLD0275B (1:)    NOT EQUAL XPC-FLD0275B
              DISPLAY 'FLD0275B ==> ' FLD0275B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0275B.
           IF FLD0275E   NOT EQUAL XPC-FLD0275E
              DISPLAY 'FLD0275E ==> ' FLD0275E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0275E.
           IF FLD0276B (1:)    NOT EQUAL XPC-FLD0276B
              DISPLAY 'FLD0276B ==> ' FLD0276B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0276B.
           IF FLD0276E   NOT EQUAL XPC-FLD0276E
              DISPLAY 'FLD0276E ==> ' FLD0276E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0276E.
           IF FLD0277B (1:)    NOT EQUAL XPC-FLD0277B
              DISPLAY 'FLD0277B ==> ' FLD0277B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0277B.
           IF FLD0277E   NOT EQUAL XPC-FLD0277E
              DISPLAY 'FLD0277E ==> ' FLD0277E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0277E.
           IF FLD0278B (1:)    NOT EQUAL XPC-FLD0278B
              DISPLAY 'FLD0278B ==> ' FLD0278B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0278B.
           IF FLD0278E   NOT EQUAL XPC-FLD0278E
              DISPLAY 'FLD0278E ==> ' FLD0278E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0278E.
           IF FLD0279B (1:)    NOT EQUAL XPC-FLD0279B
              DISPLAY 'FLD0279B ==> ' FLD0279B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0279B.
           IF FLD0279E   NOT EQUAL XPC-FLD0279E
              DISPLAY 'FLD0279E ==> ' FLD0279E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0279E.
           IF FLD0280B (1:)    NOT EQUAL XPC-FLD0280B
              DISPLAY 'FLD0280B ==> ' FLD0280B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0280B.
           IF FLD0280E   NOT EQUAL XPC-FLD0280E
              DISPLAY 'FLD0280E ==> ' FLD0280E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0280E.
           IF FLD0281B (1:)    NOT EQUAL XPC-FLD0281B
              DISPLAY 'FLD0281B ==> ' FLD0281B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0281B.
           IF FLD0281E   NOT EQUAL XPC-FLD0281E
              DISPLAY 'FLD0281E ==> ' FLD0281E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0281E.
           IF FLD0282B (1:)    NOT EQUAL XPC-FLD0282B
              DISPLAY 'FLD0282B ==> ' FLD0282B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0282B.
           IF FLD0282E   NOT EQUAL XPC-FLD0282E
              DISPLAY 'FLD0282E ==> ' FLD0282E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0282E.
           IF FLD0283B (1:)    NOT EQUAL XPC-FLD0283B
              DISPLAY 'FLD0283B ==> ' FLD0283B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0283B.
           IF FLD0283E   NOT EQUAL XPC-FLD0283E
              DISPLAY 'FLD0283E ==> ' FLD0283E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0283E.
           IF FLD0284B (1:)    NOT EQUAL XPC-FLD0284B
              DISPLAY 'FLD0284B ==> ' FLD0284B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0284B.
           IF FLD0284E   NOT EQUAL XPC-FLD0284E
              DISPLAY 'FLD0284E ==> ' FLD0284E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0284E.
           IF FLD0285B (1:)    NOT EQUAL XPC-FLD0285B
              DISPLAY 'FLD0285B ==> ' FLD0285B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0285B.
           IF FLD0285E   NOT EQUAL XPC-FLD0285E
              DISPLAY 'FLD0285E ==> ' FLD0285E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0285E.
           IF FLD0286B (1:)    NOT EQUAL XPC-FLD0286B
              DISPLAY 'FLD0286B ==> ' FLD0286B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0286B.
           IF FLD0286E   NOT EQUAL XPC-FLD0286E
              DISPLAY 'FLD0286E ==> ' FLD0286E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0286E.
           IF FLD0287B (1:)    NOT EQUAL XPC-FLD0287B
              DISPLAY 'FLD0287B ==> ' FLD0287B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0287B.
           IF FLD0287E   NOT EQUAL XPC-FLD0287E
              DISPLAY 'FLD0287E ==> ' FLD0287E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0287E.
           IF FLD0288B (1:)    NOT EQUAL XPC-FLD0288B
              DISPLAY 'FLD0288B ==> ' FLD0288B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0288B.
           IF FLD0288E   NOT EQUAL XPC-FLD0288E
              DISPLAY 'FLD0288E ==> ' FLD0288E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0288E.
           IF FLD0289B (1:)    NOT EQUAL XPC-FLD0289B
              DISPLAY 'FLD0289B ==> ' FLD0289B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0289B.
           IF FLD0289E   NOT EQUAL XPC-FLD0289E
              DISPLAY 'FLD0289E ==> ' FLD0289E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0289E.
           IF FLD0290B (1:)    NOT EQUAL XPC-FLD0290B
              DISPLAY 'FLD0290B ==> ' FLD0290B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0290B.
           IF FLD0290E   NOT EQUAL XPC-FLD0290E
              DISPLAY 'FLD0290E ==> ' FLD0290E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0290E.
           IF FLD0291B (1:)    NOT EQUAL XPC-FLD0291B
              DISPLAY 'FLD0291B ==> ' FLD0291B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0291B.
           IF FLD0291E   NOT EQUAL XPC-FLD0291E
              DISPLAY 'FLD0291E ==> ' FLD0291E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0291E.
           IF FLD0292B (1:)    NOT EQUAL XPC-FLD0292B
              DISPLAY 'FLD0292B ==> ' FLD0292B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0292B.
           IF FLD0292E   NOT EQUAL XPC-FLD0292E
              DISPLAY 'FLD0292E ==> ' FLD0292E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0292E.
           IF FLD0293B (1:)    NOT EQUAL XPC-FLD0293B
              DISPLAY 'FLD0293B ==> ' FLD0293B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0293B.
           IF FLD0293E   NOT EQUAL XPC-FLD0293E
              DISPLAY 'FLD0293E ==> ' FLD0293E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0293E.
           IF FLD0294B (1:)    NOT EQUAL XPC-FLD0294B
              DISPLAY 'FLD0294B ==> ' FLD0294B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0294B.
           IF FLD0294E   NOT EQUAL XPC-FLD0294E
              DISPLAY 'FLD0294E ==> ' FLD0294E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0294E.
           IF FLD0295B (1:)    NOT EQUAL XPC-FLD0295B
              DISPLAY 'FLD0295B ==> ' FLD0295B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0295B.
           IF FLD0295E   NOT EQUAL XPC-FLD0295E
              DISPLAY 'FLD0295E ==> ' FLD0295E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0295E.
           IF FLD0296B (1:)    NOT EQUAL XPC-FLD0296B
              DISPLAY 'FLD0296B ==> ' FLD0296B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0296B.
           IF FLD0296E   NOT EQUAL XPC-FLD0296E
              DISPLAY 'FLD0296E ==> ' FLD0296E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0296E.
           IF FLD0297B (1:)    NOT EQUAL XPC-FLD0297B
              DISPLAY 'FLD0297B ==> ' FLD0297B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0297B.
           IF FLD0297E   NOT EQUAL XPC-FLD0297E
              DISPLAY 'FLD0297E ==> ' FLD0297E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0297E.
           IF FLD0298B (1:)    NOT EQUAL XPC-FLD0298B
              DISPLAY 'FLD0298B ==> ' FLD0298B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0298B.
           IF FLD0298E   NOT EQUAL XPC-FLD0298E
              DISPLAY 'FLD0298E ==> ' FLD0298E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0298E.
           IF FLD0299B (1:)    NOT EQUAL XPC-FLD0299B
              DISPLAY 'FLD0299B ==> ' FLD0299B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0299B.
           IF FLD0299E   NOT EQUAL XPC-FLD0299E
              DISPLAY 'FLD0299E ==> ' FLD0299E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0299E.
           IF FLD0300B (1:)    NOT EQUAL XPC-FLD0300B
              DISPLAY 'FLD0300B ==> ' FLD0300B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0300B.
           IF FLD0300E   NOT EQUAL XPC-FLD0300E
              DISPLAY 'FLD0300E ==> ' FLD0300E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0300E.
           IF FLD0301B (1:)    NOT EQUAL XPC-FLD0301B
              DISPLAY 'FLD0301B ==> ' FLD0301B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0301B.
           IF FLD0301E   NOT EQUAL XPC-FLD0301E
              DISPLAY 'FLD0301E ==> ' FLD0301E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0301E.
           IF FLD0302B (1:)    NOT EQUAL XPC-FLD0302B
              DISPLAY 'FLD0302B ==> ' FLD0302B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0302B.
           IF FLD0302E   NOT EQUAL XPC-FLD0302E
              DISPLAY 'FLD0302E ==> ' FLD0302E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0302E.
           IF FLD0303B (1:)    NOT EQUAL XPC-FLD0303B
              DISPLAY 'FLD0303B ==> ' FLD0303B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0303B.
           IF FLD0303E   NOT EQUAL XPC-FLD0303E
              DISPLAY 'FLD0303E ==> ' FLD0303E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0303E.
           IF FLD0304B (1:)    NOT EQUAL XPC-FLD0304B
              DISPLAY 'FLD0304B ==> ' FLD0304B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0304B.
           IF FLD0304E   NOT EQUAL XPC-FLD0304E
              DISPLAY 'FLD0304E ==> ' FLD0304E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0304E.
           IF FLD0305B (1:)    NOT EQUAL XPC-FLD0305B
              DISPLAY 'FLD0305B ==> ' FLD0305B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0305B.
           IF FLD0305E   NOT EQUAL XPC-FLD0305E
              DISPLAY 'FLD0305E ==> ' FLD0305E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0305E.
           IF FLD0306B (1:)    NOT EQUAL XPC-FLD0306B
              DISPLAY 'FLD0306B ==> ' FLD0306B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0306B.
           IF FLD0306E   NOT EQUAL XPC-FLD0306E
              DISPLAY 'FLD0306E ==> ' FLD0306E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0306E.
           IF FLD0307B (1:)    NOT EQUAL XPC-FLD0307B
              DISPLAY 'FLD0307B ==> ' FLD0307B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0307B.
           IF FLD0307E   NOT EQUAL XPC-FLD0307E
              DISPLAY 'FLD0307E ==> ' FLD0307E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0307E.
           IF FLD0308B (1:)    NOT EQUAL XPC-FLD0308B
              DISPLAY 'FLD0308B ==> ' FLD0308B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0308B.
           IF FLD0308E   NOT EQUAL XPC-FLD0308E
              DISPLAY 'FLD0308E ==> ' FLD0308E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0308E.
           IF FLD0309B (1:)    NOT EQUAL XPC-FLD0309B
              DISPLAY 'FLD0309B ==> ' FLD0309B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0309B.
           IF FLD0309E   NOT EQUAL XPC-FLD0309E
              DISPLAY 'FLD0309E ==> ' FLD0309E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0309E.
           IF FLD0310B (1:)    NOT EQUAL XPC-FLD0310B
              DISPLAY 'FLD0310B ==> ' FLD0310B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0310B.
           IF FLD0310E   NOT EQUAL XPC-FLD0310E
              DISPLAY 'FLD0310E ==> ' FLD0310E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0310E.
           IF FLD0311B (1:)    NOT EQUAL XPC-FLD0311B
              DISPLAY 'FLD0311B ==> ' FLD0311B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0311B.
           IF FLD0311E   NOT EQUAL XPC-FLD0311E
              DISPLAY 'FLD0311E ==> ' FLD0311E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0311E.
           IF FLD0312B (1:)    NOT EQUAL XPC-FLD0312B
              DISPLAY 'FLD0312B ==> ' FLD0312B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0312B.
           IF FLD0312E   NOT EQUAL XPC-FLD0312E
              DISPLAY 'FLD0312E ==> ' FLD0312E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0312E.
           IF FLD0313B (1:)    NOT EQUAL XPC-FLD0313B
              DISPLAY 'FLD0313B ==> ' FLD0313B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0313B.
           IF FLD0313E   NOT EQUAL XPC-FLD0313E
              DISPLAY 'FLD0313E ==> ' FLD0313E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0313E.
           IF FLD0314B (1:)    NOT EQUAL XPC-FLD0314B
              DISPLAY 'FLD0314B ==> ' FLD0314B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0314B.
           IF FLD0314E   NOT EQUAL XPC-FLD0314E
              DISPLAY 'FLD0314E ==> ' FLD0314E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0314E.
           IF FLD0315B (1:)    NOT EQUAL XPC-FLD0315B
              DISPLAY 'FLD0315B ==> ' FLD0315B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0315B.
           IF FLD0315E   NOT EQUAL XPC-FLD0315E
              DISPLAY 'FLD0315E ==> ' FLD0315E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0315E.
           IF FLD0316B (1:)    NOT EQUAL XPC-FLD0316B
              DISPLAY 'FLD0316B ==> ' FLD0316B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0316B.
           IF FLD0316E   NOT EQUAL XPC-FLD0316E
              DISPLAY 'FLD0316E ==> ' FLD0316E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0316E.
           IF FLD0317B (1:)    NOT EQUAL XPC-FLD0317B
              DISPLAY 'FLD0317B ==> ' FLD0317B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0317B.
           IF FLD0317E   NOT EQUAL XPC-FLD0317E
              DISPLAY 'FLD0317E ==> ' FLD0317E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0317E.
           IF FLD0318B (1:)    NOT EQUAL XPC-FLD0318B
              DISPLAY 'FLD0318B ==> ' FLD0318B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0318B.
           IF FLD0318E   NOT EQUAL XPC-FLD0318E
              DISPLAY 'FLD0318E ==> ' FLD0318E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0318E.
           IF FLD0319B (1:)    NOT EQUAL XPC-FLD0319B
              DISPLAY 'FLD0319B ==> ' FLD0319B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0319B.
           IF FLD0319E   NOT EQUAL XPC-FLD0319E
              DISPLAY 'FLD0319E ==> ' FLD0319E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0319E.
           IF FLD0320B (1:)    NOT EQUAL XPC-FLD0320B
              DISPLAY 'FLD0320B ==> ' FLD0320B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0320B.
           IF FLD0320E   NOT EQUAL XPC-FLD0320E
              DISPLAY 'FLD0320E ==> ' FLD0320E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0320E.
           IF FLD0321B (1:)    NOT EQUAL XPC-FLD0321B
              DISPLAY 'FLD0321B ==> ' FLD0321B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0321B.
           IF FLD0321E   NOT EQUAL XPC-FLD0321E
              DISPLAY 'FLD0321E ==> ' FLD0321E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0321E.
           IF FLD0322B (1:)    NOT EQUAL XPC-FLD0322B
              DISPLAY 'FLD0322B ==> ' FLD0322B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0322B.
           IF FLD0322E   NOT EQUAL XPC-FLD0322E
              DISPLAY 'FLD0322E ==> ' FLD0322E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0322E.
           IF FLD0323B (1:)    NOT EQUAL XPC-FLD0323B
              DISPLAY 'FLD0323B ==> ' FLD0323B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0323B.
           IF FLD0323E   NOT EQUAL XPC-FLD0323E
              DISPLAY 'FLD0323E ==> ' FLD0323E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0323E.
           IF FLD0324B (1:)    NOT EQUAL XPC-FLD0324B
              DISPLAY 'FLD0324B ==> ' FLD0324B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0324B.
           IF FLD0324E   NOT EQUAL XPC-FLD0324E
              DISPLAY 'FLD0324E ==> ' FLD0324E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0324E.
           IF FLD0325B (1:)    NOT EQUAL XPC-FLD0325B
              DISPLAY 'FLD0325B ==> ' FLD0325B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0325B.
           IF FLD0325E   NOT EQUAL XPC-FLD0325E
              DISPLAY 'FLD0325E ==> ' FLD0325E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0325E.
           IF FLD0326B (1:)    NOT EQUAL XPC-FLD0326B
              DISPLAY 'FLD0326B ==> ' FLD0326B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0326B.
           IF FLD0326E   NOT EQUAL XPC-FLD0326E
              DISPLAY 'FLD0326E ==> ' FLD0326E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0326E.
           IF FLD0327B (1:)    NOT EQUAL XPC-FLD0327B
              DISPLAY 'FLD0327B ==> ' FLD0327B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0327B.
           IF FLD0327E   NOT EQUAL XPC-FLD0327E
              DISPLAY 'FLD0327E ==> ' FLD0327E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0327E.
           IF FLD0328B (1:)    NOT EQUAL XPC-FLD0328B
              DISPLAY 'FLD0328B ==> ' FLD0328B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0328B.
           IF FLD0328E   NOT EQUAL XPC-FLD0328E
              DISPLAY 'FLD0328E ==> ' FLD0328E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0328E.
           IF FLD0329B (1:)    NOT EQUAL XPC-FLD0329B
              DISPLAY 'FLD0329B ==> ' FLD0329B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0329B.
           IF FLD0329E   NOT EQUAL XPC-FLD0329E
              DISPLAY 'FLD0329E ==> ' FLD0329E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0329E.
           IF FLD0330B (1:)    NOT EQUAL XPC-FLD0330B
              DISPLAY 'FLD0330B ==> ' FLD0330B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0330B.
           IF FLD0330E   NOT EQUAL XPC-FLD0330E
              DISPLAY 'FLD0330E ==> ' FLD0330E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0330E.
           IF FLD0331B (1:)    NOT EQUAL XPC-FLD0331B
              DISPLAY 'FLD0331B ==> ' FLD0331B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0331B.
           IF FLD0331E   NOT EQUAL XPC-FLD0331E
              DISPLAY 'FLD0331E ==> ' FLD0331E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0331E.
           IF FLD0332B (1:)    NOT EQUAL XPC-FLD0332B
              DISPLAY 'FLD0332B ==> ' FLD0332B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0332B.
           IF FLD0332E   NOT EQUAL XPC-FLD0332E
              DISPLAY 'FLD0332E ==> ' FLD0332E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0332E.
           IF FLD0333B (1:)    NOT EQUAL XPC-FLD0333B
              DISPLAY 'FLD0333B ==> ' FLD0333B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0333B.
           IF FLD0333E   NOT EQUAL XPC-FLD0333E
              DISPLAY 'FLD0333E ==> ' FLD0333E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0333E.
           IF FLD0334B (1:)    NOT EQUAL XPC-FLD0334B
              DISPLAY 'FLD0334B ==> ' FLD0334B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0334B.
           IF FLD0334E   NOT EQUAL XPC-FLD0334E
              DISPLAY 'FLD0334E ==> ' FLD0334E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0334E.
           IF FLD0335B (1:)    NOT EQUAL XPC-FLD0335B
              DISPLAY 'FLD0335B ==> ' FLD0335B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0335B.
           IF FLD0335E   NOT EQUAL XPC-FLD0335E
              DISPLAY 'FLD0335E ==> ' FLD0335E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0335E.
           IF FLD0336B (1:)    NOT EQUAL XPC-FLD0336B
              DISPLAY 'FLD0336B ==> ' FLD0336B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0336B.
           IF FLD0336E   NOT EQUAL XPC-FLD0336E
              DISPLAY 'FLD0336E ==> ' FLD0336E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0336E.
           IF FLD0337B (1:)    NOT EQUAL XPC-FLD0337B
              DISPLAY 'FLD0337B ==> ' FLD0337B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0337B.
           IF FLD0337E   NOT EQUAL XPC-FLD0337E
              DISPLAY 'FLD0337E ==> ' FLD0337E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0337E.
           IF FLD0338B (1:)    NOT EQUAL XPC-FLD0338B
              DISPLAY 'FLD0338B ==> ' FLD0338B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0338B.
           IF FLD0338E   NOT EQUAL XPC-FLD0338E
              DISPLAY 'FLD0338E ==> ' FLD0338E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0338E.
           IF FLD0339B (1:)    NOT EQUAL XPC-FLD0339B
              DISPLAY 'FLD0339B ==> ' FLD0339B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0339B.
           IF FLD0339E   NOT EQUAL XPC-FLD0339E
              DISPLAY 'FLD0339E ==> ' FLD0339E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0339E.
           IF FLD0340B (1:)    NOT EQUAL XPC-FLD0340B
              DISPLAY 'FLD0340B ==> ' FLD0340B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0340B.
           IF FLD0340E   NOT EQUAL XPC-FLD0340E
              DISPLAY 'FLD0340E ==> ' FLD0340E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0340E.
           IF FLD0341B (1:)    NOT EQUAL XPC-FLD0341B
              DISPLAY 'FLD0341B ==> ' FLD0341B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0341B.
           IF FLD0341E   NOT EQUAL XPC-FLD0341E
              DISPLAY 'FLD0341E ==> ' FLD0341E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0341E.
           IF FLD0342B (1:)    NOT EQUAL XPC-FLD0342B
              DISPLAY 'FLD0342B ==> ' FLD0342B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0342B.
           IF FLD0342E   NOT EQUAL XPC-FLD0342E
              DISPLAY 'FLD0342E ==> ' FLD0342E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0342E.
           IF FLD0343B (1:)    NOT EQUAL XPC-FLD0343B
              DISPLAY 'FLD0343B ==> ' FLD0343B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0343B.
           IF FLD0343E   NOT EQUAL XPC-FLD0343E
              DISPLAY 'FLD0343E ==> ' FLD0343E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0343E.
           IF FLD0344B (1:)    NOT EQUAL XPC-FLD0344B
              DISPLAY 'FLD0344B ==> ' FLD0344B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0344B.
           IF FLD0344E   NOT EQUAL XPC-FLD0344E
              DISPLAY 'FLD0344E ==> ' FLD0344E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0344E.
           IF FLD0345B (1:)    NOT EQUAL XPC-FLD0345B
              DISPLAY 'FLD0345B ==> ' FLD0345B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0345B.
           IF FLD0345E   NOT EQUAL XPC-FLD0345E
              DISPLAY 'FLD0345E ==> ' FLD0345E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0345E.
           IF FLD0346B (1:)    NOT EQUAL XPC-FLD0346B
              DISPLAY 'FLD0346B ==> ' FLD0346B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0346B.
           IF FLD0346E   NOT EQUAL XPC-FLD0346E
              DISPLAY 'FLD0346E ==> ' FLD0346E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0346E.
           IF FLD0347B (1:)    NOT EQUAL XPC-FLD0347B
              DISPLAY 'FLD0347B ==> ' FLD0347B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0347B.
           IF FLD0347E   NOT EQUAL XPC-FLD0347E
              DISPLAY 'FLD0347E ==> ' FLD0347E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0347E.
           IF FLD0348B (1:)    NOT EQUAL XPC-FLD0348B
              DISPLAY 'FLD0348B ==> ' FLD0348B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0348B.
           IF FLD0348E   NOT EQUAL XPC-FLD0348E
              DISPLAY 'FLD0348E ==> ' FLD0348E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0348E.
           IF FLD0349B (1:)    NOT EQUAL XPC-FLD0349B
              DISPLAY 'FLD0349B ==> ' FLD0349B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0349B.
           IF FLD0349E   NOT EQUAL XPC-FLD0349E
              DISPLAY 'FLD0349E ==> ' FLD0349E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0349E.
           IF FLD0350B (1:)    NOT EQUAL XPC-FLD0350B
              DISPLAY 'FLD0350B ==> ' FLD0350B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0350B.
           IF FLD0350E   NOT EQUAL XPC-FLD0350E
              DISPLAY 'FLD0350E ==> ' FLD0350E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0350E.
           IF FLD0351B (1:)    NOT EQUAL XPC-FLD0351B
              DISPLAY 'FLD0351B ==> ' FLD0351B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0351B.
           IF FLD0351E   NOT EQUAL XPC-FLD0351E
              DISPLAY 'FLD0351E ==> ' FLD0351E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0351E.
           IF FLD0352B (1:)    NOT EQUAL XPC-FLD0352B
              DISPLAY 'FLD0352B ==> ' FLD0352B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0352B.
           IF FLD0352E   NOT EQUAL XPC-FLD0352E
              DISPLAY 'FLD0352E ==> ' FLD0352E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0352E.
           IF FLD0353B (1:)    NOT EQUAL XPC-FLD0353B
              DISPLAY 'FLD0353B ==> ' FLD0353B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0353B.
           IF FLD0353E   NOT EQUAL XPC-FLD0353E
              DISPLAY 'FLD0353E ==> ' FLD0353E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0353E.
           IF FLD0354B (1:)    NOT EQUAL XPC-FLD0354B
              DISPLAY 'FLD0354B ==> ' FLD0354B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0354B.
           IF FLD0354E   NOT EQUAL XPC-FLD0354E
              DISPLAY 'FLD0354E ==> ' FLD0354E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0354E.
           IF FLD0355B (1:)    NOT EQUAL XPC-FLD0355B
              DISPLAY 'FLD0355B ==> ' FLD0355B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0355B.
           IF FLD0355E   NOT EQUAL XPC-FLD0355E
              DISPLAY 'FLD0355E ==> ' FLD0355E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0355E.
           IF FLD0356B (1:)    NOT EQUAL XPC-FLD0356B
              DISPLAY 'FLD0356B ==> ' FLD0356B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0356B.
           IF FLD0356E   NOT EQUAL XPC-FLD0356E
              DISPLAY 'FLD0356E ==> ' FLD0356E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0356E.
           IF FLD0357B (1:)    NOT EQUAL XPC-FLD0357B
              DISPLAY 'FLD0357B ==> ' FLD0357B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0357B.
           IF FLD0357E   NOT EQUAL XPC-FLD0357E
              DISPLAY 'FLD0357E ==> ' FLD0357E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0357E.
           IF FLD0358B (1:)    NOT EQUAL XPC-FLD0358B
              DISPLAY 'FLD0358B ==> ' FLD0358B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0358B.
           IF FLD0358E   NOT EQUAL XPC-FLD0358E
              DISPLAY 'FLD0358E ==> ' FLD0358E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0358E.
           IF FLD0359B (1:)    NOT EQUAL XPC-FLD0359B
              DISPLAY 'FLD0359B ==> ' FLD0359B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0359B.
           IF FLD0359E   NOT EQUAL XPC-FLD0359E
              DISPLAY 'FLD0359E ==> ' FLD0359E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0359E.
           IF FLD0360B (1:)    NOT EQUAL XPC-FLD0360B
              DISPLAY 'FLD0360B ==> ' FLD0360B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0360B.
           IF FLD0360E   NOT EQUAL XPC-FLD0360E
              DISPLAY 'FLD0360E ==> ' FLD0360E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0360E.
           IF FLD0361B (1:)    NOT EQUAL XPC-FLD0361B
              DISPLAY 'FLD0361B ==> ' FLD0361B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0361B.
           IF FLD0361E   NOT EQUAL XPC-FLD0361E
              DISPLAY 'FLD0361E ==> ' FLD0361E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0361E.
           IF FLD0362B (1:)    NOT EQUAL XPC-FLD0362B
              DISPLAY 'FLD0362B ==> ' FLD0362B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0362B.
           IF FLD0362E   NOT EQUAL XPC-FLD0362E
              DISPLAY 'FLD0362E ==> ' FLD0362E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0362E.
           IF FLD0363B (1:)    NOT EQUAL XPC-FLD0363B
              DISPLAY 'FLD0363B ==> ' FLD0363B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0363B.
           IF FLD0363E   NOT EQUAL XPC-FLD0363E
              DISPLAY 'FLD0363E ==> ' FLD0363E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0363E.
           IF FLD0364B (1:)    NOT EQUAL XPC-FLD0364B
              DISPLAY 'FLD0364B ==> ' FLD0364B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0364B.
           IF FLD0364E   NOT EQUAL XPC-FLD0364E
              DISPLAY 'FLD0364E ==> ' FLD0364E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0364E.
           IF FLD0365B (1:)    NOT EQUAL XPC-FLD0365B
              DISPLAY 'FLD0365B ==> ' FLD0365B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0365B.
           IF FLD0365E   NOT EQUAL XPC-FLD0365E
              DISPLAY 'FLD0365E ==> ' FLD0365E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0365E.
           IF FLD0366B (1:)    NOT EQUAL XPC-FLD0366B
              DISPLAY 'FLD0366B ==> ' FLD0366B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0366B.
           IF FLD0366E   NOT EQUAL XPC-FLD0366E
              DISPLAY 'FLD0366E ==> ' FLD0366E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0366E.
           IF FLD0367B (1:)    NOT EQUAL XPC-FLD0367B
              DISPLAY 'FLD0367B ==> ' FLD0367B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0367B.
           IF FLD0367E   NOT EQUAL XPC-FLD0367E
              DISPLAY 'FLD0367E ==> ' FLD0367E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0367E.
           IF FLD0368B (1:)    NOT EQUAL XPC-FLD0368B
              DISPLAY 'FLD0368B ==> ' FLD0368B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0368B.
           IF FLD0368E   NOT EQUAL XPC-FLD0368E
              DISPLAY 'FLD0368E ==> ' FLD0368E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0368E.
           IF FLD0369B (1:)    NOT EQUAL XPC-FLD0369B
              DISPLAY 'FLD0369B ==> ' FLD0369B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0369B.
           IF FLD0369E   NOT EQUAL XPC-FLD0369E
              DISPLAY 'FLD0369E ==> ' FLD0369E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0369E.
           IF FLD0370B (1:)    NOT EQUAL XPC-FLD0370B
              DISPLAY 'FLD0370B ==> ' FLD0370B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0370B.
           IF FLD0370E   NOT EQUAL XPC-FLD0370E
              DISPLAY 'FLD0370E ==> ' FLD0370E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0370E.
           IF FLD0371B (1:)    NOT EQUAL XPC-FLD0371B
              DISPLAY 'FLD0371B ==> ' FLD0371B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0371B.
           IF FLD0371E   NOT EQUAL XPC-FLD0371E
              DISPLAY 'FLD0371E ==> ' FLD0371E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0371E.
           IF FLD0372B (1:)    NOT EQUAL XPC-FLD0372B
              DISPLAY 'FLD0372B ==> ' FLD0372B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0372B.
           IF FLD0372E   NOT EQUAL XPC-FLD0372E
              DISPLAY 'FLD0372E ==> ' FLD0372E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0372E.
           IF FLD0373B (1:)    NOT EQUAL XPC-FLD0373B
              DISPLAY 'FLD0373B ==> ' FLD0373B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0373B.
           IF FLD0373E   NOT EQUAL XPC-FLD0373E
              DISPLAY 'FLD0373E ==> ' FLD0373E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0373E.
           IF FLD0374B (1:)    NOT EQUAL XPC-FLD0374B
              DISPLAY 'FLD0374B ==> ' FLD0374B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0374B.
           IF FLD0374E   NOT EQUAL XPC-FLD0374E
              DISPLAY 'FLD0374E ==> ' FLD0374E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0374E.
           IF FLD0375B (1:)    NOT EQUAL XPC-FLD0375B
              DISPLAY 'FLD0375B ==> ' FLD0375B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0375B.
           IF FLD0375E   NOT EQUAL XPC-FLD0375E
              DISPLAY 'FLD0375E ==> ' FLD0375E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0375E.
           IF FLD0376B (1:)    NOT EQUAL XPC-FLD0376B
              DISPLAY 'FLD0376B ==> ' FLD0376B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0376B.
           IF FLD0376E   NOT EQUAL XPC-FLD0376E
              DISPLAY 'FLD0376E ==> ' FLD0376E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0376E.
           IF FLD0377B (1:)    NOT EQUAL XPC-FLD0377B
              DISPLAY 'FLD0377B ==> ' FLD0377B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0377B.
           IF FLD0377E   NOT EQUAL XPC-FLD0377E
              DISPLAY 'FLD0377E ==> ' FLD0377E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0377E.
           IF FLD0378B (1:)    NOT EQUAL XPC-FLD0378B
              DISPLAY 'FLD0378B ==> ' FLD0378B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0378B.
           IF FLD0378E   NOT EQUAL XPC-FLD0378E
              DISPLAY 'FLD0378E ==> ' FLD0378E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0378E.
           IF FLD0379B (1:)    NOT EQUAL XPC-FLD0379B
              DISPLAY 'FLD0379B ==> ' FLD0379B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0379B.
           IF FLD0379E   NOT EQUAL XPC-FLD0379E
              DISPLAY 'FLD0379E ==> ' FLD0379E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0379E.
           IF FLD0380B (1:)    NOT EQUAL XPC-FLD0380B
              DISPLAY 'FLD0380B ==> ' FLD0380B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0380B.
           IF FLD0380E   NOT EQUAL XPC-FLD0380E
              DISPLAY 'FLD0380E ==> ' FLD0380E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0380E.
           IF FLD0381B (1:)    NOT EQUAL XPC-FLD0381B
              DISPLAY 'FLD0381B ==> ' FLD0381B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0381B.
           IF FLD0381E   NOT EQUAL XPC-FLD0381E
              DISPLAY 'FLD0381E ==> ' FLD0381E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0381E.
           IF FLD0382B (1:)    NOT EQUAL XPC-FLD0382B
              DISPLAY 'FLD0382B ==> ' FLD0382B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0382B.
           IF FLD0382E   NOT EQUAL XPC-FLD0382E
              DISPLAY 'FLD0382E ==> ' FLD0382E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0382E.
           IF FLD0383B (1:)    NOT EQUAL XPC-FLD0383B
              DISPLAY 'FLD0383B ==> ' FLD0383B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0383B.
           IF FLD0383E   NOT EQUAL XPC-FLD0383E
              DISPLAY 'FLD0383E ==> ' FLD0383E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0383E.
           IF FLD0384B (1:)    NOT EQUAL XPC-FLD0384B
              DISPLAY 'FLD0384B ==> ' FLD0384B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0384B.
           IF FLD0384E   NOT EQUAL XPC-FLD0384E
              DISPLAY 'FLD0384E ==> ' FLD0384E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0384E.
           IF FLD0385B (1:)    NOT EQUAL XPC-FLD0385B
              DISPLAY 'FLD0385B ==> ' FLD0385B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0385B.
           IF FLD0385E   NOT EQUAL XPC-FLD0385E
              DISPLAY 'FLD0385E ==> ' FLD0385E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0385E.
           IF FLD0386B (1:)    NOT EQUAL XPC-FLD0386B
              DISPLAY 'FLD0386B ==> ' FLD0386B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0386B.
           IF FLD0386E   NOT EQUAL XPC-FLD0386E
              DISPLAY 'FLD0386E ==> ' FLD0386E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0386E.
           IF FLD0387B (1:)    NOT EQUAL XPC-FLD0387B
              DISPLAY 'FLD0387B ==> ' FLD0387B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0387B.
           IF FLD0387E   NOT EQUAL XPC-FLD0387E
              DISPLAY 'FLD0387E ==> ' FLD0387E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0387E.
           IF FLD0388B (1:)    NOT EQUAL XPC-FLD0388B
              DISPLAY 'FLD0388B ==> ' FLD0388B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0388B.
           IF FLD0388E   NOT EQUAL XPC-FLD0388E
              DISPLAY 'FLD0388E ==> ' FLD0388E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0388E.
           IF FLD0389B (1:)    NOT EQUAL XPC-FLD0389B
              DISPLAY 'FLD0389B ==> ' FLD0389B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0389B.
           IF FLD0389E   NOT EQUAL XPC-FLD0389E
              DISPLAY 'FLD0389E ==> ' FLD0389E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0389E.
           IF FLD0390B (1:)    NOT EQUAL XPC-FLD0390B
              DISPLAY 'FLD0390B ==> ' FLD0390B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0390B.
           IF FLD0390E   NOT EQUAL XPC-FLD0390E
              DISPLAY 'FLD0390E ==> ' FLD0390E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0390E.
           IF FLD0391B (1:)    NOT EQUAL XPC-FLD0391B
              DISPLAY 'FLD0391B ==> ' FLD0391B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0391B.
           IF FLD0391E   NOT EQUAL XPC-FLD0391E
              DISPLAY 'FLD0391E ==> ' FLD0391E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0391E.
           IF FLD0392B (1:)    NOT EQUAL XPC-FLD0392B
              DISPLAY 'FLD0392B ==> ' FLD0392B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0392B.
           IF FLD0392E   NOT EQUAL XPC-FLD0392E
              DISPLAY 'FLD0392E ==> ' FLD0392E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0392E.
           IF FLD0393B (1:)    NOT EQUAL XPC-FLD0393B
              DISPLAY 'FLD0393B ==> ' FLD0393B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0393B.
           IF FLD0393E   NOT EQUAL XPC-FLD0393E
              DISPLAY 'FLD0393E ==> ' FLD0393E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0393E.
           IF FLD0394B (1:)    NOT EQUAL XPC-FLD0394B
              DISPLAY 'FLD0394B ==> ' FLD0394B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0394B.
           IF FLD0394E   NOT EQUAL XPC-FLD0394E
              DISPLAY 'FLD0394E ==> ' FLD0394E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0394E.
           IF FLD0395B (1:)    NOT EQUAL XPC-FLD0395B
              DISPLAY 'FLD0395B ==> ' FLD0395B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0395B.
           IF FLD0395E   NOT EQUAL XPC-FLD0395E
              DISPLAY 'FLD0395E ==> ' FLD0395E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0395E.
           IF FLD0396B (1:)    NOT EQUAL XPC-FLD0396B
              DISPLAY 'FLD0396B ==> ' FLD0396B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0396B.
           IF FLD0396E   NOT EQUAL XPC-FLD0396E
              DISPLAY 'FLD0396E ==> ' FLD0396E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0396E.
           IF FLD0397B (1:)    NOT EQUAL XPC-FLD0397B
              DISPLAY 'FLD0397B ==> ' FLD0397B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0397B.
           IF FLD0397E   NOT EQUAL XPC-FLD0397E
              DISPLAY 'FLD0397E ==> ' FLD0397E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0397E.
           IF FLD0398B (1:)    NOT EQUAL XPC-FLD0398B
              DISPLAY 'FLD0398B ==> ' FLD0398B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0398B.
           IF FLD0398E   NOT EQUAL XPC-FLD0398E
              DISPLAY 'FLD0398E ==> ' FLD0398E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0398E.
           IF FLD0399B (1:)    NOT EQUAL XPC-FLD0399B
              DISPLAY 'FLD0399B ==> ' FLD0399B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0399B.
           IF FLD0399E   NOT EQUAL XPC-FLD0399E
              DISPLAY 'FLD0399E ==> ' FLD0399E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0399E.
           IF FLD0400B (1:)    NOT EQUAL XPC-FLD0400B
              DISPLAY 'FLD0400B ==> ' FLD0400B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0400B.
           IF FLD0400E   NOT EQUAL XPC-FLD0400E
              DISPLAY 'FLD0400E ==> ' FLD0400E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0400E.
           IF FLD0401B (1:)    NOT EQUAL XPC-FLD0401B
              DISPLAY 'FLD0401B ==> ' FLD0401B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0401B.
           IF FLD0401E   NOT EQUAL XPC-FLD0401E
              DISPLAY 'FLD0401E ==> ' FLD0401E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0401E.
           IF FLD0402B (1:)    NOT EQUAL XPC-FLD0402B
              DISPLAY 'FLD0402B ==> ' FLD0402B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0402B.
           IF FLD0402E   NOT EQUAL XPC-FLD0402E
              DISPLAY 'FLD0402E ==> ' FLD0402E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0402E.
           IF FLD0403B (1:)    NOT EQUAL XPC-FLD0403B
              DISPLAY 'FLD0403B ==> ' FLD0403B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0403B.
           IF FLD0403E   NOT EQUAL XPC-FLD0403E
              DISPLAY 'FLD0403E ==> ' FLD0403E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0403E.
           IF FLD0404B (1:)    NOT EQUAL XPC-FLD0404B
              DISPLAY 'FLD0404B ==> ' FLD0404B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0404B.
           IF FLD0404E   NOT EQUAL XPC-FLD0404E
              DISPLAY 'FLD0404E ==> ' FLD0404E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0404E.
           IF FLD0405B (1:)    NOT EQUAL XPC-FLD0405B
              DISPLAY 'FLD0405B ==> ' FLD0405B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0405B.
           IF FLD0405E   NOT EQUAL XPC-FLD0405E
              DISPLAY 'FLD0405E ==> ' FLD0405E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0405E.
           IF FLD0406B (1:)    NOT EQUAL XPC-FLD0406B
              DISPLAY 'FLD0406B ==> ' FLD0406B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0406B.
           IF FLD0406E   NOT EQUAL XPC-FLD0406E
              DISPLAY 'FLD0406E ==> ' FLD0406E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0406E.
           IF FLD0407B (1:)    NOT EQUAL XPC-FLD0407B
              DISPLAY 'FLD0407B ==> ' FLD0407B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0407B.
           IF FLD0407E   NOT EQUAL XPC-FLD0407E
              DISPLAY 'FLD0407E ==> ' FLD0407E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0407E.
           IF FLD0408B (1:)    NOT EQUAL XPC-FLD0408B
              DISPLAY 'FLD0408B ==> ' FLD0408B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0408B.
           IF FLD0408E   NOT EQUAL XPC-FLD0408E
              DISPLAY 'FLD0408E ==> ' FLD0408E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0408E.
           IF FLD0409B (1:)    NOT EQUAL XPC-FLD0409B
              DISPLAY 'FLD0409B ==> ' FLD0409B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0409B.
           IF FLD0409E   NOT EQUAL XPC-FLD0409E
              DISPLAY 'FLD0409E ==> ' FLD0409E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0409E.
           IF FLD0410B (1:)    NOT EQUAL XPC-FLD0410B
              DISPLAY 'FLD0410B ==> ' FLD0410B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0410B.
           IF FLD0410E   NOT EQUAL XPC-FLD0410E
              DISPLAY 'FLD0410E ==> ' FLD0410E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0410E.
           IF FLD0411B (1:)    NOT EQUAL XPC-FLD0411B
              DISPLAY 'FLD0411B ==> ' FLD0411B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0411B.
           IF FLD0411E   NOT EQUAL XPC-FLD0411E
              DISPLAY 'FLD0411E ==> ' FLD0411E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0411E.
           IF FLD0412B (1:)    NOT EQUAL XPC-FLD0412B
              DISPLAY 'FLD0412B ==> ' FLD0412B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0412B.
           IF FLD0412E   NOT EQUAL XPC-FLD0412E
              DISPLAY 'FLD0412E ==> ' FLD0412E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0412E.
           IF FLD0413B (1:)    NOT EQUAL XPC-FLD0413B
              DISPLAY 'FLD0413B ==> ' FLD0413B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0413B.
           IF FLD0413E   NOT EQUAL XPC-FLD0413E
              DISPLAY 'FLD0413E ==> ' FLD0413E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0413E.
           IF FLD0414B (1:)    NOT EQUAL XPC-FLD0414B
              DISPLAY 'FLD0414B ==> ' FLD0414B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0414B.
           IF FLD0414E   NOT EQUAL XPC-FLD0414E
              DISPLAY 'FLD0414E ==> ' FLD0414E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0414E.
           IF FLD0415B (1:)    NOT EQUAL XPC-FLD0415B
              DISPLAY 'FLD0415B ==> ' FLD0415B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0415B.
           IF FLD0415E   NOT EQUAL XPC-FLD0415E
              DISPLAY 'FLD0415E ==> ' FLD0415E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0415E.
           IF FLD0416B (1:)    NOT EQUAL XPC-FLD0416B
              DISPLAY 'FLD0416B ==> ' FLD0416B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0416B.
           IF FLD0416E   NOT EQUAL XPC-FLD0416E
              DISPLAY 'FLD0416E ==> ' FLD0416E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0416E.
           IF FLD0417B (1:)    NOT EQUAL XPC-FLD0417B
              DISPLAY 'FLD0417B ==> ' FLD0417B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0417B.
           IF FLD0417E   NOT EQUAL XPC-FLD0417E
              DISPLAY 'FLD0417E ==> ' FLD0417E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0417E.
           IF FLD0418B (1:)    NOT EQUAL XPC-FLD0418B
              DISPLAY 'FLD0418B ==> ' FLD0418B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0418B.
           IF FLD0418E   NOT EQUAL XPC-FLD0418E
              DISPLAY 'FLD0418E ==> ' FLD0418E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0418E.
           IF FLD0419B (1:)    NOT EQUAL XPC-FLD0419B
              DISPLAY 'FLD0419B ==> ' FLD0419B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0419B.
           IF FLD0419E   NOT EQUAL XPC-FLD0419E
              DISPLAY 'FLD0419E ==> ' FLD0419E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0419E.
           IF FLD0420B (1:)    NOT EQUAL XPC-FLD0420B
              DISPLAY 'FLD0420B ==> ' FLD0420B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0420B.
           IF FLD0420E   NOT EQUAL XPC-FLD0420E
              DISPLAY 'FLD0420E ==> ' FLD0420E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0420E.
           IF FLD0421B (1:)    NOT EQUAL XPC-FLD0421B
              DISPLAY 'FLD0421B ==> ' FLD0421B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0421B.
           IF FLD0421E   NOT EQUAL XPC-FLD0421E
              DISPLAY 'FLD0421E ==> ' FLD0421E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0421E.
           IF FLD0422B (1:)    NOT EQUAL XPC-FLD0422B
              DISPLAY 'FLD0422B ==> ' FLD0422B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0422B.
           IF FLD0422E   NOT EQUAL XPC-FLD0422E
              DISPLAY 'FLD0422E ==> ' FLD0422E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0422E.
           IF FLD0423B (1:)    NOT EQUAL XPC-FLD0423B
              DISPLAY 'FLD0423B ==> ' FLD0423B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0423B.
           IF FLD0423E   NOT EQUAL XPC-FLD0423E
              DISPLAY 'FLD0423E ==> ' FLD0423E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0423E.
           IF FLD0424B (1:)    NOT EQUAL XPC-FLD0424B
              DISPLAY 'FLD0424B ==> ' FLD0424B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0424B.
           IF FLD0424E   NOT EQUAL XPC-FLD0424E
              DISPLAY 'FLD0424E ==> ' FLD0424E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0424E.
           IF FLD0425B (1:)    NOT EQUAL XPC-FLD0425B
              DISPLAY 'FLD0425B ==> ' FLD0425B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0425B.
           IF FLD0425E   NOT EQUAL XPC-FLD0425E
              DISPLAY 'FLD0425E ==> ' FLD0425E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0425E.
           IF FLD0426B (1:)    NOT EQUAL XPC-FLD0426B
              DISPLAY 'FLD0426B ==> ' FLD0426B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0426B.
           IF FLD0426E   NOT EQUAL XPC-FLD0426E
              DISPLAY 'FLD0426E ==> ' FLD0426E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0426E.
           IF FLD0427B (1:)    NOT EQUAL XPC-FLD0427B
              DISPLAY 'FLD0427B ==> ' FLD0427B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0427B.
           IF FLD0427E   NOT EQUAL XPC-FLD0427E
              DISPLAY 'FLD0427E ==> ' FLD0427E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0427E.
           IF FLD0428B (1:)    NOT EQUAL XPC-FLD0428B
              DISPLAY 'FLD0428B ==> ' FLD0428B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0428B.
           IF FLD0428E   NOT EQUAL XPC-FLD0428E
              DISPLAY 'FLD0428E ==> ' FLD0428E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0428E.
           IF FLD0429B (1:)    NOT EQUAL XPC-FLD0429B
              DISPLAY 'FLD0429B ==> ' FLD0429B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0429B.
           IF FLD0429E   NOT EQUAL XPC-FLD0429E
              DISPLAY 'FLD0429E ==> ' FLD0429E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0429E.
           IF FLD0430B (1:)    NOT EQUAL XPC-FLD0430B
              DISPLAY 'FLD0430B ==> ' FLD0430B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0430B.
           IF FLD0430E   NOT EQUAL XPC-FLD0430E
              DISPLAY 'FLD0430E ==> ' FLD0430E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0430E.
           IF FLD0431B (1:)    NOT EQUAL XPC-FLD0431B
              DISPLAY 'FLD0431B ==> ' FLD0431B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0431B.
           IF FLD0431E   NOT EQUAL XPC-FLD0431E
              DISPLAY 'FLD0431E ==> ' FLD0431E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0431E.
           IF FLD0432B (1:)    NOT EQUAL XPC-FLD0432B
              DISPLAY 'FLD0432B ==> ' FLD0432B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0432B.
           IF FLD0432E   NOT EQUAL XPC-FLD0432E
              DISPLAY 'FLD0432E ==> ' FLD0432E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0432E.
           IF FLD0433B (1:)    NOT EQUAL XPC-FLD0433B
              DISPLAY 'FLD0433B ==> ' FLD0433B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0433B.
           IF FLD0433E   NOT EQUAL XPC-FLD0433E
              DISPLAY 'FLD0433E ==> ' FLD0433E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0433E.
           IF FLD0434B (1:)    NOT EQUAL XPC-FLD0434B
              DISPLAY 'FLD0434B ==> ' FLD0434B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0434B.
           IF FLD0434E   NOT EQUAL XPC-FLD0434E
              DISPLAY 'FLD0434E ==> ' FLD0434E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0434E.
           IF FLD0435B (1:)    NOT EQUAL XPC-FLD0435B
              DISPLAY 'FLD0435B ==> ' FLD0435B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0435B.
           IF FLD0435E   NOT EQUAL XPC-FLD0435E
              DISPLAY 'FLD0435E ==> ' FLD0435E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0435E.
           IF FLD0436B (1:)    NOT EQUAL XPC-FLD0436B
              DISPLAY 'FLD0436B ==> ' FLD0436B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0436B.
           IF FLD0436E   NOT EQUAL XPC-FLD0436E
              DISPLAY 'FLD0436E ==> ' FLD0436E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0436E.
           IF FLD0437B (1:)    NOT EQUAL XPC-FLD0437B
              DISPLAY 'FLD0437B ==> ' FLD0437B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0437B.
           IF FLD0437E   NOT EQUAL XPC-FLD0437E
              DISPLAY 'FLD0437E ==> ' FLD0437E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0437E.
           IF FLD0438B (1:)    NOT EQUAL XPC-FLD0438B
              DISPLAY 'FLD0438B ==> ' FLD0438B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0438B.
           IF FLD0438E   NOT EQUAL XPC-FLD0438E
              DISPLAY 'FLD0438E ==> ' FLD0438E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0438E.
           IF FLD0439B (1:)    NOT EQUAL XPC-FLD0439B
              DISPLAY 'FLD0439B ==> ' FLD0439B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0439B.
           IF FLD0439E   NOT EQUAL XPC-FLD0439E
              DISPLAY 'FLD0439E ==> ' FLD0439E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0439E.
           IF FLD0440B (1:)    NOT EQUAL XPC-FLD0440B
              DISPLAY 'FLD0440B ==> ' FLD0440B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0440B.
           IF FLD0440E   NOT EQUAL XPC-FLD0440E
              DISPLAY 'FLD0440E ==> ' FLD0440E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0440E.
           IF FLD0441B (1:)    NOT EQUAL XPC-FLD0441B
              DISPLAY 'FLD0441B ==> ' FLD0441B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0441B.
           IF FLD0441E   NOT EQUAL XPC-FLD0441E
              DISPLAY 'FLD0441E ==> ' FLD0441E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0441E.
           IF FLD0442B (1:)    NOT EQUAL XPC-FLD0442B
              DISPLAY 'FLD0442B ==> ' FLD0442B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0442B.
           IF FLD0442E   NOT EQUAL XPC-FLD0442E
              DISPLAY 'FLD0442E ==> ' FLD0442E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0442E.
           IF FLD0443B (1:)    NOT EQUAL XPC-FLD0443B
              DISPLAY 'FLD0443B ==> ' FLD0443B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0443B.
           IF FLD0443E   NOT EQUAL XPC-FLD0443E
              DISPLAY 'FLD0443E ==> ' FLD0443E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0443E.
           IF FLD0444B (1:)    NOT EQUAL XPC-FLD0444B
              DISPLAY 'FLD0444B ==> ' FLD0444B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0444B.
           IF FLD0444E   NOT EQUAL XPC-FLD0444E
              DISPLAY 'FLD0444E ==> ' FLD0444E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0444E.
           IF FLD0445B (1:)    NOT EQUAL XPC-FLD0445B
              DISPLAY 'FLD0445B ==> ' FLD0445B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0445B.
           IF FLD0445E   NOT EQUAL XPC-FLD0445E
              DISPLAY 'FLD0445E ==> ' FLD0445E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0445E.
           IF FLD0446B (1:)    NOT EQUAL XPC-FLD0446B
              DISPLAY 'FLD0446B ==> ' FLD0446B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0446B.
           IF FLD0446E   NOT EQUAL XPC-FLD0446E
              DISPLAY 'FLD0446E ==> ' FLD0446E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0446E.
           IF FLD0447B (1:)    NOT EQUAL XPC-FLD0447B
              DISPLAY 'FLD0447B ==> ' FLD0447B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0447B.
           IF FLD0447E   NOT EQUAL XPC-FLD0447E
              DISPLAY 'FLD0447E ==> ' FLD0447E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0447E.
           IF FLD0448B (1:)    NOT EQUAL XPC-FLD0448B
              DISPLAY 'FLD0448B ==> ' FLD0448B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0448B.
           IF FLD0448E   NOT EQUAL XPC-FLD0448E
              DISPLAY 'FLD0448E ==> ' FLD0448E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0448E.
           IF FLD0449B (1:)    NOT EQUAL XPC-FLD0449B
              DISPLAY 'FLD0449B ==> ' FLD0449B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0449B.
           IF FLD0449E   NOT EQUAL XPC-FLD0449E
              DISPLAY 'FLD0449E ==> ' FLD0449E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0449E.
           IF FLD0450B (1:)    NOT EQUAL XPC-FLD0450B
              DISPLAY 'FLD0450B ==> ' FLD0450B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0450B.
           IF FLD0450E   NOT EQUAL XPC-FLD0450E
              DISPLAY 'FLD0450E ==> ' FLD0450E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0450E.
           IF FLD0451B (1:)    NOT EQUAL XPC-FLD0451B
              DISPLAY 'FLD0451B ==> ' FLD0451B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0451B.
           IF FLD0451E   NOT EQUAL XPC-FLD0451E
              DISPLAY 'FLD0451E ==> ' FLD0451E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0451E.
           IF FLD0452B (1:)    NOT EQUAL XPC-FLD0452B
              DISPLAY 'FLD0452B ==> ' FLD0452B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0452B.
           IF FLD0452E   NOT EQUAL XPC-FLD0452E
              DISPLAY 'FLD0452E ==> ' FLD0452E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0452E.
           IF FLD0453B (1:)    NOT EQUAL XPC-FLD0453B
              DISPLAY 'FLD0453B ==> ' FLD0453B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0453B.
           IF FLD0453E   NOT EQUAL XPC-FLD0453E
              DISPLAY 'FLD0453E ==> ' FLD0453E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0453E.
           IF FLD0454B (1:)    NOT EQUAL XPC-FLD0454B
              DISPLAY 'FLD0454B ==> ' FLD0454B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0454B.
           IF FLD0454E   NOT EQUAL XPC-FLD0454E
              DISPLAY 'FLD0454E ==> ' FLD0454E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0454E.
           IF FLD0455B (1:)    NOT EQUAL XPC-FLD0455B
              DISPLAY 'FLD0455B ==> ' FLD0455B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0455B.
           IF FLD0455E   NOT EQUAL XPC-FLD0455E
              DISPLAY 'FLD0455E ==> ' FLD0455E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0455E.
           IF FLD0456B (1:)    NOT EQUAL XPC-FLD0456B
              DISPLAY 'FLD0456B ==> ' FLD0456B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0456B.
           IF FLD0456E   NOT EQUAL XPC-FLD0456E
              DISPLAY 'FLD0456E ==> ' FLD0456E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0456E.
           IF FLD0457B (1:)    NOT EQUAL XPC-FLD0457B
              DISPLAY 'FLD0457B ==> ' FLD0457B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0457B.
           IF FLD0457E   NOT EQUAL XPC-FLD0457E
              DISPLAY 'FLD0457E ==> ' FLD0457E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0457E.
           IF FLD0458B (1:)    NOT EQUAL XPC-FLD0458B
              DISPLAY 'FLD0458B ==> ' FLD0458B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0458B.
           IF FLD0458E   NOT EQUAL XPC-FLD0458E
              DISPLAY 'FLD0458E ==> ' FLD0458E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0458E.
           IF FLD0459B (1:)    NOT EQUAL XPC-FLD0459B
              DISPLAY 'FLD0459B ==> ' FLD0459B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0459B.
           IF FLD0459E   NOT EQUAL XPC-FLD0459E
              DISPLAY 'FLD0459E ==> ' FLD0459E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0459E.
           IF FLD0460B (1:)    NOT EQUAL XPC-FLD0460B
              DISPLAY 'FLD0460B ==> ' FLD0460B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0460B.
           IF FLD0460E   NOT EQUAL XPC-FLD0460E
              DISPLAY 'FLD0460E ==> ' FLD0460E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0460E.
           IF FLD0461B (1:)    NOT EQUAL XPC-FLD0461B
              DISPLAY 'FLD0461B ==> ' FLD0461B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0461B.
           IF FLD0461E   NOT EQUAL XPC-FLD0461E
              DISPLAY 'FLD0461E ==> ' FLD0461E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0461E.
           IF FLD0462B (1:)    NOT EQUAL XPC-FLD0462B
              DISPLAY 'FLD0462B ==> ' FLD0462B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0462B.
           IF FLD0462E   NOT EQUAL XPC-FLD0462E
              DISPLAY 'FLD0462E ==> ' FLD0462E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0462E.
           IF FLD0463B (1:)    NOT EQUAL XPC-FLD0463B
              DISPLAY 'FLD0463B ==> ' FLD0463B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0463B.
           IF FLD0463E   NOT EQUAL XPC-FLD0463E
              DISPLAY 'FLD0463E ==> ' FLD0463E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0463E.
           IF FLD0464B (1:)    NOT EQUAL XPC-FLD0464B
              DISPLAY 'FLD0464B ==> ' FLD0464B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0464B.
           IF FLD0464E   NOT EQUAL XPC-FLD0464E
              DISPLAY 'FLD0464E ==> ' FLD0464E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0464E.
           IF FLD0465B (1:)    NOT EQUAL XPC-FLD0465B
              DISPLAY 'FLD0465B ==> ' FLD0465B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0465B.
           IF FLD0465E   NOT EQUAL XPC-FLD0465E
              DISPLAY 'FLD0465E ==> ' FLD0465E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0465E.
           IF FLD0466B (1:)    NOT EQUAL XPC-FLD0466B
              DISPLAY 'FLD0466B ==> ' FLD0466B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0466B.
           IF FLD0466E   NOT EQUAL XPC-FLD0466E
              DISPLAY 'FLD0466E ==> ' FLD0466E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0466E.
           IF FLD0467B (1:)    NOT EQUAL XPC-FLD0467B
              DISPLAY 'FLD0467B ==> ' FLD0467B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0467B.
           IF FLD0467E   NOT EQUAL XPC-FLD0467E
              DISPLAY 'FLD0467E ==> ' FLD0467E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0467E.
           IF FLD0468B (1:)    NOT EQUAL XPC-FLD0468B
              DISPLAY 'FLD0468B ==> ' FLD0468B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0468B.
           IF FLD0468E   NOT EQUAL XPC-FLD0468E
              DISPLAY 'FLD0468E ==> ' FLD0468E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0468E.
           IF FLD0469B (1:)    NOT EQUAL XPC-FLD0469B
              DISPLAY 'FLD0469B ==> ' FLD0469B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0469B.
           IF FLD0469E   NOT EQUAL XPC-FLD0469E
              DISPLAY 'FLD0469E ==> ' FLD0469E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0469E.
           IF FLD0470B (1:)    NOT EQUAL XPC-FLD0470B
              DISPLAY 'FLD0470B ==> ' FLD0470B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0470B.
           IF FLD0470E   NOT EQUAL XPC-FLD0470E
              DISPLAY 'FLD0470E ==> ' FLD0470E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0470E.
           IF FLD0471B (1:)    NOT EQUAL XPC-FLD0471B
              DISPLAY 'FLD0471B ==> ' FLD0471B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0471B.
           IF FLD0471E   NOT EQUAL XPC-FLD0471E
              DISPLAY 'FLD0471E ==> ' FLD0471E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0471E.
           IF FLD0472B (1:)    NOT EQUAL XPC-FLD0472B
              DISPLAY 'FLD0472B ==> ' FLD0472B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0472B.
           IF FLD0472E   NOT EQUAL XPC-FLD0472E
              DISPLAY 'FLD0472E ==> ' FLD0472E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0472E.
           IF FLD0473B (1:)    NOT EQUAL XPC-FLD0473B
              DISPLAY 'FLD0473B ==> ' FLD0473B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0473B.
           IF FLD0473E   NOT EQUAL XPC-FLD0473E
              DISPLAY 'FLD0473E ==> ' FLD0473E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0473E.
           IF FLD0474B (1:)    NOT EQUAL XPC-FLD0474B
              DISPLAY 'FLD0474B ==> ' FLD0474B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0474B.
           IF FLD0474E   NOT EQUAL XPC-FLD0474E
              DISPLAY 'FLD0474E ==> ' FLD0474E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0474E.
           IF FLD0475B (1:)    NOT EQUAL XPC-FLD0475B
              DISPLAY 'FLD0475B ==> ' FLD0475B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0475B.
           IF FLD0475E   NOT EQUAL XPC-FLD0475E
              DISPLAY 'FLD0475E ==> ' FLD0475E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0475E.
           IF FLD0476B (1:)    NOT EQUAL XPC-FLD0476B
              DISPLAY 'FLD0476B ==> ' FLD0476B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0476B.
           IF FLD0476E   NOT EQUAL XPC-FLD0476E
              DISPLAY 'FLD0476E ==> ' FLD0476E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0476E.
           IF FLD0477B (1:)    NOT EQUAL XPC-FLD0477B
              DISPLAY 'FLD0477B ==> ' FLD0477B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0477B.
           IF FLD0477E   NOT EQUAL XPC-FLD0477E
              DISPLAY 'FLD0477E ==> ' FLD0477E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0477E.
           IF FLD0478B (1:)    NOT EQUAL XPC-FLD0478B
              DISPLAY 'FLD0478B ==> ' FLD0478B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0478B.
           IF FLD0478E   NOT EQUAL XPC-FLD0478E
              DISPLAY 'FLD0478E ==> ' FLD0478E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0478E.
           IF FLD0479B (1:)    NOT EQUAL XPC-FLD0479B
              DISPLAY 'FLD0479B ==> ' FLD0479B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0479B.
           IF FLD0479E   NOT EQUAL XPC-FLD0479E
              DISPLAY 'FLD0479E ==> ' FLD0479E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0479E.
           IF FLD0480B (1:)    NOT EQUAL XPC-FLD0480B
              DISPLAY 'FLD0480B ==> ' FLD0480B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0480B.
           IF FLD0480E   NOT EQUAL XPC-FLD0480E
              DISPLAY 'FLD0480E ==> ' FLD0480E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0480E.
           IF FLD0481B (1:)    NOT EQUAL XPC-FLD0481B
              DISPLAY 'FLD0481B ==> ' FLD0481B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0481B.
           IF FLD0481E   NOT EQUAL XPC-FLD0481E
              DISPLAY 'FLD0481E ==> ' FLD0481E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0481E.
           IF FLD0482B (1:)    NOT EQUAL XPC-FLD0482B
              DISPLAY 'FLD0482B ==> ' FLD0482B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0482B.
           IF FLD0482E   NOT EQUAL XPC-FLD0482E
              DISPLAY 'FLD0482E ==> ' FLD0482E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0482E.
           IF FLD0483B (1:)    NOT EQUAL XPC-FLD0483B
              DISPLAY 'FLD0483B ==> ' FLD0483B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0483B.
           IF FLD0483E   NOT EQUAL XPC-FLD0483E
              DISPLAY 'FLD0483E ==> ' FLD0483E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0483E.
           IF FLD0484B (1:)    NOT EQUAL XPC-FLD0484B
              DISPLAY 'FLD0484B ==> ' FLD0484B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0484B.
           IF FLD0484E   NOT EQUAL XPC-FLD0484E
              DISPLAY 'FLD0484E ==> ' FLD0484E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0484E.
           IF FLD0485B (1:)    NOT EQUAL XPC-FLD0485B
              DISPLAY 'FLD0485B ==> ' FLD0485B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0485B.
           IF FLD0485E   NOT EQUAL XPC-FLD0485E
              DISPLAY 'FLD0485E ==> ' FLD0485E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0485E.
           IF FLD0486B (1:)    NOT EQUAL XPC-FLD0486B
              DISPLAY 'FLD0486B ==> ' FLD0486B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0486B.
           IF FLD0486E   NOT EQUAL XPC-FLD0486E
              DISPLAY 'FLD0486E ==> ' FLD0486E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0486E.
           IF FLD0487B (1:)    NOT EQUAL XPC-FLD0487B
              DISPLAY 'FLD0487B ==> ' FLD0487B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0487B.
           IF FLD0487E   NOT EQUAL XPC-FLD0487E
              DISPLAY 'FLD0487E ==> ' FLD0487E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0487E.
           IF FLD0488B (1:)    NOT EQUAL XPC-FLD0488B
              DISPLAY 'FLD0488B ==> ' FLD0488B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0488B.
           IF FLD0488E   NOT EQUAL XPC-FLD0488E
              DISPLAY 'FLD0488E ==> ' FLD0488E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0488E.
           IF FLD0489B (1:)    NOT EQUAL XPC-FLD0489B
              DISPLAY 'FLD0489B ==> ' FLD0489B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0489B.
           IF FLD0489E   NOT EQUAL XPC-FLD0489E
              DISPLAY 'FLD0489E ==> ' FLD0489E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0489E.
           IF FLD0490B (1:)    NOT EQUAL XPC-FLD0490B
              DISPLAY 'FLD0490B ==> ' FLD0490B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0490B.
           IF FLD0490E   NOT EQUAL XPC-FLD0490E
              DISPLAY 'FLD0490E ==> ' FLD0490E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0490E.
           IF FLD0491B (1:)    NOT EQUAL XPC-FLD0491B
              DISPLAY 'FLD0491B ==> ' FLD0491B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0491B.
           IF FLD0491E   NOT EQUAL XPC-FLD0491E
              DISPLAY 'FLD0491E ==> ' FLD0491E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0491E.
           IF FLD0492B (1:)    NOT EQUAL XPC-FLD0492B
              DISPLAY 'FLD0492B ==> ' FLD0492B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0492B.
           IF FLD0492E   NOT EQUAL XPC-FLD0492E
              DISPLAY 'FLD0492E ==> ' FLD0492E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0492E.
           IF FLD0493B (1:)    NOT EQUAL XPC-FLD0493B
              DISPLAY 'FLD0493B ==> ' FLD0493B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0493B.
           IF FLD0493E   NOT EQUAL XPC-FLD0493E
              DISPLAY 'FLD0493E ==> ' FLD0493E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0493E.
           IF FLD0494B (1:)    NOT EQUAL XPC-FLD0494B
              DISPLAY 'FLD0494B ==> ' FLD0494B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0494B.
           IF FLD0494E   NOT EQUAL XPC-FLD0494E
              DISPLAY 'FLD0494E ==> ' FLD0494E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0494E.
           IF FLD0495B (1:)    NOT EQUAL XPC-FLD0495B
              DISPLAY 'FLD0495B ==> ' FLD0495B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0495B.
           IF FLD0495E   NOT EQUAL XPC-FLD0495E
              DISPLAY 'FLD0495E ==> ' FLD0495E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0495E.
           IF FLD0496B (1:)    NOT EQUAL XPC-FLD0496B
              DISPLAY 'FLD0496B ==> ' FLD0496B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0496B.
           IF FLD0496E   NOT EQUAL XPC-FLD0496E
              DISPLAY 'FLD0496E ==> ' FLD0496E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0496E.
           IF FLD0497B (1:)    NOT EQUAL XPC-FLD0497B
              DISPLAY 'FLD0497B ==> ' FLD0497B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0497B.
           IF FLD0497E   NOT EQUAL XPC-FLD0497E
              DISPLAY 'FLD0497E ==> ' FLD0497E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0497E.
           IF FLD0498B (1:)    NOT EQUAL XPC-FLD0498B
              DISPLAY 'FLD0498B ==> ' FLD0498B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0498B.
           IF FLD0498E   NOT EQUAL XPC-FLD0498E
              DISPLAY 'FLD0498E ==> ' FLD0498E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0498E.
           IF FLD0499B (1:)    NOT EQUAL XPC-FLD0499B
              DISPLAY 'FLD0499B ==> ' FLD0499B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0499B.
           IF FLD0499E   NOT EQUAL XPC-FLD0499E
              DISPLAY 'FLD0499E ==> ' FLD0499E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0499E.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:8730: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_display.at:8730"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:8730"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:8731: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:8731"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:8731"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTNR2.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       77  FLD0500A                       PIC S9(10)V9(08)
                   VALUE -4830218621.81680639.
       77  FLD0500B                       PIC  9(03)
                   VALUE  087.
       77  FLD0500E                       PIC X  VALUE 'N'.

       77  FLD0501A                       PIC  9(09)V9(15)
                   VALUE  652910855.370784748430423.
       77  FLD0501B                       PIC  9(09)V9(14)
                   VALUE  628093348.73677369337485.
       77  FLD0501E                       PIC X  VALUE 'N'.

       77  FLD0502A                       PIC  9(03)
                   VALUE  079.
       77  FLD0502B                       PIC  9(07)V9(22)
                   VALUE  7893241.6286150020034995122841.
       77  FLD0502E                       PIC X  VALUE 'N'.

       77  FLD0503A                       PIC  9(10)V9(11)
                   VALUE  5662523582.77427925159.
       77  FLD0503B                       PIC  9(04)V9(29)
                   VALUE  8834.70722999726620905391882843105.
       77  FLD0503E                       PIC X  VALUE 'N'.

       77  FLD0504A                       PIC S9(08)V9(02)
                   VALUE -28360864.01.
       77  FLD0504B                       PIC  9(10)V9(09)
                   VALUE  5000570062.577901486.
       77  FLD0504E                       PIC X  VALUE 'N'.

       77  FLD0505A                       PIC  9(04)V9(30)
                   VALUE  9110.332843503369248949752545740921.
       77  FLD0505B                       PIC  9(10)V9(10)
                   VALUE  5407979633.7587637822.
       77  FLD0505E                       PIC X  VALUE 'N'.

       77  FLD0506A                       PIC  9(10)V9(11)
                   VALUE  5546838940.35467472960.
       77  FLD0506B                       PIC S9(07)V9(01)
                   VALUE +2340559.3.
       77  FLD0506E                       PIC X  VALUE 'N'.

       77  FLD0507A                       PIC  9(08)V9(18)
                   VALUE  70736506.262277043521891073.
       77  FLD0507B                       PIC  9(10)V9(09)
                   VALUE  5205430142.820132166.
       77  FLD0507E                       PIC X  VALUE 'N'.

       77  FLD0508A                       PIC  9(09)V9(16)
                   VALUE  658855971.9467786957025623.
       77  FLD0508B                       PIC S9(09)V9(07)
                   VALUE +444447149.8618901.
       77  FLD0508E                       PIC X  VALUE 'N'.

       77  FLD0509A                       PIC S9(01)
                   VALUE +0.
       77  FLD0509B                       PIC  9(10)V9(08)
                   VALUE  4889373386.26299289.
       77  FLD0509E                       PIC X  VALUE 'N'.

       77  FLD0510A                       PIC  9(04)
                   VALUE  1295.
       77  FLD0510B                       PIC S9(03)
                   VALUE -092.
       77  FLD0510E                       PIC X  VALUE 'N'.

       77  FLD0511A                       PIC  9(06)V9(25)
                   VALUE  815863.7850571600624860479911149.
       77  FLD0511B                       PIC  9(10)V9(09)
                   VALUE  5256921146.480894035.
       77  FLD0511E                       PIC X  VALUE 'N'.

       77  FLD0512A                       PIC  9(05)
                   VALUE  13945.
       77  FLD0512B                       PIC  9(01)V9(36)
                   VALUE  9.908282031313487836499120930966455489.
       77  FLD0512E                       PIC X  VALUE 'N'.

       77  FLD0513A                       PIC  9(09)V9(15)
                   VALUE  653773832.246937192103075.
       77  FLD0513B                       PIC  9(08)V9(20)
                   VALUE  74124087.47450585089211472222.
       77  FLD0513E                       PIC X  VALUE 'N'.

       77  FLD0514A                       PIC  9(08)V9(18)
                   VALUE  70109343.593910689040882289.
       77  FLD0514B                       PIC  9(09)V9(04)
                   VALUE  348891343.2762.
       77  FLD0514E                       PIC X  VALUE 'N'.

       77  FLD0515A                       PIC  9(09)V9(16)
                   VALUE  658210435.7548693718271692.
       77  FLD0515B                       PIC  9(03)V9(32)
                   VALUE  941.14524908048735607479784448514692.
       77  FLD0515E                       PIC X  VALUE 'N'.

       77  FLD0516A                       PIC  9(01)V9(36)
                   VALUE  9.884403805479323734672902901365887373.
       77  FLD0516B                       PIC  9(01)
                   VALUE  0.
       77  FLD0516E                       PIC X  VALUE 'N'.

       77  FLD0517A                       PIC  9(10)V9(07)
                   VALUE  4497620438.0577999.
       77  FLD0517B                       PIC S9(10)V9(08)
                   VALUE -4811021778.48490686.
       77  FLD0517E                       PIC X  VALUE 'N'.

       77  FLD0518A                       PIC  9(09)V9(16)
                   VALUE  664556684.1155496895510168.
       77  FLD0518B                       PIC S9(02)
                   VALUE -05.
       77  FLD0518E                       PIC X  VALUE 'N'.

       77  FLD0519A                       PIC  9(09)V9(14)
                   VALUE  630097608.79846921088898.
       77  FLD0519B                       PIC  9(08)V9(17)
                   VALUE  68412596.06583623975595287.
       77  FLD0519E                       PIC X  VALUE 'N'.

       77  FLD0520A                       PIC  9(04)V9(30)
                   VALUE  9052.329380117529744609328190563246.
       77  FLD0520B                       PIC  9(09)V9(14)
                   VALUE  610604586.65389061305717.
       77  FLD0520E                       PIC X  VALUE 'N'.

       77  FLD0521A                       PIC  9(05)
                   VALUE  13956.
       77  FLD0521B                       PIC S9(05)
                   VALUE +14099.
       77  FLD0521E                       PIC X  VALUE 'N'.

       77  FLD0522A                       PIC S9(01)
                   VALUE +0.
       77  FLD0522B                       PIC S9(09)V9(04)
                   VALUE -351067614.4076.
       77  FLD0522E                       PIC X  VALUE 'N'.

       77  FLD0523A                       PIC  9(08)V9(18)
                   VALUE  70807149.512639711019801325.
       77  FLD0523B                       PIC S9(08)V9(02)
                   VALUE -28004002.44.
       77  FLD0523E                       PIC X  VALUE 'N'.

       77  FLD0524A                       PIC S9(06)V9(01)
                   VALUE +201515.3.
       77  FLD0524B                       PIC  9(10)V9(09)
                   VALUE  5046210377.505329081.
       77  FLD0524E                       PIC X  VALUE 'N'.

       77  FLD0525A                       PIC S9(01)
                   VALUE -0.
       77  FLD0525B                       PIC  9(04)V9(29)
                   VALUE  8873.36156634660588871099662355845.
       77  FLD0525E                       PIC X  VALUE 'N'.

       77  FLD0526A                       PIC  9(07)V9(22)
                   VALUE  7812896.0072540409864672028561.
       77  FLD0526B                       PIC  9(07)V9(02)
                   VALUE  2461308.93.
       77  FLD0526E                       PIC X  VALUE 'N'.

       77  FLD0527A                       PIC  9(10)V9(12)
                   VALUE  5853770318.384275972434.
       77  FLD0527B                       PIC  9(10)V9(09)
                   VALUE  5140096263.891610339.
       77  FLD0527E                       PIC X  VALUE 'N'.

       77  FLD0528A                       PIC  9(10)V9(08)
                   VALUE  4856797949.89136714.
       77  FLD0528B                       PIC S9(04)
                   VALUE +1207.
       77  FLD0528E                       PIC X  VALUE 'N'.

       77  FLD0529A                       PIC  9(10)V9(10)
                   VALUE  5298570971.4885653731.
       77  FLD0529B                       PIC S9(10)V9(07)
                   VALUE -4613280273.7797717.
       77  FLD0529E                       PIC X  VALUE 'N'.

       77  FLD0530A                       PIC  9(05)V9(28)
                   VALUE  87536.5484141958027919372398173436.
       77  FLD0530B                       PIC S9(02)
                   VALUE -06.
       77  FLD0530E                       PIC X  VALUE 'N'.

       77  FLD0531A                       PIC  9(09)V9(03)
                   VALUE  317487049.751.
       77  FLD0531B                       PIC S9(07)V9(01)
                   VALUE +2322772.2.
       77  FLD0531E                       PIC X  VALUE 'N'.

       77  FLD0532A                       PIC  9(09)V9(15)
                   VALUE  653250626.044252880042506.
       77  FLD0532B                       PIC S9(01)
                   VALUE +0.
       77  FLD0532E                       PIC X  VALUE 'N'.

       77  FLD0533A                       PIC  9(07)V9(02)
                   VALUE  2559928.55.
       77  FLD0533B                       PIC  9(03)
                   VALUE  086.
       77  FLD0533E                       PIC X  VALUE 'N'.

       77  FLD0534A                       PIC  9(09)V9(06)
                   VALUE  408226706.354108.
       77  FLD0534B                       PIC  9(10)V9(09)
                   VALUE  5204512753.981520578.
       77  FLD0534E                       PIC X  VALUE 'N'.

       77  FLD0535A                       PIC  9(10)V9(11)
                   VALUE  5556101599.27967472981.
       77  FLD0535B                       PIC  9(05)V9(27)
                   VALUE  85335.564071638048133650045201648.
       77  FLD0535E                       PIC X  VALUE 'N'.

       77  FLD0536A                       PIC S9(08)V9(03)
                   VALUE -29061270.882.
       77  FLD0536B                       PIC S9(01)
                   VALUE -0.
       77  FLD0536E                       PIC X  VALUE 'N'.

       77  FLD0537A                       PIC  9(08)V9(03)
                   VALUE  29943354.242.
       77  FLD0537B                       PIC  9(04)
                   VALUE  1199.
       77  FLD0537E                       PIC X  VALUE 'N'.

       77  FLD0538A                       PIC  9(03)V9(32)
                   VALUE  922.29859860523566439383102988358587.
       77  FLD0538B                       PIC  9(04)V9(29)
                   VALUE  8861.76614320458799767266100388951.
       77  FLD0538E                       PIC X  VALUE 'N'.

       77  FLD0539A                       PIC  9(05)V9(27)
                   VALUE  85666.721070025741990860979058197.
       77  FLD0539B                       PIC  9(05)V9(27)
                   VALUE  84375.338828007329095015620623598.
       77  FLD0539E                       PIC X  VALUE 'N'.

       77  FLD0540A                       PIC S9(04)
                   VALUE +1227.
       77  FLD0540B                       PIC  9(01)
                   VALUE  0.
       77  FLD0540E                       PIC X  VALUE 'N'.

       77  FLD0541A                       PIC  9(09)V9(05)
                   VALUE  387240740.80744.
       77  FLD0541B                       PIC  9(07)V9(22)
                   VALUE  7676023.3773886621388982121061.
       77  FLD0541E                       PIC X  VALUE 'N'.

       77  FLD0542A                       PIC  9(06)V9(25)
                   VALUE  831706.5789473143677668076634290.
       77  FLD0542B                       PIC  9(10)V9(11)
                   VALUE  5532908670.51828949563.
       77  FLD0542E                       PIC X  VALUE 'N'.

       77  FLD0543A                       PIC  9(06)V9(01)
                   VALUE  188772.9.
       77  FLD0543B                       PIC  9(07)V9(02)
                   VALUE  2581387.79.
       77  FLD0543E                       PIC X  VALUE 'N'.

       77  FLD0544A                       PIC  9(10)V9(09)
                   VALUE  5241766194.366106468.
       77  FLD0544B                       PIC  9(08)V9(02)
                   VALUE  27953166.13.
       77  FLD0544E                       PIC X  VALUE 'N'.

       77  FLD0545A                       PIC  9(09)V9(14)
                   VALUE  622229285.46684597161942.
       77  FLD0545B                       PIC  9(08)V9(19)
                   VALUE  72256359.1476747091313370674.
       77  FLD0545E                       PIC X  VALUE 'N'.

       77  FLD0546A                       PIC  9(06)V9(25)
                   VALUE  820358.8689269564193651262939965.
       77  FLD0546B                       PIC  9(09)V9(14)
                   VALUE  610779194.05314462508727.
       77  FLD0546E                       PIC X  VALUE 'N'.

       77  FLD0547A                       PIC  9(06)V9(25)
                   VALUE  821925.7242001770658035297856258.
       77  FLD0547B                       PIC S9(09)V9(04)
                   VALUE -360691511.9302.
       77  FLD0547E                       PIC X  VALUE 'N'.

       77  FLD0548A                       PIC  9(07)V9(23)
                   VALUE  7955385.78445739497091437897324.
       77  FLD0548B                       PIC  9(09)V9(17)
                   VALUE  689149957.90453892343663255.
       77  FLD0548E                       PIC X  VALUE 'N'.

       77  FLD0549A                       PIC  9(07)V9(01)
                   VALUE  2367856.7.
       77  FLD0549B                       PIC  9(09)V9(06)
                   VALUE  415548355.051954.
       77  FLD0549E                       PIC X  VALUE 'N'.

       77  FLD0550A                       PIC  9(09)V9(15)
                   VALUE  656651700.520587522369453.
       77  FLD0550B                       PIC  9(02)
                   VALUE  06.
       77  FLD0550E                       PIC X  VALUE 'N'.

       77  FLD0551A                       PIC  9(07)V9(02)
                   VALUE  2589973.73.
       77  FLD0551B                       PIC  9(09)V9(15)
                   VALUE  652529070.867454263904505.
       77  FLD0551E                       PIC X  VALUE 'N'.

       77  FLD0552A                       PIC  9(10)V9(07)
                   VALUE  4579590761.6898545.
       77  FLD0552B                       PIC  9(05)
                   VALUE  14745.
       77  FLD0552E                       PIC X  VALUE 'N'.

       77  FLD0553A                       PIC S9(01)
                   VALUE +0.
       77  FLD0553B                       PIC S9(09)V9(04)
                   VALUE -360871096.9090.
       77  FLD0553E                       PIC X  VALUE 'N'.

       77  FLD0554A                       PIC  9(07)V9(02)
                   VALUE  2568219.15.
       77  FLD0554B                       PIC  9(03)V9(32)
                   VALUE  932.99236247731820448336748086148872.
       77  FLD0554E                       PIC X  VALUE 'N'.

       77  FLD0555A                       PIC  9(09)V9(05)
                   VALUE  388184875.66560.
       77  FLD0555B                       PIC  9(10)V9(09)
                   VALUE  5217501857.988002811.
       77  FLD0555E                       PIC X  VALUE 'N'.

       77  FLD0556A                       PIC  9(04)V9(30)
                   VALUE  8983.209260005348140154524116951506.
       77  FLD0556B                       PIC  9(10)V9(11)
                   VALUE  5685562200.43860527368.
       77  FLD0556E                       PIC X  VALUE 'N'.

       77  FLD0557A                       PIC  9(09)V9(15)
                   VALUE  650877011.601572519339242.
       77  FLD0557B                       PIC S9(05)
                   VALUE +13329.
       77  FLD0557E                       PIC X  VALUE 'N'.

       77  FLD0558A                       PIC  9(09)V9(13)
                   VALUE  595830550.3266489999703.
       77  FLD0558B                       PIC  9(06)V9(01)
                   VALUE  209604.9.
       77  FLD0558E                       PIC X  VALUE 'N'.

       77  FLD0559A                       PIC  9(10)V9(09)
                   VALUE  5242032248.235551916.
       77  FLD0559B                       PIC  9(07)V9(22)
                   VALUE  7882034.1791675385678672682843.
       77  FLD0559E                       PIC X  VALUE 'N'.

       77  FLD0560A                       PIC S9(09)V9(06)
                   VALUE +403640603.914505.
       77  FLD0560B                       PIC  9(09)V9(07)
                   VALUE  438743115.5223073.
       77  FLD0560E                       PIC X  VALUE 'N'.

       77  FLD0561A                       PIC  9(05)
                   VALUE  14931.
       77  FLD0561B                       PIC  9(01)
                   VALUE  0.
       77  FLD0561E                       PIC X  VALUE 'N'.

       77  FLD0562A                       PIC S9(01)
                   VALUE -0.
       77  FLD0562B                       PIC  9(02)V9(34)
                   VALUE  95.8208334412512741096179524902254343.
       77  FLD0562E                       PIC X  VALUE 'N'.

       77  FLD0563A                       PIC  9(10)V9(09)
                   VALUE  5040974749.501065943.
       77  FLD0563B                       PIC S9(08)V9(03)
                   VALUE +31252590.212.
       77  FLD0563E                       PIC X  VALUE 'N'.

       77  FLD0564A                       PIC  9(09)V9(16)
                   VALUE  666123633.8391588462926051.
       77  FLD0564B                       PIC  9(03)V9(32)
                   VALUE  925.73034981753798966508384182816371.
       77  FLD0564E                       PIC X  VALUE 'N'.

       77  FLD0565A                       PIC  9(04)V9(30)
                   VALUE  8999.472704059103822515908177592791.
       77  FLD0565B                       PIC  9(06)V9(01)
                   VALUE  209088.7.
       77  FLD0565E                       PIC X  VALUE 'N'.

       77  FLD0566A                       PIC  9(10)V9(10)
                   VALUE  5451645287.6426646501.
       77  FLD0566B                       PIC  9(09)V9(03)
                   VALUE  317445075.017.
       77  FLD0566E                       PIC X  VALUE 'N'.

       77  FLD0567A                       PIC S9(07)V9(02)
                   VALUE -2621767.34.
       77  FLD0567B                       PIC  9(04)V9(29)
                   VALUE  8789.70351596639054569948257267242.
       77  FLD0567E                       PIC X  VALUE 'N'.

       77  FLD0568A                       PIC S9(08)V9(02)
                   VALUE -28119737.76.
       77  FLD0568B                       PIC  9(09)V9(14)
                   VALUE  616894259.97583058336459.
       77  FLD0568E                       PIC X  VALUE 'N'.

       77  FLD0569A                       PIC  9(10)V9(10)
                   VALUE  5301098669.5201622875.
       77  FLD0569B                       PIC S9(09)V9(06)
                   VALUE +421009403.834593.
       77  FLD0569E                       PIC X  VALUE 'N'.

       77  FLD0570A                       PIC  9(05)
                   VALUE  13775.
       77  FLD0570B                       PIC  9(08)V9(19)
                   VALUE  72019797.5322646066764775696.
       77  FLD0570E                       PIC X  VALUE 'N'.

       77  FLD0571A                       PIC  9(10)V9(08)
                   VALUE  4995844884.12155025.
       77  FLD0571B                       PIC  9(09)V9(16)
                   VALUE  666328034.4715885039619251.
       77  FLD0571E                       PIC X  VALUE 'N'.

       77  FLD0572A                       PIC  9(06)V9(01)
                   VALUE  199648.9.
       77  FLD0572B                       PIC S9(06)
                   VALUE -163410.
       77  FLD0572E                       PIC X  VALUE 'N'.

       77  FLD0573A                       PIC  9(10)V9(11)
                   VALUE  5579051586.61930800079.
       77  FLD0573B                       PIC  9(01)V9(36)
                   VALUE  9.908582147727897915245875992695800960.
       77  FLD0573E                       PIC X  VALUE 'N'.

       77  FLD0574A                       PIC  9(10)V9(09)
                   VALUE  5021035726.447702352.
       77  FLD0574B                       PIC S9(01)
                   VALUE +0.
       77  FLD0574E                       PIC X  VALUE 'N'.

       77  FLD0575A                       PIC  9(02)V9(34)
                   VALUE  96.0495649054037059499933093320578336.
       77  FLD0575B                       PIC S9(01)
                   VALUE +0.
       77  FLD0575E                       PIC X  VALUE 'N'.

       77  FLD0576A                       PIC  9(09)V9(11)
                   VALUE  551289746.02273483895.
       77  FLD0576B                       PIC  9(10)V9(10)
                   VALUE  5275129807.0789420791.
       77  FLD0576E                       PIC X  VALUE 'N'.

       77  FLD0577A                       PIC S9(10)V9(06)
                   VALUE +4245433083.607936.
       77  FLD0577B                       PIC  9(02)V9(34)
                   VALUE  96.8922152301445405164770363626303151.
       77  FLD0577E                       PIC X  VALUE 'N'.

       77  FLD0578A                       PIC S9(07)V9(02)
                   VALUE +2444375.29.
       77  FLD0578B                       PIC  9(05)V9(01)
                   VALUE  16994.3.
       77  FLD0578E                       PIC X  VALUE 'N'.

       77  FLD0579A                       PIC  9(09)V9(17)
                   VALUE  688719854.55414208576740975.
       77  FLD0579B                       PIC  9(10)V9(09)
                   VALUE  5219660742.233359629.
       77  FLD0579E                       PIC X  VALUE 'N'.

       77  FLD0580A                       PIC S9(08)V9(04)
                   VALUE +33455460.0291.
       77  FLD0580B                       PIC  9(02)V9(34)
                   VALUE  95.3840741032953354228141051862621679.
       77  FLD0580E                       PIC X  VALUE 'N'.

       77  FLD0581A                       PIC S9(08)V9(02)
                   VALUE -28271118.43.
       77  FLD0581B                       PIC  9(09)V9(15)
                   VALUE  638334092.073881143036828.
       77  FLD0581E                       PIC X  VALUE 'N'.

       77  FLD0582A                       PIC  9(02)V9(34)
                   VALUE  95.0957041455027018983514608407858759.
       77  FLD0582B                       PIC  9(09)V9(14)
                   VALUE  628562844.11633944753106.
       77  FLD0582E                       PIC X  VALUE 'N'.

       77  FLD0583A                       PIC  9(04)V9(30)
                   VALUE  9004.015213488590907431330379040446.
       77  FLD0583B                       PIC S9(01)
                   VALUE +0.
       77  FLD0583E                       PIC X  VALUE 'N'.

       77  FLD0584A                       PIC S9(01)
                   VALUE +0.
       77  FLD0584B                       PIC  9(02)V9(34)
                   VALUE  95.5867594557756605766485336062032729.
       77  FLD0584E                       PIC X  VALUE 'N'.

       77  FLD0585A                       PIC S9(10)V9(06)
                   VALUE +4326355872.600766.
       77  FLD0585B                       PIC  9(03)V9(32)
                   VALUE  926.67442032915370297985191427869722.
       77  FLD0585E                       PIC X  VALUE 'N'.

       77  FLD0586A                       PIC  9(05)V9(27)
                   VALUE  85722.001340062370378092282408033.
       77  FLD0586B                       PIC  9(07)V9(22)
                   VALUE  7865140.9974229868904416207442.
       77  FLD0586E                       PIC X  VALUE 'N'.

       77  FLD0587A                       PIC S9(09)V9(05)
                   VALUE -381433349.51035.
       77  FLD0587B                       PIC S9(04)
                   VALUE +1221.
       77  FLD0587E                       PIC X  VALUE 'N'.

       77  FLD0588A                       PIC  9(10)V9(09)
                   VALUE  5181115773.570048599.
       77  FLD0588B                       PIC  9(04)V9(30)
                   VALUE  9002.074772136551272794235956098418.
       77  FLD0588E                       PIC X  VALUE 'N'.

       77  FLD0589A                       PIC S9(09)V9(06)
                   VALUE +401102073.275349.
       77  FLD0589B                       PIC S9(04)
                   VALUE +1219.
       77  FLD0589E                       PIC X  VALUE 'N'.

       77  FLD0590A                       PIC  9(08)V9(18)
                   VALUE  70309799.830174168899787900.
       77  FLD0590B                       PIC S9(06)V9(01)
                   VALUE +203587.9.
       77  FLD0590E                       PIC X  VALUE 'N'.

       77  FLD0591A                       PIC  9(09)V9(12)
                   VALUE  576933255.371857245386.
       77  FLD0591B                       PIC  9(10)V9(09)
                   VALUE  5123728162.782491546.
       77  FLD0591E                       PIC X  VALUE 'N'.

       77  FLD0592A                       PIC  9(09)V9(15)
                   VALUE  644514829.253344467829833.
       77  FLD0592B                       PIC S9(08)V9(03)
                   VALUE -29392268.940.
       77  FLD0592E                       PIC X  VALUE 'N'.

       77  FLD0593A                       PIC  9(08)V9(19)
                   VALUE  72063942.4137167527995018190.
       77  FLD0593B                       PIC S9(02)
                   VALUE -05.
       77  FLD0593E                       PIC X  VALUE 'N'.

       77  FLD0594A                       PIC S9(08)V9(02)
                   VALUE -27405154.91.
       77  FLD0594B                       PIC  9(07)V9(22)
                   VALUE  7738893.5043103479483050932685.
       77  FLD0594E                       PIC X  VALUE 'N'.

       77  FLD0595A                       PIC  9(08)V9(18)
                   VALUE  70489201.749069052560514592.
       77  FLD0595B                       PIC  9(06)V9(25)
                   VALUE  830535.6563477365172687427730124.
       77  FLD0595E                       PIC X  VALUE 'N'.

       77  FLD0596A                       PIC  9(04)V9(30)
                   VALUE  9050.358418523600789740157779306173.
       77  FLD0596B                       PIC  9(09)V9(15)
                   VALUE  657865013.656926733709440.
       77  FLD0596E                       PIC X  VALUE 'N'.

       77  FLD0597A                       PIC S9(10)V9(07)
                   VALUE -4611492066.1642122.
       77  FLD0597B                       PIC  9(06)V9(25)
                   VALUE  816255.9991782142310157155407068.
       77  FLD0597E                       PIC X  VALUE 'N'.

       77  FLD0598A                       PIC  9(10)V9(12)
                   VALUE  5888650589.753158248740.
       77  FLD0598B                       PIC S9(09)V9(06)
                   VALUE +420172956.568651.
       77  FLD0598E                       PIC X  VALUE 'N'.

       77  FLD0599A                       PIC  9(05)V9(27)
                   VALUE  85689.140306102984379066356268594.
       77  FLD0599B                       PIC  9(01)
                   VALUE  0.
       77  FLD0599E                       PIC X  VALUE 'N'.

       77  FLD0600A                       PIC S9(09)V9(06)
                   VALUE +401694362.049109.
       77  FLD0600B                       PIC  9(06)V9(24)
                   VALUE  804504.375985138686644404515391.
       77  FLD0600E                       PIC X  VALUE 'N'.

       77  FLD0601A                       PIC  9(01)V9(36)
                   VALUE  9.763793413809590537866256454435642808.
       77  FLD0601B                       PIC  9(08)V9(03)
                   VALUE  29749803.347.
       77  FLD0601E                       PIC X  VALUE 'N'.

       77  FLD0602A                       PIC  9(09)V9(17)
                   VALUE  685435627.00727922454291274.
       77  FLD0602B                       PIC  9(07)V9(02)
                   VALUE  2399467.62.
       77  FLD0602E                       PIC X  VALUE 'N'.

       77  FLD0603A                       PIC  9(09)V9(16)
                   VALUE  679265807.5584466770280300.
       77  FLD0603B                       PIC S9(05)V9(01)
                   VALUE -17089.6.
       77  FLD0603E                       PIC X  VALUE 'N'.

       77  FLD0604A                       PIC  9(08)V9(19)
                   VALUE  72862711.3591577502127449861.
       77  FLD0604B                       PIC  9(10)V9(11)
                   VALUE  5587264166.34705347341.
       77  FLD0604E                       PIC X  VALUE 'N'.

       77  FLD0605A                       PIC  9(04)
                   VALUE  1194.
       77  FLD0605B                       PIC  9(10)V9(06)
                   VALUE  4256956703.307752.
       77  FLD0605E                       PIC X  VALUE 'N'.

       77  FLD0606A                       PIC  9(07)V9(23)
                   VALUE  7955557.56926823565144957228767.
       77  FLD0606B                       PIC S9(08)V9(04)
                   VALUE +33373395.9174.
       77  FLD0606E                       PIC X  VALUE 'N'.

       77  FLD0607A                       PIC  9(10)V9(08)
                   VALUE  4950511846.00309279.
       77  FLD0607B                       PIC  9(05)
                   VALUE  13935.
       77  FLD0607E                       PIC X  VALUE 'N'.

       77  FLD0608A                       PIC  9(09)V9(03)
                   VALUE  328182518.441.
       77  FLD0608B                       PIC  9(02)V9(34)
                   VALUE  95.9183130416232931914066739409463480.
       77  FLD0608E                       PIC X  VALUE 'N'.

       77  FLD0609A                       PIC  9(08)V9(04)
                   VALUE  33948712.4475.
       77  FLD0609B                       PIC  9(10)V9(07)
                   VALUE  4478674210.4372267.
       77  FLD0609E                       PIC X  VALUE 'N'.

       77  FLD0610A                       PIC  9(06)V9(24)
                   VALUE  807988.537497822956190418608457.
       77  FLD0610B                       PIC  9(08)V9(02)
                   VALUE  28672541.25.
       77  FLD0610E                       PIC X  VALUE 'N'.

       77  FLD0611A                       PIC  9(07)V9(22)
                   VALUE  7747853.4043620861382350994972.
       77  FLD0611B                       PIC  9(01)
                   VALUE  0.
       77  FLD0611E                       PIC X  VALUE 'N'.

       77  FLD0612A                       PIC  9(10)V9(11)
                   VALUE  5644161799.14422944108.
       77  FLD0612B                       PIC  9(07)V9(22)
                   VALUE  7874462.2890006543691754359315.
       77  FLD0612E                       PIC X  VALUE 'N'.

       77  FLD0613A                       PIC  9(05)
                   VALUE  15551.
       77  FLD0613B                       PIC S9(07)V9(01)
                   VALUE +2249276.6.
       77  FLD0613E                       PIC X  VALUE 'N'.

       77  FLD0614A                       PIC  9(10)V9(09)
                   VALUE  5201647014.630440546.
       77  FLD0614B                       PIC  9(09)V9(13)
                   VALUE  596348860.2168276475623.
       77  FLD0614E                       PIC X  VALUE 'N'.

       77  FLD0615A                       PIC S9(03)
                   VALUE +101.
       77  FLD0615B                       PIC S9(07)V9(01)
                   VALUE +2334095.1.
       77  FLD0615E                       PIC X  VALUE 'N'.

       77  FLD0616A                       PIC  9(07)V9(22)
                   VALUE  7639230.3574527464782306651613.
       77  FLD0616B                       PIC  9(02)
                   VALUE  07.
       77  FLD0616E                       PIC X  VALUE 'N'.

       77  FLD0617A                       PIC S9(01)
                   VALUE -0.
       77  FLD0617B                       PIC  9(01)
                   VALUE  0.
       77  FLD0617E                       PIC X  VALUE 'N'.

       77  FLD0618A                       PIC  9(01)V9(36)
                   VALUE  9.817148549708982763206677191192284226.
       77  FLD0618B                       PIC  9(03)
                   VALUE  089.
       77  FLD0618E                       PIC X  VALUE 'N'.

       77  FLD0619A                       PIC  9(06)V9(24)
                   VALUE  801850.998363624500875346257089.
       77  FLD0619B                       PIC  9(10)V9(10)
                   VALUE  5342180526.7555677598.
       77  FLD0619E                       PIC X  VALUE 'N'.

       77  FLD0620A                       PIC  9(08)V9(19)
                   VALUE  71717267.3810957062023874186.
       77  FLD0620B                       PIC  9(09)V9(15)
                   VALUE  655677089.730182127702562.
       77  FLD0620E                       PIC X  VALUE 'N'.

       77  FLD0621A                       PIC  9(04)V9(30)
                   VALUE  9035.013690395441443570234696380794.
       77  FLD0621B                       PIC  9(08)V9(19)
                   VALUE  73424367.1686218957184166811.
       77  FLD0621E                       PIC X  VALUE 'N'.

       77  FLD0622A                       PIC  9(09)V9(13)
                   VALUE  592420192.5737704321761.
       77  FLD0622B                       PIC S9(09)V9(04)
                   VALUE -361821982.1111.
       77  FLD0622E                       PIC X  VALUE 'N'.

       77  FLD0623A                       PIC S9(03)
                   VALUE +104.
       77  FLD0623B                       PIC  9(09)V9(15)
                   VALUE  641616818.896418195095066.
       77  FLD0623E                       PIC X  VALUE 'N'.

       77  FLD0624A                       PIC S9(06)
                   VALUE -162056.
       77  FLD0624B                       PIC  9(10)V9(06)
                   VALUE  4356343039.582531.
       77  FLD0624E                       PIC X  VALUE 'N'.

       77  FLD0625A                       PIC  9(04)
                   VALUE  1296.
       77  FLD0625B                       PIC  9(07)V9(22)
                   VALUE  7829547.5769811728739000500354.
       77  FLD0625E                       PIC X  VALUE 'N'.

       77  FLD0626A                       PIC  9(04)V9(29)
                   VALUE  8839.60373056715265072114107169909.
       77  FLD0626B                       PIC S9(09)V9(05)
                   VALUE -374265939.71690.
       77  FLD0626E                       PIC X  VALUE 'N'.

       77  FLD0627A                       PIC  9(04)
                   VALUE  1093.
       77  FLD0627B                       PIC S9(07)V9(01)
                   VALUE +2323895.2.
       77  FLD0627E                       PIC X  VALUE 'N'.

       77  FLD0628A                       PIC  9(01)V9(36)
                   VALUE  9.943034041886028573387079632084351032.
       77  FLD0628B                       PIC  9(08)V9(03)
                   VALUE  29681737.673.
       77  FLD0628E                       PIC X  VALUE 'N'.

       77  FLD0629A                       PIC  9(03)V9(32)
                   VALUE  925.54391942612090904418664649710990.
       77  FLD0629B                       PIC  9(05)V9(28)
                   VALUE  87091.5644969416202769707524566911.
       77  FLD0629E                       PIC X  VALUE 'N'.

       77  FLD0630A                       PIC S9(09)V9(06)
                   VALUE +400669561.119235.
       77  FLD0630B                       PIC  9(09)V9(12)
                   VALUE  575188656.368988304734.
       77  FLD0630E                       PIC X  VALUE 'N'.

       77  FLD0631A                       PIC  9(09)V9(15)
                   VALUE  644864894.904831453814608.
       77  FLD0631B                       PIC  9(05)V9(01)
                   VALUE  17568.5.
       77  FLD0631E                       PIC X  VALUE 'N'.

       77  FLD0632A                       PIC  9(08)V9(18)
                   VALUE  69998401.036213298009869276.
       77  FLD0632B                       PIC  9(10)V9(09)
                   VALUE  5082278856.741135886.
       77  FLD0632E                       PIC X  VALUE 'N'.

       77  FLD0633A                       PIC  9(08)V9(19)
                   VALUE  72186800.0789349095747127194.
       77  FLD0633B                       PIC S9(09)V9(03)
                   VALUE +332989951.149.
       77  FLD0633E                       PIC X  VALUE 'N'.

       77  FLD0634A                       PIC S9(10)V9(06)
                   VALUE +4236607402.255205.
       77  FLD0634B                       PIC  9(07)V9(23)
                   VALUE  7926419.75404680843020344127580.
       77  FLD0634E                       PIC X  VALUE 'N'.

       77  FLD0635A                       PIC S9(06)V9(01)
                   VALUE -190863.2.
       77  FLD0635B                       PIC  9(10)V9(11)
                   VALUE  5580856572.20784292498.
       77  FLD0635E                       PIC X  VALUE 'N'.

       77  FLD0636A                       PIC S9(07)V9(01)
                   VALUE +2326055.8.
       77  FLD0636B                       PIC  9(05)
                   VALUE  15706.
       77  FLD0636E                       PIC X  VALUE 'N'.

       77  FLD0637A                       PIC  9(08)V9(19)
                   VALUE  73470187.3111827330475875896.
       77  FLD0637B                       PIC  9(10)V9(10)
                   VALUE  5305678545.6603405837.
       77  FLD0637E                       PIC X  VALUE 'N'.

       77  FLD0638A                       PIC  9(07)V9(22)
                   VALUE  7752451.2041246673721417437263.
       77  FLD0638B                       PIC  9(06)V9(25)
                   VALUE  822351.5027967045476486873667454.
       77  FLD0638E                       PIC X  VALUE 'N'.

       77  FLD0639A                       PIC S9(09)V9(03)
                   VALUE +320313574.327.
       77  FLD0639B                       PIC  9(01)V9(36)
                   VALUE  9.751092072024196699686626743641681969.
       77  FLD0639E                       PIC X  VALUE 'N'.

       77  FLD0640A                       PIC  9(04)V9(29)
                   VALUE  8818.61493829378950692898797569796.
       77  FLD0640B                       PIC  9(03)V9(32)
                   VALUE  921.50555740058603948483550993842072.
       77  FLD0640E                       PIC X  VALUE 'N'.

       77  FLD0641A                       PIC  9(07)V9(22)
                   VALUE  7672056.2697199168322725881807.
       77  FLD0641B                       PIC  9(08)V9(19)
                   VALUE  72539277.3386829170512157816.
       77  FLD0641E                       PIC X  VALUE 'N'.

       77  FLD0642A                       PIC  9(08)V9(18)
                   VALUE  70806494.663622721041917884.
       77  FLD0642B                       PIC  9(09)V9(13)
                   VALUE  592898946.8504934912118.
       77  FLD0642E                       PIC X  VALUE 'N'.

       77  FLD0643A                       PIC  9(07)V9(01)
                   VALUE  2194714.9.
       77  FLD0643B                       PIC  9(08)V9(02)
                   VALUE  26711153.59.
       77  FLD0643E                       PIC X  VALUE 'N'.

       77  FLD0644A                       PIC  9(02)
                   VALUE  07.
       77  FLD0644B                       PIC  9(03)V9(32)
                   VALUE  936.97460492260109532480782945640385.
       77  FLD0644E                       PIC X  VALUE 'N'.

       77  FLD0645A                       PIC  9(03)V9(31)
                   VALUE  913.1000502995376688630813077907077.
       77  FLD0645B                       PIC  9(07)V9(02)
                   VALUE  2467302.34.
       77  FLD0645E                       PIC X  VALUE 'N'.

       77  FLD0646A                       PIC  9(07)V9(21)
                   VALUE  7520596.805608434909373727350.
       77  FLD0646B                       PIC  9(09)V9(13)
                   VALUE  595843790.0187590896550.
       77  FLD0646E                       PIC X  VALUE 'N'.

       77  FLD0647A                       PIC S9(02)
                   VALUE -07.
       77  FLD0647B                       PIC  9(09)V9(16)
                   VALUE  659893156.1456289340839020.
       77  FLD0647E                       PIC X  VALUE 'N'.

       77  FLD0648A                       PIC S9(04)
                   VALUE +1149.
       77  FLD0648B                       PIC  9(09)V9(15)
                   VALUE  634287010.942461315643470.
       77  FLD0648E                       PIC X  VALUE 'N'.

       77  FLD0649A                       PIC  9(07)V9(23)
                   VALUE  7912687.10466688007798552462190.
       77  FLD0649B                       PIC  9(10)V9(09)
                   VALUE  5026519944.429308495.
       77  FLD0649E                       PIC X  VALUE 'N'.

       77  FLD0650A                       PIC  9(01)V9(36)
                   VALUE  9.878734262172308433491707546636462211.
       77  FLD0650B                       PIC  9(09)V9(16)
                   VALUE  671574601.9768447094833163.
       77  FLD0650E                       PIC X  VALUE 'N'.

       77  FLD0651A                       PIC  9(08)V9(18)
                   VALUE  69993795.648145529231243244.
       77  FLD0651B                       PIC S9(09)V9(05)
                   VALUE -390933259.39761.
       77  FLD0651E                       PIC X  VALUE 'N'.

       77  FLD0652A                       PIC  9(05)V9(01)
                   VALUE  16676.6.
       77  FLD0652B                       PIC S9(07)V9(01)
                   VALUE +2109381.3.
       77  FLD0652E                       PIC X  VALUE 'N'.

       77  FLD0653A                       PIC  9(09)V9(14)
                   VALUE  620233215.83922497168828.
       77  FLD0653B                       PIC  9(06)
                   VALUE  165087.
       77  FLD0653E                       PIC X  VALUE 'N'.

       77  FLD0654A                       PIC  9(09)V9(15)
                   VALUE  639337130.284049814932245.
       77  FLD0654B                       PIC  9(08)V9(02)
                   VALUE  27813223.51.
       77  FLD0654E                       PIC X  VALUE 'N'.

       77  FLD0655A                       PIC  9(06)V9(25)
                   VALUE  818013.3890362937254536745967925.
       77  FLD0655B                       PIC  9(09)V9(13)
                   VALUE  594166317.4495728227952.
       77  FLD0655E                       PIC X  VALUE 'N'.

       77  FLD0656A                       PIC S9(06)V9(01)
                   VALUE +200859.7.
       77  FLD0656B                       PIC  9(09)V9(15)
                   VALUE  650208537.267117914204561.
       77  FLD0656E                       PIC X  VALUE 'N'.

       77  FLD0657A                       PIC  9(03)V9(32)
                   VALUE  936.17194619070143168926279031438753.
       77  FLD0657B                       PIC  9(08)V9(18)
                   VALUE  70468283.988380520099781278.
       77  FLD0657E                       PIC X  VALUE 'N'.

       77  FLD0658A                       PIC  9(08)V9(18)
                   VALUE  70069365.832955088357891781.
       77  FLD0658B                       PIC  9(10)V9(10)
                   VALUE  5438086690.5335789596.
       77  FLD0658E                       PIC X  VALUE 'N'.

       77  FLD0659A                       PIC  9(04)V9(30)
                   VALUE  9044.337793801533464943531726021319.
       77  FLD0659B                       PIC  9(08)V9(19)
                   VALUE  71946522.3294514011342926096.
       77  FLD0659E                       PIC X  VALUE 'N'.

       77  FLD0660A                       PIC  9(10)V9(09)
                   VALUE  5240012407.843260833.
       77  FLD0660B                       PIC S9(05)
                   VALUE -15464.
       77  FLD0660E                       PIC X  VALUE 'N'.

       77  FLD0661A                       PIC  9(02)V9(34)
                   VALUE  96.5581569624071600621562083688331767.
       77  FLD0661B                       PIC  9(10)V9(11)
                   VALUE  5705409453.15247127744.
       77  FLD0661E                       PIC X  VALUE 'N'.

       77  FLD0662A                       PIC S9(07)V9(01)
                   VALUE +2131985.0.
       77  FLD0662B                       PIC  9(09)V9(16)
                   VALUE  669960203.6476681732324323.
       77  FLD0662E                       PIC X  VALUE 'N'.

       77  FLD0663A                       PIC  9(05)
                   VALUE  15788.
       77  FLD0663B                       PIC  9(04)V9(29)
                   VALUE  8894.69232052811142885673234559362.
       77  FLD0663E                       PIC X  VALUE 'N'.

       77  FLD0664A                       PIC S9(05)
                   VALUE +14371.
       77  FLD0664B                       PIC S9(09)V9(07)
                   VALUE +440580330.5288489.
       77  FLD0664E                       PIC X  VALUE 'N'.

       77  FLD0665A                       PIC  9(07)V9(02)
                   VALUE  2455875.37.
       77  FLD0665B                       PIC  9(09)V9(16)
                   VALUE  674160289.5706166886924393.
       77  FLD0665E                       PIC X  VALUE 'N'.

       77  FLD0666A                       PIC  9(05)V9(27)
                   VALUE  86015.549175288641414738322055200.
       77  FLD0666B                       PIC  9(02)
                   VALUE  05.
       77  FLD0666E                       PIC X  VALUE 'N'.

       77  FLD0667A                       PIC  9(02)V9(33)
                   VALUE  94.482499794694274619644147605868056.
       77  FLD0667B                       PIC  9(09)V9(15)
                   VALUE  632143875.790169951223163.
       77  FLD0667E                       PIC X  VALUE 'N'.

       77  FLD0668A                       PIC  9(03)V9(32)
                   VALUE  935.15331845029669999291854765033349.
       77  FLD0668B                       PIC  9(10)V9(09)
                   VALUE  5144629393.825745911.
       77  FLD0668E                       PIC X  VALUE 'N'.

       77  FLD0669A                       PIC  9(01)V9(36)
                   VALUE  9.937328225295053441001869032334070652.
       77  FLD0669B                       PIC  9(10)V9(05)
                   VALUE  3959366397.86081.
       77  FLD0669E                       PIC X  VALUE 'N'.

       77  FLD0670A                       PIC  9(07)V9(02)
                   VALUE  2567113.54.
       77  FLD0670B                       PIC  9(02)V9(34)
                   VALUE  97.1019073438902258210703166696475818.
       77  FLD0670E                       PIC X  VALUE 'N'.

       77  FLD0671A                       PIC  9(09)V9(03)
                   VALUE  326622169.718.
       77  FLD0671B                       PIC  9(06)V9(01)
                   VALUE  186874.6.
       77  FLD0671E                       PIC X  VALUE 'N'.

       77  FLD0672A                       PIC  9(10)V9(07)
                   VALUE  4564917934.3294549.
       77  FLD0672B                       PIC  9(09)V9(15)
                   VALUE  637002039.815689924395769.
       77  FLD0672E                       PIC X  VALUE 'N'.

       77  FLD0673A                       PIC  9(10)V9(06)
                   VALUE  4285002333.462958.
       77  FLD0673B                       PIC  9(07)V9(02)
                   VALUE  2489778.77.
       77  FLD0673E                       PIC X  VALUE 'N'.

       77  FLD0674A                       PIC  9(10)V9(10)
                   VALUE  5491650640.0821929467.
       77  FLD0674B                       PIC  9(06)V9(25)
                   VALUE  828061.3110769976525915581078152.
       77  FLD0674E                       PIC X  VALUE 'N'.

       77  FLD0675A                       PIC  9(05)V9(27)
                   VALUE  84609.285471017914304070473008323.
       77  FLD0675B                       PIC  9(10)V9(09)
                   VALUE  5083540664.870341840.
       77  FLD0675E                       PIC X  VALUE 'N'.

       77  FLD0676A                       PIC  9(03)
                   VALUE  096.
       77  FLD0676B                       PIC  9(02)V9(34)
                   VALUE  96.4664170342459437179627457226160913.
       77  FLD0676E                       PIC X  VALUE 'N'.

       77  FLD0677A                       PIC S9(07)V9(01)
                   VALUE +2248183.1.
       77  FLD0677B                       PIC  9(04)V9(29)
                   VALUE  8903.66445455624266891447859961772.
       77  FLD0677E                       PIC X  VALUE 'N'.

       77  FLD0678A                       PIC S9(03)
                   VALUE -092.
       77  FLD0678B                       PIC  9(05)V9(27)
                   VALUE  85887.366357613359468814451247453.
       77  FLD0678E                       PIC X  VALUE 'N'.

       77  FLD0679A                       PIC S9(03)
                   VALUE -080.
       77  FLD0679B                       PIC  9(10)V9(07)
                   VALUE  4490278235.6612852.
       77  FLD0679E                       PIC X  VALUE 'N'.

       77  FLD0680A                       PIC S9(08)V9(02)
                   VALUE -28119381.66.
       77  FLD0680B                       PIC  9(10)V9(11)
                   VALUE  5617591008.16083600804.
       77  FLD0680E                       PIC X  VALUE 'N'.

       77  FLD0681A                       PIC  9(08)V9(17)
                   VALUE  68244115.95644890304868113.
       77  FLD0681B                       PIC  9(06)V9(25)
                   VALUE  821371.7547801553386932482681004.
       77  FLD0681E                       PIC X  VALUE 'N'.

       77  FLD0682A                       PIC S9(10)V9(08)
                   VALUE -4949729784.45772315.
       77  FLD0682B                       PIC  9(06)V9(25)
                   VALUE  831097.0812489861803129542749957.
       77  FLD0682E                       PIC X  VALUE 'N'.

       77  FLD0683A                       PIC  9(05)V9(28)
                   VALUE  86894.3068817851549390240961656672.
       77  FLD0683B                       PIC  9(10)V9(12)
                   VALUE  5829735573.963021888488.
       77  FLD0683E                       PIC X  VALUE 'N'.

       77  FLD0684A                       PIC  9(10)V9(13)
                   VALUE  6059233373.6406744915115.
       77  FLD0684B                       PIC  9(09)V9(07)
                   VALUE  438339473.7646870.
       77  FLD0684E                       PIC X  VALUE 'N'.

       77  FLD0685A                       PIC S9(07)V9(02)
                   VALUE -2545714.99.
       77  FLD0685B                       PIC  9(07)V9(23)
                   VALUE  7915567.03876752143500539204978.
       77  FLD0685E                       PIC X  VALUE 'N'.

       77  FLD0686A                       PIC  9(09)V9(14)
                   VALUE  621044693.11257093355749.
       77  FLD0686B                       PIC  9(09)V9(13)
                   VALUE  602970496.8531952591348.
       77  FLD0686E                       PIC X  VALUE 'N'.

       77  FLD0687A                       PIC S9(09)V9(05)
                   VALUE -394005874.76898.
       77  FLD0687B                       PIC  9(10)V9(08)
                   VALUE  4960980508.03440715.
       77  FLD0687E                       PIC X  VALUE 'N'.

       77  FLD0688A                       PIC  9(03)V9(32)
                   VALUE  932.26844955554755145499257196206599.
       77  FLD0688B                       PIC  9(04)
                   VALUE  1064.
       77  FLD0688E                       PIC X  VALUE 'N'.

       77  FLD0689A                       PIC  9(10)V9(07)
                   VALUE  4559306991.4341932.
       77  FLD0689B                       PIC S9(08)V9(04)
                   VALUE +34024840.8710.
       77  FLD0689E                       PIC X  VALUE 'N'.

       77  FLD0690A                       PIC  9(01)V9(36)
                   VALUE  9.793660005922469879990899244148749858.
       77  FLD0690B                       PIC S9(08)V9(02)
                   VALUE -28078949.75.
       77  FLD0690E                       PIC X  VALUE 'N'.

       77  FLD0691A                       PIC  9(09)V9(07)
                   VALUE  439500550.5938089.
       77  FLD0691B                       PIC S9(10)V9(06)
                   VALUE +4308484639.535531.
       77  FLD0691E                       PIC X  VALUE 'N'.

       77  FLD0692A                       PIC  9(09)V9(04)
                   VALUE  358382577.7464.
       77  FLD0692B                       PIC  9(09)V9(15)
                   VALUE  636450165.553045121846764.
       77  FLD0692E                       PIC X  VALUE 'N'.

       77  FLD0693A                       PIC S9(07)V9(01)
                   VALUE +2127399.6.
       77  FLD0693B                       PIC S9(01)
                   VALUE -0.
       77  FLD0693E                       PIC X  VALUE 'N'.

       77  FLD0694A                       PIC  9(09)V9(05)
                   VALUE  378019656.01658.
       77  FLD0694B                       PIC  9(01)
                   VALUE  0.
       77  FLD0694E                       PIC X  VALUE 'N'.

       77  FLD0695A                       PIC S9(09)V9(04)
                   VALUE -354304867.1111.
       77  FLD0695B                       PIC  9(09)V9(15)
                   VALUE  639721730.127885357397587.
       77  FLD0695E                       PIC X  VALUE 'N'.

       77  FLD0696A                       PIC  9(04)V9(30)
                   VALUE  9067.945209731629319094281527213752.
       77  FLD0696B                       PIC  9(09)V9(03)
                   VALUE  318871778.848.
       77  FLD0696E                       PIC X  VALUE 'N'.

       77  FLD0697A                       PIC S9(09)V9(06)
                   VALUE +414586353.841170.
       77  FLD0697B                       PIC  9(10)V9(09)
                   VALUE  5161837194.897523906.
       77  FLD0697E                       PIC X  VALUE 'N'.

       77  FLD0698A                       PIC  9(08)V9(18)
                   VALUE  69447533.832122987362822641.
       77  FLD0698B                       PIC S9(03)
                   VALUE -080.
       77  FLD0698E                       PIC X  VALUE 'N'.

       77  FLD0699A                       PIC  9(09)V9(13)
                   VALUE  597064952.5204202445749.
       77  FLD0699B                       PIC  9(09)V9(14)
                   VALUE  630288401.27729701681147.
       77  FLD0699E                       PIC X  VALUE 'N'.

       77  FLD0700A                       PIC  9(06)V9(25)
                   VALUE  820234.3139012789885455845251271.
       77  FLD0700B                       PIC S9(01)
                   VALUE -0.
       77  FLD0700E                       PIC X  VALUE 'N'.

       77  FLD0701A                       PIC  9(06)V9(24)
                   VALUE  809485.363390515577641792788199.
       77  FLD0701B                       PIC  9(02)V9(34)
                   VALUE  97.0800419877562270620785511709982529.
       77  FLD0701E                       PIC X  VALUE 'N'.

       77  FLD0702A                       PIC  9(04)V9(30)
                   VALUE  9021.848589518318695112952809722628.
       77  FLD0702B                       PIC  9(07)V9(01)
                   VALUE  2351439.7.
       77  FLD0702E                       PIC X  VALUE 'N'.

       77  FLD0703A                       PIC S9(04)
                   VALUE +1126.
       77  FLD0703B                       PIC  9(08)V9(04)
                   VALUE  33525578.1235.
       77  FLD0703E                       PIC X  VALUE 'N'.

       77  FLD0704A                       PIC  9(10)V9(07)
                   VALUE  4696322933.5995404.
       77  FLD0704B                       PIC  9(09)V9(14)
                   VALUE  611168884.71092423174013.
       77  FLD0704E                       PIC X  VALUE 'N'.

       77  FLD0705A                       PIC  9(10)V9(10)
                   VALUE  5381864238.0664638569.
       77  FLD0705B                       PIC  9(10)V9(07)
                   VALUE  4699950479.7278301.
       77  FLD0705E                       PIC X  VALUE 'N'.

       77  FLD0706A                       PIC  9(07)V9(22)
                   VALUE  7815442.4104873465584120140192.
       77  FLD0706B                       PIC S9(05)V9(01)
                   VALUE -17297.4.
       77  FLD0706E                       PIC X  VALUE 'N'.

       77  FLD0707A                       PIC  9(01)
                   VALUE  0.
       77  FLD0707B                       PIC  9(10)V9(09)
                   VALUE  5129442198.407349051.
       77  FLD0707E                       PIC X  VALUE 'N'.

       77  FLD0708A                       PIC  9(02)V9(34)
                   VALUE  95.1225570140109555339336111501324921.
       77  FLD0708B                       PIC  9(08)V9(04)
                   VALUE  33834894.3169.
       77  FLD0708E                       PIC X  VALUE 'N'.

       77  FLD0709A                       PIC S9(04)
                   VALUE +1124.
       77  FLD0709B                       PIC  9(09)V9(05)
                   VALUE  379344826.68404.
       77  FLD0709E                       PIC X  VALUE 'N'.

       77  FLD0710A                       PIC  9(01)V9(36)
                   VALUE  9.946833086486408515014545628218911588.
       77  FLD0710B                       PIC S9(09)V9(03)
                   VALUE +322996298.459.
       77  FLD0710E                       PIC X  VALUE 'N'.

       77  FLD0711A                       PIC  9(09)V9(16)
                   VALUE  677754067.1912668512888444.
       77  FLD0711B                       PIC  9(02)
                   VALUE  06.
       77  FLD0711E                       PIC X  VALUE 'N'.

       77  FLD0712A                       PIC  9(09)V9(14)
                   VALUE  610433230.32745544498567.
       77  FLD0712B                       PIC S9(10)V9(08)
                   VALUE -4947392148.88603839.
       77  FLD0712E                       PIC X  VALUE 'N'.

       77  FLD0713A                       PIC S9(08)V9(03)
                   VALUE -29280564.557.
       77  FLD0713B                       PIC  9(07)V9(01)
                   VALUE  2168463.7.
       77  FLD0713E                       PIC X  VALUE 'N'.

       77  FLD0714A                       PIC  9(10)V9(07)
                   VALUE  4593980567.3719869.
       77  FLD0714B                       PIC  9(09)V9(04)
                   VALUE  347385951.5252.
       77  FLD0714E                       PIC X  VALUE 'N'.

       77  FLD0715A                       PIC  9(09)V9(06)
                   VALUE  406643755.503527.
       77  FLD0715B                       PIC  9(10)V9(10)
                   VALUE  5480282475.3098877685.
       77  FLD0715E                       PIC X  VALUE 'N'.

       77  FLD0716A                       PIC S9(08)V9(03)
                   VALUE -29497495.128.
       77  FLD0716B                       PIC  9(03)V9(31)
                   VALUE  914.3056916239737930141018296126276.
       77  FLD0716E                       PIC X  VALUE 'N'.

       77  FLD0717A                       PIC  9(05)V9(28)
                   VALUE  86936.9843469434133709228262887336.
       77  FLD0717B                       PIC  9(07)V9(21)
                   VALUE  7570171.861371541854879296806.
       77  FLD0717E                       PIC X  VALUE 'N'.

       77  FLD0718A                       PIC  9(06)
                   VALUE  158746.
       77  FLD0718B                       PIC  9(10)V9(06)
                   VALUE  4283417063.648062.
       77  FLD0718E                       PIC X  VALUE 'N'.

       77  FLD0719A                       PIC  9(01)
                   VALUE  0.
       77  FLD0719B                       PIC  9(07)V9(02)
                   VALUE  2390904.61.
       77  FLD0719E                       PIC X  VALUE 'N'.

       77  FLD0720A                       PIC  9(03)
                   VALUE  087.
       77  FLD0720B                       PIC S9(09)V9(06)
                   VALUE +404886316.426392.
       77  FLD0720E                       PIC X  VALUE 'N'.

       77  FLD0721A                       PIC S9(09)V9(03)
                   VALUE +332294869.962.
       77  FLD0721B                       PIC  9(07)V9(01)
                   VALUE  2285954.3.
       77  FLD0721E                       PIC X  VALUE 'N'.

       77  FLD0722A                       PIC S9(05)V9(01)
                   VALUE -17094.9.
       77  FLD0722B                       PIC  9(07)V9(21)
                   VALUE  7607809.920924922808538326535.
       77  FLD0722E                       PIC X  VALUE 'N'.

       77  FLD0723A                       PIC  9(05)V9(28)
                   VALUE  87349.0901765646254872876852459739.
       77  FLD0723B                       PIC  9(02)
                   VALUE  07.
       77  FLD0723E                       PIC X  VALUE 'N'.

       77  FLD0724A                       PIC  9(09)V9(03)
                   VALUE  317474559.928.
       77  FLD0724B                       PIC  9(10)V9(09)
                   VALUE  5251486411.115240393.
       77  FLD0724E                       PIC X  VALUE 'N'.

       77  FLD0725A                       PIC  9(03)V9(31)
                   VALUE  915.1169879467740964074096154945436.
       77  FLD0725B                       PIC S9(09)V9(07)
                   VALUE +444412819.1361023.
       77  FLD0725E                       PIC X  VALUE 'N'.

       77  FLD0726A                       PIC  9(05)
                   VALUE  14771.
       77  FLD0726B                       PIC S9(09)V9(06)
                   VALUE +401835639.675800.
       77  FLD0726E                       PIC X  VALUE 'N'.

       77  FLD0727A                       PIC  9(10)V9(10)
                   VALUE  5412169008.2113094177.
       77  FLD0727B                       PIC  9(09)V9(16)
                   VALUE  677439277.9021225496904889.
       77  FLD0727E                       PIC X  VALUE 'N'.

       77  FLD0728A                       PIC  9(09)V9(07)
                   VALUE  439411444.5456123.
       77  FLD0728B                       PIC S9(09)V9(05)
                   VALUE -371357711.97684.
       77  FLD0728E                       PIC X  VALUE 'N'.

       77  FLD0729A                       PIC  9(02)V9(33)
                   VALUE  94.514768998125520127473464526701718.
       77  FLD0729B                       PIC  9(07)V9(23)
                   VALUE  7959700.26538914909863819957536.
       77  FLD0729E                       PIC X  VALUE 'N'.

       77  FLD0730A                       PIC  9(06)V9(25)
                   VALUE  822685.8594490329412707296796725.
       77  FLD0730B                       PIC  9(09)V9(14)
                   VALUE  630270988.23946403616247.
       77  FLD0730E                       PIC X  VALUE 'N'.

       77  FLD0731A                       PIC  9(10)V9(12)
                   VALUE  5808279049.356201984011.
       77  FLD0731B                       PIC  9(09)V9(13)
                   VALUE  600372700.6085320949679.
       77  FLD0731E                       PIC X  VALUE 'N'.

       77  FLD0732A                       PIC  9(03)V9(31)
                   VALUE  915.5080332184045710519626481982413.
       77  FLD0732B                       PIC S9(04)
                   VALUE +1229.
       77  FLD0732E                       PIC X  VALUE 'N'.

       77  FLD0733A                       PIC  9(09)V9(03)
                   VALUE  328019305.824.
       77  FLD0733B                       PIC  9(09)V9(15)
                   VALUE  637621846.224700750127567.
       77  FLD0733E                       PIC X  VALUE 'N'.

       77  FLD0734A                       PIC S9(06)
                   VALUE -164821.
       77  FLD0734B                       PIC  9(02)
                   VALUE  05.
       77  FLD0734E                       PIC X  VALUE 'N'.

       77  FLD0735A                       PIC S9(06)V9(01)
                   VALUE -190229.8.
       77  FLD0735B                       PIC  9(09)V9(15)
                   VALUE  641899075.827484955070190.
       77  FLD0735E                       PIC X  VALUE 'N'.

       77  FLD0736A                       PIC  9(10)V9(09)
                   VALUE  5128678158.202983894.
       77  FLD0736B                       PIC  9(07)V9(23)
                   VALUE  7952260.56216242538354777025233.
       77  FLD0736E                       PIC X  VALUE 'N'.

       77  FLD0737A                       PIC S9(07)V9(02)
                   VALUE -2601084.10.
       77  FLD0737B                       PIC S9(07)V9(02)
                   VALUE -2623355.12.
       77  FLD0737E                       PIC X  VALUE 'N'.

       77  FLD0738A                       PIC  9(10)V9(09)
                   VALUE  5071467647.954436275.
       77  FLD0738B                       PIC  9(02)V9(34)
                   VALUE  96.7470462418068333221299326396547257.
       77  FLD0738E                       PIC X  VALUE 'N'.

       77  FLD0739A                       PIC S9(09)V9(03)
                   VALUE +324797211.447.
       77  FLD0739B                       PIC S9(10)V9(08)
                   VALUE -4916417996.38161292.
       77  FLD0739E                       PIC X  VALUE 'N'.

       77  FLD0740A                       PIC S9(08)V9(03)
                   VALUE +30394739.303.
       77  FLD0740B                       PIC  9(05)V9(28)
                   VALUE  87461.9397808273024708114462555386.
       77  FLD0740E                       PIC X  VALUE 'N'.

       77  FLD0741A                       PIC S9(09)V9(03)
                   VALUE +322386723.831.
       77  FLD0741B                       PIC S9(09)V9(03)
                   VALUE +321782512.880.
       77  FLD0741E                       PIC X  VALUE 'N'.

       77  FLD0742A                       PIC  9(09)V9(06)
                   VALUE  419367234.713135.
       77  FLD0742B                       PIC S9(08)V9(03)
                   VALUE +30468212.851.
       77  FLD0742E                       PIC X  VALUE 'N'.

       77  FLD0743A                       PIC  9(05)V9(27)
                   VALUE  85864.867305029812794003873932524.
       77  FLD0743B                       PIC  9(06)V9(01)
                   VALUE  209820.2.
       77  FLD0743E                       PIC X  VALUE 'N'.

       77  FLD0744A                       PIC  9(01)
                   VALUE  0.
       77  FLD0744B                       PIC  9(08)V9(02)
                   VALUE  26956228.79.
       77  FLD0744E                       PIC X  VALUE 'N'.

       77  FLD0745A                       PIC  9(01)V9(36)
                   VALUE  9.759709501186564217789509712019935250.
       77  FLD0745B                       PIC  9(05)
                   VALUE  13548.
       77  FLD0745E                       PIC X  VALUE 'N'.

       77  FLD0746A                       PIC  9(10)V9(10)
                   VALUE  5435731573.3552813430.
       77  FLD0746B                       PIC  9(10)V9(09)
                   VALUE  5204204473.599284286.
       77  FLD0746E                       PIC X  VALUE 'N'.

       77  FLD0747A                       PIC  9(10)V9(11)
                   VALUE  5681676571.07930934579.
       77  FLD0747B                       PIC  9(03)V9(31)
                   VALUE  916.9159297409485986918298294767737.
       77  FLD0747E                       PIC X  VALUE 'N'.

       77  FLD0748A                       PIC  9(03)
                   VALUE  086.
       77  FLD0748B                       PIC S9(05)V9(01)
                   VALUE -18032.7.
       77  FLD0748E                       PIC X  VALUE 'N'.

       77  FLD0749A                       PIC S9(10)V9(07)
                   VALUE -4609096560.3942379.
       77  FLD0749B                       PIC  9(06)V9(25)
                   VALUE  820519.2560948625368766329302161.
       77  FLD0749E                       PIC X  VALUE 'N'.

       77  FLD0750A                       PIC  9(07)V9(22)
                   VALUE  7666736.3171436386792834127845.
       77  FLD0750B                       PIC  9(08)V9(04)
                   VALUE  33966692.5145.
       77  FLD0750E                       PIC X  VALUE 'N'.

       77  FLD0751A                       PIC  9(02)
                   VALUE  06.
       77  FLD0751B                       PIC S9(05)
                   VALUE -15176.
       77  FLD0751E                       PIC X  VALUE 'N'.

       77  FLD0752A                       PIC  9(02)
                   VALUE  07.
       77  FLD0752B                       PIC  9(03)V9(32)
                   VALUE  922.38508268330654527034084821934811.
       77  FLD0752E                       PIC X  VALUE 'N'.

       77  FLD0753A                       PIC  9(08)V9(19)
                   VALUE  73379118.3872512742247806727.
       77  FLD0753B                       PIC S9(01)
                   VALUE +0.
       77  FLD0753E                       PIC X  VALUE 'N'.

       77  FLD0754A                       PIC S9(09)V9(03)
                   VALUE +322061792.108.
       77  FLD0754B                       PIC  9(07)V9(02)
                   VALUE  2450066.21.
       77  FLD0754E                       PIC X  VALUE 'N'.

       77  FLD0755A                       PIC  9(06)V9(25)
                   VALUE  835592.8333445592492978448717622.
       77  FLD0755B                       PIC  9(10)V9(10)
                   VALUE  5346301002.0417645051.
       77  FLD0755E                       PIC X  VALUE 'N'.

       77  FLD0756A                       PIC  9(09)V9(04)
                   VALUE  366295057.8421.
       77  FLD0756B                       PIC S9(05)
                   VALUE -15366.
       77  FLD0756E                       PIC X  VALUE 'N'.

       77  FLD0757A                       PIC  9(08)V9(19)
                   VALUE  71466976.1113856494283425035.
       77  FLD0757B                       PIC S9(07)V9(02)
                   VALUE +2429438.31.
       77  FLD0757E                       PIC X  VALUE 'N'.

       77  FLD0758A                       PIC  9(07)V9(01)
                   VALUE  2293699.9.
       77  FLD0758B                       PIC S9(06)
                   VALUE -162229.
       77  FLD0758E                       PIC X  VALUE 'N'.

       77  FLD0759A                       PIC  9(03)V9(32)
                   VALUE  931.38963166127219928114300273591652.
       77  FLD0759B                       PIC  9(07)V9(21)
                   VALUE  7621303.882836163445801958005.
       77  FLD0759E                       PIC X  VALUE 'N'.

       77  FLD0760A                       PIC  9(06)V9(01)
                   VALUE  188511.3.
       77  FLD0760B                       PIC  9(04)V9(30)
                   VALUE  9041.413390221895163278986728982999.
       77  FLD0760E                       PIC X  VALUE 'N'.

       77  FLD0761A                       PIC  9(09)V9(17)
                   VALUE  690006529.44346418937726639.
       77  FLD0761B                       PIC  9(09)V9(14)
                   VALUE  629261290.31917010792085.
       77  FLD0761E                       PIC X  VALUE 'N'.

       77  FLD0762A                       PIC  9(09)V9(16)
                   VALUE  671435372.9957326377686399.
       77  FLD0762B                       PIC  9(07)V9(02)
                   VALUE  2591343.61.
       77  FLD0762E                       PIC X  VALUE 'N'.

       77  FLD0763A                       PIC  9(08)V9(19)
                   VALUE  71468145.3175585401638159055.
       77  FLD0763B                       PIC  9(06)V9(24)
                   VALUE  815545.608346078032546699887461.
       77  FLD0763E                       PIC X  VALUE 'N'.

       77  FLD0764A                       PIC  9(10)V9(11)
                   VALUE  5535007698.50315821329.
       77  FLD0764B                       PIC  9(10)V9(08)
                   VALUE  4979398183.62831021.
       77  FLD0764E                       PIC X  VALUE 'N'.

       77  FLD0765A                       PIC  9(04)V9(29)
                   VALUE  8855.80582773889624093044403707608.
       77  FLD0765B                       PIC S9(04)
                   VALUE +1212.
       77  FLD0765E                       PIC X  VALUE 'N'.

       77  FLD0766A                       PIC S9(01)
                   VALUE +0.
       77  FLD0766B                       PIC  9(07)V9(01)
                   VALUE  2294943.2.
       77  FLD0766E                       PIC X  VALUE 'N'.

       77  FLD0767A                       PIC S9(10)V9(08)
                   VALUE -4848285740.27346248.
       77  FLD0767B                       PIC S9(01)
                   VALUE +0.
       77  FLD0767E                       PIC X  VALUE 'N'.

       77  FLD0768A                       PIC  9(09)V9(17)
                   VALUE  684230789.92735519854306858.
       77  FLD0768B                       PIC S9(02)
                   VALUE -07.
       77  FLD0768E                       PIC X  VALUE 'N'.

       77  FLD0769A                       PIC  9(07)V9(02)
                   VALUE  2565731.27.
       77  FLD0769B                       PIC  9(09)V9(04)
                   VALUE  356094054.4649.
       77  FLD0769E                       PIC X  VALUE 'N'.

       77  FLD0770A                       PIC  9(09)V9(12)
                   VALUE  574214303.174467532997.
       77  FLD0770B                       PIC  9(10)V9(13)
                   VALUE  6057194691.9895736094474.
       77  FLD0770E                       PIC X  VALUE 'N'.

       77  FLD0771A                       PIC  9(08)V9(18)
                   VALUE  69721614.519732855175249142.
       77  FLD0771B                       PIC  9(09)V9(17)
                   VALUE  690190375.47148320843604096.
       77  FLD0771E                       PIC X  VALUE 'N'.

       77  FLD0772A                       PIC  9(10)V9(08)
                   VALUE  4868623585.10471993.
       77  FLD0772B                       PIC  9(10)V9(05)
                   VALUE  3959689116.24786.
       77  FLD0772E                       PIC X  VALUE 'N'.

       77  FLD0773A                       PIC S9(07)V9(01)
                   VALUE +2339835.9.
       77  FLD0773B                       PIC  9(03)V9(32)
                   VALUE  931.93997423560348547511011929600499.
       77  FLD0773E                       PIC X  VALUE 'N'.

       77  FLD0774A                       PIC  9(01)
                   VALUE  0.
       77  FLD0774B                       PIC S9(07)V9(02)
                   VALUE +2425891.04.
       77  FLD0774E                       PIC X  VALUE 'N'.

       77  FLD0775A                       PIC  9(09)V9(06)
                   VALUE  418947899.183504.
       77  FLD0775B                       PIC  9(03)V9(32)
                   VALUE  930.87735098341006789723905967548489.
       77  FLD0775E                       PIC X  VALUE 'N'.

       77  FLD0776A                       PIC  9(09)V9(06)
                   VALUE  418950765.017868.
       77  FLD0776B                       PIC  9(05)V9(27)
                   VALUE  84781.081485203291236985023715533.
       77  FLD0776E                       PIC X  VALUE 'N'.

       77  FLD0777A                       PIC S9(08)V9(03)
                   VALUE +31438250.184.
       77  FLD0777B                       PIC  9(10)V9(11)
                   VALUE  5606560858.83416754889.
       77  FLD0777E                       PIC X  VALUE 'N'.

       77  FLD0778A                       PIC S9(06)V9(01)
                   VALUE -192739.4.
       77  FLD0778B                       PIC  9(03)V9(31)
                   VALUE  916.8465464730475300569878527312539.
       77  FLD0778E                       PIC X  VALUE 'N'.

       77  FLD0779A                       PIC  9(04)V9(30)
                   VALUE  9029.333248069044692840634525055065.
       77  FLD0779B                       PIC S9(10)V9(08)
                   VALUE -4740907582.59428035.
       77  FLD0779E                       PIC X  VALUE 'N'.

       77  FLD0780A                       PIC  9(09)V9(03)
                   VALUE  318241207.749.
       77  FLD0780B                       PIC  9(06)V9(25)
                   VALUE  822759.6235369002419801631731388.
       77  FLD0780E                       PIC X  VALUE 'N'.

       77  FLD0781A                       PIC  9(10)V9(08)
                   VALUE  4967153543.73054196.
       77  FLD0781B                       PIC  9(08)V9(03)
                   VALUE  29720911.669.
       77  FLD0781E                       PIC X  VALUE 'N'.

       77  FLD0782A                       PIC  9(05)
                   VALUE  13793.
       77  FLD0782B                       PIC  9(02)V9(34)
                   VALUE  95.5158015091007617236584792408393695.
       77  FLD0782E                       PIC X  VALUE 'N'.

       77  FLD0783A                       PIC  9(04)V9(29)
                   VALUE  8813.39219378433402773964644438819.
       77  FLD0783B                       PIC S9(10)V9(06)
                   VALUE +4236433759.282261.
       77  FLD0783E                       PIC X  VALUE 'N'.

       77  FLD0784A                       PIC  9(09)V9(15)
                   VALUE  641964802.793786426526878.
       77  FLD0784B                       PIC  9(06)V9(25)
                   VALUE  824637.3935062285553954097849782.
       77  FLD0784E                       PIC X  VALUE 'N'.

       77  FLD0785A                       PIC  9(08)V9(17)
                   VALUE  68097654.34600172362422654.
       77  FLD0785B                       PIC  9(09)V9(03)
                   VALUE  325202869.704.
       77  FLD0785E                       PIC X  VALUE 'N'.

       77  FLD0786A                       PIC  9(01)V9(36)
                   VALUE  9.820249933224565186407062356011010706.
       77  FLD0786B                       PIC  9(05)V9(27)
                   VALUE  85417.725929538756979297886573476.
       77  FLD0786E                       PIC X  VALUE 'N'.

       77  FLD0787A                       PIC  9(10)V9(11)
                   VALUE  5592847098.07636559730.
       77  FLD0787B                       PIC  9(06)V9(01)
                   VALUE  199330.4.
       77  FLD0787E                       PIC X  VALUE 'N'.

       77  FLD0788A                       PIC  9(02)V9(34)
                   VALUE  95.6557531637097668841818176588276401.
       77  FLD0788B                       PIC  9(07)V9(22)
                   VALUE  7789929.3063459995600794627534.
       77  FLD0788E                       PIC X  VALUE 'N'.

       77  FLD0789A                       PIC S9(05)V9(01)
                   VALUE -17101.7.
       77  FLD0789B                       PIC  9(09)V9(16)
                   VALUE  660444958.2132847496040994.
       77  FLD0789E                       PIC X  VALUE 'N'.

       77  FLD0790A                       PIC  9(07)V9(02)
                   VALUE  2384369.54.
       77  FLD0790B                       PIC S9(08)V9(03)
                   VALUE -29309999.122.
       77  FLD0790E                       PIC X  VALUE 'N'.

       77  FLD0791A                       PIC  9(03)
                   VALUE  088.
       77  FLD0791B                       PIC  9(08)V9(20)
                   VALUE  73827325.48868294886190710712.
       77  FLD0791E                       PIC X  VALUE 'N'.

       77  FLD0792A                       PIC  9(02)V9(34)
                   VALUE  95.5230059106088935649836457741912454.
       77  FLD0792B                       PIC  9(09)V9(05)
                   VALUE  379824535.06313.
       77  FLD0792E                       PIC X  VALUE 'N'.

       77  FLD0793A                       PIC  9(06)V9(01)
                   VALUE  199221.9.
       77  FLD0793B                       PIC  9(10)V9(11)
                   VALUE  5591577156.30166807230.
       77  FLD0793E                       PIC X  VALUE 'N'.

       77  FLD0794A                       PIC S9(08)V9(04)
                   VALUE +33437009.5807.
       77  FLD0794B                       PIC S9(01)
                   VALUE -0.
       77  FLD0794E                       PIC X  VALUE 'N'.

       77  FLD0795A                       PIC S9(01)
                   VALUE +0.
       77  FLD0795B                       PIC S9(08)V9(04)
                   VALUE +33494400.6958.
       77  FLD0795E                       PIC X  VALUE 'N'.

       77  FLD0796A                       PIC  9(07)V9(21)
                   VALUE  7565685.006144580171394409262.
       77  FLD0796B                       PIC  9(08)V9(19)
                   VALUE  72949831.5977354816475042298.
       77  FLD0796E                       PIC X  VALUE 'N'.

       77  FLD0797A                       PIC  9(01)
                   VALUE  0.
       77  FLD0797B                       PIC  9(09)V9(04)
                   VALUE  348777486.0252.
       77  FLD0797E                       PIC X  VALUE 'N'.

       77  FLD0798A                       PIC S9(09)V9(03)
                   VALUE +332243375.906.
       77  FLD0798B                       PIC  9(09)V9(16)
                   VALUE  673821443.1439371043808250.
       77  FLD0798E                       PIC X  VALUE 'N'.

       77  FLD0799A                       PIC  9(09)V9(17)
                   VALUE  690866271.33683375934225523.
       77  FLD0799B                       PIC  9(09)V9(11)
                   VALUE  551526790.74963362193.
       77  FLD0799E                       PIC X  VALUE 'N'.

       77  FLD0800A                       PIC  9(08)V9(18)
                   VALUE  70036112.416705975647346349.
       77  FLD0800B                       PIC  9(08)V9(02)
                   VALUE  26662512.18.
       77  FLD0800E                       PIC X  VALUE 'N'.

       77  FLD0801A                       PIC S9(09)V9(07)
                   VALUE +443093279.8052367.
       77  FLD0801B                       PIC  9(01)V9(36)
                   VALUE  9.827967002397862694706986985693220049.
       77  FLD0801E                       PIC X  VALUE 'N'.

       77  FLD0802A                       PIC S9(07)V9(02)
                   VALUE +2449505.23.
       77  FLD0802B                       PIC  9(04)V9(29)
                   VALUE  8911.32090012832223102634543465683.
       77  FLD0802E                       PIC X  VALUE 'N'.

       77  FLD0803A                       PIC S9(05)V9(01)
                   VALUE -17467.0.
       77  FLD0803B                       PIC  9(10)V9(11)
                   VALUE  5556247901.99399698487.
       77  FLD0803E                       PIC X  VALUE 'N'.

       77  FLD0804A                       PIC  9(07)V9(02)
                   VALUE  2599541.84.
       77  FLD0804B                       PIC  9(01)
                   VALUE  0.
       77  FLD0804E                       PIC X  VALUE 'N'.

       77  FLD0805A                       PIC  9(07)V9(01)
                   VALUE  2358341.0.
       77  FLD0805B                       PIC  9(10)V9(08)
                   VALUE  4796323563.66873291.
       77  FLD0805E                       PIC X  VALUE 'N'.

       77  FLD0806A                       PIC  9(10)V9(11)
                   VALUE  5703927562.80738821850.
       77  FLD0806B                       PIC  9(09)V9(07)
                   VALUE  445849105.9648416.
       77  FLD0806E                       PIC X  VALUE 'N'.

       77  FLD0807A                       PIC  9(09)V9(17)
                   VALUE  689326682.16034242991696601.
       77  FLD0807B                       PIC S9(03)
                   VALUE -090.
       77  FLD0807E                       PIC X  VALUE 'N'.

       77  FLD0808A                       PIC  9(01)
                   VALUE  0.
       77  FLD0808B                       PIC  9(10)V9(07)
                   VALUE  4574455047.5690953.
       77  FLD0808E                       PIC X  VALUE 'N'.

       77  FLD0809A                       PIC  9(05)V9(28)
                   VALUE  86873.4196996681751201663246320094.
       77  FLD0809B                       PIC S9(09)V9(07)
                   VALUE +440334288.3961999.
       77  FLD0809E                       PIC X  VALUE 'N'.

       77  FLD0810A                       PIC S9(04)
                   VALUE +1129.
       77  FLD0810B                       PIC S9(07)V9(01)
                   VALUE +2130584.0.
       77  FLD0810E                       PIC X  VALUE 'N'.

       77  FLD0811A                       PIC  9(09)V9(15)
                   VALUE  648943185.643321429623142.
       77  FLD0811B                       PIC  9(01)V9(36)
                   VALUE  9.811592432324195423021251372119877487.
       77  FLD0811E                       PIC X  VALUE 'N'.

       77  FLD0812A                       PIC S9(08)V9(03)
                   VALUE -29270905.795.
       77  FLD0812B                       PIC  9(08)V9(02)
                   VALUE  27514068.39.
       77  FLD0812E                       PIC X  VALUE 'N'.

       77  FLD0813A                       PIC  9(10)V9(08)
                   VALUE  4881724662.84412076.
       77  FLD0813B                       PIC S9(08)V9(03)
                   VALUE -29113136.400.
       77  FLD0813E                       PIC X  VALUE 'N'.

       77  FLD0814A                       PIC S9(02)
                   VALUE -07.
       77  FLD0814B                       PIC  9(07)V9(21)
                   VALUE  7525112.595496631362479433846.
       77  FLD0814E                       PIC X  VALUE 'N'.

       77  FLD0815A                       PIC  9(06)V9(25)
                   VALUE  838676.0467962863785373883729334.
       77  FLD0815B                       PIC  9(02)V9(34)
                   VALUE  95.3836598694868031955707010638434439.
       77  FLD0815E                       PIC X  VALUE 'N'.

       77  FLD0816A                       PIC  9(08)V9(18)
                   VALUE  70774184.783492177786001775.
       77  FLD0816B                       PIC  9(04)V9(29)
                   VALUE  8859.15144904112161761133847903693.
       77  FLD0816E                       PIC X  VALUE 'N'.

       77  FLD0817A                       PIC  9(10)V9(09)
                   VALUE  5163345142.860672476.
       77  FLD0817B                       PIC  9(10)V9(09)
                   VALUE  5158922133.304477686.
       77  FLD0817E                       PIC X  VALUE 'N'.

       77  FLD0818A                       PIC  9(08)V9(03)
                   VALUE  30586164.664.
       77  FLD0818B                       PIC  9(08)V9(19)
                   VALUE  71565910.0751609544843745425.
       77  FLD0818E                       PIC X  VALUE 'N'.

       77  FLD0819A                       PIC  9(01)V9(36)
                   VALUE  9.844708607145921108738662042014766484.
       77  FLD0819B                       PIC S9(03)
                   VALUE -092.
       77  FLD0819E                       PIC X  VALUE 'N'.

       77  FLD0820A                       PIC  9(01)
                   VALUE  0.
       77  FLD0820B                       PIC  9(02)V9(34)
                   VALUE  95.6537139953218984445015848905313760.
       77  FLD0820E                       PIC X  VALUE 'N'.

       77  FLD0821A                       PIC  9(09)V9(11)
                   VALUE  550576956.44832715942.
       77  FLD0821B                       PIC S9(09)V9(05)
                   VALUE -383656536.39422.
       77  FLD0821E                       PIC X  VALUE 'N'.

       77  FLD0822A                       PIC S9(05)
                   VALUE +14037.
       77  FLD0822B                       PIC  9(04)
                   VALUE  1092.
       77  FLD0822E                       PIC X  VALUE 'N'.

       77  FLD0823A                       PIC  9(08)V9(20)
                   VALUE  73880168.20028298070610617287.
       77  FLD0823B                       PIC S9(09)V9(06)
                   VALUE +410430433.569272.
       77  FLD0823E                       PIC X  VALUE 'N'.

       77  FLD0824A                       PIC  9(10)V9(10)
                   VALUE  5351534260.3280557920.
       77  FLD0824B                       PIC  9(09)V9(14)
                   VALUE  619637811.24301098301998.
       77  FLD0824E                       PIC X  VALUE 'N'.

       77  FLD0825A                       PIC  9(01)
                   VALUE  0.
       77  FLD0825B                       PIC S9(05)V9(01)
                   VALUE -17069.2.
       77  FLD0825E                       PIC X  VALUE 'N'.

       77  FLD0826A                       PIC S9(06)V9(01)
                   VALUE -190786.5.
       77  FLD0826B                       PIC S9(10)V9(08)
                   VALUE -4805976358.59735916.
       77  FLD0826E                       PIC X  VALUE 'N'.

       77  FLD0827A                       PIC  9(07)V9(22)
                   VALUE  7763847.1978375678261841130733.
       77  FLD0827B                       PIC  9(10)V9(07)
                   VALUE  4683286251.1747114.
       77  FLD0827E                       PIC X  VALUE 'N'.

       77  FLD0828A                       PIC S9(10)V9(07)
                   VALUE -4530916009.2405642.
       77  FLD0828B                       PIC S9(05)
                   VALUE -15016.
       77  FLD0828E                       PIC X  VALUE 'N'.

       77  FLD0829A                       PIC  9(09)V9(17)
                   VALUE  691486534.21926165041355716.
       77  FLD0829B                       PIC  9(07)V9(23)
                   VALUE  7963194.44710118728991687930829.
       77  FLD0829E                       PIC X  VALUE 'N'.

       77  FLD0830A                       PIC  9(04)V9(30)
                   VALUE  8965.722935126121395654763546190224.
       77  FLD0830B                       PIC  9(10)V9(11)
                   VALUE  5655358049.53465004452.
       77  FLD0830E                       PIC X  VALUE 'N'.

       77  FLD0831A                       PIC  9(04)V9(30)
                   VALUE  8956.555580996397036841472072410397.
       77  FLD0831B                       PIC  9(09)V9(16)
                   VALUE  660284490.9595845246386147.
       77  FLD0831E                       PIC X  VALUE 'N'.

       77  FLD0832A                       PIC  9(04)
                   VALUE  1185.
       77  FLD0832B                       PIC  9(09)V9(06)
                   VALUE  419049138.539795.
       77  FLD0832E                       PIC X  VALUE 'N'.

       77  FLD0833A                       PIC  9(06)V9(24)
                   VALUE  804859.798300300854911881742737.
       77  FLD0833B                       PIC  9(09)V9(16)
                   VALUE  664990588.4825918489511309.
       77  FLD0833E                       PIC X  VALUE 'N'.

       77  FLD0834A                       PIC  9(09)V9(04)
                   VALUE  349209744.2881.
       77  FLD0834B                       PIC  9(08)V9(19)
                   VALUE  71191898.1740956136050613167.
       77  FLD0834E                       PIC X  VALUE 'N'.

       77  FLD0835A                       PIC  9(08)V9(19)
                   VALUE  71178359.2779248075466114187.
       77  FLD0835B                       PIC  9(07)V9(22)
                   VALUE  7891261.8513661014763016510187.
       77  FLD0835E                       PIC X  VALUE 'N'.

       77  FLD0836A                       PIC  9(09)V9(07)
                   VALUE  446141389.3412962.
       77  FLD0836B                       PIC  9(09)V9(13)
                   VALUE  594066179.3005866941896.
       77  FLD0836E                       PIC X  VALUE 'N'.

       77  FLD0837A                       PIC  9(04)V9(30)
                   VALUE  8982.008694278872384941792006429750.
       77  FLD0837B                       PIC S9(08)V9(03)
                   VALUE -29146758.519.
       77  FLD0837E                       PIC X  VALUE 'N'.

       77  FLD0838A                       PIC  9(10)V9(12)
                   VALUE  5873188106.793812979233.
       77  FLD0838B                       PIC  9(07)V9(22)
                   VALUE  7748686.2151072521953665273031.
       77  FLD0838E                       PIC X  VALUE 'N'.

       77  FLD0839A                       PIC  9(08)V9(19)
                   VALUE  71324671.8649382605015318858.
       77  FLD0839B                       PIC  9(06)V9(01)
                   VALUE  205379.6.
       77  FLD0839E                       PIC X  VALUE 'N'.

       77  FLD0840A                       PIC S9(03)
                   VALUE -094.
       77  FLD0840B                       PIC  9(04)
                   VALUE  1059.
       77  FLD0840E                       PIC X  VALUE 'N'.

       77  FLD0841A                       PIC  9(08)V9(18)
                   VALUE  70179428.042996372383299785.
       77  FLD0841B                       PIC  9(06)V9(24)
                   VALUE  813553.693586876014443021176703.
       77  FLD0841E                       PIC X  VALUE 'N'.

       77  FLD0842A                       PIC  9(09)V9(16)
                   VALUE  661649948.5739699704112126.
       77  FLD0842B                       PIC  9(02)V9(33)
                   VALUE  94.543261545044898763734408930758945.
       77  FLD0842E                       PIC X  VALUE 'N'.

       77  FLD0843A                       PIC  9(06)V9(25)
                   VALUE  818928.0761087860405211813485948.
       77  FLD0843B                       PIC S9(08)V9(03)
                   VALUE +30347988.647.
       77  FLD0843E                       PIC X  VALUE 'N'.

       77  FLD0844A                       PIC  9(07)V9(22)
                   VALUE  7754458.9142564990247308287507.
       77  FLD0844B                       PIC  9(10)V9(07)
                   VALUE  4487113046.2525055.
       77  FLD0844E                       PIC X  VALUE 'N'.

       77  FLD0845A                       PIC  9(10)V9(12)
                   VALUE  5903835745.060688200425.
       77  FLD0845B                       PIC  9(09)V9(15)
                   VALUE  651184321.418812994686220.
       77  FLD0845E                       PIC X  VALUE 'N'.

       77  FLD0846A                       PIC  9(08)V9(03)
                   VALUE  29802576.878.
       77  FLD0846B                       PIC  9(10)V9(07)
                   VALUE  4580030325.9646085.
       77  FLD0846E                       PIC X  VALUE 'N'.

       77  FLD0847A                       PIC  9(05)V9(26)
                   VALUE  84041.42690564196938041163775778.
       77  FLD0847B                       PIC  9(08)V9(03)
                   VALUE  29618694.346.
       77  FLD0847E                       PIC X  VALUE 'N'.

       77  FLD0848A                       PIC  9(07)V9(23)
                   VALUE  7949747.62786875510656159349309.
       77  FLD0848B                       PIC  9(08)V9(19)
                   VALUE  71130247.7845018432667245633.
       77  FLD0848E                       PIC X  VALUE 'N'.

       77  FLD0849A                       PIC  9(09)V9(13)
                   VALUE  595598045.8961575019216.
       77  FLD0849B                       PIC  9(07)V9(21)
                   VALUE  7527838.155592773139446194363.
       77  FLD0849E                       PIC X  VALUE 'N'.

       77  FLD0850A                       PIC  9(09)V9(06)
                   VALUE  418716850.605351.
       77  FLD0850B                       PIC  9(09)V9(15)
                   VALUE  631787055.454641532925563.
       77  FLD0850E                       PIC X  VALUE 'N'.

       77  FLD0851A                       PIC S9(03)
                   VALUE -082.
       77  FLD0851B                       PIC  9(07)V9(01)
                   VALUE  2252059.3.
       77  FLD0851E                       PIC X  VALUE 'N'.

       77  FLD0852A                       PIC  9(10)V9(11)
                   VALUE  5643399909.75319838462.
       77  FLD0852B                       PIC  9(08)V9(02)
                   VALUE  28682579.88.
       77  FLD0852E                       PIC X  VALUE 'N'.

       77  FLD0853A                       PIC  9(06)V9(24)
                   VALUE  801200.590406665469345171004533.
       77  FLD0853B                       PIC S9(01)
                   VALUE +0.
       77  FLD0853E                       PIC X  VALUE 'N'.

       77  FLD0854A                       PIC  9(01)V9(35)
                   VALUE  9.72377885073923198255840816273121163.
       77  FLD0854B                       PIC  9(01)
                   VALUE  0.
       77  FLD0854E                       PIC X  VALUE 'N'.

       77  FLD0855A                       PIC  9(08)V9(19)
                   VALUE  73562901.0042854747375429269.
       77  FLD0855B                       PIC  9(05)V9(01)
                   VALUE  16705.4.
       77  FLD0855E                       PIC X  VALUE 'N'.

       77  FLD0856A                       PIC  9(09)V9(04)
                   VALUE  356144099.6704.
       77  FLD0856B                       PIC S9(05)
                   VALUE +13257.
       77  FLD0856E                       PIC X  VALUE 'N'.

       77  FLD0857A                       PIC  9(03)V9(31)
                   VALUE  915.3286634102202334872799838194623.
       77  FLD0857B                       PIC S9(02)
                   VALUE -05.
       77  FLD0857E                       PIC X  VALUE 'N'.

       77  FLD0858A                       PIC  9(10)V9(11)
                   VALUE  5560594458.08950059131.
       77  FLD0858B                       PIC  9(08)V9(03)
                   VALUE  30966624.473.
       77  FLD0858E                       PIC X  VALUE 'N'.

       77  FLD0859A                       PIC S9(01)
                   VALUE +0.
       77  FLD0859B                       PIC  9(02)V9(34)
                   VALUE  97.1628168143447767945986015547532588.
       77  FLD0859E                       PIC X  VALUE 'N'.

       77  FLD0860A                       PIC  9(07)V9(02)
                   VALUE  2576407.94.
       77  FLD0860B                       PIC  9(08)V9(04)
                   VALUE  33654706.3315.
       77  FLD0860E                       PIC X  VALUE 'N'.

       77  FLD0861A                       PIC S9(10)V9(07)
                   VALUE -4605509961.3842453.
       77  FLD0861B                       PIC  9(04)
                   VALUE  1091.
       77  FLD0861E                       PIC X  VALUE 'N'.

       77  FLD0862A                       PIC  9(07)V9(22)
                   VALUE  7652464.2157409383802502134130.
       77  FLD0862B                       PIC  9(09)V9(12)
                   VALUE  576630833.581719182134.
       77  FLD0862E                       PIC X  VALUE 'N'.

       77  FLD0863A                       PIC  9(05)V9(27)
                   VALUE  85070.091557533766835064170663827.
       77  FLD0863B                       PIC  9(10)V9(09)
                   VALUE  5171260723.603198217.
       77  FLD0863E                       PIC X  VALUE 'N'.

       77  FLD0864A                       PIC  9(10)V9(11)
                   VALUE  5711242885.34377577697.
       77  FLD0864B                       PIC  9(04)V9(29)
                   VALUE  8791.30787212824560405977081245509.
       77  FLD0864E                       PIC X  VALUE 'N'.

       77  FLD0865A                       PIC  9(06)V9(24)
                   VALUE  807409.725415061507725056344497.
       77  FLD0865B                       PIC S9(03)
                   VALUE -082.
       77  FLD0865E                       PIC X  VALUE 'N'.

       77  FLD0866A                       PIC  9(09)V9(05)
                   VALUE  376060050.51851.
       77  FLD0866B                       PIC  9(04)V9(30)
                   VALUE  9076.867019798932068042063292523380.
       77  FLD0866E                       PIC X  VALUE 'N'.

       77  FLD0867A                       PIC S9(05)
                   VALUE +14084.
       77  FLD0867B                       PIC  9(08)V9(19)
                   VALUE  72879777.6966572774526298417.
       77  FLD0867E                       PIC X  VALUE 'N'.

       77  FLD0868A                       PIC  9(07)V9(22)
                   VALUE  7648419.8420910554094831468319.
       77  FLD0868B                       PIC  9(10)V9(12)
                   VALUE  5849128371.667725589944.
       77  FLD0868E                       PIC X  VALUE 'N'.

       77  FLD0869A                       PIC S9(01)
                   VALUE +0.
       77  FLD0869B                       PIC  9(08)V9(17)
                   VALUE  68157822.06919422936408636.
       77  FLD0869E                       PIC X  VALUE 'N'.

       77  FLD0870A                       PIC S9(01)
                   VALUE +0.
       77  FLD0870B                       PIC  9(09)V9(15)
                   VALUE  657570531.523696821807334.
       77  FLD0870E                       PIC X  VALUE 'N'.

       77  FLD0871A                       PIC  9(09)V9(14)
                   VALUE  609764683.38536315982878.
       77  FLD0871B                       PIC  9(10)V9(09)
                   VALUE  5134836781.377033476.
       77  FLD0871E                       PIC X  VALUE 'N'.

       77  FLD0872A                       PIC  9(04)V9(29)
                   VALUE  8816.31176263962479389135751262074.
       77  FLD0872B                       PIC  9(10)V9(07)
                   VALUE  4591409950.7884903.
       77  FLD0872E                       PIC X  VALUE 'N'.

       77  FLD0873A                       PIC  9(07)V9(21)
                   VALUE  7561255.223942077163812314211.
       77  FLD0873B                       PIC  9(05)
                   VALUE  15597.
       77  FLD0873E                       PIC X  VALUE 'N'.

       77  FLD0874A                       PIC  9(01)
                   VALUE  0.
       77  FLD0874B                       PIC  9(06)V9(01)
                   VALUE  188106.3.
       77  FLD0874E                       PIC X  VALUE 'N'.

       77  FLD0875A                       PIC S9(06)V9(01)
                   VALUE +204126.0.
       77  FLD0875B                       PIC  9(02)
                   VALUE  06.
       77  FLD0875E                       PIC X  VALUE 'N'.

       77  FLD0876A                       PIC  9(01)
                   VALUE  0.
       77  FLD0876B                       PIC  9(07)V9(23)
                   VALUE  7928238.87607293276147402139031.
       77  FLD0876E                       PIC X  VALUE 'N'.

       77  FLD0877A                       PIC  9(08)V9(18)
                   VALUE  69924605.886404200827399790.
       77  FLD0877B                       PIC  9(09)V9(15)
                   VALUE  651975862.412979334514773.
       77  FLD0877E                       PIC X  VALUE 'N'.

       77  FLD0878A                       PIC  9(07)V9(22)
                   VALUE  7831260.9220719830993573395971.
       77  FLD0878B                       PIC  9(04)V9(29)
                   VALUE  8832.64528360225620318146866338793.
       77  FLD0878E                       PIC X  VALUE 'N'.

       77  FLD0879A                       PIC  9(07)V9(02)
                   VALUE  2371533.81.
       77  FLD0879B                       PIC  9(05)V9(27)
                   VALUE  85230.962794591269560129376259283.
       77  FLD0879E                       PIC X  VALUE 'N'.

       77  FLD0880A                       PIC S9(10)V9(06)
                   VALUE +4237732309.742536.
       77  FLD0880B                       PIC  9(05)V9(26)
                   VALUE  83915.37539577657023315282458497.
       77  FLD0880E                       PIC X  VALUE 'N'.

       77  FLD0881A                       PIC  9(10)V9(11)
                   VALUE  5571129514.90407404264.
       77  FLD0881B                       PIC S9(09)V9(04)
                   VALUE -360610120.1846.
       77  FLD0881E                       PIC X  VALUE 'N'.

       77  FLD0882A                       PIC  9(10)V9(12)
                   VALUE  5888713345.878072713546.
       77  FLD0882B                       PIC  9(09)V9(16)
                   VALUE  677832951.8186110291821933.
       77  FLD0882E                       PIC X  VALUE 'N'.

       77  FLD0883A                       PIC  9(09)V9(16)
                   VALUE  672192258.1526228457349247.
       77  FLD0883B                       PIC  9(07)V9(21)
                   VALUE  7561874.624389478549701948395.
       77  FLD0883E                       PIC X  VALUE 'N'.

       77  FLD0884A                       PIC  9(10)V9(08)
                   VALUE  4954020911.85092596.
       77  FLD0884B                       PIC  9(07)V9(21)
                   VALUE  7530519.818486510752464369033.
       77  FLD0884E                       PIC X  VALUE 'N'.

       77  FLD0885A                       PIC S9(05)
                   VALUE +13360.
       77  FLD0885B                       PIC S9(05)
                   VALUE -15432.
       77  FLD0885E                       PIC X  VALUE 'N'.

       77  FLD0886A                       PIC S9(09)V9(05)
                   VALUE -374529584.88504.
       77  FLD0886B                       PIC S9(09)V9(05)
                   VALUE -380480275.58811.
       77  FLD0886E                       PIC X  VALUE 'N'.

       77  FLD0887A                       PIC S9(07)V9(01)
                   VALUE +2114795.5.
       77  FLD0887B                       PIC  9(06)V9(25)
                   VALUE  815821.3018675709582439026235078.
       77  FLD0887E                       PIC X  VALUE 'N'.

       77  FLD0888A                       PIC  9(08)V9(19)
                   VALUE  73580519.1914812417586233550.
       77  FLD0888B                       PIC  9(07)V9(02)
                   VALUE  2394446.18.
       77  FLD0888E                       PIC X  VALUE 'N'.

       77  FLD0889A                       PIC S9(05)
                   VALUE -15225.
       77  FLD0889B                       PIC  9(02)V9(34)
                   VALUE  96.3719675610497206186266794247785583.
       77  FLD0889E                       PIC X  VALUE 'N'.

       77  FLD0890A                       PIC S9(01)
                   VALUE +0.
       77  FLD0890B                       PIC  9(08)V9(19)
                   VALUE  72161358.3480198661490589984.
       77  FLD0890E                       PIC X  VALUE 'N'.

       77  FLD0891A                       PIC  9(02)V9(34)
                   VALUE  95.7956124985634538404610793804749846.
       77  FLD0891B                       PIC  9(08)V9(19)
                   VALUE  73526985.6204998628612656830.
       77  FLD0891E                       PIC X  VALUE 'N'.

       77  FLD0892A                       PIC  9(10)V9(09)
                   VALUE  5079027644.377075434.
       77  FLD0892B                       PIC  9(03)
                   VALUE  088.
       77  FLD0892E                       PIC X  VALUE 'N'.

       77  FLD0893A                       PIC  9(10)V9(12)
                   VALUE  5900775083.003402254888.
       77  FLD0893B                       PIC  9(02)
                   VALUE  07.
       77  FLD0893E                       PIC X  VALUE 'N'.

       77  FLD0894A                       PIC  9(06)V9(25)
                   VALUE  819872.1409522375935807758651208.
       77  FLD0894B                       PIC  9(09)V9(15)
                   VALUE  655129000.141700390535959.
       77  FLD0894E                       PIC X  VALUE 'N'.

       77  FLD0895A                       PIC  9(10)V9(09)
                   VALUE  5099949658.575000377.
       77  FLD0895B                       PIC  9(08)V9(02)
                   VALUE  28944204.51.
       77  FLD0895E                       PIC X  VALUE 'N'.

       77  FLD0896A                       PIC  9(10)V9(07)
                   VALUE  4576511370.6787369.
       77  FLD0896B                       PIC S9(01)
                   VALUE +0.
       77  FLD0896E                       PIC X  VALUE 'N'.

       77  FLD0897A                       PIC  9(01)V9(36)
                   VALUE  9.997543976245016894566219889384228736.
       77  FLD0897B                       PIC S9(09)V9(07)
                   VALUE +440492210.0858147.
       77  FLD0897E                       PIC X  VALUE 'N'.

       77  FLD0898A                       PIC  9(09)V9(05)
                   VALUE  378033726.09171.
       77  FLD0898B                       PIC  9(06)V9(01)
                   VALUE  199374.1.
       77  FLD0898E                       PIC X  VALUE 'N'.

       77  FLD0899A                       PIC  9(08)V9(20)
                   VALUE  74918436.40783237834313013081.
       77  FLD0899B                       PIC  9(09)V9(07)
                   VALUE  438142184.6749312.
       77  FLD0899E                       PIC X  VALUE 'N'.

       77  FLD0900A                       PIC  9(03)V9(32)
                   VALUE  929.41329164379282712360463847289793.
       77  FLD0900B                       PIC  9(06)V9(01)
                   VALUE  185639.8.
       77  FLD0900E                       PIC X  VALUE 'N'.

       77  FLD0901A                       PIC  9(10)V9(07)
                   VALUE  4563598931.5070740.
       77  FLD0901B                       PIC  9(01)V9(36)
                   VALUE  9.782322298369796609307513790554367005.
       77  FLD0901E                       PIC X  VALUE 'N'.

       77  FLD0902A                       PIC  9(05)V9(28)
                   VALUE  87405.6741908566081633580324705690.
       77  FLD0902B                       PIC  9(10)V9(09)
                   VALUE  5131137190.755751253.
       77  FLD0902E                       PIC X  VALUE 'N'.

       77  FLD0903A                       PIC  9(08)V9(02)
                   VALUE  28616952.10.
       77  FLD0903B                       PIC S9(02)
                   VALUE -06.
       77  FLD0903E                       PIC X  VALUE 'N'.

       77  FLD0904A                       PIC S9(04)
                   VALUE +1137.
       77  FLD0904B                       PIC S9(01)
                   VALUE -0.
       77  FLD0904E                       PIC X  VALUE 'N'.

       77  FLD0905A                       PIC  9(09)V9(04)
                   VALUE  357938124.4724.
       77  FLD0905B                       PIC  9(09)V9(04)
                   VALUE  349599231.9688.
       77  FLD0905E                       PIC X  VALUE 'N'.

       77  FLD0906A                       PIC  9(09)V9(16)
                   VALUE  669388906.6218295935684068.
       77  FLD0906B                       PIC  9(01)
                   VALUE  0.
       77  FLD0906E                       PIC X  VALUE 'N'.

       77  FLD0907A                       PIC S9(09)V9(05)
                   VALUE -390800584.69506.
       77  FLD0907B                       PIC  9(10)V9(11)
                   VALUE  5692874702.16027324809.
       77  FLD0907E                       PIC X  VALUE 'N'.

       77  FLD0908A                       PIC S9(10)V9(06)
                   VALUE +4306350776.286586.
       77  FLD0908B                       PIC  9(03)V9(31)
                   VALUE  912.0472776451683527554337160836439.
       77  FLD0908E                       PIC X  VALUE 'N'.

       77  FLD0909A                       PIC  9(08)V9(03)
                   VALUE  30663800.453.
       77  FLD0909B                       PIC  9(01)
                   VALUE  0.
       77  FLD0909E                       PIC X  VALUE 'N'.

       77  FLD0910A                       PIC S9(06)V9(01)
                   VALUE -193158.9.
       77  FLD0910B                       PIC  9(04)V9(30)
                   VALUE  9098.433765600096867487422969134058.
       77  FLD0910E                       PIC X  VALUE 'N'.

       77  FLD0911A                       PIC S9(10)V9(07)
                   VALUE -4611964452.0728980.
       77  FLD0911B                       PIC  9(08)V9(20)
                   VALUE  74305071.04102702653491974160.
       77  FLD0911E                       PIC X  VALUE 'N'.

       77  FLD0912A                       PIC  9(10)V9(09)
                   VALUE  5000191930.396378214.
       77  FLD0912B                       PIC  9(01)
                   VALUE  0.
       77  FLD0912E                       PIC X  VALUE 'N'.

       77  FLD0913A                       PIC S9(04)
                   VALUE +1246.
       77  FLD0913B                       PIC  9(03)
                   VALUE  079.
       77  FLD0913E                       PIC X  VALUE 'N'.

       77  FLD0914A                       PIC  9(03)V9(31)
                   VALUE  917.2012666333545505281676923914346.
       77  FLD0914B                       PIC  9(01)V9(36)
                   VALUE  9.801144784183424274459639491396956145.
       77  FLD0914E                       PIC X  VALUE 'N'.

       77  FLD0915A                       PIC  9(08)V9(20)
                   VALUE  74750906.49492384109464637731.
       77  FLD0915B                       PIC S9(04)
                   VALUE +1130.
       77  FLD0915E                       PIC X  VALUE 'N'.

       77  FLD0916A                       PIC S9(01)
                   VALUE +0.
       77  FLD0916B                       PIC  9(10)V9(06)
                   VALUE  4372777685.598984.
       77  FLD0916E                       PIC X  VALUE 'N'.

       77  FLD0917A                       PIC  9(01)
                   VALUE  0.
       77  FLD0917B                       PIC  9(04)
                   VALUE  1084.
       77  FLD0917E                       PIC X  VALUE 'N'.

       77  FLD0918A                       PIC  9(04)
                   VALUE  1059.
       77  FLD0918B                       PIC  9(10)V9(11)
                   VALUE  5693106161.94893204244.
       77  FLD0918E                       PIC X  VALUE 'N'.

       77  FLD0919A                       PIC S9(02)
                   VALUE -06.
       77  FLD0919B                       PIC S9(01)
                   VALUE +0.
       77  FLD0919E                       PIC X  VALUE 'N'.

       77  FLD0920A                       PIC S9(05)V9(01)
                   VALUE -17474.9.
       77  FLD0920B                       PIC  9(09)V9(16)
                   VALUE  669843285.3658151664433262.
       77  FLD0920E                       PIC X  VALUE 'N'.

       77  FLD0921A                       PIC  9(10)V9(10)
                   VALUE  5463494999.0456427304.
       77  FLD0921B                       PIC S9(01)
                   VALUE +0.
       77  FLD0921E                       PIC X  VALUE 'N'.

       77  FLD0922A                       PIC S9(01)
                   VALUE +0.
       77  FLD0922B                       PIC S9(05)V9(01)
                   VALUE -18331.8.
       77  FLD0922E                       PIC X  VALUE 'N'.

       77  FLD0923A                       PIC  9(06)
                   VALUE  159582.
       77  FLD0923B                       PIC S9(04)
                   VALUE +1310.
       77  FLD0923E                       PIC X  VALUE 'N'.

       77  FLD0924A                       PIC  9(10)V9(11)
                   VALUE  5650505738.70210182114.
       77  FLD0924B                       PIC  9(06)V9(25)
                   VALUE  830413.4742864166529585645548650.
       77  FLD0924E                       PIC X  VALUE 'N'.

       77  FLD0925A                       PIC S9(04)
                   VALUE +1236.
       77  FLD0925B                       PIC S9(01)
                   VALUE +0.
       77  FLD0925E                       PIC X  VALUE 'N'.

       77  FLD0926A                       PIC  9(08)V9(18)
                   VALUE  69535643.175280814620720093.
       77  FLD0926B                       PIC S9(07)V9(02)
                   VALUE -2533128.95.
       77  FLD0926E                       PIC X  VALUE 'N'.

       77  FLD0927A                       PIC  9(06)V9(24)
                   VALUE  800954.558131814597921049880824.
       77  FLD0927B                       PIC  9(10)V9(09)
                   VALUE  5121064754.192180545.
       77  FLD0927E                       PIC X  VALUE 'N'.

       77  FLD0928A                       PIC  9(01)
                   VALUE  0.
       77  FLD0928B                       PIC  9(07)V9(02)
                   VALUE  2551694.92.
       77  FLD0928E                       PIC X  VALUE 'N'.

       77  FLD0929A                       PIC  9(05)V9(28)
                   VALUE  87174.0739403786824013309342262800.
       77  FLD0929B                       PIC  9(08)V9(19)
                   VALUE  71306594.2354483839338286088.
       77  FLD0929E                       PIC X  VALUE 'N'.

       77  FLD0930A                       PIC  9(01)V9(36)
                   VALUE  9.911281003002671008417223674769047647.
       77  FLD0930B                       PIC  9(09)V9(13)
                   VALUE  591594874.8305130955316.
       77  FLD0930E                       PIC X  VALUE 'N'.

       77  FLD0931A                       PIC  9(09)V9(12)
                   VALUE  573747057.720371378408.
       77  FLD0931B                       PIC S9(07)V9(02)
                   VALUE -2503283.13.
       77  FLD0931E                       PIC X  VALUE 'N'.

       77  FLD0932A                       PIC  9(10)V9(09)
                   VALUE  5079506475.355934913.
       77  FLD0932B                       PIC  9(10)V9(09)
                   VALUE  5196217943.575858200.
       77  FLD0932E                       PIC X  VALUE 'N'.

       77  FLD0933A                       PIC  9(07)V9(22)
                   VALUE  7776883.1704294028028812135744.
       77  FLD0933B                       PIC  9(09)V9(03)
                   VALUE  328435728.864.
       77  FLD0933E                       PIC X  VALUE 'N'.

       77  FLD0934A                       PIC  9(05)V9(01)
                   VALUE  16899.6.
       77  FLD0934B                       PIC  9(07)V9(02)
                   VALUE  2394400.51.
       77  FLD0934E                       PIC X  VALUE 'N'.

       77  FLD0935A                       PIC  9(05)V9(01)
                   VALUE  16691.2.
       77  FLD0935B                       PIC  9(10)V9(08)
                   VALUE  4853829665.64275264.
       77  FLD0935E                       PIC X  VALUE 'N'.

       77  FLD0936A                       PIC  9(08)V9(03)
                   VALUE  29560937.131.
       77  FLD0936B                       PIC  9(02)V9(34)
                   VALUE  95.2998853185021421730027668672846630.
       77  FLD0936E                       PIC X  VALUE 'N'.

       77  FLD0937A                       PIC  9(02)V9(33)
                   VALUE  94.462893191714936147462822191300801.
       77  FLD0937B                       PIC  9(01)
                   VALUE  0.
       77  FLD0937E                       PIC X  VALUE 'N'.

       77  FLD0938A                       PIC  9(09)V9(12)
                   VALUE  578242437.999430092254.
       77  FLD0938B                       PIC  9(08)V9(18)
                   VALUE  70721875.972746128802270959.
       77  FLD0938E                       PIC X  VALUE 'N'.

       77  FLD0939A                       PIC  9(10)V9(13)
                   VALUE  6084884727.3780637401330.
       77  FLD0939B                       PIC S9(01)
                   VALUE -0.
       77  FLD0939E                       PIC X  VALUE 'N'.

       77  FLD0940A                       PIC  9(09)V9(12)
                   VALUE  577997061.609985873786.
       77  FLD0940B                       PIC  9(10)V9(08)
                   VALUE  4780052522.48498546.
       77  FLD0940E                       PIC X  VALUE 'N'.

       77  FLD0941A                       PIC  9(09)V9(16)
                   VALUE  670449367.9367865555107641.
       77  FLD0941B                       PIC  9(09)V9(04)
                   VALUE  345028332.3540.
       77  FLD0941E                       PIC X  VALUE 'N'.

       77  FLD0942A                       PIC  9(10)V9(10)
                   VALUE  5309347867.8071082121.
       77  FLD0942B                       PIC  9(03)V9(32)
                   VALUE  922.70492697630424050458941565011627.
       77  FLD0942E                       PIC X  VALUE 'N'.

       77  FLD0943A                       PIC S9(09)V9(03)
                   VALUE +323766798.919.
       77  FLD0943B                       PIC S9(06)V9(01)
                   VALUE +203018.6.
       77  FLD0943E                       PIC X  VALUE 'N'.

       77  FLD0944A                       PIC  9(02)V9(34)
                   VALUE  95.7363239628727824559462078468641266.
       77  FLD0944B                       PIC S9(07)V9(02)
                   VALUE -2600465.21.
       77  FLD0944E                       PIC X  VALUE 'N'.

       77  FLD0945A                       PIC  9(10)V9(10)
                   VALUE  5427766423.1255295934.
       77  FLD0945B                       PIC S9(10)V9(06)
                   VALUE +4211785767.712989.
       77  FLD0945E                       PIC X  VALUE 'N'.

       77  FLD0946A                       PIC S9(07)V9(02)
                   VALUE -2603132.30.
       77  FLD0946B                       PIC  9(02)V9(34)
                   VALUE  96.2407519811451561686510558502050116.
       77  FLD0946E                       PIC X  VALUE 'N'.

       77  FLD0947A                       PIC  9(05)V9(27)
                   VALUE  85846.989065825540787812997223227.
       77  FLD0947B                       PIC  9(09)V9(16)
                   VALUE  671942080.3697424560141371.
       77  FLD0947E                       PIC X  VALUE 'N'.

       77  FLD0948A                       PIC  9(04)
                   VALUE  1058.
       77  FLD0948B                       PIC  9(07)V9(21)
                   VALUE  7582594.805549627281493485497.
       77  FLD0948E                       PIC X  VALUE 'N'.

       77  FLD0949A                       PIC S9(10)V9(06)
                   VALUE +4307044196.647341.
       77  FLD0949B                       PIC  9(10)V9(07)
                   VALUE  4670230467.6696332.
       77  FLD0949E                       PIC X  VALUE 'N'.

       77  FLD0950A                       PIC  9(09)V9(14)
                   VALUE  614898523.03850200954116.
       77  FLD0950B                       PIC  9(04)V9(30)
                   VALUE  9056.465512238127679722765606129541.
       77  FLD0950E                       PIC X  VALUE 'N'.

       77  FLD0951A                       PIC S9(08)V9(03)
                   VALUE +31116955.475.
       77  FLD0951B                       PIC  9(08)V9(20)
                   VALUE  74599134.92992847894313968026.
       77  FLD0951E                       PIC X  VALUE 'N'.

       77  FLD0952A                       PIC  9(09)V9(03)
                   VALUE  315844571.317.
       77  FLD0952B                       PIC  9(02)
                   VALUE  06.
       77  FLD0952E                       PIC X  VALUE 'N'.

       77  FLD0953A                       PIC  9(06)
                   VALUE  166635.
       77  FLD0953B                       PIC  9(10)V9(09)
                   VALUE  5187782319.462912461.
       77  FLD0953E                       PIC X  VALUE 'N'.

       77  FLD0954A                       PIC  9(10)V9(11)
                   VALUE  5577123049.60128579800.
       77  FLD0954B                       PIC  9(02)V9(34)
                   VALUE  97.0603521071659591790137255884474143.
       77  FLD0954E                       PIC X  VALUE 'N'.

       77  FLD0955A                       PIC S9(08)V9(02)
                   VALUE -27357789.23.
       77  FLD0955B                       PIC  9(06)V9(25)
                   VALUE  823687.4590304759102821208216482.
       77  FLD0955E                       PIC X  VALUE 'N'.

       77  FLD0956A                       PIC S9(08)V9(02)
                   VALUE -27355040.84.
       77  FLD0956B                       PIC  9(08)V9(18)
                   VALUE  70029518.862281070479269828.
       77  FLD0956E                       PIC X  VALUE 'N'.

       77  FLD0957A                       PIC  9(09)V9(15)
                   VALUE  637627083.330792543414133.
       77  FLD0957B                       PIC S9(04)
                   VALUE +1212.
       77  FLD0957E                       PIC X  VALUE 'N'.

       77  FLD0958A                       PIC S9(08)V9(03)
                   VALUE -29370744.150.
       77  FLD0958B                       PIC  9(10)V9(06)
                   VALUE  4358178846.720288.
       77  FLD0958E                       PIC X  VALUE 'N'.

       77  FLD0959A                       PIC  9(06)V9(25)
                   VALUE  827211.6833605048791255853757320.
       77  FLD0959B                       PIC S9(01)
                   VALUE +0.
       77  FLD0959E                       PIC X  VALUE 'N'.

       77  FLD0960A                       PIC  9(10)V9(11)
                   VALUE  5559976801.18206716315.
       77  FLD0960B                       PIC S9(01)
                   VALUE +0.
       77  FLD0960E                       PIC X  VALUE 'N'.

       77  FLD0961A                       PIC  9(08)V9(19)
                   VALUE  72708740.7191407630868695832.
       77  FLD0961B                       PIC S9(04)
                   VALUE +1315.
       77  FLD0961E                       PIC X  VALUE 'N'.

       77  FLD0962A                       PIC  9(02)V9(34)
                   VALUE  96.8081984946274620718043024680810049.
       77  FLD0962B                       PIC  9(08)V9(17)
                   VALUE  68265700.44059103725686554.
       77  FLD0962E                       PIC X  VALUE 'N'.

       77  FLD0963A                       PIC  9(01)V9(36)
                   VALUE  9.803573230667260718362854277074802666.
       77  FLD0963B                       PIC  9(09)V9(16)
                   VALUE  657950850.8072698935720268.
       77  FLD0963E                       PIC X  VALUE 'N'.

       77  FLD0964A                       PIC  9(09)V9(15)
                   VALUE  639504907.969730918004813.
       77  FLD0964B                       PIC  9(09)V9(13)
                   VALUE  599568613.7680703575725.
       77  FLD0964E                       PIC X  VALUE 'N'.

       77  FLD0965A                       PIC  9(05)
                   VALUE  13581.
       77  FLD0965B                       PIC  9(01)
                   VALUE  0.
       77  FLD0965E                       PIC X  VALUE 'N'.

       77  FLD0966A                       PIC  9(06)V9(01)
                   VALUE  189200.6.
       77  FLD0966B                       PIC  9(06)V9(01)
                   VALUE  189757.7.
       77  FLD0966E                       PIC X  VALUE 'N'.

       77  FLD0967A                       PIC  9(02)
                   VALUE  06.
       77  FLD0967B                       PIC  9(09)V9(04)
                   VALUE  356045641.3147.
       77  FLD0967E                       PIC X  VALUE 'N'.

       77  FLD0968A                       PIC  9(09)V9(15)
                   VALUE  649996663.320669743058033.
       77  FLD0968B                       PIC S9(04)
                   VALUE +1132.
       77  FLD0968E                       PIC X  VALUE 'N'.

       77  FLD0969A                       PIC S9(05)
                   VALUE -15366.
       77  FLD0969B                       PIC  9(09)V9(13)
                   VALUE  594539058.0989867723715.
       77  FLD0969E                       PIC X  VALUE 'N'.

       77  FLD0970A                       PIC  9(09)V9(14)
                   VALUE  631417540.20798013247173.
       77  FLD0970B                       PIC  9(02)V9(34)
                   VALUE  96.8862081091470539462306987843476235.
       77  FLD0970E                       PIC X  VALUE 'N'.

       77  FLD0971A                       PIC  9(07)V9(01)
                   VALUE  2161446.9.
       77  FLD0971B                       PIC S9(09)V9(06)
                   VALUE +400705169.115322.
       77  FLD0971E                       PIC X  VALUE 'N'.

       77  FLD0972A                       PIC  9(09)V9(15)
                   VALUE  647710182.878484586055378.
       77  FLD0972B                       PIC  9(05)
                   VALUE  13649.
       77  FLD0972E                       PIC X  VALUE 'N'.

       77  FLD0973A                       PIC  9(05)
                   VALUE  13817.
       77  FLD0973B                       PIC  9(06)V9(25)
                   VALUE  828260.5282429751358819203232997.
       77  FLD0973E                       PIC X  VALUE 'N'.

       77  FLD0974A                       PIC  9(04)
                   VALUE  1180.
       77  FLD0974B                       PIC S9(03)
                   VALUE +104.
       77  FLD0974E                       PIC X  VALUE 'N'.

       77  FLD0975A                       PIC S9(02)
                   VALUE -06.
       77  FLD0975B                       PIC  9(09)V9(03)
                   VALUE  329183580.054.
       77  FLD0975E                       PIC X  VALUE 'N'.

       77  FLD0976A                       PIC S9(07)V9(01)
                   VALUE +2206144.7.
       77  FLD0976B                       PIC  9(10)V9(09)
                   VALUE  5191401776.232426046.
       77  FLD0976E                       PIC X  VALUE 'N'.

       77  FLD0977A                       PIC  9(09)V9(03)
                   VALUE  327431372.704.
       77  FLD0977B                       PIC S9(09)V9(05)
                   VALUE -393208707.80387.
       77  FLD0977E                       PIC X  VALUE 'N'.

       77  FLD0978A                       PIC  9(09)V9(16)
                   VALUE  675062190.8116747338368668.
       77  FLD0978B                       PIC S9(09)V9(06)
                   VALUE +411411057.685845.
       77  FLD0978E                       PIC X  VALUE 'N'.

       77  FLD0979A                       PIC  9(03)V9(32)
                   VALUE  925.33169671466619643496187563869170.
       77  FLD0979B                       PIC  9(09)V9(05)
                   VALUE  388509802.38797.
       77  FLD0979E                       PIC X  VALUE 'N'.

       77  FLD0980A                       PIC  9(03)V9(32)
                   VALUE  935.82234581280043794748735308530740.
       77  FLD0980B                       PIC  9(09)V9(15)
                   VALUE  647159992.565670250108667.
       77  FLD0980E                       PIC X  VALUE 'N'.

       77  FLD0981A                       PIC  9(06)V9(01)
                   VALUE  195132.7.
       77  FLD0981B                       PIC S9(09)V9(04)
                   VALUE -360473610.9762.
       77  FLD0981E                       PIC X  VALUE 'N'.

       77  FLD0982A                       PIC  9(06)V9(25)
                   VALUE  816610.1728260642955703474399342.
       77  FLD0982B                       PIC S9(08)V9(03)
                   VALUE +31469845.616.
       77  FLD0982E                       PIC X  VALUE 'N'.

       77  FLD0983A                       PIC  9(10)V9(09)
                   VALUE  5114754992.436914005.
       77  FLD0983B                       PIC  9(02)V9(34)
                   VALUE  95.8147071945383510538363225350622087.
       77  FLD0983E                       PIC X  VALUE 'N'.

       77  FLD0984A                       PIC  9(09)V9(15)
                   VALUE  632949921.330981046807551.
       77  FLD0984B                       PIC  9(10)V9(09)
                   VALUE  5090793805.153389639.
       77  FLD0984E                       PIC X  VALUE 'N'.

       77  FLD0985A                       PIC  9(10)V9(06)
                   VALUE  4296662473.303992.
       77  FLD0985B                       PIC  9(05)V9(28)
                   VALUE  87137.5808353749947698929645412135.
       77  FLD0985E                       PIC X  VALUE 'N'.

       77  FLD0986A                       PIC  9(05)
                   VALUE  14588.
       77  FLD0986B                       PIC  9(01)
                   VALUE  0.
       77  FLD0986E                       PIC X  VALUE 'N'.

       77  FLD0987A                       PIC  9(01)V9(36)
                   VALUE  9.834402345123109956404050535638816654.
       77  FLD0987B                       PIC  9(06)V9(26)
                   VALUE  842525.10302045313661523096016026.
       77  FLD0987E                       PIC X  VALUE 'N'.

       77  FLD0988A                       PIC  9(01)
                   VALUE  0.
       77  FLD0988B                       PIC S9(05)V9(01)
                   VALUE -18152.0.
       77  FLD0988E                       PIC X  VALUE 'N'.

       77  FLD0989A                       PIC S9(04)
                   VALUE +1235.
       77  FLD0989B                       PIC  9(09)V9(13)
                   VALUE  593212782.9792923634499.
       77  FLD0989E                       PIC X  VALUE 'N'.

       77  FLD0990A                       PIC  9(07)V9(22)
                   VALUE  7806084.0781040319313888176111.
       77  FLD0990B                       PIC  9(06)V9(01)
                   VALUE  208986.1.
       77  FLD0990E                       PIC X  VALUE 'N'.

       77  FLD0991A                       PIC  9(06)V9(24)
                   VALUE  807774.663029880435338725419569.
       77  FLD0991B                       PIC S9(09)V9(06)
                   VALUE +403465254.324070.
       77  FLD0991E                       PIC X  VALUE 'N'.

       77  FLD0992A                       PIC  9(07)V9(22)
                   VALUE  7784108.2583169551867285917978.
       77  FLD0992B                       PIC  9(04)V9(29)
                   VALUE  8920.19846678347883006665597349638.
       77  FLD0992E                       PIC X  VALUE 'N'.

       77  FLD0993A                       PIC  9(08)V9(20)
                   VALUE  74534466.64416291111976420324.
       77  FLD0993B                       PIC S9(04)
                   VALUE +1132.
       77  FLD0993E                       PIC X  VALUE 'N'.

       77  FLD0994A                       PIC  9(06)V9(24)
                   VALUE  815107.307501011568717785849003.
       77  FLD0994B                       PIC S9(10)V9(08)
                   VALUE -4847118976.22432053.
       77  FLD0994E                       PIC X  VALUE 'N'.

       77  FLD0995A                       PIC S9(01)
                   VALUE +0.
       77  FLD0995B                       PIC  9(06)V9(01)
                   VALUE  188825.8.
       77  FLD0995E                       PIC X  VALUE 'N'.

       77  FLD0996A                       PIC  9(09)V9(14)
                   VALUE  619241405.61761309431432.
       77  FLD0996B                       PIC  9(09)V9(16)
                   VALUE  669751940.2443259384227758.
       77  FLD0996E                       PIC X  VALUE 'N'.

       77  FLD0997A                       PIC  9(10)V9(09)
                   VALUE  5006446394.611311356.
       77  FLD0997B                       PIC  9(10)V9(09)
                   VALUE  5005353152.147143935.
       77  FLD0997E                       PIC X  VALUE 'N'.

       77  FLD0998A                       PIC  9(09)V9(13)
                   VALUE  598229443.4201559374386.
       77  FLD0998B                       PIC S9(01)
                   VALUE +0.
       77  FLD0998E                       PIC X  VALUE 'N'.

       77  FLD0999A                       PIC S9(03)
                   VALUE -081.
       77  FLD0999B                       PIC S9(01)
                   VALUE -0.
       77  FLD0999E                       PIC X  VALUE 'N'.

      * RESULTS-AREA
       78  XPC-FLD0500B
           VALUE '708'.
       78  XPC-FLD0500E          VALUE 'N'.
       78  XPC-FLD0501B
           VALUE '62809334873677369337485'.
       78  XPC-FLD0501E          VALUE 'Y'.
       78  XPC-FLD0502B
           VALUE '78931626286150020034995122841'.
       78  XPC-FLD0502E          VALUE 'N'.
       78  XPC-FLD0503B
           VALUE '241748150924885620905391882843105'.
       78  XPC-FLD0503E          VALUE 'N'.
       78  XPC-FLD0504B
           VALUE '5028930926587901486'.
       78  XPC-FLD0504E          VALUE 'N'.
       78  XPC-FLD0505B
           VALUE '54079887440916072855'.
       78  XPC-FLD0505E          VALUE 'N'.
       78  XPC-FLD0506B
           VALUE '4498381p'.
       78  XPC-FLD0506E          VALUE 'N'.
       78  XPC-FLD0507B
           VALUE '5276166649082409209'.
       78  XPC-FLD0507E          VALUE 'N'.
       78  XPC-FLD0508B
           VALUE '214408822084888u'.
       78  XPC-FLD0508E          VALUE 'N'.
       78  XPC-FLD0509B
           VALUE '488937338626299289'.
       78  XPC-FLD0509E          VALUE 'N'.
       78  XPC-FLD0510B
           VALUE '09r'.
       78  XPC-FLD0510E          VALUE 'Y'.
       78  XPC-FLD0511B
           VALUE '5257737010265951195'.
       78  XPC-FLD0511E          VALUE 'N'.
       78  XPC-FLD0512B
           VALUE '5091717968686512163500879069033544511'.
       78  XPC-FLD0512E          VALUE 'N'.
       78  XPC-FLD0513B
           VALUE '7412408747450585089211472222'.
       78  XPC-FLD0513E          VALUE 'Y'.
       78  XPC-FLD0514B
           VALUE '2787819996822'.
       78  XPC-FLD0514E          VALUE 'N'.
       78  XPC-FLD0515B
           VALUE '37690011845231452527479784448514692'.
       78  XPC-FLD0515E          VALUE 'N'.
       78  XPC-FLD0516B
           VALUE '9'.
       78  XPC-FLD0516E          VALUE 'N'.
       78  XPC-FLD0517B
           VALUE '03134013404271069v'.
       78  XPC-FLD0517E          VALUE 'N'.
       78  XPC-FLD0518B
           VALUE '8y'.
       78  XPC-FLD0518E          VALUE 'N'.
       78  XPC-FLD0519B
           VALUE '6841259606583623975595287'.
       78  XPC-FLD0519E          VALUE 'Y'.
       78  XPC-FLD0520B
           VALUE '61059553432451049552742'.
       78  XPC-FLD0520E          VALUE 'N'.
       78  XPC-FLD0521B
           VALUE '28055'.
       78  XPC-FLD0521E          VALUE 'N'.
       78  XPC-FLD0522B
           VALUE '351067614407v'.
       78  XPC-FLD0522E          VALUE 'N'.
       78  XPC-FLD0523B
           VALUE '4280314707'.
       78  XPC-FLD0523E          VALUE 'N'.
       78  XPC-FLD0524B
           VALUE '5046008862205329081'.
       78  XPC-FLD0524E          VALUE 'N'.
       78  XPC-FLD0525B
           VALUE '887336156634660588871099662355845'.
       78  XPC-FLD0525E          VALUE 'N'.
       78  XPC-FLD0526B
           VALUE '535158707'.
       78  XPC-FLD0526E          VALUE 'N'.
       78  XPC-FLD0527B
           VALUE '0993866582275886311'.
       78  XPC-FLD0527E          VALUE 'N'.
       78  XPC-FLD0528B
           VALUE '1207'.
       78  XPC-FLD0528E          VALUE 'Y'.
       78  XPC-FLD0529B
           VALUE '06852906977087936'.
       78  XPC-FLD0529E          VALUE 'N'.
       78  XPC-FLD0530B
           VALUE '4r'.
       78  XPC-FLD0530E          VALUE 'N'.
       78  XPC-FLD0531B
           VALUE '23227722'.
       78  XPC-FLD0531E          VALUE 'Y'.
       78  XPC-FLD0532B
           VALUE 'v'.
       78  XPC-FLD0532E          VALUE 'N'.
       78  XPC-FLD0533B
           VALUE '014'.
       78  XPC-FLD0533E          VALUE 'N'.
       78  XPC-FLD0534B
           VALUE '4796286047627412578'.
       78  XPC-FLD0534E          VALUE 'N'.
       78  XPC-FLD0535B
           VALUE '86934843746367858133650045201648'.
       78  XPC-FLD0535E          VALUE 'N'.
       78  XPC-FLD0536B
           VALUE '0'.
       78  XPC-FLD0536E          VALUE 'N'.
       78  XPC-FLD0537B
           VALUE '1199'.
       78  XPC-FLD0537E          VALUE 'Y'.
       78  XPC-FLD0538B
           VALUE '793946754459935233327882997400592'.
       78  XPC-FLD0538E          VALUE 'N'.
       78  XPC-FLD0539B
           VALUE '70042059898033071085876599681795'.
       78  XPC-FLD0539E          VALUE 'N'.
       78  XPC-FLD0540B
           VALUE '0'.
       78  XPC-FLD0540E          VALUE 'Y'.
       78  XPC-FLD0541B
           VALUE '49167641848286621388982121061'.
       78  XPC-FLD0541E          VALUE 'N'.
       78  XPC-FLD0542B
           VALUE '553207696393934218126'.
       78  XPC-FLD0542E          VALUE 'N'.
       78  XPC-FLD0543B
           VALUE '277016069'.
       78  XPC-FLD0543E          VALUE 'N'.
       78  XPC-FLD0544B
           VALUE '1381302823'.
       78  XPC-FLD0544E          VALUE 'N'.
       78  XPC-FLD0545B
           VALUE '944856446145206807507570674'.
       78  XPC-FLD0545E          VALUE 'N'.
       78  XPC-FLD0546B
           VALUE '60995883518421766866790'.
       78  XPC-FLD0546E          VALUE 'N'.
       78  XPC-FLD0547B
           VALUE '359869586205y'.
       78  XPC-FLD0547E          VALUE 'N'.
       78  XPC-FLD0548B
           VALUE '68119457212008152846571817'.
       78  XPC-FLD0548E          VALUE 'N'.
       78  XPC-FLD0549B
           VALUE '417916211751954'.
       78  XPC-FLD0549E          VALUE 'N'.
       78  XPC-FLD0550B
           VALUE '94'.
       78  XPC-FLD0550E          VALUE 'N'.
       78  XPC-FLD0551B
           VALUE '655119044597454263904505'.
       78  XPC-FLD0551E          VALUE 'N'.
       78  XPC-FLD0552B
           VALUE '14745'.
       78  XPC-FLD0552E          VALUE 'Y'.
       78  XPC-FLD0553B
           VALUE '360871096909p'.
       78  XPC-FLD0553E          VALUE 'N'.
       78  XPC-FLD0554B
           VALUE '28615763752268179551663251913851128'.
       78  XPC-FLD0554E          VALUE 'N'.
       78  XPC-FLD0555B
           VALUE '5605686733653602811'.
       78  XPC-FLD0555E          VALUE 'N'.
       78  XPC-FLD0556B
           VALUE '568555321722934526833'.
       78  XPC-FLD0556E          VALUE 'N'.
       78  XPC-FLD0557B
           VALUE '90340'.
       78  XPC-FLD0557E          VALUE 'N'.
       78  XPC-FLD0558B
           VALUE '2096049'.
       78  XPC-FLD0558E          VALUE 'Y'.
       78  XPC-FLD0559B
           VALUE '99142824147194545678672682843'.
       78  XPC-FLD0559E          VALUE 'N'.
       78  XPC-FLD0560B
           VALUE '0351025116078023'.
       78  XPC-FLD0560E          VALUE 'N'.
       78  XPC-FLD0561B
           VALUE '0'.
       78  XPC-FLD0561E          VALUE 'Y'.
       78  XPC-FLD0562B
           VALUE '958208334412512741096179524902254343'.
       78  XPC-FLD0562E          VALUE 'N'.
       78  XPC-FLD0563B
           VALUE '72227339713'.
       78  XPC-FLD0563E          VALUE 'N'.
       78  XPC-FLD0564B
           VALUE '92573034981753798966508384182816371'.
       78  XPC-FLD0564E          VALUE 'Y'.
       78  XPC-FLD0565B
           VALUE '2180881'.
       78  XPC-FLD0565E          VALUE 'N'.
       78  XPC-FLD0566B
           VALUE '134200212625'.
       78  XPC-FLD0566E          VALUE 'N'.
       78  XPC-FLD0567B
           VALUE '878970351596639054569948257267242'.
       78  XPC-FLD0567E          VALUE 'Y'.
       78  XPC-FLD0568B
           VALUE '64501399773583058336459'.
       78  XPC-FLD0568E          VALUE 'N'.
       78  XPC-FLD0569B
           VALUE '722108073354755'.
       78  XPC-FLD0569E          VALUE 'N'.
       78  XPC-FLD0570B
           VALUE '720060225322646066764775696'.
       78  XPC-FLD0570E          VALUE 'N'.
       78  XPC-FLD0571B
           VALUE '6621729185931387539619251'.
       78  XPC-FLD0571E          VALUE 'N'.
       78  XPC-FLD0572B
           VALUE '36305x'.
       78  XPC-FLD0572E          VALUE 'N'.
       78  XPC-FLD0573B
           VALUE '9908582147727897915245875992695800960'.
       78  XPC-FLD0573E          VALUE 'Y'.
       78  XPC-FLD0574B
           VALUE 'v'.
       78  XPC-FLD0574E          VALUE 'N'.
       78  XPC-FLD0575B
           VALUE '6'.
       78  XPC-FLD0575E          VALUE 'N'.
       78  XPC-FLD0576B
           VALUE '47238400610562072401'.
       78  XPC-FLD0576E          VALUE 'N'.
       78  XPC-FLD0577B
           VALUE '805001512301445405164770363626303151'.
       78  XPC-FLD0577E          VALUE 'N'.
       78  XPC-FLD0578B
           VALUE '273809'.
       78  XPC-FLD0578E          VALUE 'N'.
       78  XPC-FLD0579B
           VALUE '5908380596787501714'.
       78  XPC-FLD0579E          VALUE 'N'.
       78  XPC-FLD0580B
           VALUE '646450258967046645771858948137378321'.
       78  XPC-FLD0580E          VALUE 'N'.
       78  XPC-FLD0581B
           VALUE '610062973643881143036828'.
       78  XPC-FLD0581E          VALUE 'N'.
       78  XPC-FLD0582B
           VALUE '62856274902063530202835'.
       78  XPC-FLD0582E          VALUE 'N'.
       78  XPC-FLD0583B
           VALUE '4'.
       78  XPC-FLD0583E          VALUE 'N'.
       78  XPC-FLD0584B
           VALUE '955867594557756605766485336062032729'.
       78  XPC-FLD0584E          VALUE 'N'.
       78  XPC-FLD0585B
           VALUE '92667442032915370297985191427869722'.
       78  XPC-FLD0585E          VALUE 'Y'.
       78  XPC-FLD0586B
           VALUE '77794189960829245200635284617'.
       78  XPC-FLD0586E          VALUE 'N'.
       78  XPC-FLD0587B
           VALUE '212x'.
       78  XPC-FLD0587E          VALUE 'N'.
       78  XPC-FLD0588B
           VALUE '9002074772136551272794235956098418'.
       78  XPC-FLD0588E          VALUE 'Y'.
       78  XPC-FLD0589B
           VALUE '3292'.
       78  XPC-FLD0589E          VALUE 'N'.
       78  XPC-FLD0590B
           VALUE '106211y'.
       78  XPC-FLD0590E          VALUE 'N'.
       78  XPC-FLD0591B
           VALUE '5700661418154348791'.
       78  XPC-FLD0591E          VALUE 'N'.
       78  XPC-FLD0592B
           VALUE '7390709819s'.
       78  XPC-FLD0592E          VALUE 'N'.
       78  XPC-FLD0593B
           VALUE '37'.
       78  XPC-FLD0593E          VALUE 'N'.
       78  XPC-FLD0594B
           VALUE '77388935043103479483050932685'.
       78  XPC-FLD0594E          VALUE 'Y'.
       78  XPC-FLD0595B
           VALUE '3197374054167890777833347730124'.
       78  XPC-FLD0595E          VALUE 'N'.
       78  XPC-FLD0596B
           VALUE '657855963298508210108650'.
       78  XPC-FLD0596E          VALUE 'N'.
       78  XPC-FLD0597B
           VALUE '8162559991782142310157155407068'.
       78  XPC-FLD0597E          VALUE 'Y'.
       78  XPC-FLD0598B
           VALUE '46847763318450w'.
       78  XPC-FLD0598E          VALUE 'N'.
       78  XPC-FLD0599B
           VALUE '9'.
       78  XPC-FLD0599E          VALUE 'N'.
       78  XPC-FLD0600B
           VALUE '804504375985138686644404515391'.
       78  XPC-FLD0600E          VALUE 'Y'.
       78  XPC-FLD0601B
           VALUE '29749813110'.
       78  XPC-FLD0601E          VALUE 'N'.
       78  XPC-FLD0602B
           VALUE '303615938'.
       78  XPC-FLD0602E          VALUE 'N'.
       78  XPC-FLD0603B
           VALUE '17089v'.
       78  XPC-FLD0603E          VALUE 'Y'.
       78  XPC-FLD0604B
           VALUE '551440145498789572319'.
       78  XPC-FLD0604E          VALUE 'N'.
       78  XPC-FLD0605B
           VALUE '4256957897307752'.
       78  XPC-FLD0605E          VALUE 'N'.
       78  XPC-FLD0606B
           VALUE '254178383481'.
       78  XPC-FLD0606E          VALUE 'N'.
       78  XPC-FLD0607B
           VALUE '25781'.
       78  XPC-FLD0607E          VALUE 'N'.
       78  XPC-FLD0608B
           VALUE '225226869583767068085933260590536520'.
       78  XPC-FLD0608E          VALUE 'N'.
       78  XPC-FLD0609B
           VALUE '45126229228847267'.
       78  XPC-FLD0609E          VALUE 'N'.
       78  XPC-FLD0610B
           VALUE '2786455271'.
       78  XPC-FLD0610E          VALUE 'N'.
       78  XPC-FLD0611B
           VALUE '3'.
       78  XPC-FLD0611E          VALUE 'N'.
       78  XPC-FLD0612B
           VALUE '78744622890006543691754359315'.
       78  XPC-FLD0612E          VALUE 'Y'.
       78  XPC-FLD0613B
           VALUE '22648276'.
       78  XPC-FLD0613E          VALUE 'N'.
       78  XPC-FLD0614B
           VALUE '6052981544136128984377'.
       78  XPC-FLD0614E          VALUE 'N'.
       78  XPC-FLD0615B
           VALUE '23341961'.
       78  XPC-FLD0615E          VALUE 'N'.
       78  XPC-FLD0616B
           VALUE '23'.
       78  XPC-FLD0616E          VALUE 'N'.
       78  XPC-FLD0617B
           VALUE '0'.
       78  XPC-FLD0617E          VALUE 'N'.
       78  XPC-FLD0618B
           VALUE '079'.
       78  XPC-FLD0618E          VALUE 'N'.
       78  XPC-FLD0619B
           VALUE '53429823777539313843'.
       78  XPC-FLD0619E          VALUE 'N'.
       78  XPC-FLD0620B
           VALUE '583959822349086421500174'.
       78  XPC-FLD0620E          VALUE 'N'.
       78  XPC-FLD0621B
           VALUE '734334021823122911598602513'.
       78  XPC-FLD0621E          VALUE 'N'.
       78  XPC-FLD0622B
           VALUE '954242174684x'.
       78  XPC-FLD0622E          VALUE 'N'.
       78  XPC-FLD0623B
           VALUE '641616922896418195095066'.
       78  XPC-FLD0623E          VALUE 'N'.
       78  XPC-FLD0624B
           VALUE '4356505095582531'.
       78  XPC-FLD0624E          VALUE 'N'.
       78  XPC-FLD0625B
           VALUE '78308435769811728739000500354'.
       78  XPC-FLD0625E          VALUE 'N'.
       78  XPC-FLD0626B
           VALUE '3742747793206s'.
       78  XPC-FLD0626E          VALUE 'N'.
       78  XPC-FLD0627B
           VALUE '23249882'.
       78  XPC-FLD0627E          VALUE 'N'.
       78  XPC-FLD0628B
           VALUE '29681727729'.
       78  XPC-FLD0628E          VALUE 'N'.
       78  XPC-FLD0629B
           VALUE '880171084163677411860149391031882'.
       78  XPC-FLD0629E          VALUE 'N'.
       78  XPC-FLD0630B
           VALUE '174519095249753304734'.
       78  XPC-FLD0630E          VALUE 'N'.
       78  XPC-FLD0631B
           VALUE '824634'.
       78  XPC-FLD0631E          VALUE 'N'.
       78  XPC-FLD0632B
           VALUE '5012280455704922587'.
       78  XPC-FLD0632E          VALUE 'N'.
       78  XPC-FLD0633B
           VALUE '405176751227'.
       78  XPC-FLD0633E          VALUE 'N'.
       78  XPC-FLD0634B
           VALUE '868098250115819156979655872420'.
       78  XPC-FLD0634E          VALUE 'N'.
       78  XPC-FLD0635B
           VALUE '558066570900784292498'.
       78  XPC-FLD0635E          VALUE 'N'.
       78  XPC-FLD0636B
           VALUE '15706'.
       78  XPC-FLD0636E          VALUE 'Y'.
       78  XPC-FLD0637B
           VALUE '53791487329715233167'.
       78  XPC-FLD0637E          VALUE 'N'.
       78  XPC-FLD0638B
           VALUE '9300997013279628244930563595546'.
       78  XPC-FLD0638E          VALUE 'N'.
       78  XPC-FLD0639B
           VALUE '9751092072024196699686626743641681969'.
       78  XPC-FLD0639E          VALUE 'Y'.
       78  XPC-FLD0640B
           VALUE '89710938089320346744415246575953928'.
       78  XPC-FLD0640E          VALUE 'N'.
       78  XPC-FLD0641B
           VALUE '802113336084028338834883697'.
       78  XPC-FLD0641E          VALUE 'N'.
       78  XPC-FLD0642B
           VALUE '5220924521868707701698'.
       78  XPC-FLD0642E          VALUE 'N'.
       78  XPC-FLD0643B
           VALUE '2890586849'.
       78  XPC-FLD0643E          VALUE 'N'.
       78  XPC-FLD0644B
           VALUE '92997460492260109532480782945640385'.
       78  XPC-FLD0644E          VALUE 'N'.
       78  XPC-FLD0645B
           VALUE '246821544'.
       78  XPC-FLD0645E          VALUE 'N'.
       78  XPC-FLD0646B
           VALUE '5883231932131506547456'.
       78  XPC-FLD0646E          VALUE 'N'.
       78  XPC-FLD0647B
           VALUE '6598931491456289340839020'.
       78  XPC-FLD0647E          VALUE 'N'.
       78  XPC-FLD0648B
           VALUE '634285861942461315643470'.
       78  XPC-FLD0648E          VALUE 'N'.
       78  XPC-FLD0649B
           VALUE '5034432631533975375'.
       78  XPC-FLD0649E          VALUE 'N'.
       78  XPC-FLD0650B
           VALUE '6715745920981104473110078'.
       78  XPC-FLD0650E          VALUE 'N'.
       78  XPC-FLD0651B
           VALUE '3209394637494v'.
       78  XPC-FLD0651E          VALUE 'N'.
       78  XPC-FLD0652B
           VALUE '20927047'.
       78  XPC-FLD0652E          VALUE 'N'.
       78  XPC-FLD0653B
           VALUE '398302'.
       78  XPC-FLD0653E          VALUE 'N'.
       78  XPC-FLD0654B
           VALUE '2781322351'.
       78  XPC-FLD0654E          VALUE 'Y'.
       78  XPC-FLD0655B
           VALUE '5949843308386091165206'.
       78  XPC-FLD0655E          VALUE 'N'.
       78  XPC-FLD0656B
           VALUE '650007677567117914204561'.
       78  XPC-FLD0656E          VALUE 'N'.
       78  XPC-FLD0657B
           VALUE '70469220160326710801212967'.
       78  XPC-FLD0657E          VALUE 'N'.
       78  XPC-FLD0658B
           VALUE '53680173247006238712'.
       78  XPC-FLD0658E          VALUE 'N'.
       78  XPC-FLD0659B
           VALUE '719555666672452026677575531'.
       78  XPC-FLD0659E          VALUE 'N'.
       78  XPC-FLD0660B
           VALUE '1546t'.
       78  XPC-FLD0660E          VALUE 'Y'.
       78  XPC-FLD0661B
           VALUE '570540954971062823984'.
       78  XPC-FLD0661E          VALUE 'N'.
       78  XPC-FLD0662B
           VALUE '6678282186476681732324323'.
       78  XPC-FLD0662E          VALUE 'N'.
       78  XPC-FLD0663B
           VALUE '889469232052811142885673234559362'.
       78  XPC-FLD0663E          VALUE 'Y'.
       78  XPC-FLD0664B
           VALUE '4405659595288489'.
       78  XPC-FLD0664E          VALUE 'N'.
       78  XPC-FLD0665B
           VALUE '6766161649406166886924393'.
       78  XPC-FLD0665E          VALUE 'N'.
       78  XPC-FLD0666B
           VALUE '05'.
       78  XPC-FLD0666E          VALUE 'Y'.
       78  XPC-FLD0667B
           VALUE '632143970272669745917437'.
       78  XPC-FLD0667E          VALUE 'N'.
       78  XPC-FLD0668B
           VALUE '5144628458672427460'.
       78  XPC-FLD0668E          VALUE 'N'.
       78  XPC-FLD0669B
           VALUE '395936640779813'.
       78  XPC-FLD0669E          VALUE 'N'.
       78  XPC-FLD0670B
           VALUE '164380926561097741789296833303524182'.
       78  XPC-FLD0670E          VALUE 'N'.
       78  XPC-FLD0671B
           VALUE '8090443'.
       78  XPC-FLD0671E          VALUE 'N'.
       78  XPC-FLD0672B
           VALUE '637002039815689924395769'.
       78  XPC-FLD0672E          VALUE 'Y'.
       78  XPC-FLD0673B
           VALUE '749211223'.
       78  XPC-FLD0673E          VALUE 'N'.
       78  XPC-FLD0674B
           VALUE '8225787711159490474084418921848'.
       78  XPC-FLD0674E          VALUE 'N'.
       78  XPC-FLD0675B
           VALUE '5083625274155812857'.
       78  XPC-FLD0675E          VALUE 'N'.
       78  XPC-FLD0676B
           VALUE '004664170342459437179627457226160913'.
       78  XPC-FLD0676E          VALUE 'N'.
       78  XPC-FLD0677B
           VALUE '708676445455624266891447859961772'.
       78  XPC-FLD0677E          VALUE 'N'.
       78  XPC-FLD0678B
           VALUE '85979366357613359468814451247453'.
       78  XPC-FLD0678E          VALUE 'N'.
       78  XPC-FLD0679B
           VALUE '44902781556612852'.
       78  XPC-FLD0679E          VALUE 'N'.
       78  XPC-FLD0680B
           VALUE '564571038982083600804'.
       78  XPC-FLD0680E          VALUE 'N'.
       78  XPC-FLD0681B
           VALUE '8213717547801553386932482681004'.
       78  XPC-FLD0681E          VALUE 'Y'.
       78  XPC-FLD0682B
           VALUE '5608815389721361803129542749957'.
       78  XPC-FLD0682E          VALUE 'N'.
       78  XPC-FLD0683B
           VALUE '5829822468269903673642'.
       78  XPC-FLD0683E          VALUE 'N'.
       78  XPC-FLD0684B
           VALUE '4383394737646870'.
       78  XPC-FLD0684E          VALUE 'Y'.
       78  XPC-FLD0685B
           VALUE '536985204876752143500539204978'.
       78  XPC-FLD0685E          VALUE 'N'.
       78  XPC-FLD0686B
           VALUE '0180741962593756744226'.
       78  XPC-FLD0686E          VALUE 'N'.
       78  XPC-FLD0687B
           VALUE '456697463326542715'.
       78  XPC-FLD0687E          VALUE 'N'.
       78  XPC-FLD0688B
           VALUE '0131'.
       78  XPC-FLD0688E          VALUE 'N'.
       78  XPC-FLD0689B
           VALUE '933318323051'.
       78  XPC-FLD0689E          VALUE 'N'.
       78  XPC-FLD0690B
           VALUE '280789595t'.
       78  XPC-FLD0690E          VALUE 'N'.
       78  XPC-FLD0691B
           VALUE '4747985190129339'.
       78  XPC-FLD0691E          VALUE 'N'.
       78  XPC-FLD0692B
           VALUE '278067587806645121846764'.
       78  XPC-FLD0692E          VALUE 'N'.
       78  XPC-FLD0693B
           VALUE 'p'.
       78  XPC-FLD0693E          VALUE 'Y'.
       78  XPC-FLD0694B
           VALUE '6'.
       78  XPC-FLD0694E          VALUE 'N'.
       78  XPC-FLD0695B
           VALUE '285416863016785357397587'.
       78  XPC-FLD0695E          VALUE 'N'.
       78  XPC-FLD0696B
           VALUE '318862710902'.
       78  XPC-FLD0696E          VALUE 'N'.
       78  XPC-FLD0697B
           VALUE '5576423548738693906'.
       78  XPC-FLD0697E          VALUE 'N'.
       78  XPC-FLD0698B
           VALUE '61s'.
       78  XPC-FLD0698E          VALUE 'N'.
       78  XPC-FLD0699B
           VALUE '63028840127729701681147'.
       78  XPC-FLD0699E          VALUE 'Y'.
       78  XPC-FLD0700B
           VALUE 't'.
       78  XPC-FLD0700E          VALUE 'N'.
       78  XPC-FLD0701B
           VALUE '824434325033338688548667501709982529'.
       78  XPC-FLD0701E          VALUE 'N'.
       78  XPC-FLD0702B
           VALUE '23424178'.
       78  XPC-FLD0702E          VALUE 'N'.
       78  XPC-FLD0703B
           VALUE '335267041235'.
       78  XPC-FLD0703E          VALUE 'N'.
       78  XPC-FLD0704B
           VALUE '08515404888861616825987'.
       78  XPC-FLD0704E          VALUE 'N'.
       78  XPC-FLD0705B
           VALUE '46999504797278301'.
       78  XPC-FLD0705E          VALUE 'Y'.
       78  XPC-FLD0706B
           VALUE '32739x'.
       78  XPC-FLD0706E          VALUE 'N'.
       78  XPC-FLD0707B
           VALUE '5129442198407349051'.
       78  XPC-FLD0707E          VALUE 'N'.
       78  XPC-FLD0708B
           VALUE '338347991943'.
       78  XPC-FLD0708E          VALUE 'N'.
       78  XPC-FLD0709B
           VALUE '37934595068404'.
       78  XPC-FLD0709E          VALUE 'N'.
       78  XPC-FLD0710B
           VALUE '322996288512'.
       78  XPC-FLD0710E          VALUE 'N'.
       78  XPC-FLD0711B
           VALUE '06'.
       78  XPC-FLD0711E          VALUE 'Y'.
       78  XPC-FLD0712B
           VALUE '55578253792134938s'.
       78  XPC-FLD0712E          VALUE 'N'.
       78  XPC-FLD0713B
           VALUE '71121008'.
       78  XPC-FLD0713E          VALUE 'N'.
       78  XPC-FLD0714B
           VALUE '3473859515252'.
       78  XPC-FLD0714E          VALUE 'Y'.
       78  XPC-FLD0715B
           VALUE '58869262308134147685'.
       78  XPC-FLD0715E          VALUE 'N'.
       78  XPC-FLD0716B
           VALUE '4094336916239737930141018296126276'.
       78  XPC-FLD0716E          VALUE 'N'.
       78  XPC-FLD0717B
           VALUE '7657108845718485268250219632'.
       78  XPC-FLD0717E          VALUE 'N'.
       78  XPC-FLD0718B
           VALUE '4283258317648062'.
       78  XPC-FLD0718E          VALUE 'N'.
       78  XPC-FLD0719B
           VALUE '239090461'.
       78  XPC-FLD0719E          VALUE 'N'.
       78  XPC-FLD0720B
           VALUE '404886229426392'.
       78  XPC-FLD0720E          VALUE 'N'.
       78  XPC-FLD0721B
           VALUE '45808242'.
       78  XPC-FLD0721E          VALUE 'N'.
       78  XPC-FLD0722B
           VALUE '7624904820924922808538326535'.
       78  XPC-FLD0722E          VALUE 'N'.
       78  XPC-FLD0723B
           VALUE '07'.
       78  XPC-FLD0723E          VALUE 'Y'.
       78  XPC-FLD0724B
           VALUE '4934011851187240393'.
       78  XPC-FLD0724E          VALUE 'N'.
       78  XPC-FLD0725B
           VALUE '4444137342530902'.
       78  XPC-FLD0725E          VALUE 'N'.
       78  XPC-FLD0726B
           VALUE '401820868675800'.
       78  XPC-FLD0726E          VALUE 'N'.
       78  XPC-FLD0727B
           VALUE '0896082861134319673904889'.
       78  XPC-FLD0727E          VALUE 'N'.
       78  XPC-FLD0728B
           VALUE '8107691565224u'.
       78  XPC-FLD0728E          VALUE 'N'.
       78  XPC-FLD0729B
           VALUE '795979478015814722415832704882'.
       78  XPC-FLD0729E          VALUE 'N'.
       78  XPC-FLD0730B
           VALUE '62944830238001500322119'.
       78  XPC-FLD0730E          VALUE 'N'.
       78  XPC-FLD0731B
           VALUE '4086517499647340789789'.
       78  XPC-FLD0731E          VALUE 'N'.
       78  XPC-FLD0732B
           VALUE '0313'.
       78  XPC-FLD0732E          VALUE 'N'.
       78  XPC-FLD0733B
           VALUE '965641152048700750127567'.
       78  XPC-FLD0733E          VALUE 'N'.
       78  XPC-FLD0734B
           VALUE '26'.
       78  XPC-FLD0734E          VALUE 'N'.
       78  XPC-FLD0735B
           VALUE '641708846027484955070190'.
       78  XPC-FLD0735E          VALUE 'N'.
       78  XPC-FLD0736B
           VALUE '072589764082146861645222974767'.
       78  XPC-FLD0736E          VALUE 'N'.
       78  XPC-FLD0737B
           VALUE '52244392r'.
       78  XPC-FLD0737E          VALUE 'N'.
       78  XPC-FLD0738B
           VALUE '967470462418068333221299326396547257'.
       78  XPC-FLD0738E          VALUE 'Y'.
       78  XPC-FLD0739B
           VALUE '45916207849346129r'.
       78  XPC-FLD0739E          VALUE 'N'.
       78  XPC-FLD0740B
           VALUE '072773632191726975291885537444614'.
       78  XPC-FLD0740E          VALUE 'N'.
       78  XPC-FLD0741B
           VALUE '644169236711'.
       78  XPC-FLD0741E          VALUE 'N'.
       78  XPC-FLD0742B
           VALUE '8889902186r'.
       78  XPC-FLD0742E          VALUE 'N'.
       78  XPC-FLD0743B
           VALUE '2956850'.
       78  XPC-FLD0743E          VALUE 'N'.
       78  XPC-FLD0744B
           VALUE '2695622879'.
       78  XPC-FLD0744E          VALUE 'N'.
       78  XPC-FLD0745B
           VALUE '13557'.
       78  XPC-FLD0745E          VALUE 'N'.
       78  XPC-FLD0746B
           VALUE '0231527099755997057'.
       78  XPC-FLD0746E          VALUE 'N'.
       78  XPC-FLD0747B
           VALUE '9169159297409485986918298294767737'.
       78  XPC-FLD0747E          VALUE 'Y'.
       78  XPC-FLD0748B
           VALUE '18118w'.
       78  XPC-FLD0748E          VALUE 'N'.
       78  XPC-FLD0749B
           VALUE '2760411381430374631233670697839'.
       78  XPC-FLD0749E          VALUE 'N'.
       78  XPC-FLD0750B
           VALUE '262999561973'.
       78  XPC-FLD0750E          VALUE 'N'.
       78  XPC-FLD0751B
           VALUE '1517p'.
       78  XPC-FLD0751E          VALUE 'N'.
       78  XPC-FLD0752B
           VALUE '91538508268330654527034084821934811'.
       78  XPC-FLD0752E          VALUE 'N'.
       78  XPC-FLD0753B
           VALUE '0'.
       78  XPC-FLD0753E          VALUE 'Y'.
       78  XPC-FLD0754B
           VALUE '961172589'.
       78  XPC-FLD0754E          VALUE 'N'.
       78  XPC-FLD0755B
           VALUE '53471365948751090643'.
       78  XPC-FLD0755E          VALUE 'N'.
       78  XPC-FLD0756B
           VALUE '1536v'.
       78  XPC-FLD0756E          VALUE 'Y'.
       78  XPC-FLD0757B
           VALUE '389641442'.
       78  XPC-FLD0757E          VALUE 'N'.
       78  XPC-FLD0758B
           VALUE '45592x'.
       78  XPC-FLD0758E          VALUE 'N'.
       78  XPC-FLD0759B
           VALUE '7622235272467824718001239148'.
       78  XPC-FLD0759E          VALUE 'N'.
       78  XPC-FLD0760B
           VALUE '9469886609778104836721013271017001'.
       78  XPC-FLD0760E          VALUE 'N'.
       78  XPC-FLD0761B
           VALUE '31926781976263429729811'.
       78  XPC-FLD0761E          VALUE 'N'.
       78  XPC-FLD0762B
           VALUE '259134361'.
       78  XPC-FLD0762E          VALUE 'Y'.
       78  XPC-FLD0763B
           VALUE '283690925904618196362605387461'.
       78  XPC-FLD0763E          VALUE 'N'.
       78  XPC-FLD0764B
           VALUE '055560951487484800'.
       78  XPC-FLD0764E          VALUE 'N'.
       78  XPC-FLD0765B
           VALUE '1212'.
       78  XPC-FLD0765E          VALUE 'Y'.
       78  XPC-FLD0766B
           VALUE '22949432'.
       78  XPC-FLD0766E          VALUE 'N'.
       78  XPC-FLD0767B
           VALUE 'p'.
       78  XPC-FLD0767E          VALUE 'N'.
       78  XPC-FLD0768B
           VALUE '0w'.
       78  XPC-FLD0768E          VALUE 'Y'.
       78  XPC-FLD0769B
           VALUE '3586597857349'.
       78  XPC-FLD0769E          VALUE 'N'.
       78  XPC-FLD0770B
           VALUE '54829803888151060764504'.
       78  XPC-FLD0770E          VALUE 'N'.
       78  XPC-FLD0771B
           VALUE '75991198999121606361129010'.
       78  XPC-FLD0771E          VALUE 'N'.
       78  XPC-FLD0772B
           VALUE '090893446885685'.
       78  XPC-FLD0772E          VALUE 'N'.
       78  XPC-FLD0773B
           VALUE '76783997423560348547511011929600499'.
       78  XPC-FLD0773E          VALUE 'N'.
       78  XPC-FLD0774B
           VALUE '242589104'.
       78  XPC-FLD0774E          VALUE 'N'.
       78  XPC-FLD0775B
           VALUE '83006085498341006789723905967548489'.
       78  XPC-FLD0775E          VALUE 'N'.
       78  XPC-FLD0776B
           VALUE '65983936382796708763014976284467'.
       78  XPC-FLD0776E          VALUE 'N'.
       78  XPC-FLD0777B
           VALUE '563799910901816754889'.
       78  XPC-FLD0777E          VALUE 'N'.
       78  XPC-FLD0778B
           VALUE '6562465464730475300569878527312539'.
       78  XPC-FLD0778E          VALUE 'N'.
       78  XPC-FLD0779B
           VALUE '47408985532610322x'.
       78  XPC-FLD0779E          VALUE 'N'.
       78  XPC-FLD0780B
           VALUE '8227596235369002419801631731388'.
       78  XPC-FLD0780E          VALUE 'Y'.
       78  XPC-FLD0781B
           VALUE '96874455399'.
       78  XPC-FLD0781E          VALUE 'N'.
       78  XPC-FLD0782B
           VALUE '974841984908992382763415207591606305'.
       78  XPC-FLD0782E          VALUE 'N'.
       78  XPC-FLD0783B
           VALUE '4236442572674454'.
       78  XPC-FLD0783E          VALUE 'N'.
       78  XPC-FLD0784B
           VALUE '1401654002801979714825902150218'.
       78  XPC-FLD0784E          VALUE 'N'.
       78  XPC-FLD0785B
           VALUE '393300524050'.
       78  XPC-FLD0785E          VALUE 'N'.
       78  XPC-FLD0786B
           VALUE '85407905679605532414111479511119'.
       78  XPC-FLD0786E          VALUE 'N'.
       78  XPC-FLD0787B
           VALUE '0464284'.
       78  XPC-FLD0787E          VALUE 'N'.
       78  XPC-FLD0788B
           VALUE '77898336505928358503125785715'.
       78  XPC-FLD0788E          VALUE 'N'.
       78  XPC-FLD0789B
           VALUE '6604278565132847496040994'.
       78  XPC-FLD0789E          VALUE 'N'.
       78  XPC-FLD0790B
           VALUE '3169436866r'.
       78  XPC-FLD0790E          VALUE 'N'.
       78  XPC-FLD0791B
           VALUE '7382741348868294886190710712'.
       78  XPC-FLD0791E          VALUE 'N'.
       78  XPC-FLD0792B
           VALUE '37982443954012'.
       78  XPC-FLD0792E          VALUE 'N'.
       78  XPC-FLD0793B
           VALUE '559177637820166807230'.
       78  XPC-FLD0793E          VALUE 'N'.
       78  XPC-FLD0794B
           VALUE 'y'.
       78  XPC-FLD0794E          VALUE 'N'.
       78  XPC-FLD0795B
           VALUE '334944006958'.
       78  XPC-FLD0795E          VALUE 'N'.
       78  XPC-FLD0796B
           VALUE '653841465915909014761098205'.
       78  XPC-FLD0796E          VALUE 'N'.
       78  XPC-FLD0797B
           VALUE '3487774860252'.
       78  XPC-FLD0797E          VALUE 'N'.
       78  XPC-FLD0798B
           VALUE '3415780672379371043808250'.
       78  XPC-FLD0798E          VALUE 'N'.
       78  XPC-FLD0799B
           VALUE '24239306208646738127'.
       78  XPC-FLD0799E          VALUE 'N'.
       78  XPC-FLD0800B
           VALUE '4337360023'.
       78  XPC-FLD0800E          VALUE 'N'.
       78  XPC-FLD0801B
           VALUE '9827967002397862694706986985693220049'.
       78  XPC-FLD0801E          VALUE 'Y'.
       78  XPC-FLD0802B
           VALUE '059390909987167776897365456534317'.
       78  XPC-FLD0802E          VALUE 'N'.
       78  XPC-FLD0803B
           VALUE '555623043499399698487'.
       78  XPC-FLD0803E          VALUE 'N'.
       78  XPC-FLD0804B
           VALUE '0'.
       78  XPC-FLD0804E          VALUE 'Y'.
       78  XPC-FLD0805B
           VALUE '479868190466873291'.
       78  XPC-FLD0805E          VALUE 'N'.
       78  XPC-FLD0806B
           VALUE '2580784568425466'.
       78  XPC-FLD0806E          VALUE 'N'.
       78  XPC-FLD0807B
           VALUE '09p'.
       78  XPC-FLD0807E          VALUE 'Y'.
       78  XPC-FLD0808B
           VALUE '45744550475690953'.
       78  XPC-FLD0808E          VALUE 'N'.
       78  XPC-FLD0809B
           VALUE '4404211618158995'.
       78  XPC-FLD0809E          VALUE 'N'.
       78  XPC-FLD0810B
           VALUE '21294550'.
       78  XPC-FLD0810E          VALUE 'N'.
       78  XPC-FLD0811B
           VALUE '5454913861947337423021251372119877487'.
       78  XPC-FLD0811E          VALUE 'N'.
       78  XPC-FLD0812B
           VALUE '5678497418'.
       78  XPC-FLD0812E          VALUE 'N'.
       78  XPC-FLD0813B
           VALUE '2911313640p'.
       78  XPC-FLD0813E          VALUE 'Y'.
       78  XPC-FLD0814B
           VALUE '7525119595496631362479433846'.
       78  XPC-FLD0814E          VALUE 'N'.
       78  XPC-FLD0815B
           VALUE '714304561558653405839436344638434439'.
       78  XPC-FLD0815E          VALUE 'N'.
       78  XPC-FLD0816B
           VALUE '885915144904112161761133847903693'.
       78  XPC-FLD0816E          VALUE 'Y'.
       78  XPC-FLD0817B
           VALUE '0322267276165150162'.
       78  XPC-FLD0817E          VALUE 'N'.
       78  XPC-FLD0818B
           VALUE '409797454111609544843745425'.
       78  XPC-FLD0818E          VALUE 'N'.
       78  XPC-FLD0819B
           VALUE '08r'.
       78  XPC-FLD0819E          VALUE 'N'.
       78  XPC-FLD0820B
           VALUE '956537139953218984445015848905313760'.
       78  XPC-FLD0820E          VALUE 'N'.
       78  XPC-FLD0821B
           VALUE '16692042005410'.
       78  XPC-FLD0821E          VALUE 'N'.
       78  XPC-FLD0822B
           VALUE '1092'.
       78  XPC-FLD0822E          VALUE 'Y'.
       78  XPC-FLD0823B
           VALUE '484310601769554'.
       78  XPC-FLD0823E          VALUE 'N'.
       78  XPC-FLD0824B
           VALUE '73189644908504480898002'.
       78  XPC-FLD0824E          VALUE 'N'.
       78  XPC-FLD0825B
           VALUE '17069r'.
       78  XPC-FLD0825E          VALUE 'N'.
       78  XPC-FLD0826B
           VALUE '48057855720973591v'.
       78  XPC-FLD0826E          VALUE 'N'.
       78  XPC-FLD0827B
           VALUE '46910500983725489'.
       78  XPC-FLD0827E          VALUE 'N'.
       78  XPC-FLD0828B
           VALUE '1501v'.
       78  XPC-FLD0828E          VALUE 'Y'.
       78  XPC-FLD0829B
           VALUE '944972866636283770347403930829'.
       78  XPC-FLD0829E          VALUE 'N'.
       78  XPC-FLD0830B
           VALUE '565534908381171491839'.
       78  XPC-FLD0830E          VALUE 'N'.
       78  XPC-FLD0831B
           VALUE '6602934475151655210356515'.
       78  XPC-FLD0831E          VALUE 'N'.
       78  XPC-FLD0832B
           VALUE '419047953539795'.
       78  XPC-FLD0832E          VALUE 'N'.
       78  XPC-FLD0833B
           VALUE '6657954482808921498060427'.
       78  XPC-FLD0833E          VALUE 'N'.
       78  XPC-FLD0834B
           VALUE '711918981740956136050613167'.
       78  XPC-FLD0834E          VALUE 'Y'.
       78  XPC-FLD0835B
           VALUE '90696211292909090229130697187'.
       78  XPC-FLD0835E          VALUE 'N'.
       78  XPC-FLD0836B
           VALUE '1479247899592904941896'.
       78  XPC-FLD0836E          VALUE 'N'.
       78  XPC-FLD0837B
           VALUE '2913777651p'.
       78  XPC-FLD0837E          VALUE 'N'.
       78  XPC-FLD0838B
           VALUE '54394205787057270376334726969'.
       78  XPC-FLD0838E          VALUE 'N'.
       78  XPC-FLD0839B
           VALUE '5300514'.
       78  XPC-FLD0839E          VALUE 'N'.
       78  XPC-FLD0840B
           VALUE '1153'.
       78  XPC-FLD0840E          VALUE 'N'.
       78  XPC-FLD0841B
           VALUE '992981736583248397742806176703'.
       78  XPC-FLD0841E          VALUE 'N'.
       78  XPC-FLD0842B
           VALUE '54030708425366313836265591069241055'.
       78  XPC-FLD0842E          VALUE 'N'.
       78  XPC-FLD0843B
           VALUE '31166916723'.
       78  XPC-FLD0843E          VALUE 'N'.
       78  XPC-FLD0844B
           VALUE '44793585873382490'.
       78  XPC-FLD0844E          VALUE 'N'.
       78  XPC-FLD0845B
           VALUE '555020066479501195111220'.
       78  XPC-FLD0845E          VALUE 'N'.
       78  XPC-FLD0846B
           VALUE '45502277490866085'.
       78  XPC-FLD0846E          VALUE 'N'.
       78  XPC-FLD0847B
           VALUE '29702735772'.
       78  XPC-FLD0847E          VALUE 'N'.
       78  XPC-FLD0848B
           VALUE '631805001566330881601629698'.
       78  XPC-FLD0848E          VALUE 'N'.
       78  XPC-FLD0849B
           VALUE '7527838155592773139446194363'.
       78  XPC-FLD0849E          VALUE 'Y'.
       78  XPC-FLD0850B
           VALUE '213070204849290532925563'.
       78  XPC-FLD0850E          VALUE 'N'.
       78  XPC-FLD0851B
           VALUE '22519773'.
       78  XPC-FLD0851E          VALUE 'N'.
       78  XPC-FLD0852B
           VALUE '2868257988'.
       78  XPC-FLD0852E          VALUE 'Y'.
       78  XPC-FLD0853B
           VALUE '0'.
       78  XPC-FLD0853E          VALUE 'N'.
       78  XPC-FLD0854B
           VALUE '9'.
       78  XPC-FLD0854E          VALUE 'N'.
       78  XPC-FLD0855B
           VALUE '167054'.
       78  XPC-FLD0855E          VALUE 'Y'.
       78  XPC-FLD0856B
           VALUE '3084r'.
       78  XPC-FLD0856E          VALUE 'N'.
       78  XPC-FLD0857B
           VALUE '10'.
       78  XPC-FLD0857E          VALUE 'N'.
       78  XPC-FLD0858B
           VALUE '30966624473'.
       78  XPC-FLD0858E          VALUE 'Y'.
       78  XPC-FLD0859B
           VALUE '971628168143447767945986015547532588'.
       78  XPC-FLD0859E          VALUE 'N'.
       78  XPC-FLD0860B
           VALUE '310782983915'.
       78  XPC-FLD0860E          VALUE 'N'.
       78  XPC-FLD0861B
           VALUE '1091'.
       78  XPC-FLD0861E          VALUE 'Y'.
       78  XPC-FLD0862B
           VALUE '568978369365978243753'.
       78  XPC-FLD0862E          VALUE 'N'.
       78  XPC-FLD0863B
           VALUE '5171345793694755750'.
       78  XPC-FLD0863E          VALUE 'N'.
       78  XPC-FLD0864B
           VALUE '879130787212824560405977081245509'.
       78  XPC-FLD0864E          VALUE 'Y'.
       78  XPC-FLD0865B
           VALUE '327'.
       78  XPC-FLD0865E          VALUE 'N'.
       78  XPC-FLD0866B
           VALUE '0973651490201067931957936707476620'.
       78  XPC-FLD0866E          VALUE 'N'.
       78  XPC-FLD0867B
           VALUE '728938616966572774526298417'.
       78  XPC-FLD0867E          VALUE 'N'.
       78  XPC-FLD0868B
           VALUE '5841479951825634534534'.
       78  XPC-FLD0868E          VALUE 'N'.
       78  XPC-FLD0869B
           VALUE '6815782206919422936408636'.
       78  XPC-FLD0869E          VALUE 'N'.
       78  XPC-FLD0870B
           VALUE '657570531523696821807334'.
       78  XPC-FLD0870E          VALUE 'N'.
       78  XPC-FLD0871B
           VALUE '5744601464762396635'.
       78  XPC-FLD0871E          VALUE 'N'.
       78  XPC-FLD0872B
           VALUE '45914011344767276'.
       78  XPC-FLD0872E          VALUE 'N'.
       78  XPC-FLD0873B
           VALUE '15597'.
       78  XPC-FLD0873E          VALUE 'Y'.
       78  XPC-FLD0874B
           VALUE '1881063'.
       78  XPC-FLD0874E          VALUE 'N'.
       78  XPC-FLD0875B
           VALUE '32'.
       78  XPC-FLD0875E          VALUE 'N'.
       78  XPC-FLD0876B
           VALUE '792823887607293276147402139031'.
       78  XPC-FLD0876E          VALUE 'N'.
       78  XPC-FLD0877B
           VALUE '721900468299383535342172'.
       78  XPC-FLD0877E          VALUE 'N'.
       78  XPC-FLD0878B
           VALUE '242827678838084315415812843661207'.
       78  XPC-FLD0878E          VALUE 'N'.
       78  XPC-FLD0879B
           VALUE '85230962794591269560129376259283'.
       78  XPC-FLD0879E          VALUE 'Y'.
       78  XPC-FLD0880B
           VALUE '4839436714022342976684717541503'.
       78  XPC-FLD0880E          VALUE 'N'.
       78  XPC-FLD0881B
           VALUE '2105193947194'.
       78  XPC-FLD0881E          VALUE 'N'.
       78  XPC-FLD0882B
           VALUE '6778329518186110291821933'.
       78  XPC-FLD0882E          VALUE 'Y'.
       78  XPC-FLD0883B
           VALUE '9754132777012324284626648395'.
       78  XPC-FLD0883E          VALUE 'N'.
       78  XPC-FLD0884B
           VALUE '6490392032439449247535630967'.
       78  XPC-FLD0884E          VALUE 'N'.
       78  XPC-FLD0885B
           VALUE '0207r'.
       78  XPC-FLD0885E          VALUE 'N'.
       78  XPC-FLD0886B
           VALUE '0059506907030w'.
       78  XPC-FLD0886E          VALUE 'N'.
       78  XPC-FLD0887B
           VALUE '9306168018675709582439026235078'.
       78  XPC-FLD0887E          VALUE 'N'.
       78  XPC-FLD0888B
           VALUE '239444618'.
       78  XPC-FLD0888E          VALUE 'Y'.
       78  XPC-FLD0889B
           VALUE '286280324389502793813733205752214417'.
       78  XPC-FLD0889E          VALUE 'N'.
       78  XPC-FLD0890B
           VALUE '721613583480198661490589984'.
       78  XPC-FLD0890E          VALUE 'N'.
       78  XPC-FLD0891B
           VALUE '735270814161123614247195234'.
       78  XPC-FLD0891E          VALUE 'N'.
       78  XPC-FLD0892B
           VALUE '556'.
       78  XPC-FLD0892E          VALUE 'N'.
       78  XPC-FLD0893B
           VALUE '90'.
       78  XPC-FLD0893E          VALUE 'N'.
       78  XPC-FLD0894B
           VALUE '654309128000748152942378'.
       78  XPC-FLD0894E          VALUE 'N'.
       78  XPC-FLD0895B
           VALUE '2889386308'.
       78  XPC-FLD0895E          VALUE 'N'.
       78  XPC-FLD0896B
           VALUE 'p'.
       78  XPC-FLD0896E          VALUE 'N'.
       78  XPC-FLD0897B
           VALUE '4404922200833586'.
       78  XPC-FLD0897E          VALUE 'N'.
       78  XPC-FLD0898B
           VALUE '8343519'.
       78  XPC-FLD0898E          VALUE 'N'.
       78  XPC-FLD0899B
           VALUE '5130606210827635'.
       78  XPC-FLD0899E          VALUE 'N'.
       78  XPC-FLD0900B
           VALUE '1847103'.
       78  XPC-FLD0900E          VALUE 'N'.
       78  XPC-FLD0901B
           VALUE '1289396298369796609307513790554367005'.
       78  XPC-FLD0901E          VALUE 'N'.
       78  XPC-FLD0902B
           VALUE '5131049785081560396'.
       78  XPC-FLD0902E          VALUE 'N'.
       78  XPC-FLD0903B
           VALUE '0v'.
       78  XPC-FLD0903E          VALUE 'Y'.
       78  XPC-FLD0904B
           VALUE 'w'.
       78  XPC-FLD0904E          VALUE 'N'.
       78  XPC-FLD0905B
           VALUE '7075373564412'.
       78  XPC-FLD0905E          VALUE 'N'.
       78  XPC-FLD0906B
           VALUE '0'.
       78  XPC-FLD0906E          VALUE 'Y'.
       78  XPC-FLD0907B
           VALUE '530207411746521324809'.
       78  XPC-FLD0907E          VALUE 'N'.
       78  XPC-FLD0908B
           VALUE '8642393083548316472445662839163561'.
       78  XPC-FLD0908E          VALUE 'N'.
       78  XPC-FLD0909B
           VALUE '0'.
       78  XPC-FLD0909E          VALUE 'Y'.
       78  XPC-FLD0910B
           VALUE '2257333765600096867487422969134058'.
       78  XPC-FLD0910E          VALUE 'N'.
       78  XPC-FLD0911B
           VALUE '3765938103187097346508025840'.
       78  XPC-FLD0911E          VALUE 'N'.
       78  XPC-FLD0912B
           VALUE '0'.
       78  XPC-FLD0912E          VALUE 'Y'.
       78  XPC-FLD0913B
           VALUE '325'.
       78  XPC-FLD0913E          VALUE 'N'.
       78  XPC-FLD0914B
           VALUE '7400121849171126253708052900037643855'.
       78  XPC-FLD0914E          VALUE 'N'.
       78  XPC-FLD0915B
           VALUE '1130'.
       78  XPC-FLD0915E          VALUE 'Y'.
       78  XPC-FLD0916B
           VALUE '4372777685598984'.
       78  XPC-FLD0916E          VALUE 'N'.
       78  XPC-FLD0917B
           VALUE '1084'.
       78  XPC-FLD0917E          VALUE 'N'.
       78  XPC-FLD0918B
           VALUE '569310510294893204244'.
       78  XPC-FLD0918E          VALUE 'N'.
       78  XPC-FLD0919B
           VALUE 'v'.
       78  XPC-FLD0919E          VALUE 'N'.
       78  XPC-FLD0920B
           VALUE '6698607602658151664433262'.
       78  XPC-FLD0920E          VALUE 'N'.
       78  XPC-FLD0921B
           VALUE '0'.
       78  XPC-FLD0921E          VALUE 'Y'.
       78  XPC-FLD0922B
           VALUE '18331x'.
       78  XPC-FLD0922E          VALUE 'N'.
       78  XPC-FLD0923B
           VALUE '0892'.
       78  XPC-FLD0923E          VALUE 'N'.
       78  XPC-FLD0924B
           VALUE '8304134742864166529585645548650'.
       78  XPC-FLD0924E          VALUE 'Y'.
       78  XPC-FLD0925B
           VALUE '6'.
       78  XPC-FLD0925E          VALUE 'N'.
       78  XPC-FLD0926B
           VALUE '20687721r'.
       78  XPC-FLD0926E          VALUE 'N'.
       78  XPC-FLD0927B
           VALUE '5121865708750312359'.
       78  XPC-FLD0927E          VALUE 'N'.
       78  XPC-FLD0928B
           VALUE '255169492'.
       78  XPC-FLD0928E          VALUE 'N'.
       78  XPC-FLD0929B
           VALUE '713937683093887626162299397'.
       78  XPC-FLD0929E          VALUE 'N'.
       78  XPC-FLD0930B
           VALUE '5915948649192320925289'.
       78  XPC-FLD0930E          VALUE 'N'.
       78  XPC-FLD0931B
           VALUE '124377459'.
       78  XPC-FLD0931E          VALUE 'N'.
       78  XPC-FLD0932B
           VALUE '0116711468219923287'.
       78  XPC-FLD0932E          VALUE 'N'.
       78  XPC-FLD0933B
           VALUE '336212612034'.
       78  XPC-FLD0933E          VALUE 'N'.
       78  XPC-FLD0934B
           VALUE '237750091'.
       78  XPC-FLD0934E          VALUE 'N'.
       78  XPC-FLD0935B
           VALUE '485384635684275264'.
       78  XPC-FLD0935E          VALUE 'N'.
       78  XPC-FLD0936B
           VALUE '952998853185021421730027668672846630'.
       78  XPC-FLD0936E          VALUE 'Y'.
       78  XPC-FLD0937B
           VALUE '4'.
       78  XPC-FLD0937E          VALUE 'N'.
       78  XPC-FLD0938B
           VALUE '07520562026683963451729041'.
       78  XPC-FLD0938E          VALUE 'N'.
       78  XPC-FLD0939B
           VALUE 'p'.
       78  XPC-FLD0939E          VALUE 'Y'.
       78  XPC-FLD0940B
           VALUE '420205546087499958'.
       78  XPC-FLD0940E          VALUE 'N'.
       78  XPC-FLD0941B
           VALUE '0154777002907'.
       78  XPC-FLD0941E          VALUE 'N'.
       78  XPC-FLD0942B
           VALUE '92270492697630424050458941565011627'.
       78  XPC-FLD0942E          VALUE 'Y'.
       78  XPC-FLD0943B
           VALUE '9698175'.
       78  XPC-FLD0943E          VALUE 'N'.
       78  XPC-FLD0944B
           VALUE '26005609t'.
       78  XPC-FLD0944E          VALUE 'N'.
       78  XPC-FLD0945B
           VALUE '9639552190838518'.
       78  XPC-FLD0945E          VALUE 'N'.
       78  XPC-FLD0946B
           VALUE '285407519811451561686510558502050116'.
       78  XPC-FLD0946E          VALUE 'N'.
       78  XPC-FLD0947B
           VALUE '6720279273588082815549249'.
       78  XPC-FLD0947E          VALUE 'N'.
       78  XPC-FLD0948B
           VALUE '7581536805549627281493485497'.
       78  XPC-FLD0948E          VALUE 'N'.
       78  XPC-FLD0949B
           VALUE '89772746643169742'.
       78  XPC-FLD0949E          VALUE 'N'.
       78  XPC-FLD0950B
           VALUE '9466572989771413480277234393870459'.
       78  XPC-FLD0950E          VALUE 'N'.
       78  XPC-FLD0951B
           VALUE '7459913492992847894313968026'.
       78  XPC-FLD0951E          VALUE 'Y'.
       78  XPC-FLD0952B
           VALUE '65'.
       78  XPC-FLD0952E          VALUE 'N'.
       78  XPC-FLD0953B
           VALUE '5187948954462912461'.
       78  XPC-FLD0953E          VALUE 'N'.
       78  XPC-FLD0954B
           VALUE '970603521071659591790137255884474143'.
       78  XPC-FLD0954E          VALUE 'Y'.
       78  XPC-FLD0955B
           VALUE '5341017709695240897178791783518'.
       78  XPC-FLD0955E          VALUE 'N'.
       78  XPC-FLD0956B
           VALUE '97384559702281070479269828'.
       78  XPC-FLD0956E          VALUE 'N'.
       78  XPC-FLD0957B
           VALUE '1212'.
       78  XPC-FLD0957E          VALUE 'Y'.
       78  XPC-FLD0958B
           VALUE '4387549590870288'.
       78  XPC-FLD0958E          VALUE 'N'.
       78  XPC-FLD0959B
           VALUE '1'.
       78  XPC-FLD0959E          VALUE 'N'.
       78  XPC-FLD0960B
           VALUE '0'.
       78  XPC-FLD0960E          VALUE 'Y'.
       78  XPC-FLD0961B
           VALUE '0055'.
       78  XPC-FLD0961E          VALUE 'N'.
       78  XPC-FLD0962B
           VALUE '6826560363239254262940346'.
       78  XPC-FLD0962E          VALUE 'N'.
       78  XPC-FLD0963B
           VALUE '6579508606108431242392875'.
       78  XPC-FLD0963E          VALUE 'N'.
       78  XPC-FLD0964B
           VALUE '0399362942016605604323'.
       78  XPC-FLD0964E          VALUE 'N'.
       78  XPC-FLD0965B
           VALUE '1'.
       78  XPC-FLD0965E          VALUE 'N'.
       78  XPC-FLD0966B
           VALUE '0005571'.
       78  XPC-FLD0966E          VALUE 'N'.
       78  XPC-FLD0967B
           VALUE '3560456473147'.
       78  XPC-FLD0967E          VALUE 'N'.
       78  XPC-FLD0968B
           VALUE '553q'.
       78  XPC-FLD0968E          VALUE 'N'.
       78  XPC-FLD0969B
           VALUE '5945236920989867723715'.
       78  XPC-FLD0969E          VALUE 'N'.
       78  XPC-FLD0970B
           VALUE '433217720233246760537693012156523765'.
       78  XPC-FLD0970E          VALUE 'N'.
       78  XPC-FLD0971B
           VALUE '402866616015322'.
       78  XPC-FLD0971E          VALUE 'N'.
       78  XPC-FLD0972B
           VALUE '13649'.
       78  XPC-FLD0972E          VALUE 'Y'.
       78  XPC-FLD0973B
           VALUE '8420775282429751358819203232997'.
       78  XPC-FLD0973E          VALUE 'N'.
       78  XPC-FLD0974B
           VALUE '07v'.
       78  XPC-FLD0974E          VALUE 'N'.
       78  XPC-FLD0975B
           VALUE '329183574054'.
       78  XPC-FLD0975E          VALUE 'N'.
       78  XPC-FLD0976B
           VALUE '5189195631532426046'.
       78  XPC-FLD0976E          VALUE 'N'.
       78  XPC-FLD0977B
           VALUE '0657773350998w'.
       78  XPC-FLD0977E          VALUE 'N'.
       78  XPC-FLD0978B
           VALUE '26365113312582y'.
       78  XPC-FLD0978E          VALUE 'N'.
       78  XPC-FLD0979B
           VALUE '38851072771966'.
       78  XPC-FLD0979E          VALUE 'N'.
       78  XPC-FLD0980B
           VALUE '647159056743324437308229'.
       78  XPC-FLD0980E          VALUE 'N'.
       78  XPC-FLD0981B
           VALUE '360278478276r'.
       78  XPC-FLD0981E          VALUE 'N'.
       78  XPC-FLD0982B
           VALUE '30653235443'.
       78  XPC-FLD0982E          VALUE 'N'.
       78  XPC-FLD0983B
           VALUE '882516211995383510538363225350622087'.
       78  XPC-FLD0983E          VALUE 'N'.
       78  XPC-FLD0984B
           VALUE '4457843883822408592'.
       78  XPC-FLD0984E          VALUE 'N'.
       78  XPC-FLD0985B
           VALUE '496108848273749947698929645412135'.
       78  XPC-FLD0985E          VALUE 'N'.
       78  XPC-FLD0986B
           VALUE '8'.
       78  XPC-FLD0986E          VALUE 'N'.
       78  XPC-FLD0987B
           VALUE '84253493742279825972518736421079'.
       78  XPC-FLD0987E          VALUE 'N'.
       78  XPC-FLD0988B
           VALUE '18152p'.
       78  XPC-FLD0988E          VALUE 'N'.
       78  XPC-FLD0989B
           VALUE '5932140179792923634499'.
       78  XPC-FLD0989E          VALUE 'N'.
       78  XPC-FLD0990B
           VALUE '2089861'.
       78  XPC-FLD0990E          VALUE 'Y'.
       78  XPC-FLD0991B
           VALUE '404273028987099'.
       78  XPC-FLD0991E          VALUE 'N'.
       78  XPC-FLD0992B
           VALUE '518805985017170789852514182650362'.
       78  XPC-FLD0992E          VALUE 'N'.
       78  XPC-FLD0993B
           VALUE '1132'.
       78  XPC-FLD0993E          VALUE 'Y'.
       78  XPC-FLD0994B
           VALUE '48479340835318215t'.
       78  XPC-FLD0994E          VALUE 'N'.
       78  XPC-FLD0995B
           VALUE '1888258'.
       78  XPC-FLD0995E          VALUE 'N'.
       78  XPC-FLD0996B
           VALUE '0505105346267128441084558'.
       78  XPC-FLD0996E          VALUE 'N'.
       78  XPC-FLD0997B
           VALUE '0011799546758455291'.
       78  XPC-FLD0997E          VALUE 'N'.
       78  XPC-FLD0998B
           VALUE 's'.
       78  XPC-FLD0998E          VALUE 'N'.
       78  XPC-FLD0999B
           VALUE 'p'.
       78  XPC-FLD0999E          VALUE 'Y'.


       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           SUBTRACT FLD0500A        FROM FLD0500B.
           ADD FLD0501A        TO FLD0501B
               ON SIZE ERROR MOVE 'Y' TO FLD0501E.
           SUBTRACT FLD0502A        FROM FLD0502B.
           ADD FLD0503A        TO FLD0503B.
           SUBTRACT FLD0504A        FROM FLD0504B
               ON SIZE ERROR MOVE 'Y' TO FLD0504E.
           ADD FLD0505A        TO FLD0505B.
           SUBTRACT FLD0506A        FROM FLD0506B.
           ADD FLD0507A        TO FLD0507B
               ON SIZE ERROR MOVE 'Y' TO FLD0507E.
           SUBTRACT FLD0508A        FROM FLD0508B.
           ADD FLD0509A        TO FLD0509B.
           SUBTRACT FLD0510A        FROM FLD0510B
               ON SIZE ERROR MOVE 'Y' TO FLD0510E.
           ADD FLD0511A        TO FLD0511B.
           SUBTRACT FLD0512A        FROM FLD0512B.
           ADD FLD0513A        TO FLD0513B
               ON SIZE ERROR MOVE 'Y' TO FLD0513E.
           SUBTRACT FLD0514A        FROM FLD0514B.
           ADD FLD0515A        TO FLD0515B.
           SUBTRACT FLD0516A        FROM FLD0516B
               ON SIZE ERROR MOVE 'Y' TO FLD0516E.
           ADD FLD0517A        TO FLD0517B.
           SUBTRACT FLD0518A        FROM FLD0518B.
           ADD FLD0519A        TO FLD0519B
               ON SIZE ERROR MOVE 'Y' TO FLD0519E.
           SUBTRACT FLD0520A        FROM FLD0520B.
           ADD FLD0521A        TO FLD0521B.
           SUBTRACT FLD0522A        FROM FLD0522B
               ON SIZE ERROR MOVE 'Y' TO FLD0522E.
           ADD FLD0523A        TO FLD0523B.
           SUBTRACT FLD0524A        FROM FLD0524B.
           ADD FLD0525A        TO FLD0525B
               ON SIZE ERROR MOVE 'Y' TO FLD0525E.
           SUBTRACT FLD0526A        FROM FLD0526B.
           ADD FLD0527A        TO FLD0527B.
           SUBTRACT FLD0528A        FROM FLD0528B
               ON SIZE ERROR MOVE 'Y' TO FLD0528E.
           ADD FLD0529A        TO FLD0529B.
           SUBTRACT FLD0530A        FROM FLD0530B.
           ADD FLD0531A        TO FLD0531B
               ON SIZE ERROR MOVE 'Y' TO FLD0531E.
           SUBTRACT FLD0532A        FROM FLD0532B.
           ADD FLD0533A        TO FLD0533B.
           SUBTRACT FLD0534A        FROM FLD0534B
               ON SIZE ERROR MOVE 'Y' TO FLD0534E.
           ADD FLD0535A        TO FLD0535B.
           SUBTRACT FLD0536A        FROM FLD0536B.
           ADD FLD0537A        TO FLD0537B
               ON SIZE ERROR MOVE 'Y' TO FLD0537E.
           SUBTRACT FLD0538A        FROM FLD0538B.
           ADD FLD0539A        TO FLD0539B.
           SUBTRACT FLD0540A        FROM FLD0540B
               ON SIZE ERROR MOVE 'Y' TO FLD0540E.
           ADD FLD0541A        TO FLD0541B.
           SUBTRACT FLD0542A        FROM FLD0542B.
           ADD FLD0543A        TO FLD0543B
               ON SIZE ERROR MOVE 'Y' TO FLD0543E.
           SUBTRACT FLD0544A        FROM FLD0544B.
           ADD FLD0545A        TO FLD0545B.
           SUBTRACT FLD0546A        FROM FLD0546B
               ON SIZE ERROR MOVE 'Y' TO FLD0546E.
           ADD FLD0547A        TO FLD0547B.
           SUBTRACT FLD0548A        FROM FLD0548B.
           ADD FLD0549A        TO FLD0549B
               ON SIZE ERROR MOVE 'Y' TO FLD0549E.
           SUBTRACT FLD0550A        FROM FLD0550B.
           ADD FLD0551A        TO FLD0551B.
           SUBTRACT FLD0552A        FROM FLD0552B
               ON SIZE ERROR MOVE 'Y' TO FLD0552E.
           ADD FLD0553A        TO FLD0553B.
           SUBTRACT FLD0554A        FROM FLD0554B.
           ADD FLD0555A        TO FLD0555B
               ON SIZE ERROR MOVE 'Y' TO FLD0555E.
           SUBTRACT FLD0556A        FROM FLD0556B.
           ADD FLD0557A        TO FLD0557B.
           SUBTRACT FLD0558A        FROM FLD0558B
               ON SIZE ERROR MOVE 'Y' TO FLD0558E.
           ADD FLD0559A        TO FLD0559B.
           SUBTRACT FLD0560A        FROM FLD0560B.
           ADD FLD0561A        TO FLD0561B
               ON SIZE ERROR MOVE 'Y' TO FLD0561E.
           SUBTRACT FLD0562A        FROM FLD0562B.
           ADD FLD0563A        TO FLD0563B.
           SUBTRACT FLD0564A        FROM FLD0564B
               ON SIZE ERROR MOVE 'Y' TO FLD0564E.
           ADD FLD0565A        TO FLD0565B.
           SUBTRACT FLD0566A        FROM FLD0566B.
           ADD FLD0567A        TO FLD0567B
               ON SIZE ERROR MOVE 'Y' TO FLD0567E.
           SUBTRACT FLD0568A        FROM FLD0568B.
           ADD FLD0569A        TO FLD0569B.
           SUBTRACT FLD0570A        FROM FLD0570B
               ON SIZE ERROR MOVE 'Y' TO FLD0570E.
           ADD FLD0571A        TO FLD0571B.
           SUBTRACT FLD0572A        FROM FLD0572B.
           ADD FLD0573A        TO FLD0573B
               ON SIZE ERROR MOVE 'Y' TO FLD0573E.
           SUBTRACT FLD0574A        FROM FLD0574B.
           ADD FLD0575A        TO FLD0575B.
           SUBTRACT FLD0576A        FROM FLD0576B
               ON SIZE ERROR MOVE 'Y' TO FLD0576E.
           ADD FLD0577A        TO FLD0577B.
           SUBTRACT FLD0578A        FROM FLD0578B.
           ADD FLD0579A        TO FLD0579B
               ON SIZE ERROR MOVE 'Y' TO FLD0579E.
           SUBTRACT FLD0580A        FROM FLD0580B.
           ADD FLD0581A        TO FLD0581B.
           SUBTRACT FLD0582A        FROM FLD0582B
               ON SIZE ERROR MOVE 'Y' TO FLD0582E.
           ADD FLD0583A        TO FLD0583B.
           SUBTRACT FLD0584A        FROM FLD0584B.
           ADD FLD0585A        TO FLD0585B
               ON SIZE ERROR MOVE 'Y' TO FLD0585E.
           SUBTRACT FLD0586A        FROM FLD0586B.
           ADD FLD0587A        TO FLD0587B.
           SUBTRACT FLD0588A        FROM FLD0588B
               ON SIZE ERROR MOVE 'Y' TO FLD0588E.
           ADD FLD0589A        TO FLD0589B.
           SUBTRACT FLD0590A        FROM FLD0590B.
           ADD FLD0591A        TO FLD0591B
               ON SIZE ERROR MOVE 'Y' TO FLD0591E.
           SUBTRACT FLD0592A        FROM FLD0592B.
           ADD FLD0593A        TO FLD0593B.
           SUBTRACT FLD0594A        FROM FLD0594B
               ON SIZE ERROR MOVE 'Y' TO FLD0594E.
           ADD FLD0595A        TO FLD0595B.
           SUBTRACT FLD0596A        FROM FLD0596B.
           ADD FLD0597A        TO FLD0597B
               ON SIZE ERROR MOVE 'Y' TO FLD0597E.
           SUBTRACT FLD0598A        FROM FLD0598B.
           ADD FLD0599A        TO FLD0599B.
           SUBTRACT FLD0600A        FROM FLD0600B
               ON SIZE ERROR MOVE 'Y' TO FLD0600E.
           ADD FLD0601A        TO FLD0601B.
           SUBTRACT FLD0602A        FROM FLD0602B.
           ADD FLD0603A        TO FLD0603B
               ON SIZE ERROR MOVE 'Y' TO FLD0603E.
           SUBTRACT FLD0604A        FROM FLD0604B.
           ADD FLD0605A        TO FLD0605B.
           SUBTRACT FLD0606A        FROM FLD0606B
               ON SIZE ERROR MOVE 'Y' TO FLD0606E.
           ADD FLD0607A        TO FLD0607B.
           SUBTRACT FLD0608A        FROM FLD0608B.
           ADD FLD0609A        TO FLD0609B
               ON SIZE ERROR MOVE 'Y' TO FLD0609E.
           SUBTRACT FLD0610A        FROM FLD0610B.
           ADD FLD0611A        TO FLD0611B.
           SUBTRACT FLD0612A        FROM FLD0612B
               ON SIZE ERROR MOVE 'Y' TO FLD0612E.
           ADD FLD0613A        TO FLD0613B.
           SUBTRACT FLD0614A        FROM FLD0614B.
           ADD FLD0615A        TO FLD0615B
               ON SIZE ERROR MOVE 'Y' TO FLD0615E.
           SUBTRACT FLD0616A        FROM FLD0616B.
           ADD FLD0617A        TO FLD0617B.
           SUBTRACT FLD0618A        FROM FLD0618B
               ON SIZE ERROR MOVE 'Y' TO FLD0618E.
           ADD FLD0619A        TO FLD0619B.
           SUBTRACT FLD0620A        FROM FLD0620B.
           ADD FLD0621A        TO FLD0621B
               ON SIZE ERROR MOVE 'Y' TO FLD0621E.
           SUBTRACT FLD0622A        FROM FLD0622B.
           ADD FLD0623A        TO FLD0623B.
           SUBTRACT FLD0624A        FROM FLD0624B
               ON SIZE ERROR MOVE 'Y' TO FLD0624E.
           ADD FLD0625A        TO FLD0625B.
           SUBTRACT FLD0626A        FROM FLD0626B.
           ADD FLD0627A        TO FLD0627B
               ON SIZE ERROR MOVE 'Y' TO FLD0627E.
           SUBTRACT FLD0628A        FROM FLD0628B.
           ADD FLD0629A        TO FLD0629B.
           SUBTRACT FLD0630A        FROM FLD0630B
               ON SIZE ERROR MOVE 'Y' TO FLD0630E.
           ADD FLD0631A        TO FLD0631B.
           SUBTRACT FLD0632A        FROM FLD0632B.
           ADD FLD0633A        TO FLD0633B
               ON SIZE ERROR MOVE 'Y' TO FLD0633E.
           SUBTRACT FLD0634A        FROM FLD0634B.
           ADD FLD0635A        TO FLD0635B.
           SUBTRACT FLD0636A        FROM FLD0636B
               ON SIZE ERROR MOVE 'Y' TO FLD0636E.
           ADD FLD0637A        TO FLD0637B.
           SUBTRACT FLD0638A        FROM FLD0638B.
           ADD FLD0639A        TO FLD0639B
               ON SIZE ERROR MOVE 'Y' TO FLD0639E.
           SUBTRACT FLD0640A        FROM FLD0640B.
           ADD FLD0641A        TO FLD0641B.
           SUBTRACT FLD0642A        FROM FLD0642B
               ON SIZE ERROR MOVE 'Y' TO FLD0642E.
           ADD FLD0643A        TO FLD0643B.
           SUBTRACT FLD0644A        FROM FLD0644B.
           ADD FLD0645A        TO FLD0645B
               ON SIZE ERROR MOVE 'Y' TO FLD0645E.
           SUBTRACT FLD0646A        FROM FLD0646B.
           ADD FLD0647A        TO FLD0647B.
           SUBTRACT FLD0648A        FROM FLD0648B
               ON SIZE ERROR MOVE 'Y' TO FLD0648E.
           ADD FLD0649A        TO FLD0649B.
           SUBTRACT FLD0650A        FROM FLD0650B.
           ADD FLD0651A        TO FLD0651B
               ON SIZE ERROR MOVE 'Y' TO FLD0651E.
           SUBTRACT FLD0652A        FROM FLD0652B.
           ADD FLD0653A        TO FLD0653B.
           SUBTRACT FLD0654A        FROM FLD0654B
               ON SIZE ERROR MOVE 'Y' TO FLD0654E.
           ADD FLD0655A        TO FLD0655B.
           SUBTRACT FLD0656A        FROM FLD0656B.
           ADD FLD0657A        TO FLD0657B
               ON SIZE ERROR MOVE 'Y' TO FLD0657E.
           SUBTRACT FLD0658A        FROM FLD0658B.
           ADD FLD0659A        TO FLD0659B.
           SUBTRACT FLD0660A        FROM FLD0660B
               ON SIZE ERROR MOVE 'Y' TO FLD0660E.
           ADD FLD0661A        TO FLD0661B.
           SUBTRACT FLD0662A        FROM FLD0662B.
           ADD FLD0663A        TO FLD0663B
               ON SIZE ERROR MOVE 'Y' TO FLD0663E.
           SUBTRACT FLD0664A        FROM FLD0664B.
           ADD FLD0665A        TO FLD0665B.
           SUBTRACT FLD0666A        FROM FLD0666B
               ON SIZE ERROR MOVE 'Y' TO FLD0666E.
           ADD FLD0667A        TO FLD0667B.
           SUBTRACT FLD0668A        FROM FLD0668B.
           ADD FLD0669A        TO FLD0669B
               ON SIZE ERROR MOVE 'Y' TO FLD0669E.
           SUBTRACT FLD0670A        FROM FLD0670B.
           ADD FLD0671A        TO FLD0671B.
           SUBTRACT FLD0672A        FROM FLD0672B
               ON SIZE ERROR MOVE 'Y' TO FLD0672E.
           ADD FLD0673A        TO FLD0673B.
           SUBTRACT FLD0674A        FROM FLD0674B.
           ADD FLD0675A        TO FLD0675B
               ON SIZE ERROR MOVE 'Y' TO FLD0675E.
           SUBTRACT FLD0676A        FROM FLD0676B.
           ADD FLD0677A        TO FLD0677B.
           SUBTRACT FLD0678A        FROM FLD0678B
               ON SIZE ERROR MOVE 'Y' TO FLD0678E.
           ADD FLD0679A        TO FLD0679B.
           SUBTRACT FLD0680A        FROM FLD0680B.
           ADD FLD0681A        TO FLD0681B
               ON SIZE ERROR MOVE 'Y' TO FLD0681E.
           SUBTRACT FLD0682A        FROM FLD0682B.
           ADD FLD0683A        TO FLD0683B.
           SUBTRACT FLD0684A        FROM FLD0684B
               ON SIZE ERROR MOVE 'Y' TO FLD0684E.
           ADD FLD0685A        TO FLD0685B.
           SUBTRACT FLD0686A        FROM FLD0686B.
           ADD FLD0687A        TO FLD0687B
               ON SIZE ERROR MOVE 'Y' TO FLD0687E.
           SUBTRACT FLD0688A        FROM FLD0688B.
           ADD FLD0689A        TO FLD0689B.
           SUBTRACT FLD0690A        FROM FLD0690B
               ON SIZE ERROR MOVE 'Y' TO FLD0690E.
           ADD FLD0691A        TO FLD0691B.
           SUBTRACT FLD0692A        FROM FLD0692B.
           ADD FLD0693A        TO FLD0693B
               ON SIZE ERROR MOVE 'Y' TO FLD0693E.
           SUBTRACT FLD0694A        FROM FLD0694B.
           ADD FLD0695A        TO FLD0695B.
           SUBTRACT FLD0696A        FROM FLD0696B
               ON SIZE ERROR MOVE 'Y' TO FLD0696E.
           ADD FLD0697A        TO FLD0697B.
           SUBTRACT FLD0698A        FROM FLD0698B.
           ADD FLD0699A        TO FLD0699B
               ON SIZE ERROR MOVE 'Y' TO FLD0699E.
           SUBTRACT FLD0700A        FROM FLD0700B.
           ADD FLD0701A        TO FLD0701B.
           SUBTRACT FLD0702A        FROM FLD0702B
               ON SIZE ERROR MOVE 'Y' TO FLD0702E.
           ADD FLD0703A        TO FLD0703B.
           SUBTRACT FLD0704A        FROM FLD0704B.
           ADD FLD0705A        TO FLD0705B
               ON SIZE ERROR MOVE 'Y' TO FLD0705E.
           SUBTRACT FLD0706A        FROM FLD0706B.
           ADD FLD0707A        TO FLD0707B.
           SUBTRACT FLD0708A        FROM FLD0708B
               ON SIZE ERROR MOVE 'Y' TO FLD0708E.
           ADD FLD0709A        TO FLD0709B.
           SUBTRACT FLD0710A        FROM FLD0710B.
           ADD FLD0711A        TO FLD0711B
               ON SIZE ERROR MOVE 'Y' TO FLD0711E.
           SUBTRACT FLD0712A        FROM FLD0712B.
           ADD FLD0713A        TO FLD0713B.
           SUBTRACT FLD0714A        FROM FLD0714B
               ON SIZE ERROR MOVE 'Y' TO FLD0714E.
           ADD FLD0715A        TO FLD0715B.
           SUBTRACT FLD0716A        FROM FLD0716B.
           ADD FLD0717A        TO FLD0717B
               ON SIZE ERROR MOVE 'Y' TO FLD0717E.
           SUBTRACT FLD0718A        FROM FLD0718B.
           ADD FLD0719A        TO FLD0719B.
           SUBTRACT FLD0720A        FROM FLD0720B
               ON SIZE ERROR MOVE 'Y' TO FLD0720E.
           ADD FLD0721A        TO FLD0721B.
           SUBTRACT FLD0722A        FROM FLD0722B.
           ADD FLD0723A        TO FLD0723B
               ON SIZE ERROR MOVE 'Y' TO FLD0723E.
           SUBTRACT FLD0724A        FROM FLD0724B.
           ADD FLD0725A        TO FLD0725B.
           SUBTRACT FLD0726A        FROM FLD0726B
               ON SIZE ERROR MOVE 'Y' TO FLD0726E.
           ADD FLD0727A        TO FLD0727B.
           SUBTRACT FLD0728A        FROM FLD0728B.
           ADD FLD0729A        TO FLD0729B
               ON SIZE ERROR MOVE 'Y' TO FLD0729E.
           SUBTRACT FLD0730A        FROM FLD0730B.
           ADD FLD0731A        TO FLD0731B.
           SUBTRACT FLD0732A        FROM FLD0732B
               ON SIZE ERROR MOVE 'Y' TO FLD0732E.
           ADD FLD0733A        TO FLD0733B.
           SUBTRACT FLD0734A        FROM FLD0734B.
           ADD FLD0735A        TO FLD0735B
               ON SIZE ERROR MOVE 'Y' TO FLD0735E.
           SUBTRACT FLD0736A        FROM FLD0736B.
           ADD FLD0737A        TO FLD0737B.
           SUBTRACT FLD0738A        FROM FLD0738B
               ON SIZE ERROR MOVE 'Y' TO FLD0738E.
           ADD FLD0739A        TO FLD0739B.
           SUBTRACT FLD0740A        FROM FLD0740B.
           ADD FLD0741A        TO FLD0741B
               ON SIZE ERROR MOVE 'Y' TO FLD0741E.
           SUBTRACT FLD0742A        FROM FLD0742B.
           ADD FLD0743A        TO FLD0743B.
           SUBTRACT FLD0744A        FROM FLD0744B
               ON SIZE ERROR MOVE 'Y' TO FLD0744E.
           ADD FLD0745A        TO FLD0745B.
           SUBTRACT FLD0746A        FROM FLD0746B.
           ADD FLD0747A        TO FLD0747B
               ON SIZE ERROR MOVE 'Y' TO FLD0747E.
           SUBTRACT FLD0748A        FROM FLD0748B.
           ADD FLD0749A        TO FLD0749B.
           SUBTRACT FLD0750A        FROM FLD0750B
               ON SIZE ERROR MOVE 'Y' TO FLD0750E.
           ADD FLD0751A        TO FLD0751B.
           SUBTRACT FLD0752A        FROM FLD0752B.
           ADD FLD0753A        TO FLD0753B
               ON SIZE ERROR MOVE 'Y' TO FLD0753E.
           SUBTRACT FLD0754A        FROM FLD0754B.
           ADD FLD0755A        TO FLD0755B.
           SUBTRACT FLD0756A        FROM FLD0756B
               ON SIZE ERROR MOVE 'Y' TO FLD0756E.
           ADD FLD0757A        TO FLD0757B.
           SUBTRACT FLD0758A        FROM FLD0758B.
           ADD FLD0759A        TO FLD0759B
               ON SIZE ERROR MOVE 'Y' TO FLD0759E.
           SUBTRACT FLD0760A        FROM FLD0760B.
           ADD FLD0761A        TO FLD0761B.
           SUBTRACT FLD0762A        FROM FLD0762B
               ON SIZE ERROR MOVE 'Y' TO FLD0762E.
           ADD FLD0763A        TO FLD0763B.
           SUBTRACT FLD0764A        FROM FLD0764B.
           ADD FLD0765A        TO FLD0765B
               ON SIZE ERROR MOVE 'Y' TO FLD0765E.
           SUBTRACT FLD0766A        FROM FLD0766B.
           ADD FLD0767A        TO FLD0767B.
           SUBTRACT FLD0768A        FROM FLD0768B
               ON SIZE ERROR MOVE 'Y' TO FLD0768E.
           ADD FLD0769A        TO FLD0769B.
           SUBTRACT FLD0770A        FROM FLD0770B.
           ADD FLD0771A        TO FLD0771B
               ON SIZE ERROR MOVE 'Y' TO FLD0771E.
           SUBTRACT FLD0772A        FROM FLD0772B.
           ADD FLD0773A        TO FLD0773B.
           SUBTRACT FLD0774A        FROM FLD0774B
               ON SIZE ERROR MOVE 'Y' TO FLD0774E.
           ADD FLD0775A        TO FLD0775B.
           SUBTRACT FLD0776A        FROM FLD0776B.
           ADD FLD0777A        TO FLD0777B
               ON SIZE ERROR MOVE 'Y' TO FLD0777E.
           SUBTRACT FLD0778A        FROM FLD0778B.
           ADD FLD0779A        TO FLD0779B.
           SUBTRACT FLD0780A        FROM FLD0780B
               ON SIZE ERROR MOVE 'Y' TO FLD0780E.
           ADD FLD0781A        TO FLD0781B.
           SUBTRACT FLD0782A        FROM FLD0782B.
           ADD FLD0783A        TO FLD0783B
               ON SIZE ERROR MOVE 'Y' TO FLD0783E.
           SUBTRACT FLD0784A        FROM FLD0784B.
           ADD FLD0785A        TO FLD0785B.
           SUBTRACT FLD0786A        FROM FLD0786B
               ON SIZE ERROR MOVE 'Y' TO FLD0786E.
           ADD FLD0787A        TO FLD0787B.
           SUBTRACT FLD0788A        FROM FLD0788B.
           ADD FLD0789A        TO FLD0789B
               ON SIZE ERROR MOVE 'Y' TO FLD0789E.
           SUBTRACT FLD0790A        FROM FLD0790B.
           ADD FLD0791A        TO FLD0791B.
           SUBTRACT FLD0792A        FROM FLD0792B
               ON SIZE ERROR MOVE 'Y' TO FLD0792E.
           ADD FLD0793A        TO FLD0793B.
           SUBTRACT FLD0794A        FROM FLD0794B.
           ADD FLD0795A        TO FLD0795B
               ON SIZE ERROR MOVE 'Y' TO FLD0795E.
           SUBTRACT FLD0796A        FROM FLD0796B.
           ADD FLD0797A        TO FLD0797B.
           SUBTRACT FLD0798A        FROM FLD0798B
               ON SIZE ERROR MOVE 'Y' TO FLD0798E.
           ADD FLD0799A        TO FLD0799B.
           SUBTRACT FLD0800A        FROM FLD0800B.
           ADD FLD0801A        TO FLD0801B
               ON SIZE ERROR MOVE 'Y' TO FLD0801E.
           SUBTRACT FLD0802A        FROM FLD0802B.
           ADD FLD0803A        TO FLD0803B.
           SUBTRACT FLD0804A        FROM FLD0804B
               ON SIZE ERROR MOVE 'Y' TO FLD0804E.
           ADD FLD0805A        TO FLD0805B.
           SUBTRACT FLD0806A        FROM FLD0806B.
           ADD FLD0807A        TO FLD0807B
               ON SIZE ERROR MOVE 'Y' TO FLD0807E.
           SUBTRACT FLD0808A        FROM FLD0808B.
           ADD FLD0809A        TO FLD0809B.
           SUBTRACT FLD0810A        FROM FLD0810B
               ON SIZE ERROR MOVE 'Y' TO FLD0810E.
           ADD FLD0811A        TO FLD0811B.
           SUBTRACT FLD0812A        FROM FLD0812B.
           ADD FLD0813A        TO FLD0813B
               ON SIZE ERROR MOVE 'Y' TO FLD0813E.
           SUBTRACT FLD0814A        FROM FLD0814B.
           ADD FLD0815A        TO FLD0815B.
           SUBTRACT FLD0816A        FROM FLD0816B
               ON SIZE ERROR MOVE 'Y' TO FLD0816E.
           ADD FLD0817A        TO FLD0817B.
           SUBTRACT FLD0818A        FROM FLD0818B.
           ADD FLD0819A        TO FLD0819B
               ON SIZE ERROR MOVE 'Y' TO FLD0819E.
           SUBTRACT FLD0820A        FROM FLD0820B.
           ADD FLD0821A        TO FLD0821B.
           SUBTRACT FLD0822A        FROM FLD0822B
               ON SIZE ERROR MOVE 'Y' TO FLD0822E.
           ADD FLD0823A        TO FLD0823B.
           SUBTRACT FLD0824A        FROM FLD0824B.
           ADD FLD0825A        TO FLD0825B
               ON SIZE ERROR MOVE 'Y' TO FLD0825E.
           SUBTRACT FLD0826A        FROM FLD0826B.
           ADD FLD0827A        TO FLD0827B.
           SUBTRACT FLD0828A        FROM FLD0828B
               ON SIZE ERROR MOVE 'Y' TO FLD0828E.
           ADD FLD0829A        TO FLD0829B.
           SUBTRACT FLD0830A        FROM FLD0830B.
           ADD FLD0831A        TO FLD0831B
               ON SIZE ERROR MOVE 'Y' TO FLD0831E.
           SUBTRACT FLD0832A        FROM FLD0832B.
           ADD FLD0833A        TO FLD0833B.
           SUBTRACT FLD0834A        FROM FLD0834B
               ON SIZE ERROR MOVE 'Y' TO FLD0834E.
           ADD FLD0835A        TO FLD0835B.
           SUBTRACT FLD0836A        FROM FLD0836B.
           ADD FLD0837A        TO FLD0837B
               ON SIZE ERROR MOVE 'Y' TO FLD0837E.
           SUBTRACT FLD0838A        FROM FLD0838B.
           ADD FLD0839A        TO FLD0839B.
           SUBTRACT FLD0840A        FROM FLD0840B
               ON SIZE ERROR MOVE 'Y' TO FLD0840E.
           ADD FLD0841A        TO FLD0841B.
           SUBTRACT FLD0842A        FROM FLD0842B.
           ADD FLD0843A        TO FLD0843B
               ON SIZE ERROR MOVE 'Y' TO FLD0843E.
           SUBTRACT FLD0844A        FROM FLD0844B.
           ADD FLD0845A        TO FLD0845B.
           SUBTRACT FLD0846A        FROM FLD0846B
               ON SIZE ERROR MOVE 'Y' TO FLD0846E.
           ADD FLD0847A        TO FLD0847B.
           SUBTRACT FLD0848A        FROM FLD0848B.
           ADD FLD0849A        TO FLD0849B
               ON SIZE ERROR MOVE 'Y' TO FLD0849E.
           SUBTRACT FLD0850A        FROM FLD0850B.
           ADD FLD0851A        TO FLD0851B.
           SUBTRACT FLD0852A        FROM FLD0852B
               ON SIZE ERROR MOVE 'Y' TO FLD0852E.
           ADD FLD0853A        TO FLD0853B.
           SUBTRACT FLD0854A        FROM FLD0854B.
           ADD FLD0855A        TO FLD0855B
               ON SIZE ERROR MOVE 'Y' TO FLD0855E.
           SUBTRACT FLD0856A        FROM FLD0856B.
           ADD FLD0857A        TO FLD0857B.
           SUBTRACT FLD0858A        FROM FLD0858B
               ON SIZE ERROR MOVE 'Y' TO FLD0858E.
           ADD FLD0859A        TO FLD0859B.
           SUBTRACT FLD0860A        FROM FLD0860B.
           ADD FLD0861A        TO FLD0861B
               ON SIZE ERROR MOVE 'Y' TO FLD0861E.
           SUBTRACT FLD0862A        FROM FLD0862B.
           ADD FLD0863A        TO FLD0863B.
           SUBTRACT FLD0864A        FROM FLD0864B
               ON SIZE ERROR MOVE 'Y' TO FLD0864E.
           ADD FLD0865A        TO FLD0865B.
           SUBTRACT FLD0866A        FROM FLD0866B.
           ADD FLD0867A        TO FLD0867B
               ON SIZE ERROR MOVE 'Y' TO FLD0867E.
           SUBTRACT FLD0868A        FROM FLD0868B.
           ADD FLD0869A        TO FLD0869B.
           SUBTRACT FLD0870A        FROM FLD0870B
               ON SIZE ERROR MOVE 'Y' TO FLD0870E.
           ADD FLD0871A        TO FLD0871B.
           SUBTRACT FLD0872A        FROM FLD0872B.
           ADD FLD0873A        TO FLD0873B
               ON SIZE ERROR MOVE 'Y' TO FLD0873E.
           SUBTRACT FLD0874A        FROM FLD0874B.
           ADD FLD0875A        TO FLD0875B.
           SUBTRACT FLD0876A        FROM FLD0876B
               ON SIZE ERROR MOVE 'Y' TO FLD0876E.
           ADD FLD0877A        TO FLD0877B.
           SUBTRACT FLD0878A        FROM FLD0878B.
           ADD FLD0879A        TO FLD0879B
               ON SIZE ERROR MOVE 'Y' TO FLD0879E.
           SUBTRACT FLD0880A        FROM FLD0880B.
           ADD FLD0881A        TO FLD0881B.
           SUBTRACT FLD0882A        FROM FLD0882B
               ON SIZE ERROR MOVE 'Y' TO FLD0882E.
           ADD FLD0883A        TO FLD0883B.
           SUBTRACT FLD0884A        FROM FLD0884B.
           ADD FLD0885A        TO FLD0885B
               ON SIZE ERROR MOVE 'Y' TO FLD0885E.
           SUBTRACT FLD0886A        FROM FLD0886B.
           ADD FLD0887A        TO FLD0887B.
           SUBTRACT FLD0888A        FROM FLD0888B
               ON SIZE ERROR MOVE 'Y' TO FLD0888E.
           ADD FLD0889A        TO FLD0889B.
           SUBTRACT FLD0890A        FROM FLD0890B.
           ADD FLD0891A        TO FLD0891B
               ON SIZE ERROR MOVE 'Y' TO FLD0891E.
           SUBTRACT FLD0892A        FROM FLD0892B.
           ADD FLD0893A        TO FLD0893B.
           SUBTRACT FLD0894A        FROM FLD0894B
               ON SIZE ERROR MOVE 'Y' TO FLD0894E.
           ADD FLD0895A        TO FLD0895B.
           SUBTRACT FLD0896A        FROM FLD0896B.
           ADD FLD0897A        TO FLD0897B
               ON SIZE ERROR MOVE 'Y' TO FLD0897E.
           SUBTRACT FLD0898A        FROM FLD0898B.
           ADD FLD0899A        TO FLD0899B.
           SUBTRACT FLD0900A        FROM FLD0900B
               ON SIZE ERROR MOVE 'Y' TO FLD0900E.
           ADD FLD0901A        TO FLD0901B.
           SUBTRACT FLD0902A        FROM FLD0902B.
           ADD FLD0903A        TO FLD0903B
               ON SIZE ERROR MOVE 'Y' TO FLD0903E.
           SUBTRACT FLD0904A        FROM FLD0904B.
           ADD FLD0905A        TO FLD0905B.
           SUBTRACT FLD0906A        FROM FLD0906B
               ON SIZE ERROR MOVE 'Y' TO FLD0906E.
           ADD FLD0907A        TO FLD0907B.
           SUBTRACT FLD0908A        FROM FLD0908B.
           ADD FLD0909A        TO FLD0909B
               ON SIZE ERROR MOVE 'Y' TO FLD0909E.
           SUBTRACT FLD0910A        FROM FLD0910B.
           ADD FLD0911A        TO FLD0911B.
           SUBTRACT FLD0912A        FROM FLD0912B
               ON SIZE ERROR MOVE 'Y' TO FLD0912E.
           ADD FLD0913A        TO FLD0913B.
           SUBTRACT FLD0914A        FROM FLD0914B.
           ADD FLD0915A        TO FLD0915B
               ON SIZE ERROR MOVE 'Y' TO FLD0915E.
           SUBTRACT FLD0916A        FROM FLD0916B.
           ADD FLD0917A        TO FLD0917B.
           SUBTRACT FLD0918A        FROM FLD0918B
               ON SIZE ERROR MOVE 'Y' TO FLD0918E.
           ADD FLD0919A        TO FLD0919B.
           SUBTRACT FLD0920A        FROM FLD0920B.
           ADD FLD0921A        TO FLD0921B
               ON SIZE ERROR MOVE 'Y' TO FLD0921E.
           SUBTRACT FLD0922A        FROM FLD0922B.
           ADD FLD0923A        TO FLD0923B.
           SUBTRACT FLD0924A        FROM FLD0924B
               ON SIZE ERROR MOVE 'Y' TO FLD0924E.
           ADD FLD0925A        TO FLD0925B.
           SUBTRACT FLD0926A        FROM FLD0926B.
           ADD FLD0927A        TO FLD0927B
               ON SIZE ERROR MOVE 'Y' TO FLD0927E.
           SUBTRACT FLD0928A        FROM FLD0928B.
           ADD FLD0929A        TO FLD0929B.
           SUBTRACT FLD0930A        FROM FLD0930B
               ON SIZE ERROR MOVE 'Y' TO FLD0930E.
           ADD FLD0931A        TO FLD0931B.
           SUBTRACT FLD0932A        FROM FLD0932B.
           ADD FLD0933A        TO FLD0933B
               ON SIZE ERROR MOVE 'Y' TO FLD0933E.
           SUBTRACT FLD0934A        FROM FLD0934B.
           ADD FLD0935A        TO FLD0935B.
           SUBTRACT FLD0936A        FROM FLD0936B
               ON SIZE ERROR MOVE 'Y' TO FLD0936E.
           ADD FLD0937A        TO FLD0937B.
           SUBTRACT FLD0938A        FROM FLD0938B.
           ADD FLD0939A        TO FLD0939B
               ON SIZE ERROR MOVE 'Y' TO FLD0939E.
           SUBTRACT FLD0940A        FROM FLD0940B.
           ADD FLD0941A        TO FLD0941B.
           SUBTRACT FLD0942A        FROM FLD0942B
               ON SIZE ERROR MOVE 'Y' TO FLD0942E.
           ADD FLD0943A        TO FLD0943B.
           SUBTRACT FLD0944A        FROM FLD0944B.
           ADD FLD0945A        TO FLD0945B
               ON SIZE ERROR MOVE 'Y' TO FLD0945E.
           SUBTRACT FLD0946A        FROM FLD0946B.
           ADD FLD0947A        TO FLD0947B.
           SUBTRACT FLD0948A        FROM FLD0948B
               ON SIZE ERROR MOVE 'Y' TO FLD0948E.
           ADD FLD0949A        TO FLD0949B.
           SUBTRACT FLD0950A        FROM FLD0950B.
           ADD FLD0951A        TO FLD0951B
               ON SIZE ERROR MOVE 'Y' TO FLD0951E.
           SUBTRACT FLD0952A        FROM FLD0952B.
           ADD FLD0953A        TO FLD0953B.
           SUBTRACT FLD0954A        FROM FLD0954B
               ON SIZE ERROR MOVE 'Y' TO FLD0954E.
           ADD FLD0955A        TO FLD0955B.
           SUBTRACT FLD0956A        FROM FLD0956B.
           ADD FLD0957A        TO FLD0957B
               ON SIZE ERROR MOVE 'Y' TO FLD0957E.
           SUBTRACT FLD0958A        FROM FLD0958B.
           ADD FLD0959A        TO FLD0959B.
           SUBTRACT FLD0960A        FROM FLD0960B
               ON SIZE ERROR MOVE 'Y' TO FLD0960E.
           ADD FLD0961A        TO FLD0961B.
           SUBTRACT FLD0962A        FROM FLD0962B.
           ADD FLD0963A        TO FLD0963B
               ON SIZE ERROR MOVE 'Y' TO FLD0963E.
           SUBTRACT FLD0964A        FROM FLD0964B.
           ADD FLD0965A        TO FLD0965B.
           SUBTRACT FLD0966A        FROM FLD0966B
               ON SIZE ERROR MOVE 'Y' TO FLD0966E.
           ADD FLD0967A        TO FLD0967B.
           SUBTRACT FLD0968A        FROM FLD0968B.
           ADD FLD0969A        TO FLD0969B
               ON SIZE ERROR MOVE 'Y' TO FLD0969E.
           SUBTRACT FLD0970A        FROM FLD0970B.
           ADD FLD0971A        TO FLD0971B.
           SUBTRACT FLD0972A        FROM FLD0972B
               ON SIZE ERROR MOVE 'Y' TO FLD0972E.
           ADD FLD0973A        TO FLD0973B.
           SUBTRACT FLD0974A        FROM FLD0974B.
           ADD FLD0975A        TO FLD0975B
               ON SIZE ERROR MOVE 'Y' TO FLD0975E.
           SUBTRACT FLD0976A        FROM FLD0976B.
           ADD FLD0977A        TO FLD0977B.
           SUBTRACT FLD0978A        FROM FLD0978B
               ON SIZE ERROR MOVE 'Y' TO FLD0978E.
           ADD FLD0979A        TO FLD0979B.
           SUBTRACT FLD0980A        FROM FLD0980B.
           ADD FLD0981A        TO FLD0981B
               ON SIZE ERROR MOVE 'Y' TO FLD0981E.
           SUBTRACT FLD0982A        FROM FLD0982B.
           ADD FLD0983A        TO FLD0983B.
           SUBTRACT FLD0984A        FROM FLD0984B
               ON SIZE ERROR MOVE 'Y' TO FLD0984E.
           ADD FLD0985A        TO FLD0985B.
           SUBTRACT FLD0986A        FROM FLD0986B.
           ADD FLD0987A        TO FLD0987B
               ON SIZE ERROR MOVE 'Y' TO FLD0987E.
           SUBTRACT FLD0988A        FROM FLD0988B.
           ADD FLD0989A        TO FLD0989B.
           SUBTRACT FLD0990A        FROM FLD0990B
               ON SIZE ERROR MOVE 'Y' TO FLD0990E.
           ADD FLD0991A        TO FLD0991B.
           SUBTRACT FLD0992A        FROM FLD0992B.
           ADD FLD0993A        TO FLD0993B
               ON SIZE ERROR MOVE 'Y' TO FLD0993E.
           SUBTRACT FLD0994A        FROM FLD0994B.
           ADD FLD0995A        TO FLD0995B.
           SUBTRACT FLD0996A        FROM FLD0996B
               ON SIZE ERROR MOVE 'Y' TO FLD0996E.
           ADD FLD0997A        TO FLD0997B.
           SUBTRACT FLD0998A        FROM FLD0998B.
           ADD FLD0999A        TO FLD0999B
               ON SIZE ERROR MOVE 'Y' TO FLD0999E.

      *4000-COMPARE.

           IF FLD0500B (1:)    NOT EQUAL XPC-FLD0500B
              DISPLAY 'FLD0500B ==> ' FLD0500B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0500B.
           IF FLD0500E   NOT EQUAL XPC-FLD0500E
              DISPLAY 'FLD0500E ==> ' FLD0500E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0500E.
           IF FLD0501B (1:)    NOT EQUAL XPC-FLD0501B
              DISPLAY 'FLD0501B ==> ' FLD0501B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0501B.
           IF FLD0501E   NOT EQUAL XPC-FLD0501E
              DISPLAY 'FLD0501E ==> ' FLD0501E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0501E.
           IF FLD0502B (1:)    NOT EQUAL XPC-FLD0502B
              DISPLAY 'FLD0502B ==> ' FLD0502B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0502B.
           IF FLD0502E   NOT EQUAL XPC-FLD0502E
              DISPLAY 'FLD0502E ==> ' FLD0502E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0502E.
           IF FLD0503B (1:)    NOT EQUAL XPC-FLD0503B
              DISPLAY 'FLD0503B ==> ' FLD0503B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0503B.
           IF FLD0503E   NOT EQUAL XPC-FLD0503E
              DISPLAY 'FLD0503E ==> ' FLD0503E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0503E.
           IF FLD0504B (1:)    NOT EQUAL XPC-FLD0504B
              DISPLAY 'FLD0504B ==> ' FLD0504B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0504B.
           IF FLD0504E   NOT EQUAL XPC-FLD0504E
              DISPLAY 'FLD0504E ==> ' FLD0504E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0504E.
           IF FLD0505B (1:)    NOT EQUAL XPC-FLD0505B
              DISPLAY 'FLD0505B ==> ' FLD0505B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0505B.
           IF FLD0505E   NOT EQUAL XPC-FLD0505E
              DISPLAY 'FLD0505E ==> ' FLD0505E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0505E.
           IF FLD0506B (1:)    NOT EQUAL XPC-FLD0506B
              DISPLAY 'FLD0506B ==> ' FLD0506B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0506B.
           IF FLD0506E   NOT EQUAL XPC-FLD0506E
              DISPLAY 'FLD0506E ==> ' FLD0506E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0506E.
           IF FLD0507B (1:)    NOT EQUAL XPC-FLD0507B
              DISPLAY 'FLD0507B ==> ' FLD0507B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0507B.
           IF FLD0507E   NOT EQUAL XPC-FLD0507E
              DISPLAY 'FLD0507E ==> ' FLD0507E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0507E.
           IF FLD0508B (1:)    NOT EQUAL XPC-FLD0508B
              DISPLAY 'FLD0508B ==> ' FLD0508B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0508B.
           IF FLD0508E   NOT EQUAL XPC-FLD0508E
              DISPLAY 'FLD0508E ==> ' FLD0508E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0508E.
           IF FLD0509B (1:)    NOT EQUAL XPC-FLD0509B
              DISPLAY 'FLD0509B ==> ' FLD0509B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0509B.
           IF FLD0509E   NOT EQUAL XPC-FLD0509E
              DISPLAY 'FLD0509E ==> ' FLD0509E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0509E.
           IF FLD0510B (1:)    NOT EQUAL XPC-FLD0510B
              DISPLAY 'FLD0510B ==> ' FLD0510B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0510B.
           IF FLD0510E   NOT EQUAL XPC-FLD0510E
              DISPLAY 'FLD0510E ==> ' FLD0510E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0510E.
           IF FLD0511B (1:)    NOT EQUAL XPC-FLD0511B
              DISPLAY 'FLD0511B ==> ' FLD0511B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0511B.
           IF FLD0511E   NOT EQUAL XPC-FLD0511E
              DISPLAY 'FLD0511E ==> ' FLD0511E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0511E.
           IF FLD0512B (1:)    NOT EQUAL XPC-FLD0512B
              DISPLAY 'FLD0512B ==> ' FLD0512B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0512B.
           IF FLD0512E   NOT EQUAL XPC-FLD0512E
              DISPLAY 'FLD0512E ==> ' FLD0512E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0512E.
           IF FLD0513B (1:)    NOT EQUAL XPC-FLD0513B
              DISPLAY 'FLD0513B ==> ' FLD0513B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0513B.
           IF FLD0513E   NOT EQUAL XPC-FLD0513E
              DISPLAY 'FLD0513E ==> ' FLD0513E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0513E.
           IF FLD0514B (1:)    NOT EQUAL XPC-FLD0514B
              DISPLAY 'FLD0514B ==> ' FLD0514B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0514B.
           IF FLD0514E   NOT EQUAL XPC-FLD0514E
              DISPLAY 'FLD0514E ==> ' FLD0514E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0514E.
           IF FLD0515B (1:)    NOT EQUAL XPC-FLD0515B
              DISPLAY 'FLD0515B ==> ' FLD0515B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0515B.
           IF FLD0515E   NOT EQUAL XPC-FLD0515E
              DISPLAY 'FLD0515E ==> ' FLD0515E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0515E.
           IF FLD0516B (1:)    NOT EQUAL XPC-FLD0516B
              DISPLAY 'FLD0516B ==> ' FLD0516B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0516B.
           IF FLD0516E   NOT EQUAL XPC-FLD0516E
              DISPLAY 'FLD0516E ==> ' FLD0516E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0516E.
           IF FLD0517B (1:)    NOT EQUAL XPC-FLD0517B
              DISPLAY 'FLD0517B ==> ' FLD0517B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0517B.
           IF FLD0517E   NOT EQUAL XPC-FLD0517E
              DISPLAY 'FLD0517E ==> ' FLD0517E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0517E.
           IF FLD0518B (1:)    NOT EQUAL XPC-FLD0518B
              DISPLAY 'FLD0518B ==> ' FLD0518B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0518B.
           IF FLD0518E   NOT EQUAL XPC-FLD0518E
              DISPLAY 'FLD0518E ==> ' FLD0518E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0518E.
           IF FLD0519B (1:)    NOT EQUAL XPC-FLD0519B
              DISPLAY 'FLD0519B ==> ' FLD0519B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0519B.
           IF FLD0519E   NOT EQUAL XPC-FLD0519E
              DISPLAY 'FLD0519E ==> ' FLD0519E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0519E.
           IF FLD0520B (1:)    NOT EQUAL XPC-FLD0520B
              DISPLAY 'FLD0520B ==> ' FLD0520B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0520B.
           IF FLD0520E   NOT EQUAL XPC-FLD0520E
              DISPLAY 'FLD0520E ==> ' FLD0520E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0520E.
           IF FLD0521B (1:)    NOT EQUAL XPC-FLD0521B
              DISPLAY 'FLD0521B ==> ' FLD0521B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0521B.
           IF FLD0521E   NOT EQUAL XPC-FLD0521E
              DISPLAY 'FLD0521E ==> ' FLD0521E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0521E.
           IF FLD0522B (1:)    NOT EQUAL XPC-FLD0522B
              DISPLAY 'FLD0522B ==> ' FLD0522B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0522B.
           IF FLD0522E   NOT EQUAL XPC-FLD0522E
              DISPLAY 'FLD0522E ==> ' FLD0522E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0522E.
           IF FLD0523B (1:)    NOT EQUAL XPC-FLD0523B
              DISPLAY 'FLD0523B ==> ' FLD0523B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0523B.
           IF FLD0523E   NOT EQUAL XPC-FLD0523E
              DISPLAY 'FLD0523E ==> ' FLD0523E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0523E.
           IF FLD0524B (1:)    NOT EQUAL XPC-FLD0524B
              DISPLAY 'FLD0524B ==> ' FLD0524B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0524B.
           IF FLD0524E   NOT EQUAL XPC-FLD0524E
              DISPLAY 'FLD0524E ==> ' FLD0524E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0524E.
           IF FLD0525B (1:)    NOT EQUAL XPC-FLD0525B
              DISPLAY 'FLD0525B ==> ' FLD0525B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0525B.
           IF FLD0525E   NOT EQUAL XPC-FLD0525E
              DISPLAY 'FLD0525E ==> ' FLD0525E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0525E.
           IF FLD0526B (1:)    NOT EQUAL XPC-FLD0526B
              DISPLAY 'FLD0526B ==> ' FLD0526B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0526B.
           IF FLD0526E   NOT EQUAL XPC-FLD0526E
              DISPLAY 'FLD0526E ==> ' FLD0526E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0526E.
           IF FLD0527B (1:)    NOT EQUAL XPC-FLD0527B
              DISPLAY 'FLD0527B ==> ' FLD0527B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0527B.
           IF FLD0527E   NOT EQUAL XPC-FLD0527E
              DISPLAY 'FLD0527E ==> ' FLD0527E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0527E.
           IF FLD0528B (1:)    NOT EQUAL XPC-FLD0528B
              DISPLAY 'FLD0528B ==> ' FLD0528B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0528B.
           IF FLD0528E   NOT EQUAL XPC-FLD0528E
              DISPLAY 'FLD0528E ==> ' FLD0528E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0528E.
           IF FLD0529B (1:)    NOT EQUAL XPC-FLD0529B
              DISPLAY 'FLD0529B ==> ' FLD0529B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0529B.
           IF FLD0529E   NOT EQUAL XPC-FLD0529E
              DISPLAY 'FLD0529E ==> ' FLD0529E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0529E.
           IF FLD0530B (1:)    NOT EQUAL XPC-FLD0530B
              DISPLAY 'FLD0530B ==> ' FLD0530B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0530B.
           IF FLD0530E   NOT EQUAL XPC-FLD0530E
              DISPLAY 'FLD0530E ==> ' FLD0530E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0530E.
           IF FLD0531B (1:)    NOT EQUAL XPC-FLD0531B
              DISPLAY 'FLD0531B ==> ' FLD0531B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0531B.
           IF FLD0531E   NOT EQUAL XPC-FLD0531E
              DISPLAY 'FLD0531E ==> ' FLD0531E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0531E.
           IF FLD0532B (1:)    NOT EQUAL XPC-FLD0532B
              DISPLAY 'FLD0532B ==> ' FLD0532B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0532B.
           IF FLD0532E   NOT EQUAL XPC-FLD0532E
              DISPLAY 'FLD0532E ==> ' FLD0532E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0532E.
           IF FLD0533B (1:)    NOT EQUAL XPC-FLD0533B
              DISPLAY 'FLD0533B ==> ' FLD0533B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0533B.
           IF FLD0533E   NOT EQUAL XPC-FLD0533E
              DISPLAY 'FLD0533E ==> ' FLD0533E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0533E.
           IF FLD0534B (1:)    NOT EQUAL XPC-FLD0534B
              DISPLAY 'FLD0534B ==> ' FLD0534B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0534B.
           IF FLD0534E   NOT EQUAL XPC-FLD0534E
              DISPLAY 'FLD0534E ==> ' FLD0534E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0534E.
           IF FLD0535B (1:)    NOT EQUAL XPC-FLD0535B
              DISPLAY 'FLD0535B ==> ' FLD0535B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0535B.
           IF FLD0535E   NOT EQUAL XPC-FLD0535E
              DISPLAY 'FLD0535E ==> ' FLD0535E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0535E.
           IF FLD0536B (1:)    NOT EQUAL XPC-FLD0536B
              DISPLAY 'FLD0536B ==> ' FLD0536B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0536B.
           IF FLD0536E   NOT EQUAL XPC-FLD0536E
              DISPLAY 'FLD0536E ==> ' FLD0536E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0536E.
           IF FLD0537B (1:)    NOT EQUAL XPC-FLD0537B
              DISPLAY 'FLD0537B ==> ' FLD0537B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0537B.
           IF FLD0537E   NOT EQUAL XPC-FLD0537E
              DISPLAY 'FLD0537E ==> ' FLD0537E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0537E.
           IF FLD0538B (1:)    NOT EQUAL XPC-FLD0538B
              DISPLAY 'FLD0538B ==> ' FLD0538B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0538B.
           IF FLD0538E   NOT EQUAL XPC-FLD0538E
              DISPLAY 'FLD0538E ==> ' FLD0538E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0538E.
           IF FLD0539B (1:)    NOT EQUAL XPC-FLD0539B
              DISPLAY 'FLD0539B ==> ' FLD0539B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0539B.
           IF FLD0539E   NOT EQUAL XPC-FLD0539E
              DISPLAY 'FLD0539E ==> ' FLD0539E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0539E.
           IF FLD0540B (1:)    NOT EQUAL XPC-FLD0540B
              DISPLAY 'FLD0540B ==> ' FLD0540B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0540B.
           IF FLD0540E   NOT EQUAL XPC-FLD0540E
              DISPLAY 'FLD0540E ==> ' FLD0540E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0540E.
           IF FLD0541B (1:)    NOT EQUAL XPC-FLD0541B
              DISPLAY 'FLD0541B ==> ' FLD0541B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0541B.
           IF FLD0541E   NOT EQUAL XPC-FLD0541E
              DISPLAY 'FLD0541E ==> ' FLD0541E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0541E.
           IF FLD0542B (1:)    NOT EQUAL XPC-FLD0542B
              DISPLAY 'FLD0542B ==> ' FLD0542B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0542B.
           IF FLD0542E   NOT EQUAL XPC-FLD0542E
              DISPLAY 'FLD0542E ==> ' FLD0542E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0542E.
           IF FLD0543B (1:)    NOT EQUAL XPC-FLD0543B
              DISPLAY 'FLD0543B ==> ' FLD0543B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0543B.
           IF FLD0543E   NOT EQUAL XPC-FLD0543E
              DISPLAY 'FLD0543E ==> ' FLD0543E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0543E.
           IF FLD0544B (1:)    NOT EQUAL XPC-FLD0544B
              DISPLAY 'FLD0544B ==> ' FLD0544B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0544B.
           IF FLD0544E   NOT EQUAL XPC-FLD0544E
              DISPLAY 'FLD0544E ==> ' FLD0544E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0544E.
           IF FLD0545B (1:)    NOT EQUAL XPC-FLD0545B
              DISPLAY 'FLD0545B ==> ' FLD0545B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0545B.
           IF FLD0545E   NOT EQUAL XPC-FLD0545E
              DISPLAY 'FLD0545E ==> ' FLD0545E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0545E.
           IF FLD0546B (1:)    NOT EQUAL XPC-FLD0546B
              DISPLAY 'FLD0546B ==> ' FLD0546B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0546B.
           IF FLD0546E   NOT EQUAL XPC-FLD0546E
              DISPLAY 'FLD0546E ==> ' FLD0546E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0546E.
           IF FLD0547B (1:)    NOT EQUAL XPC-FLD0547B
              DISPLAY 'FLD0547B ==> ' FLD0547B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0547B.
           IF FLD0547E   NOT EQUAL XPC-FLD0547E
              DISPLAY 'FLD0547E ==> ' FLD0547E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0547E.
           IF FLD0548B (1:)    NOT EQUAL XPC-FLD0548B
              DISPLAY 'FLD0548B ==> ' FLD0548B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0548B.
           IF FLD0548E   NOT EQUAL XPC-FLD0548E
              DISPLAY 'FLD0548E ==> ' FLD0548E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0548E.
           IF FLD0549B (1:)    NOT EQUAL XPC-FLD0549B
              DISPLAY 'FLD0549B ==> ' FLD0549B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0549B.
           IF FLD0549E   NOT EQUAL XPC-FLD0549E
              DISPLAY 'FLD0549E ==> ' FLD0549E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0549E.
           IF FLD0550B (1:)    NOT EQUAL XPC-FLD0550B
              DISPLAY 'FLD0550B ==> ' FLD0550B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0550B.
           IF FLD0550E   NOT EQUAL XPC-FLD0550E
              DISPLAY 'FLD0550E ==> ' FLD0550E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0550E.
           IF FLD0551B (1:)    NOT EQUAL XPC-FLD0551B
              DISPLAY 'FLD0551B ==> ' FLD0551B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0551B.
           IF FLD0551E   NOT EQUAL XPC-FLD0551E
              DISPLAY 'FLD0551E ==> ' FLD0551E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0551E.
           IF FLD0552B (1:)    NOT EQUAL XPC-FLD0552B
              DISPLAY 'FLD0552B ==> ' FLD0552B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0552B.
           IF FLD0552E   NOT EQUAL XPC-FLD0552E
              DISPLAY 'FLD0552E ==> ' FLD0552E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0552E.
           IF FLD0553B (1:)    NOT EQUAL XPC-FLD0553B
              DISPLAY 'FLD0553B ==> ' FLD0553B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0553B.
           IF FLD0553E   NOT EQUAL XPC-FLD0553E
              DISPLAY 'FLD0553E ==> ' FLD0553E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0553E.
           IF FLD0554B (1:)    NOT EQUAL XPC-FLD0554B
              DISPLAY 'FLD0554B ==> ' FLD0554B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0554B.
           IF FLD0554E   NOT EQUAL XPC-FLD0554E
              DISPLAY 'FLD0554E ==> ' FLD0554E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0554E.
           IF FLD0555B (1:)    NOT EQUAL XPC-FLD0555B
              DISPLAY 'FLD0555B ==> ' FLD0555B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0555B.
           IF FLD0555E   NOT EQUAL XPC-FLD0555E
              DISPLAY 'FLD0555E ==> ' FLD0555E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0555E.
           IF FLD0556B (1:)    NOT EQUAL XPC-FLD0556B
              DISPLAY 'FLD0556B ==> ' FLD0556B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0556B.
           IF FLD0556E   NOT EQUAL XPC-FLD0556E
              DISPLAY 'FLD0556E ==> ' FLD0556E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0556E.
           IF FLD0557B (1:)    NOT EQUAL XPC-FLD0557B
              DISPLAY 'FLD0557B ==> ' FLD0557B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0557B.
           IF FLD0557E   NOT EQUAL XPC-FLD0557E
              DISPLAY 'FLD0557E ==> ' FLD0557E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0557E.
           IF FLD0558B (1:)    NOT EQUAL XPC-FLD0558B
              DISPLAY 'FLD0558B ==> ' FLD0558B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0558B.
           IF FLD0558E   NOT EQUAL XPC-FLD0558E
              DISPLAY 'FLD0558E ==> ' FLD0558E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0558E.
           IF FLD0559B (1:)    NOT EQUAL XPC-FLD0559B
              DISPLAY 'FLD0559B ==> ' FLD0559B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0559B.
           IF FLD0559E   NOT EQUAL XPC-FLD0559E
              DISPLAY 'FLD0559E ==> ' FLD0559E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0559E.
           IF FLD0560B (1:)    NOT EQUAL XPC-FLD0560B
              DISPLAY 'FLD0560B ==> ' FLD0560B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0560B.
           IF FLD0560E   NOT EQUAL XPC-FLD0560E
              DISPLAY 'FLD0560E ==> ' FLD0560E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0560E.
           IF FLD0561B (1:)    NOT EQUAL XPC-FLD0561B
              DISPLAY 'FLD0561B ==> ' FLD0561B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0561B.
           IF FLD0561E   NOT EQUAL XPC-FLD0561E
              DISPLAY 'FLD0561E ==> ' FLD0561E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0561E.
           IF FLD0562B (1:)    NOT EQUAL XPC-FLD0562B
              DISPLAY 'FLD0562B ==> ' FLD0562B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0562B.
           IF FLD0562E   NOT EQUAL XPC-FLD0562E
              DISPLAY 'FLD0562E ==> ' FLD0562E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0562E.
           IF FLD0563B (1:)    NOT EQUAL XPC-FLD0563B
              DISPLAY 'FLD0563B ==> ' FLD0563B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0563B.
           IF FLD0563E   NOT EQUAL XPC-FLD0563E
              DISPLAY 'FLD0563E ==> ' FLD0563E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0563E.
           IF FLD0564B (1:)    NOT EQUAL XPC-FLD0564B
              DISPLAY 'FLD0564B ==> ' FLD0564B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0564B.
           IF FLD0564E   NOT EQUAL XPC-FLD0564E
              DISPLAY 'FLD0564E ==> ' FLD0564E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0564E.
           IF FLD0565B (1:)    NOT EQUAL XPC-FLD0565B
              DISPLAY 'FLD0565B ==> ' FLD0565B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0565B.
           IF FLD0565E   NOT EQUAL XPC-FLD0565E
              DISPLAY 'FLD0565E ==> ' FLD0565E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0565E.
           IF FLD0566B (1:)    NOT EQUAL XPC-FLD0566B
              DISPLAY 'FLD0566B ==> ' FLD0566B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0566B.
           IF FLD0566E   NOT EQUAL XPC-FLD0566E
              DISPLAY 'FLD0566E ==> ' FLD0566E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0566E.
           IF FLD0567B (1:)    NOT EQUAL XPC-FLD0567B
              DISPLAY 'FLD0567B ==> ' FLD0567B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0567B.
           IF FLD0567E   NOT EQUAL XPC-FLD0567E
              DISPLAY 'FLD0567E ==> ' FLD0567E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0567E.
           IF FLD0568B (1:)    NOT EQUAL XPC-FLD0568B
              DISPLAY 'FLD0568B ==> ' FLD0568B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0568B.
           IF FLD0568E   NOT EQUAL XPC-FLD0568E
              DISPLAY 'FLD0568E ==> ' FLD0568E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0568E.
           IF FLD0569B (1:)    NOT EQUAL XPC-FLD0569B
              DISPLAY 'FLD0569B ==> ' FLD0569B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0569B.
           IF FLD0569E   NOT EQUAL XPC-FLD0569E
              DISPLAY 'FLD0569E ==> ' FLD0569E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0569E.
           IF FLD0570B (1:)    NOT EQUAL XPC-FLD0570B
              DISPLAY 'FLD0570B ==> ' FLD0570B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0570B.
           IF FLD0570E   NOT EQUAL XPC-FLD0570E
              DISPLAY 'FLD0570E ==> ' FLD0570E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0570E.
           IF FLD0571B (1:)    NOT EQUAL XPC-FLD0571B
              DISPLAY 'FLD0571B ==> ' FLD0571B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0571B.
           IF FLD0571E   NOT EQUAL XPC-FLD0571E
              DISPLAY 'FLD0571E ==> ' FLD0571E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0571E.
           IF FLD0572B (1:)    NOT EQUAL XPC-FLD0572B
              DISPLAY 'FLD0572B ==> ' FLD0572B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0572B.
           IF FLD0572E   NOT EQUAL XPC-FLD0572E
              DISPLAY 'FLD0572E ==> ' FLD0572E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0572E.
           IF FLD0573B (1:)    NOT EQUAL XPC-FLD0573B
              DISPLAY 'FLD0573B ==> ' FLD0573B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0573B.
           IF FLD0573E   NOT EQUAL XPC-FLD0573E
              DISPLAY 'FLD0573E ==> ' FLD0573E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0573E.
           IF FLD0574B (1:)    NOT EQUAL XPC-FLD0574B
              DISPLAY 'FLD0574B ==> ' FLD0574B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0574B.
           IF FLD0574E   NOT EQUAL XPC-FLD0574E
              DISPLAY 'FLD0574E ==> ' FLD0574E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0574E.
           IF FLD0575B (1:)    NOT EQUAL XPC-FLD0575B
              DISPLAY 'FLD0575B ==> ' FLD0575B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0575B.
           IF FLD0575E   NOT EQUAL XPC-FLD0575E
              DISPLAY 'FLD0575E ==> ' FLD0575E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0575E.
           IF FLD0576B (1:)    NOT EQUAL XPC-FLD0576B
              DISPLAY 'FLD0576B ==> ' FLD0576B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0576B.
           IF FLD0576E   NOT EQUAL XPC-FLD0576E
              DISPLAY 'FLD0576E ==> ' FLD0576E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0576E.
           IF FLD0577B (1:)    NOT EQUAL XPC-FLD0577B
              DISPLAY 'FLD0577B ==> ' FLD0577B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0577B.
           IF FLD0577E   NOT EQUAL XPC-FLD0577E
              DISPLAY 'FLD0577E ==> ' FLD0577E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0577E.
           IF FLD0578B (1:)    NOT EQUAL XPC-FLD0578B
              DISPLAY 'FLD0578B ==> ' FLD0578B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0578B.
           IF FLD0578E   NOT EQUAL XPC-FLD0578E
              DISPLAY 'FLD0578E ==> ' FLD0578E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0578E.
           IF FLD0579B (1:)    NOT EQUAL XPC-FLD0579B
              DISPLAY 'FLD0579B ==> ' FLD0579B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0579B.
           IF FLD0579E   NOT EQUAL XPC-FLD0579E
              DISPLAY 'FLD0579E ==> ' FLD0579E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0579E.
           IF FLD0580B (1:)    NOT EQUAL XPC-FLD0580B
              DISPLAY 'FLD0580B ==> ' FLD0580B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0580B.
           IF FLD0580E   NOT EQUAL XPC-FLD0580E
              DISPLAY 'FLD0580E ==> ' FLD0580E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0580E.
           IF FLD0581B (1:)    NOT EQUAL XPC-FLD0581B
              DISPLAY 'FLD0581B ==> ' FLD0581B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0581B.
           IF FLD0581E   NOT EQUAL XPC-FLD0581E
              DISPLAY 'FLD0581E ==> ' FLD0581E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0581E.
           IF FLD0582B (1:)    NOT EQUAL XPC-FLD0582B
              DISPLAY 'FLD0582B ==> ' FLD0582B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0582B.
           IF FLD0582E   NOT EQUAL XPC-FLD0582E
              DISPLAY 'FLD0582E ==> ' FLD0582E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0582E.
           IF FLD0583B (1:)    NOT EQUAL XPC-FLD0583B
              DISPLAY 'FLD0583B ==> ' FLD0583B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0583B.
           IF FLD0583E   NOT EQUAL XPC-FLD0583E
              DISPLAY 'FLD0583E ==> ' FLD0583E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0583E.
           IF FLD0584B (1:)    NOT EQUAL XPC-FLD0584B
              DISPLAY 'FLD0584B ==> ' FLD0584B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0584B.
           IF FLD0584E   NOT EQUAL XPC-FLD0584E
              DISPLAY 'FLD0584E ==> ' FLD0584E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0584E.
           IF FLD0585B (1:)    NOT EQUAL XPC-FLD0585B
              DISPLAY 'FLD0585B ==> ' FLD0585B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0585B.
           IF FLD0585E   NOT EQUAL XPC-FLD0585E
              DISPLAY 'FLD0585E ==> ' FLD0585E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0585E.
           IF FLD0586B (1:)    NOT EQUAL XPC-FLD0586B
              DISPLAY 'FLD0586B ==> ' FLD0586B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0586B.
           IF FLD0586E   NOT EQUAL XPC-FLD0586E
              DISPLAY 'FLD0586E ==> ' FLD0586E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0586E.
           IF FLD0587B (1:)    NOT EQUAL XPC-FLD0587B
              DISPLAY 'FLD0587B ==> ' FLD0587B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0587B.
           IF FLD0587E   NOT EQUAL XPC-FLD0587E
              DISPLAY 'FLD0587E ==> ' FLD0587E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0587E.
           IF FLD0588B (1:)    NOT EQUAL XPC-FLD0588B
              DISPLAY 'FLD0588B ==> ' FLD0588B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0588B.
           IF FLD0588E   NOT EQUAL XPC-FLD0588E
              DISPLAY 'FLD0588E ==> ' FLD0588E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0588E.
           IF FLD0589B (1:)    NOT EQUAL XPC-FLD0589B
              DISPLAY 'FLD0589B ==> ' FLD0589B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0589B.
           IF FLD0589E   NOT EQUAL XPC-FLD0589E
              DISPLAY 'FLD0589E ==> ' FLD0589E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0589E.
           IF FLD0590B (1:)    NOT EQUAL XPC-FLD0590B
              DISPLAY 'FLD0590B ==> ' FLD0590B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0590B.
           IF FLD0590E   NOT EQUAL XPC-FLD0590E
              DISPLAY 'FLD0590E ==> ' FLD0590E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0590E.
           IF FLD0591B (1:)    NOT EQUAL XPC-FLD0591B
              DISPLAY 'FLD0591B ==> ' FLD0591B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0591B.
           IF FLD0591E   NOT EQUAL XPC-FLD0591E
              DISPLAY 'FLD0591E ==> ' FLD0591E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0591E.
           IF FLD0592B (1:)    NOT EQUAL XPC-FLD0592B
              DISPLAY 'FLD0592B ==> ' FLD0592B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0592B.
           IF FLD0592E   NOT EQUAL XPC-FLD0592E
              DISPLAY 'FLD0592E ==> ' FLD0592E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0592E.
           IF FLD0593B (1:)    NOT EQUAL XPC-FLD0593B
              DISPLAY 'FLD0593B ==> ' FLD0593B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0593B.
           IF FLD0593E   NOT EQUAL XPC-FLD0593E
              DISPLAY 'FLD0593E ==> ' FLD0593E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0593E.
           IF FLD0594B (1:)    NOT EQUAL XPC-FLD0594B
              DISPLAY 'FLD0594B ==> ' FLD0594B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0594B.
           IF FLD0594E   NOT EQUAL XPC-FLD0594E
              DISPLAY 'FLD0594E ==> ' FLD0594E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0594E.
           IF FLD0595B (1:)    NOT EQUAL XPC-FLD0595B
              DISPLAY 'FLD0595B ==> ' FLD0595B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0595B.
           IF FLD0595E   NOT EQUAL XPC-FLD0595E
              DISPLAY 'FLD0595E ==> ' FLD0595E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0595E.
           IF FLD0596B (1:)    NOT EQUAL XPC-FLD0596B
              DISPLAY 'FLD0596B ==> ' FLD0596B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0596B.
           IF FLD0596E   NOT EQUAL XPC-FLD0596E
              DISPLAY 'FLD0596E ==> ' FLD0596E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0596E.
           IF FLD0597B (1:)    NOT EQUAL XPC-FLD0597B
              DISPLAY 'FLD0597B ==> ' FLD0597B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0597B.
           IF FLD0597E   NOT EQUAL XPC-FLD0597E
              DISPLAY 'FLD0597E ==> ' FLD0597E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0597E.
           IF FLD0598B (1:)    NOT EQUAL XPC-FLD0598B
              DISPLAY 'FLD0598B ==> ' FLD0598B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0598B.
           IF FLD0598E   NOT EQUAL XPC-FLD0598E
              DISPLAY 'FLD0598E ==> ' FLD0598E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0598E.
           IF FLD0599B (1:)    NOT EQUAL XPC-FLD0599B
              DISPLAY 'FLD0599B ==> ' FLD0599B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0599B.
           IF FLD0599E   NOT EQUAL XPC-FLD0599E
              DISPLAY 'FLD0599E ==> ' FLD0599E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0599E.
           IF FLD0600B (1:)    NOT EQUAL XPC-FLD0600B
              DISPLAY 'FLD0600B ==> ' FLD0600B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0600B.
           IF FLD0600E   NOT EQUAL XPC-FLD0600E
              DISPLAY 'FLD0600E ==> ' FLD0600E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0600E.
           IF FLD0601B (1:)    NOT EQUAL XPC-FLD0601B
              DISPLAY 'FLD0601B ==> ' FLD0601B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0601B.
           IF FLD0601E   NOT EQUAL XPC-FLD0601E
              DISPLAY 'FLD0601E ==> ' FLD0601E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0601E.
           IF FLD0602B (1:)    NOT EQUAL XPC-FLD0602B
              DISPLAY 'FLD0602B ==> ' FLD0602B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0602B.
           IF FLD0602E   NOT EQUAL XPC-FLD0602E
              DISPLAY 'FLD0602E ==> ' FLD0602E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0602E.
           IF FLD0603B (1:)    NOT EQUAL XPC-FLD0603B
              DISPLAY 'FLD0603B ==> ' FLD0603B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0603B.
           IF FLD0603E   NOT EQUAL XPC-FLD0603E
              DISPLAY 'FLD0603E ==> ' FLD0603E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0603E.
           IF FLD0604B (1:)    NOT EQUAL XPC-FLD0604B
              DISPLAY 'FLD0604B ==> ' FLD0604B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0604B.
           IF FLD0604E   NOT EQUAL XPC-FLD0604E
              DISPLAY 'FLD0604E ==> ' FLD0604E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0604E.
           IF FLD0605B (1:)    NOT EQUAL XPC-FLD0605B
              DISPLAY 'FLD0605B ==> ' FLD0605B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0605B.
           IF FLD0605E   NOT EQUAL XPC-FLD0605E
              DISPLAY 'FLD0605E ==> ' FLD0605E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0605E.
           IF FLD0606B (1:)    NOT EQUAL XPC-FLD0606B
              DISPLAY 'FLD0606B ==> ' FLD0606B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0606B.
           IF FLD0606E   NOT EQUAL XPC-FLD0606E
              DISPLAY 'FLD0606E ==> ' FLD0606E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0606E.
           IF FLD0607B (1:)    NOT EQUAL XPC-FLD0607B
              DISPLAY 'FLD0607B ==> ' FLD0607B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0607B.
           IF FLD0607E   NOT EQUAL XPC-FLD0607E
              DISPLAY 'FLD0607E ==> ' FLD0607E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0607E.
           IF FLD0608B (1:)    NOT EQUAL XPC-FLD0608B
              DISPLAY 'FLD0608B ==> ' FLD0608B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0608B.
           IF FLD0608E   NOT EQUAL XPC-FLD0608E
              DISPLAY 'FLD0608E ==> ' FLD0608E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0608E.
           IF FLD0609B (1:)    NOT EQUAL XPC-FLD0609B
              DISPLAY 'FLD0609B ==> ' FLD0609B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0609B.
           IF FLD0609E   NOT EQUAL XPC-FLD0609E
              DISPLAY 'FLD0609E ==> ' FLD0609E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0609E.
           IF FLD0610B (1:)    NOT EQUAL XPC-FLD0610B
              DISPLAY 'FLD0610B ==> ' FLD0610B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0610B.
           IF FLD0610E   NOT EQUAL XPC-FLD0610E
              DISPLAY 'FLD0610E ==> ' FLD0610E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0610E.
           IF FLD0611B (1:)    NOT EQUAL XPC-FLD0611B
              DISPLAY 'FLD0611B ==> ' FLD0611B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0611B.
           IF FLD0611E   NOT EQUAL XPC-FLD0611E
              DISPLAY 'FLD0611E ==> ' FLD0611E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0611E.
           IF FLD0612B (1:)    NOT EQUAL XPC-FLD0612B
              DISPLAY 'FLD0612B ==> ' FLD0612B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0612B.
           IF FLD0612E   NOT EQUAL XPC-FLD0612E
              DISPLAY 'FLD0612E ==> ' FLD0612E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0612E.
           IF FLD0613B (1:)    NOT EQUAL XPC-FLD0613B
              DISPLAY 'FLD0613B ==> ' FLD0613B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0613B.
           IF FLD0613E   NOT EQUAL XPC-FLD0613E
              DISPLAY 'FLD0613E ==> ' FLD0613E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0613E.
           IF FLD0614B (1:)    NOT EQUAL XPC-FLD0614B
              DISPLAY 'FLD0614B ==> ' FLD0614B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0614B.
           IF FLD0614E   NOT EQUAL XPC-FLD0614E
              DISPLAY 'FLD0614E ==> ' FLD0614E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0614E.
           IF FLD0615B (1:)    NOT EQUAL XPC-FLD0615B
              DISPLAY 'FLD0615B ==> ' FLD0615B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0615B.
           IF FLD0615E   NOT EQUAL XPC-FLD0615E
              DISPLAY 'FLD0615E ==> ' FLD0615E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0615E.
           IF FLD0616B (1:)    NOT EQUAL XPC-FLD0616B
              DISPLAY 'FLD0616B ==> ' FLD0616B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0616B.
           IF FLD0616E   NOT EQUAL XPC-FLD0616E
              DISPLAY 'FLD0616E ==> ' FLD0616E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0616E.
           IF FLD0617B (1:)    NOT EQUAL XPC-FLD0617B
              DISPLAY 'FLD0617B ==> ' FLD0617B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0617B.
           IF FLD0617E   NOT EQUAL XPC-FLD0617E
              DISPLAY 'FLD0617E ==> ' FLD0617E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0617E.
           IF FLD0618B (1:)    NOT EQUAL XPC-FLD0618B
              DISPLAY 'FLD0618B ==> ' FLD0618B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0618B.
           IF FLD0618E   NOT EQUAL XPC-FLD0618E
              DISPLAY 'FLD0618E ==> ' FLD0618E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0618E.
           IF FLD0619B (1:)    NOT EQUAL XPC-FLD0619B
              DISPLAY 'FLD0619B ==> ' FLD0619B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0619B.
           IF FLD0619E   NOT EQUAL XPC-FLD0619E
              DISPLAY 'FLD0619E ==> ' FLD0619E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0619E.
           IF FLD0620B (1:)    NOT EQUAL XPC-FLD0620B
              DISPLAY 'FLD0620B ==> ' FLD0620B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0620B.
           IF FLD0620E   NOT EQUAL XPC-FLD0620E
              DISPLAY 'FLD0620E ==> ' FLD0620E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0620E.
           IF FLD0621B (1:)    NOT EQUAL XPC-FLD0621B
              DISPLAY 'FLD0621B ==> ' FLD0621B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0621B.
           IF FLD0621E   NOT EQUAL XPC-FLD0621E
              DISPLAY 'FLD0621E ==> ' FLD0621E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0621E.
           IF FLD0622B (1:)    NOT EQUAL XPC-FLD0622B
              DISPLAY 'FLD0622B ==> ' FLD0622B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0622B.
           IF FLD0622E   NOT EQUAL XPC-FLD0622E
              DISPLAY 'FLD0622E ==> ' FLD0622E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0622E.
           IF FLD0623B (1:)    NOT EQUAL XPC-FLD0623B
              DISPLAY 'FLD0623B ==> ' FLD0623B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0623B.
           IF FLD0623E   NOT EQUAL XPC-FLD0623E
              DISPLAY 'FLD0623E ==> ' FLD0623E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0623E.
           IF FLD0624B (1:)    NOT EQUAL XPC-FLD0624B
              DISPLAY 'FLD0624B ==> ' FLD0624B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0624B.
           IF FLD0624E   NOT EQUAL XPC-FLD0624E
              DISPLAY 'FLD0624E ==> ' FLD0624E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0624E.
           IF FLD0625B (1:)    NOT EQUAL XPC-FLD0625B
              DISPLAY 'FLD0625B ==> ' FLD0625B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0625B.
           IF FLD0625E   NOT EQUAL XPC-FLD0625E
              DISPLAY 'FLD0625E ==> ' FLD0625E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0625E.
           IF FLD0626B (1:)    NOT EQUAL XPC-FLD0626B
              DISPLAY 'FLD0626B ==> ' FLD0626B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0626B.
           IF FLD0626E   NOT EQUAL XPC-FLD0626E
              DISPLAY 'FLD0626E ==> ' FLD0626E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0626E.
           IF FLD0627B (1:)    NOT EQUAL XPC-FLD0627B
              DISPLAY 'FLD0627B ==> ' FLD0627B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0627B.
           IF FLD0627E   NOT EQUAL XPC-FLD0627E
              DISPLAY 'FLD0627E ==> ' FLD0627E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0627E.
           IF FLD0628B (1:)    NOT EQUAL XPC-FLD0628B
              DISPLAY 'FLD0628B ==> ' FLD0628B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0628B.
           IF FLD0628E   NOT EQUAL XPC-FLD0628E
              DISPLAY 'FLD0628E ==> ' FLD0628E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0628E.
           IF FLD0629B (1:)    NOT EQUAL XPC-FLD0629B
              DISPLAY 'FLD0629B ==> ' FLD0629B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0629B.
           IF FLD0629E   NOT EQUAL XPC-FLD0629E
              DISPLAY 'FLD0629E ==> ' FLD0629E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0629E.
           IF FLD0630B (1:)    NOT EQUAL XPC-FLD0630B
              DISPLAY 'FLD0630B ==> ' FLD0630B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0630B.
           IF FLD0630E   NOT EQUAL XPC-FLD0630E
              DISPLAY 'FLD0630E ==> ' FLD0630E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0630E.
           IF FLD0631B (1:)    NOT EQUAL XPC-FLD0631B
              DISPLAY 'FLD0631B ==> ' FLD0631B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0631B.
           IF FLD0631E   NOT EQUAL XPC-FLD0631E
              DISPLAY 'FLD0631E ==> ' FLD0631E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0631E.
           IF FLD0632B (1:)    NOT EQUAL XPC-FLD0632B
              DISPLAY 'FLD0632B ==> ' FLD0632B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0632B.
           IF FLD0632E   NOT EQUAL XPC-FLD0632E
              DISPLAY 'FLD0632E ==> ' FLD0632E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0632E.
           IF FLD0633B (1:)    NOT EQUAL XPC-FLD0633B
              DISPLAY 'FLD0633B ==> ' FLD0633B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0633B.
           IF FLD0633E   NOT EQUAL XPC-FLD0633E
              DISPLAY 'FLD0633E ==> ' FLD0633E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0633E.
           IF FLD0634B (1:)    NOT EQUAL XPC-FLD0634B
              DISPLAY 'FLD0634B ==> ' FLD0634B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0634B.
           IF FLD0634E   NOT EQUAL XPC-FLD0634E
              DISPLAY 'FLD0634E ==> ' FLD0634E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0634E.
           IF FLD0635B (1:)    NOT EQUAL XPC-FLD0635B
              DISPLAY 'FLD0635B ==> ' FLD0635B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0635B.
           IF FLD0635E   NOT EQUAL XPC-FLD0635E
              DISPLAY 'FLD0635E ==> ' FLD0635E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0635E.
           IF FLD0636B (1:)    NOT EQUAL XPC-FLD0636B
              DISPLAY 'FLD0636B ==> ' FLD0636B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0636B.
           IF FLD0636E   NOT EQUAL XPC-FLD0636E
              DISPLAY 'FLD0636E ==> ' FLD0636E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0636E.
           IF FLD0637B (1:)    NOT EQUAL XPC-FLD0637B
              DISPLAY 'FLD0637B ==> ' FLD0637B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0637B.
           IF FLD0637E   NOT EQUAL XPC-FLD0637E
              DISPLAY 'FLD0637E ==> ' FLD0637E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0637E.
           IF FLD0638B (1:)    NOT EQUAL XPC-FLD0638B
              DISPLAY 'FLD0638B ==> ' FLD0638B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0638B.
           IF FLD0638E   NOT EQUAL XPC-FLD0638E
              DISPLAY 'FLD0638E ==> ' FLD0638E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0638E.
           IF FLD0639B (1:)    NOT EQUAL XPC-FLD0639B
              DISPLAY 'FLD0639B ==> ' FLD0639B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0639B.
           IF FLD0639E   NOT EQUAL XPC-FLD0639E
              DISPLAY 'FLD0639E ==> ' FLD0639E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0639E.
           IF FLD0640B (1:)    NOT EQUAL XPC-FLD0640B
              DISPLAY 'FLD0640B ==> ' FLD0640B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0640B.
           IF FLD0640E   NOT EQUAL XPC-FLD0640E
              DISPLAY 'FLD0640E ==> ' FLD0640E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0640E.
           IF FLD0641B (1:)    NOT EQUAL XPC-FLD0641B
              DISPLAY 'FLD0641B ==> ' FLD0641B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0641B.
           IF FLD0641E   NOT EQUAL XPC-FLD0641E
              DISPLAY 'FLD0641E ==> ' FLD0641E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0641E.
           IF FLD0642B (1:)    NOT EQUAL XPC-FLD0642B
              DISPLAY 'FLD0642B ==> ' FLD0642B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0642B.
           IF FLD0642E   NOT EQUAL XPC-FLD0642E
              DISPLAY 'FLD0642E ==> ' FLD0642E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0642E.
           IF FLD0643B (1:)    NOT EQUAL XPC-FLD0643B
              DISPLAY 'FLD0643B ==> ' FLD0643B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0643B.
           IF FLD0643E   NOT EQUAL XPC-FLD0643E
              DISPLAY 'FLD0643E ==> ' FLD0643E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0643E.
           IF FLD0644B (1:)    NOT EQUAL XPC-FLD0644B
              DISPLAY 'FLD0644B ==> ' FLD0644B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0644B.
           IF FLD0644E   NOT EQUAL XPC-FLD0644E
              DISPLAY 'FLD0644E ==> ' FLD0644E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0644E.
           IF FLD0645B (1:)    NOT EQUAL XPC-FLD0645B
              DISPLAY 'FLD0645B ==> ' FLD0645B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0645B.
           IF FLD0645E   NOT EQUAL XPC-FLD0645E
              DISPLAY 'FLD0645E ==> ' FLD0645E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0645E.
           IF FLD0646B (1:)    NOT EQUAL XPC-FLD0646B
              DISPLAY 'FLD0646B ==> ' FLD0646B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0646B.
           IF FLD0646E   NOT EQUAL XPC-FLD0646E
              DISPLAY 'FLD0646E ==> ' FLD0646E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0646E.
           IF FLD0647B (1:)    NOT EQUAL XPC-FLD0647B
              DISPLAY 'FLD0647B ==> ' FLD0647B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0647B.
           IF FLD0647E   NOT EQUAL XPC-FLD0647E
              DISPLAY 'FLD0647E ==> ' FLD0647E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0647E.
           IF FLD0648B (1:)    NOT EQUAL XPC-FLD0648B
              DISPLAY 'FLD0648B ==> ' FLD0648B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0648B.
           IF FLD0648E   NOT EQUAL XPC-FLD0648E
              DISPLAY 'FLD0648E ==> ' FLD0648E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0648E.
           IF FLD0649B (1:)    NOT EQUAL XPC-FLD0649B
              DISPLAY 'FLD0649B ==> ' FLD0649B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0649B.
           IF FLD0649E   NOT EQUAL XPC-FLD0649E
              DISPLAY 'FLD0649E ==> ' FLD0649E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0649E.
           IF FLD0650B (1:)    NOT EQUAL XPC-FLD0650B
              DISPLAY 'FLD0650B ==> ' FLD0650B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0650B.
           IF FLD0650E   NOT EQUAL XPC-FLD0650E
              DISPLAY 'FLD0650E ==> ' FLD0650E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0650E.
           IF FLD0651B (1:)    NOT EQUAL XPC-FLD0651B
              DISPLAY 'FLD0651B ==> ' FLD0651B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0651B.
           IF FLD0651E   NOT EQUAL XPC-FLD0651E
              DISPLAY 'FLD0651E ==> ' FLD0651E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0651E.
           IF FLD0652B (1:)    NOT EQUAL XPC-FLD0652B
              DISPLAY 'FLD0652B ==> ' FLD0652B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0652B.
           IF FLD0652E   NOT EQUAL XPC-FLD0652E
              DISPLAY 'FLD0652E ==> ' FLD0652E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0652E.
           IF FLD0653B (1:)    NOT EQUAL XPC-FLD0653B
              DISPLAY 'FLD0653B ==> ' FLD0653B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0653B.
           IF FLD0653E   NOT EQUAL XPC-FLD0653E
              DISPLAY 'FLD0653E ==> ' FLD0653E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0653E.
           IF FLD0654B (1:)    NOT EQUAL XPC-FLD0654B
              DISPLAY 'FLD0654B ==> ' FLD0654B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0654B.
           IF FLD0654E   NOT EQUAL XPC-FLD0654E
              DISPLAY 'FLD0654E ==> ' FLD0654E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0654E.
           IF FLD0655B (1:)    NOT EQUAL XPC-FLD0655B
              DISPLAY 'FLD0655B ==> ' FLD0655B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0655B.
           IF FLD0655E   NOT EQUAL XPC-FLD0655E
              DISPLAY 'FLD0655E ==> ' FLD0655E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0655E.
           IF FLD0656B (1:)    NOT EQUAL XPC-FLD0656B
              DISPLAY 'FLD0656B ==> ' FLD0656B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0656B.
           IF FLD0656E   NOT EQUAL XPC-FLD0656E
              DISPLAY 'FLD0656E ==> ' FLD0656E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0656E.
           IF FLD0657B (1:)    NOT EQUAL XPC-FLD0657B
              DISPLAY 'FLD0657B ==> ' FLD0657B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0657B.
           IF FLD0657E   NOT EQUAL XPC-FLD0657E
              DISPLAY 'FLD0657E ==> ' FLD0657E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0657E.
           IF FLD0658B (1:)    NOT EQUAL XPC-FLD0658B
              DISPLAY 'FLD0658B ==> ' FLD0658B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0658B.
           IF FLD0658E   NOT EQUAL XPC-FLD0658E
              DISPLAY 'FLD0658E ==> ' FLD0658E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0658E.
           IF FLD0659B (1:)    NOT EQUAL XPC-FLD0659B
              DISPLAY 'FLD0659B ==> ' FLD0659B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0659B.
           IF FLD0659E   NOT EQUAL XPC-FLD0659E
              DISPLAY 'FLD0659E ==> ' FLD0659E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0659E.
           IF FLD0660B (1:)    NOT EQUAL XPC-FLD0660B
              DISPLAY 'FLD0660B ==> ' FLD0660B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0660B.
           IF FLD0660E   NOT EQUAL XPC-FLD0660E
              DISPLAY 'FLD0660E ==> ' FLD0660E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0660E.
           IF FLD0661B (1:)    NOT EQUAL XPC-FLD0661B
              DISPLAY 'FLD0661B ==> ' FLD0661B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0661B.
           IF FLD0661E   NOT EQUAL XPC-FLD0661E
              DISPLAY 'FLD0661E ==> ' FLD0661E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0661E.
           IF FLD0662B (1:)    NOT EQUAL XPC-FLD0662B
              DISPLAY 'FLD0662B ==> ' FLD0662B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0662B.
           IF FLD0662E   NOT EQUAL XPC-FLD0662E
              DISPLAY 'FLD0662E ==> ' FLD0662E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0662E.
           IF FLD0663B (1:)    NOT EQUAL XPC-FLD0663B
              DISPLAY 'FLD0663B ==> ' FLD0663B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0663B.
           IF FLD0663E   NOT EQUAL XPC-FLD0663E
              DISPLAY 'FLD0663E ==> ' FLD0663E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0663E.
           IF FLD0664B (1:)    NOT EQUAL XPC-FLD0664B
              DISPLAY 'FLD0664B ==> ' FLD0664B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0664B.
           IF FLD0664E   NOT EQUAL XPC-FLD0664E
              DISPLAY 'FLD0664E ==> ' FLD0664E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0664E.
           IF FLD0665B (1:)    NOT EQUAL XPC-FLD0665B
              DISPLAY 'FLD0665B ==> ' FLD0665B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0665B.
           IF FLD0665E   NOT EQUAL XPC-FLD0665E
              DISPLAY 'FLD0665E ==> ' FLD0665E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0665E.
           IF FLD0666B (1:)    NOT EQUAL XPC-FLD0666B
              DISPLAY 'FLD0666B ==> ' FLD0666B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0666B.
           IF FLD0666E   NOT EQUAL XPC-FLD0666E
              DISPLAY 'FLD0666E ==> ' FLD0666E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0666E.
           IF FLD0667B (1:)    NOT EQUAL XPC-FLD0667B
              DISPLAY 'FLD0667B ==> ' FLD0667B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0667B.
           IF FLD0667E   NOT EQUAL XPC-FLD0667E
              DISPLAY 'FLD0667E ==> ' FLD0667E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0667E.
           IF FLD0668B (1:)    NOT EQUAL XPC-FLD0668B
              DISPLAY 'FLD0668B ==> ' FLD0668B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0668B.
           IF FLD0668E   NOT EQUAL XPC-FLD0668E
              DISPLAY 'FLD0668E ==> ' FLD0668E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0668E.
           IF FLD0669B (1:)    NOT EQUAL XPC-FLD0669B
              DISPLAY 'FLD0669B ==> ' FLD0669B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0669B.
           IF FLD0669E   NOT EQUAL XPC-FLD0669E
              DISPLAY 'FLD0669E ==> ' FLD0669E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0669E.
           IF FLD0670B (1:)    NOT EQUAL XPC-FLD0670B
              DISPLAY 'FLD0670B ==> ' FLD0670B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0670B.
           IF FLD0670E   NOT EQUAL XPC-FLD0670E
              DISPLAY 'FLD0670E ==> ' FLD0670E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0670E.
           IF FLD0671B (1:)    NOT EQUAL XPC-FLD0671B
              DISPLAY 'FLD0671B ==> ' FLD0671B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0671B.
           IF FLD0671E   NOT EQUAL XPC-FLD0671E
              DISPLAY 'FLD0671E ==> ' FLD0671E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0671E.
           IF FLD0672B (1:)    NOT EQUAL XPC-FLD0672B
              DISPLAY 'FLD0672B ==> ' FLD0672B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0672B.
           IF FLD0672E   NOT EQUAL XPC-FLD0672E
              DISPLAY 'FLD0672E ==> ' FLD0672E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0672E.
           IF FLD0673B (1:)    NOT EQUAL XPC-FLD0673B
              DISPLAY 'FLD0673B ==> ' FLD0673B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0673B.
           IF FLD0673E   NOT EQUAL XPC-FLD0673E
              DISPLAY 'FLD0673E ==> ' FLD0673E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0673E.
           IF FLD0674B (1:)    NOT EQUAL XPC-FLD0674B
              DISPLAY 'FLD0674B ==> ' FLD0674B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0674B.
           IF FLD0674E   NOT EQUAL XPC-FLD0674E
              DISPLAY 'FLD0674E ==> ' FLD0674E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0674E.
           IF FLD0675B (1:)    NOT EQUAL XPC-FLD0675B
              DISPLAY 'FLD0675B ==> ' FLD0675B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0675B.
           IF FLD0675E   NOT EQUAL XPC-FLD0675E
              DISPLAY 'FLD0675E ==> ' FLD0675E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0675E.
           IF FLD0676B (1:)    NOT EQUAL XPC-FLD0676B
              DISPLAY 'FLD0676B ==> ' FLD0676B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0676B.
           IF FLD0676E   NOT EQUAL XPC-FLD0676E
              DISPLAY 'FLD0676E ==> ' FLD0676E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0676E.
           IF FLD0677B (1:)    NOT EQUAL XPC-FLD0677B
              DISPLAY 'FLD0677B ==> ' FLD0677B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0677B.
           IF FLD0677E   NOT EQUAL XPC-FLD0677E
              DISPLAY 'FLD0677E ==> ' FLD0677E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0677E.
           IF FLD0678B (1:)    NOT EQUAL XPC-FLD0678B
              DISPLAY 'FLD0678B ==> ' FLD0678B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0678B.
           IF FLD0678E   NOT EQUAL XPC-FLD0678E
              DISPLAY 'FLD0678E ==> ' FLD0678E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0678E.
           IF FLD0679B (1:)    NOT EQUAL XPC-FLD0679B
              DISPLAY 'FLD0679B ==> ' FLD0679B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0679B.
           IF FLD0679E   NOT EQUAL XPC-FLD0679E
              DISPLAY 'FLD0679E ==> ' FLD0679E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0679E.
           IF FLD0680B (1:)    NOT EQUAL XPC-FLD0680B
              DISPLAY 'FLD0680B ==> ' FLD0680B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0680B.
           IF FLD0680E   NOT EQUAL XPC-FLD0680E
              DISPLAY 'FLD0680E ==> ' FLD0680E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0680E.
           IF FLD0681B (1:)    NOT EQUAL XPC-FLD0681B
              DISPLAY 'FLD0681B ==> ' FLD0681B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0681B.
           IF FLD0681E   NOT EQUAL XPC-FLD0681E
              DISPLAY 'FLD0681E ==> ' FLD0681E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0681E.
           IF FLD0682B (1:)    NOT EQUAL XPC-FLD0682B
              DISPLAY 'FLD0682B ==> ' FLD0682B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0682B.
           IF FLD0682E   NOT EQUAL XPC-FLD0682E
              DISPLAY 'FLD0682E ==> ' FLD0682E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0682E.
           IF FLD0683B (1:)    NOT EQUAL XPC-FLD0683B
              DISPLAY 'FLD0683B ==> ' FLD0683B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0683B.
           IF FLD0683E   NOT EQUAL XPC-FLD0683E
              DISPLAY 'FLD0683E ==> ' FLD0683E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0683E.
           IF FLD0684B (1:)    NOT EQUAL XPC-FLD0684B
              DISPLAY 'FLD0684B ==> ' FLD0684B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0684B.
           IF FLD0684E   NOT EQUAL XPC-FLD0684E
              DISPLAY 'FLD0684E ==> ' FLD0684E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0684E.
           IF FLD0685B (1:)    NOT EQUAL XPC-FLD0685B
              DISPLAY 'FLD0685B ==> ' FLD0685B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0685B.
           IF FLD0685E   NOT EQUAL XPC-FLD0685E
              DISPLAY 'FLD0685E ==> ' FLD0685E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0685E.
           IF FLD0686B (1:)    NOT EQUAL XPC-FLD0686B
              DISPLAY 'FLD0686B ==> ' FLD0686B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0686B.
           IF FLD0686E   NOT EQUAL XPC-FLD0686E
              DISPLAY 'FLD0686E ==> ' FLD0686E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0686E.
           IF FLD0687B (1:)    NOT EQUAL XPC-FLD0687B
              DISPLAY 'FLD0687B ==> ' FLD0687B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0687B.
           IF FLD0687E   NOT EQUAL XPC-FLD0687E
              DISPLAY 'FLD0687E ==> ' FLD0687E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0687E.
           IF FLD0688B (1:)    NOT EQUAL XPC-FLD0688B
              DISPLAY 'FLD0688B ==> ' FLD0688B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0688B.
           IF FLD0688E   NOT EQUAL XPC-FLD0688E
              DISPLAY 'FLD0688E ==> ' FLD0688E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0688E.
           IF FLD0689B (1:)    NOT EQUAL XPC-FLD0689B
              DISPLAY 'FLD0689B ==> ' FLD0689B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0689B.
           IF FLD0689E   NOT EQUAL XPC-FLD0689E
              DISPLAY 'FLD0689E ==> ' FLD0689E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0689E.
           IF FLD0690B (1:)    NOT EQUAL XPC-FLD0690B
              DISPLAY 'FLD0690B ==> ' FLD0690B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0690B.
           IF FLD0690E   NOT EQUAL XPC-FLD0690E
              DISPLAY 'FLD0690E ==> ' FLD0690E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0690E.
           IF FLD0691B (1:)    NOT EQUAL XPC-FLD0691B
              DISPLAY 'FLD0691B ==> ' FLD0691B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0691B.
           IF FLD0691E   NOT EQUAL XPC-FLD0691E
              DISPLAY 'FLD0691E ==> ' FLD0691E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0691E.
           IF FLD0692B (1:)    NOT EQUAL XPC-FLD0692B
              DISPLAY 'FLD0692B ==> ' FLD0692B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0692B.
           IF FLD0692E   NOT EQUAL XPC-FLD0692E
              DISPLAY 'FLD0692E ==> ' FLD0692E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0692E.
           IF FLD0693B (1:)    NOT EQUAL XPC-FLD0693B
              DISPLAY 'FLD0693B ==> ' FLD0693B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0693B.
           IF FLD0693E   NOT EQUAL XPC-FLD0693E
              DISPLAY 'FLD0693E ==> ' FLD0693E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0693E.
           IF FLD0694B (1:)    NOT EQUAL XPC-FLD0694B
              DISPLAY 'FLD0694B ==> ' FLD0694B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0694B.
           IF FLD0694E   NOT EQUAL XPC-FLD0694E
              DISPLAY 'FLD0694E ==> ' FLD0694E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0694E.
           IF FLD0695B (1:)    NOT EQUAL XPC-FLD0695B
              DISPLAY 'FLD0695B ==> ' FLD0695B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0695B.
           IF FLD0695E   NOT EQUAL XPC-FLD0695E
              DISPLAY 'FLD0695E ==> ' FLD0695E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0695E.
           IF FLD0696B (1:)    NOT EQUAL XPC-FLD0696B
              DISPLAY 'FLD0696B ==> ' FLD0696B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0696B.
           IF FLD0696E   NOT EQUAL XPC-FLD0696E
              DISPLAY 'FLD0696E ==> ' FLD0696E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0696E.
           IF FLD0697B (1:)    NOT EQUAL XPC-FLD0697B
              DISPLAY 'FLD0697B ==> ' FLD0697B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0697B.
           IF FLD0697E   NOT EQUAL XPC-FLD0697E
              DISPLAY 'FLD0697E ==> ' FLD0697E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0697E.
           IF FLD0698B (1:)    NOT EQUAL XPC-FLD0698B
              DISPLAY 'FLD0698B ==> ' FLD0698B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0698B.
           IF FLD0698E   NOT EQUAL XPC-FLD0698E
              DISPLAY 'FLD0698E ==> ' FLD0698E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0698E.
           IF FLD0699B (1:)    NOT EQUAL XPC-FLD0699B
              DISPLAY 'FLD0699B ==> ' FLD0699B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0699B.
           IF FLD0699E   NOT EQUAL XPC-FLD0699E
              DISPLAY 'FLD0699E ==> ' FLD0699E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0699E.
           IF FLD0700B (1:)    NOT EQUAL XPC-FLD0700B
              DISPLAY 'FLD0700B ==> ' FLD0700B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0700B.
           IF FLD0700E   NOT EQUAL XPC-FLD0700E
              DISPLAY 'FLD0700E ==> ' FLD0700E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0700E.
           IF FLD0701B (1:)    NOT EQUAL XPC-FLD0701B
              DISPLAY 'FLD0701B ==> ' FLD0701B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0701B.
           IF FLD0701E   NOT EQUAL XPC-FLD0701E
              DISPLAY 'FLD0701E ==> ' FLD0701E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0701E.
           IF FLD0702B (1:)    NOT EQUAL XPC-FLD0702B
              DISPLAY 'FLD0702B ==> ' FLD0702B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0702B.
           IF FLD0702E   NOT EQUAL XPC-FLD0702E
              DISPLAY 'FLD0702E ==> ' FLD0702E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0702E.
           IF FLD0703B (1:)    NOT EQUAL XPC-FLD0703B
              DISPLAY 'FLD0703B ==> ' FLD0703B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0703B.
           IF FLD0703E   NOT EQUAL XPC-FLD0703E
              DISPLAY 'FLD0703E ==> ' FLD0703E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0703E.
           IF FLD0704B (1:)    NOT EQUAL XPC-FLD0704B
              DISPLAY 'FLD0704B ==> ' FLD0704B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0704B.
           IF FLD0704E   NOT EQUAL XPC-FLD0704E
              DISPLAY 'FLD0704E ==> ' FLD0704E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0704E.
           IF FLD0705B (1:)    NOT EQUAL XPC-FLD0705B
              DISPLAY 'FLD0705B ==> ' FLD0705B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0705B.
           IF FLD0705E   NOT EQUAL XPC-FLD0705E
              DISPLAY 'FLD0705E ==> ' FLD0705E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0705E.
           IF FLD0706B (1:)    NOT EQUAL XPC-FLD0706B
              DISPLAY 'FLD0706B ==> ' FLD0706B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0706B.
           IF FLD0706E   NOT EQUAL XPC-FLD0706E
              DISPLAY 'FLD0706E ==> ' FLD0706E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0706E.
           IF FLD0707B (1:)    NOT EQUAL XPC-FLD0707B
              DISPLAY 'FLD0707B ==> ' FLD0707B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0707B.
           IF FLD0707E   NOT EQUAL XPC-FLD0707E
              DISPLAY 'FLD0707E ==> ' FLD0707E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0707E.
           IF FLD0708B (1:)    NOT EQUAL XPC-FLD0708B
              DISPLAY 'FLD0708B ==> ' FLD0708B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0708B.
           IF FLD0708E   NOT EQUAL XPC-FLD0708E
              DISPLAY 'FLD0708E ==> ' FLD0708E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0708E.
           IF FLD0709B (1:)    NOT EQUAL XPC-FLD0709B
              DISPLAY 'FLD0709B ==> ' FLD0709B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0709B.
           IF FLD0709E   NOT EQUAL XPC-FLD0709E
              DISPLAY 'FLD0709E ==> ' FLD0709E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0709E.
           IF FLD0710B (1:)    NOT EQUAL XPC-FLD0710B
              DISPLAY 'FLD0710B ==> ' FLD0710B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0710B.
           IF FLD0710E   NOT EQUAL XPC-FLD0710E
              DISPLAY 'FLD0710E ==> ' FLD0710E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0710E.
           IF FLD0711B (1:)    NOT EQUAL XPC-FLD0711B
              DISPLAY 'FLD0711B ==> ' FLD0711B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0711B.
           IF FLD0711E   NOT EQUAL XPC-FLD0711E
              DISPLAY 'FLD0711E ==> ' FLD0711E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0711E.
           IF FLD0712B (1:)    NOT EQUAL XPC-FLD0712B
              DISPLAY 'FLD0712B ==> ' FLD0712B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0712B.
           IF FLD0712E   NOT EQUAL XPC-FLD0712E
              DISPLAY 'FLD0712E ==> ' FLD0712E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0712E.
           IF FLD0713B (1:)    NOT EQUAL XPC-FLD0713B
              DISPLAY 'FLD0713B ==> ' FLD0713B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0713B.
           IF FLD0713E   NOT EQUAL XPC-FLD0713E
              DISPLAY 'FLD0713E ==> ' FLD0713E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0713E.
           IF FLD0714B (1:)    NOT EQUAL XPC-FLD0714B
              DISPLAY 'FLD0714B ==> ' FLD0714B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0714B.
           IF FLD0714E   NOT EQUAL XPC-FLD0714E
              DISPLAY 'FLD0714E ==> ' FLD0714E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0714E.
           IF FLD0715B (1:)    NOT EQUAL XPC-FLD0715B
              DISPLAY 'FLD0715B ==> ' FLD0715B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0715B.
           IF FLD0715E   NOT EQUAL XPC-FLD0715E
              DISPLAY 'FLD0715E ==> ' FLD0715E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0715E.
           IF FLD0716B (1:)    NOT EQUAL XPC-FLD0716B
              DISPLAY 'FLD0716B ==> ' FLD0716B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0716B.
           IF FLD0716E   NOT EQUAL XPC-FLD0716E
              DISPLAY 'FLD0716E ==> ' FLD0716E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0716E.
           IF FLD0717B (1:)    NOT EQUAL XPC-FLD0717B
              DISPLAY 'FLD0717B ==> ' FLD0717B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0717B.
           IF FLD0717E   NOT EQUAL XPC-FLD0717E
              DISPLAY 'FLD0717E ==> ' FLD0717E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0717E.
           IF FLD0718B (1:)    NOT EQUAL XPC-FLD0718B
              DISPLAY 'FLD0718B ==> ' FLD0718B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0718B.
           IF FLD0718E   NOT EQUAL XPC-FLD0718E
              DISPLAY 'FLD0718E ==> ' FLD0718E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0718E.
           IF FLD0719B (1:)    NOT EQUAL XPC-FLD0719B
              DISPLAY 'FLD0719B ==> ' FLD0719B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0719B.
           IF FLD0719E   NOT EQUAL XPC-FLD0719E
              DISPLAY 'FLD0719E ==> ' FLD0719E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0719E.
           IF FLD0720B (1:)    NOT EQUAL XPC-FLD0720B
              DISPLAY 'FLD0720B ==> ' FLD0720B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0720B.
           IF FLD0720E   NOT EQUAL XPC-FLD0720E
              DISPLAY 'FLD0720E ==> ' FLD0720E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0720E.
           IF FLD0721B (1:)    NOT EQUAL XPC-FLD0721B
              DISPLAY 'FLD0721B ==> ' FLD0721B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0721B.
           IF FLD0721E   NOT EQUAL XPC-FLD0721E
              DISPLAY 'FLD0721E ==> ' FLD0721E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0721E.
           IF FLD0722B (1:)    NOT EQUAL XPC-FLD0722B
              DISPLAY 'FLD0722B ==> ' FLD0722B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0722B.
           IF FLD0722E   NOT EQUAL XPC-FLD0722E
              DISPLAY 'FLD0722E ==> ' FLD0722E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0722E.
           IF FLD0723B (1:)    NOT EQUAL XPC-FLD0723B
              DISPLAY 'FLD0723B ==> ' FLD0723B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0723B.
           IF FLD0723E   NOT EQUAL XPC-FLD0723E
              DISPLAY 'FLD0723E ==> ' FLD0723E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0723E.
           IF FLD0724B (1:)    NOT EQUAL XPC-FLD0724B
              DISPLAY 'FLD0724B ==> ' FLD0724B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0724B.
           IF FLD0724E   NOT EQUAL XPC-FLD0724E
              DISPLAY 'FLD0724E ==> ' FLD0724E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0724E.
           IF FLD0725B (1:)    NOT EQUAL XPC-FLD0725B
              DISPLAY 'FLD0725B ==> ' FLD0725B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0725B.
           IF FLD0725E   NOT EQUAL XPC-FLD0725E
              DISPLAY 'FLD0725E ==> ' FLD0725E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0725E.
           IF FLD0726B (1:)    NOT EQUAL XPC-FLD0726B
              DISPLAY 'FLD0726B ==> ' FLD0726B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0726B.
           IF FLD0726E   NOT EQUAL XPC-FLD0726E
              DISPLAY 'FLD0726E ==> ' FLD0726E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0726E.
           IF FLD0727B (1:)    NOT EQUAL XPC-FLD0727B
              DISPLAY 'FLD0727B ==> ' FLD0727B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0727B.
           IF FLD0727E   NOT EQUAL XPC-FLD0727E
              DISPLAY 'FLD0727E ==> ' FLD0727E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0727E.
           IF FLD0728B (1:)    NOT EQUAL XPC-FLD0728B
              DISPLAY 'FLD0728B ==> ' FLD0728B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0728B.
           IF FLD0728E   NOT EQUAL XPC-FLD0728E
              DISPLAY 'FLD0728E ==> ' FLD0728E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0728E.
           IF FLD0729B (1:)    NOT EQUAL XPC-FLD0729B
              DISPLAY 'FLD0729B ==> ' FLD0729B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0729B.
           IF FLD0729E   NOT EQUAL XPC-FLD0729E
              DISPLAY 'FLD0729E ==> ' FLD0729E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0729E.
           IF FLD0730B (1:)    NOT EQUAL XPC-FLD0730B
              DISPLAY 'FLD0730B ==> ' FLD0730B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0730B.
           IF FLD0730E   NOT EQUAL XPC-FLD0730E
              DISPLAY 'FLD0730E ==> ' FLD0730E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0730E.
           IF FLD0731B (1:)    NOT EQUAL XPC-FLD0731B
              DISPLAY 'FLD0731B ==> ' FLD0731B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0731B.
           IF FLD0731E   NOT EQUAL XPC-FLD0731E
              DISPLAY 'FLD0731E ==> ' FLD0731E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0731E.
           IF FLD0732B (1:)    NOT EQUAL XPC-FLD0732B
              DISPLAY 'FLD0732B ==> ' FLD0732B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0732B.
           IF FLD0732E   NOT EQUAL XPC-FLD0732E
              DISPLAY 'FLD0732E ==> ' FLD0732E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0732E.
           IF FLD0733B (1:)    NOT EQUAL XPC-FLD0733B
              DISPLAY 'FLD0733B ==> ' FLD0733B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0733B.
           IF FLD0733E   NOT EQUAL XPC-FLD0733E
              DISPLAY 'FLD0733E ==> ' FLD0733E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0733E.
           IF FLD0734B (1:)    NOT EQUAL XPC-FLD0734B
              DISPLAY 'FLD0734B ==> ' FLD0734B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0734B.
           IF FLD0734E   NOT EQUAL XPC-FLD0734E
              DISPLAY 'FLD0734E ==> ' FLD0734E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0734E.
           IF FLD0735B (1:)    NOT EQUAL XPC-FLD0735B
              DISPLAY 'FLD0735B ==> ' FLD0735B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0735B.
           IF FLD0735E   NOT EQUAL XPC-FLD0735E
              DISPLAY 'FLD0735E ==> ' FLD0735E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0735E.
           IF FLD0736B (1:)    NOT EQUAL XPC-FLD0736B
              DISPLAY 'FLD0736B ==> ' FLD0736B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0736B.
           IF FLD0736E   NOT EQUAL XPC-FLD0736E
              DISPLAY 'FLD0736E ==> ' FLD0736E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0736E.
           IF FLD0737B (1:)    NOT EQUAL XPC-FLD0737B
              DISPLAY 'FLD0737B ==> ' FLD0737B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0737B.
           IF FLD0737E   NOT EQUAL XPC-FLD0737E
              DISPLAY 'FLD0737E ==> ' FLD0737E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0737E.
           IF FLD0738B (1:)    NOT EQUAL XPC-FLD0738B
              DISPLAY 'FLD0738B ==> ' FLD0738B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0738B.
           IF FLD0738E   NOT EQUAL XPC-FLD0738E
              DISPLAY 'FLD0738E ==> ' FLD0738E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0738E.
           IF FLD0739B (1:)    NOT EQUAL XPC-FLD0739B
              DISPLAY 'FLD0739B ==> ' FLD0739B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0739B.
           IF FLD0739E   NOT EQUAL XPC-FLD0739E
              DISPLAY 'FLD0739E ==> ' FLD0739E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0739E.
           IF FLD0740B (1:)    NOT EQUAL XPC-FLD0740B
              DISPLAY 'FLD0740B ==> ' FLD0740B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0740B.
           IF FLD0740E   NOT EQUAL XPC-FLD0740E
              DISPLAY 'FLD0740E ==> ' FLD0740E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0740E.
           IF FLD0741B (1:)    NOT EQUAL XPC-FLD0741B
              DISPLAY 'FLD0741B ==> ' FLD0741B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0741B.
           IF FLD0741E   NOT EQUAL XPC-FLD0741E
              DISPLAY 'FLD0741E ==> ' FLD0741E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0741E.
           IF FLD0742B (1:)    NOT EQUAL XPC-FLD0742B
              DISPLAY 'FLD0742B ==> ' FLD0742B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0742B.
           IF FLD0742E   NOT EQUAL XPC-FLD0742E
              DISPLAY 'FLD0742E ==> ' FLD0742E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0742E.
           IF FLD0743B (1:)    NOT EQUAL XPC-FLD0743B
              DISPLAY 'FLD0743B ==> ' FLD0743B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0743B.
           IF FLD0743E   NOT EQUAL XPC-FLD0743E
              DISPLAY 'FLD0743E ==> ' FLD0743E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0743E.
           IF FLD0744B (1:)    NOT EQUAL XPC-FLD0744B
              DISPLAY 'FLD0744B ==> ' FLD0744B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0744B.
           IF FLD0744E   NOT EQUAL XPC-FLD0744E
              DISPLAY 'FLD0744E ==> ' FLD0744E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0744E.
           IF FLD0745B (1:)    NOT EQUAL XPC-FLD0745B
              DISPLAY 'FLD0745B ==> ' FLD0745B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0745B.
           IF FLD0745E   NOT EQUAL XPC-FLD0745E
              DISPLAY 'FLD0745E ==> ' FLD0745E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0745E.
           IF FLD0746B (1:)    NOT EQUAL XPC-FLD0746B
              DISPLAY 'FLD0746B ==> ' FLD0746B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0746B.
           IF FLD0746E   NOT EQUAL XPC-FLD0746E
              DISPLAY 'FLD0746E ==> ' FLD0746E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0746E.
           IF FLD0747B (1:)    NOT EQUAL XPC-FLD0747B
              DISPLAY 'FLD0747B ==> ' FLD0747B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0747B.
           IF FLD0747E   NOT EQUAL XPC-FLD0747E
              DISPLAY 'FLD0747E ==> ' FLD0747E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0747E.
           IF FLD0748B (1:)    NOT EQUAL XPC-FLD0748B
              DISPLAY 'FLD0748B ==> ' FLD0748B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0748B.
           IF FLD0748E   NOT EQUAL XPC-FLD0748E
              DISPLAY 'FLD0748E ==> ' FLD0748E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0748E.
           IF FLD0749B (1:)    NOT EQUAL XPC-FLD0749B
              DISPLAY 'FLD0749B ==> ' FLD0749B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0749B.
           IF FLD0749E   NOT EQUAL XPC-FLD0749E
              DISPLAY 'FLD0749E ==> ' FLD0749E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0749E.
           IF FLD0750B (1:)    NOT EQUAL XPC-FLD0750B
              DISPLAY 'FLD0750B ==> ' FLD0750B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0750B.
           IF FLD0750E   NOT EQUAL XPC-FLD0750E
              DISPLAY 'FLD0750E ==> ' FLD0750E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0750E.
           IF FLD0751B (1:)    NOT EQUAL XPC-FLD0751B
              DISPLAY 'FLD0751B ==> ' FLD0751B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0751B.
           IF FLD0751E   NOT EQUAL XPC-FLD0751E
              DISPLAY 'FLD0751E ==> ' FLD0751E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0751E.
           IF FLD0752B (1:)    NOT EQUAL XPC-FLD0752B
              DISPLAY 'FLD0752B ==> ' FLD0752B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0752B.
           IF FLD0752E   NOT EQUAL XPC-FLD0752E
              DISPLAY 'FLD0752E ==> ' FLD0752E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0752E.
           IF FLD0753B (1:)    NOT EQUAL XPC-FLD0753B
              DISPLAY 'FLD0753B ==> ' FLD0753B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0753B.
           IF FLD0753E   NOT EQUAL XPC-FLD0753E
              DISPLAY 'FLD0753E ==> ' FLD0753E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0753E.
           IF FLD0754B (1:)    NOT EQUAL XPC-FLD0754B
              DISPLAY 'FLD0754B ==> ' FLD0754B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0754B.
           IF FLD0754E   NOT EQUAL XPC-FLD0754E
              DISPLAY 'FLD0754E ==> ' FLD0754E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0754E.
           IF FLD0755B (1:)    NOT EQUAL XPC-FLD0755B
              DISPLAY 'FLD0755B ==> ' FLD0755B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0755B.
           IF FLD0755E   NOT EQUAL XPC-FLD0755E
              DISPLAY 'FLD0755E ==> ' FLD0755E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0755E.
           IF FLD0756B (1:)    NOT EQUAL XPC-FLD0756B
              DISPLAY 'FLD0756B ==> ' FLD0756B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0756B.
           IF FLD0756E   NOT EQUAL XPC-FLD0756E
              DISPLAY 'FLD0756E ==> ' FLD0756E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0756E.
           IF FLD0757B (1:)    NOT EQUAL XPC-FLD0757B
              DISPLAY 'FLD0757B ==> ' FLD0757B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0757B.
           IF FLD0757E   NOT EQUAL XPC-FLD0757E
              DISPLAY 'FLD0757E ==> ' FLD0757E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0757E.
           IF FLD0758B (1:)    NOT EQUAL XPC-FLD0758B
              DISPLAY 'FLD0758B ==> ' FLD0758B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0758B.
           IF FLD0758E   NOT EQUAL XPC-FLD0758E
              DISPLAY 'FLD0758E ==> ' FLD0758E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0758E.
           IF FLD0759B (1:)    NOT EQUAL XPC-FLD0759B
              DISPLAY 'FLD0759B ==> ' FLD0759B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0759B.
           IF FLD0759E   NOT EQUAL XPC-FLD0759E
              DISPLAY 'FLD0759E ==> ' FLD0759E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0759E.
           IF FLD0760B (1:)    NOT EQUAL XPC-FLD0760B
              DISPLAY 'FLD0760B ==> ' FLD0760B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0760B.
           IF FLD0760E   NOT EQUAL XPC-FLD0760E
              DISPLAY 'FLD0760E ==> ' FLD0760E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0760E.
           IF FLD0761B (1:)    NOT EQUAL XPC-FLD0761B
              DISPLAY 'FLD0761B ==> ' FLD0761B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0761B.
           IF FLD0761E   NOT EQUAL XPC-FLD0761E
              DISPLAY 'FLD0761E ==> ' FLD0761E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0761E.
           IF FLD0762B (1:)    NOT EQUAL XPC-FLD0762B
              DISPLAY 'FLD0762B ==> ' FLD0762B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0762B.
           IF FLD0762E   NOT EQUAL XPC-FLD0762E
              DISPLAY 'FLD0762E ==> ' FLD0762E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0762E.
           IF FLD0763B (1:)    NOT EQUAL XPC-FLD0763B
              DISPLAY 'FLD0763B ==> ' FLD0763B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0763B.
           IF FLD0763E   NOT EQUAL XPC-FLD0763E
              DISPLAY 'FLD0763E ==> ' FLD0763E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0763E.
           IF FLD0764B (1:)    NOT EQUAL XPC-FLD0764B
              DISPLAY 'FLD0764B ==> ' FLD0764B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0764B.
           IF FLD0764E   NOT EQUAL XPC-FLD0764E
              DISPLAY 'FLD0764E ==> ' FLD0764E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0764E.
           IF FLD0765B (1:)    NOT EQUAL XPC-FLD0765B
              DISPLAY 'FLD0765B ==> ' FLD0765B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0765B.
           IF FLD0765E   NOT EQUAL XPC-FLD0765E
              DISPLAY 'FLD0765E ==> ' FLD0765E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0765E.
           IF FLD0766B (1:)    NOT EQUAL XPC-FLD0766B
              DISPLAY 'FLD0766B ==> ' FLD0766B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0766B.
           IF FLD0766E   NOT EQUAL XPC-FLD0766E
              DISPLAY 'FLD0766E ==> ' FLD0766E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0766E.
           IF FLD0767B (1:)    NOT EQUAL XPC-FLD0767B
              DISPLAY 'FLD0767B ==> ' FLD0767B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0767B.
           IF FLD0767E   NOT EQUAL XPC-FLD0767E
              DISPLAY 'FLD0767E ==> ' FLD0767E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0767E.
           IF FLD0768B (1:)    NOT EQUAL XPC-FLD0768B
              DISPLAY 'FLD0768B ==> ' FLD0768B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0768B.
           IF FLD0768E   NOT EQUAL XPC-FLD0768E
              DISPLAY 'FLD0768E ==> ' FLD0768E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0768E.
           IF FLD0769B (1:)    NOT EQUAL XPC-FLD0769B
              DISPLAY 'FLD0769B ==> ' FLD0769B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0769B.
           IF FLD0769E   NOT EQUAL XPC-FLD0769E
              DISPLAY 'FLD0769E ==> ' FLD0769E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0769E.
           IF FLD0770B (1:)    NOT EQUAL XPC-FLD0770B
              DISPLAY 'FLD0770B ==> ' FLD0770B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0770B.
           IF FLD0770E   NOT EQUAL XPC-FLD0770E
              DISPLAY 'FLD0770E ==> ' FLD0770E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0770E.
           IF FLD0771B (1:)    NOT EQUAL XPC-FLD0771B
              DISPLAY 'FLD0771B ==> ' FLD0771B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0771B.
           IF FLD0771E   NOT EQUAL XPC-FLD0771E
              DISPLAY 'FLD0771E ==> ' FLD0771E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0771E.
           IF FLD0772B (1:)    NOT EQUAL XPC-FLD0772B
              DISPLAY 'FLD0772B ==> ' FLD0772B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0772B.
           IF FLD0772E   NOT EQUAL XPC-FLD0772E
              DISPLAY 'FLD0772E ==> ' FLD0772E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0772E.
           IF FLD0773B (1:)    NOT EQUAL XPC-FLD0773B
              DISPLAY 'FLD0773B ==> ' FLD0773B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0773B.
           IF FLD0773E   NOT EQUAL XPC-FLD0773E
              DISPLAY 'FLD0773E ==> ' FLD0773E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0773E.
           IF FLD0774B (1:)    NOT EQUAL XPC-FLD0774B
              DISPLAY 'FLD0774B ==> ' FLD0774B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0774B.
           IF FLD0774E   NOT EQUAL XPC-FLD0774E
              DISPLAY 'FLD0774E ==> ' FLD0774E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0774E.
           IF FLD0775B (1:)    NOT EQUAL XPC-FLD0775B
              DISPLAY 'FLD0775B ==> ' FLD0775B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0775B.
           IF FLD0775E   NOT EQUAL XPC-FLD0775E
              DISPLAY 'FLD0775E ==> ' FLD0775E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0775E.
           IF FLD0776B (1:)    NOT EQUAL XPC-FLD0776B
              DISPLAY 'FLD0776B ==> ' FLD0776B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0776B.
           IF FLD0776E   NOT EQUAL XPC-FLD0776E
              DISPLAY 'FLD0776E ==> ' FLD0776E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0776E.
           IF FLD0777B (1:)    NOT EQUAL XPC-FLD0777B
              DISPLAY 'FLD0777B ==> ' FLD0777B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0777B.
           IF FLD0777E   NOT EQUAL XPC-FLD0777E
              DISPLAY 'FLD0777E ==> ' FLD0777E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0777E.
           IF FLD0778B (1:)    NOT EQUAL XPC-FLD0778B
              DISPLAY 'FLD0778B ==> ' FLD0778B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0778B.
           IF FLD0778E   NOT EQUAL XPC-FLD0778E
              DISPLAY 'FLD0778E ==> ' FLD0778E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0778E.
           IF FLD0779B (1:)    NOT EQUAL XPC-FLD0779B
              DISPLAY 'FLD0779B ==> ' FLD0779B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0779B.
           IF FLD0779E   NOT EQUAL XPC-FLD0779E
              DISPLAY 'FLD0779E ==> ' FLD0779E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0779E.
           IF FLD0780B (1:)    NOT EQUAL XPC-FLD0780B
              DISPLAY 'FLD0780B ==> ' FLD0780B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0780B.
           IF FLD0780E   NOT EQUAL XPC-FLD0780E
              DISPLAY 'FLD0780E ==> ' FLD0780E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0780E.
           IF FLD0781B (1:)    NOT EQUAL XPC-FLD0781B
              DISPLAY 'FLD0781B ==> ' FLD0781B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0781B.
           IF FLD0781E   NOT EQUAL XPC-FLD0781E
              DISPLAY 'FLD0781E ==> ' FLD0781E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0781E.
           IF FLD0782B (1:)    NOT EQUAL XPC-FLD0782B
              DISPLAY 'FLD0782B ==> ' FLD0782B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0782B.
           IF FLD0782E   NOT EQUAL XPC-FLD0782E
              DISPLAY 'FLD0782E ==> ' FLD0782E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0782E.
           IF FLD0783B (1:)    NOT EQUAL XPC-FLD0783B
              DISPLAY 'FLD0783B ==> ' FLD0783B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0783B.
           IF FLD0783E   NOT EQUAL XPC-FLD0783E
              DISPLAY 'FLD0783E ==> ' FLD0783E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0783E.
           IF FLD0784B (1:)    NOT EQUAL XPC-FLD0784B
              DISPLAY 'FLD0784B ==> ' FLD0784B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0784B.
           IF FLD0784E   NOT EQUAL XPC-FLD0784E
              DISPLAY 'FLD0784E ==> ' FLD0784E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0784E.
           IF FLD0785B (1:)    NOT EQUAL XPC-FLD0785B
              DISPLAY 'FLD0785B ==> ' FLD0785B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0785B.
           IF FLD0785E   NOT EQUAL XPC-FLD0785E
              DISPLAY 'FLD0785E ==> ' FLD0785E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0785E.
           IF FLD0786B (1:)    NOT EQUAL XPC-FLD0786B
              DISPLAY 'FLD0786B ==> ' FLD0786B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0786B.
           IF FLD0786E   NOT EQUAL XPC-FLD0786E
              DISPLAY 'FLD0786E ==> ' FLD0786E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0786E.
           IF FLD0787B (1:)    NOT EQUAL XPC-FLD0787B
              DISPLAY 'FLD0787B ==> ' FLD0787B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0787B.
           IF FLD0787E   NOT EQUAL XPC-FLD0787E
              DISPLAY 'FLD0787E ==> ' FLD0787E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0787E.
           IF FLD0788B (1:)    NOT EQUAL XPC-FLD0788B
              DISPLAY 'FLD0788B ==> ' FLD0788B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0788B.
           IF FLD0788E   NOT EQUAL XPC-FLD0788E
              DISPLAY 'FLD0788E ==> ' FLD0788E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0788E.
           IF FLD0789B (1:)    NOT EQUAL XPC-FLD0789B
              DISPLAY 'FLD0789B ==> ' FLD0789B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0789B.
           IF FLD0789E   NOT EQUAL XPC-FLD0789E
              DISPLAY 'FLD0789E ==> ' FLD0789E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0789E.
           IF FLD0790B (1:)    NOT EQUAL XPC-FLD0790B
              DISPLAY 'FLD0790B ==> ' FLD0790B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0790B.
           IF FLD0790E   NOT EQUAL XPC-FLD0790E
              DISPLAY 'FLD0790E ==> ' FLD0790E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0790E.
           IF FLD0791B (1:)    NOT EQUAL XPC-FLD0791B
              DISPLAY 'FLD0791B ==> ' FLD0791B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0791B.
           IF FLD0791E   NOT EQUAL XPC-FLD0791E
              DISPLAY 'FLD0791E ==> ' FLD0791E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0791E.
           IF FLD0792B (1:)    NOT EQUAL XPC-FLD0792B
              DISPLAY 'FLD0792B ==> ' FLD0792B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0792B.
           IF FLD0792E   NOT EQUAL XPC-FLD0792E
              DISPLAY 'FLD0792E ==> ' FLD0792E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0792E.
           IF FLD0793B (1:)    NOT EQUAL XPC-FLD0793B
              DISPLAY 'FLD0793B ==> ' FLD0793B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0793B.
           IF FLD0793E   NOT EQUAL XPC-FLD0793E
              DISPLAY 'FLD0793E ==> ' FLD0793E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0793E.
           IF FLD0794B (1:)    NOT EQUAL XPC-FLD0794B
              DISPLAY 'FLD0794B ==> ' FLD0794B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0794B.
           IF FLD0794E   NOT EQUAL XPC-FLD0794E
              DISPLAY 'FLD0794E ==> ' FLD0794E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0794E.
           IF FLD0795B (1:)    NOT EQUAL XPC-FLD0795B
              DISPLAY 'FLD0795B ==> ' FLD0795B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0795B.
           IF FLD0795E   NOT EQUAL XPC-FLD0795E
              DISPLAY 'FLD0795E ==> ' FLD0795E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0795E.
           IF FLD0796B (1:)    NOT EQUAL XPC-FLD0796B
              DISPLAY 'FLD0796B ==> ' FLD0796B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0796B.
           IF FLD0796E   NOT EQUAL XPC-FLD0796E
              DISPLAY 'FLD0796E ==> ' FLD0796E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0796E.
           IF FLD0797B (1:)    NOT EQUAL XPC-FLD0797B
              DISPLAY 'FLD0797B ==> ' FLD0797B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0797B.
           IF FLD0797E   NOT EQUAL XPC-FLD0797E
              DISPLAY 'FLD0797E ==> ' FLD0797E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0797E.
           IF FLD0798B (1:)    NOT EQUAL XPC-FLD0798B
              DISPLAY 'FLD0798B ==> ' FLD0798B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0798B.
           IF FLD0798E   NOT EQUAL XPC-FLD0798E
              DISPLAY 'FLD0798E ==> ' FLD0798E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0798E.
           IF FLD0799B (1:)    NOT EQUAL XPC-FLD0799B
              DISPLAY 'FLD0799B ==> ' FLD0799B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0799B.
           IF FLD0799E   NOT EQUAL XPC-FLD0799E
              DISPLAY 'FLD0799E ==> ' FLD0799E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0799E.
           IF FLD0800B (1:)    NOT EQUAL XPC-FLD0800B
              DISPLAY 'FLD0800B ==> ' FLD0800B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0800B.
           IF FLD0800E   NOT EQUAL XPC-FLD0800E
              DISPLAY 'FLD0800E ==> ' FLD0800E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0800E.
           IF FLD0801B (1:)    NOT EQUAL XPC-FLD0801B
              DISPLAY 'FLD0801B ==> ' FLD0801B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0801B.
           IF FLD0801E   NOT EQUAL XPC-FLD0801E
              DISPLAY 'FLD0801E ==> ' FLD0801E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0801E.
           IF FLD0802B (1:)    NOT EQUAL XPC-FLD0802B
              DISPLAY 'FLD0802B ==> ' FLD0802B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0802B.
           IF FLD0802E   NOT EQUAL XPC-FLD0802E
              DISPLAY 'FLD0802E ==> ' FLD0802E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0802E.
           IF FLD0803B (1:)    NOT EQUAL XPC-FLD0803B
              DISPLAY 'FLD0803B ==> ' FLD0803B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0803B.
           IF FLD0803E   NOT EQUAL XPC-FLD0803E
              DISPLAY 'FLD0803E ==> ' FLD0803E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0803E.
           IF FLD0804B (1:)    NOT EQUAL XPC-FLD0804B
              DISPLAY 'FLD0804B ==> ' FLD0804B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0804B.
           IF FLD0804E   NOT EQUAL XPC-FLD0804E
              DISPLAY 'FLD0804E ==> ' FLD0804E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0804E.
           IF FLD0805B (1:)    NOT EQUAL XPC-FLD0805B
              DISPLAY 'FLD0805B ==> ' FLD0805B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0805B.
           IF FLD0805E   NOT EQUAL XPC-FLD0805E
              DISPLAY 'FLD0805E ==> ' FLD0805E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0805E.
           IF FLD0806B (1:)    NOT EQUAL XPC-FLD0806B
              DISPLAY 'FLD0806B ==> ' FLD0806B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0806B.
           IF FLD0806E   NOT EQUAL XPC-FLD0806E
              DISPLAY 'FLD0806E ==> ' FLD0806E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0806E.
           IF FLD0807B (1:)    NOT EQUAL XPC-FLD0807B
              DISPLAY 'FLD0807B ==> ' FLD0807B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0807B.
           IF FLD0807E   NOT EQUAL XPC-FLD0807E
              DISPLAY 'FLD0807E ==> ' FLD0807E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0807E.
           IF FLD0808B (1:)    NOT EQUAL XPC-FLD0808B
              DISPLAY 'FLD0808B ==> ' FLD0808B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0808B.
           IF FLD0808E   NOT EQUAL XPC-FLD0808E
              DISPLAY 'FLD0808E ==> ' FLD0808E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0808E.
           IF FLD0809B (1:)    NOT EQUAL XPC-FLD0809B
              DISPLAY 'FLD0809B ==> ' FLD0809B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0809B.
           IF FLD0809E   NOT EQUAL XPC-FLD0809E
              DISPLAY 'FLD0809E ==> ' FLD0809E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0809E.
           IF FLD0810B (1:)    NOT EQUAL XPC-FLD0810B
              DISPLAY 'FLD0810B ==> ' FLD0810B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0810B.
           IF FLD0810E   NOT EQUAL XPC-FLD0810E
              DISPLAY 'FLD0810E ==> ' FLD0810E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0810E.
           IF FLD0811B (1:)    NOT EQUAL XPC-FLD0811B
              DISPLAY 'FLD0811B ==> ' FLD0811B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0811B.
           IF FLD0811E   NOT EQUAL XPC-FLD0811E
              DISPLAY 'FLD0811E ==> ' FLD0811E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0811E.
           IF FLD0812B (1:)    NOT EQUAL XPC-FLD0812B
              DISPLAY 'FLD0812B ==> ' FLD0812B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0812B.
           IF FLD0812E   NOT EQUAL XPC-FLD0812E
              DISPLAY 'FLD0812E ==> ' FLD0812E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0812E.
           IF FLD0813B (1:)    NOT EQUAL XPC-FLD0813B
              DISPLAY 'FLD0813B ==> ' FLD0813B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0813B.
           IF FLD0813E   NOT EQUAL XPC-FLD0813E
              DISPLAY 'FLD0813E ==> ' FLD0813E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0813E.
           IF FLD0814B (1:)    NOT EQUAL XPC-FLD0814B
              DISPLAY 'FLD0814B ==> ' FLD0814B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0814B.
           IF FLD0814E   NOT EQUAL XPC-FLD0814E
              DISPLAY 'FLD0814E ==> ' FLD0814E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0814E.
           IF FLD0815B (1:)    NOT EQUAL XPC-FLD0815B
              DISPLAY 'FLD0815B ==> ' FLD0815B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0815B.
           IF FLD0815E   NOT EQUAL XPC-FLD0815E
              DISPLAY 'FLD0815E ==> ' FLD0815E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0815E.
           IF FLD0816B (1:)    NOT EQUAL XPC-FLD0816B
              DISPLAY 'FLD0816B ==> ' FLD0816B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0816B.
           IF FLD0816E   NOT EQUAL XPC-FLD0816E
              DISPLAY 'FLD0816E ==> ' FLD0816E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0816E.
           IF FLD0817B (1:)    NOT EQUAL XPC-FLD0817B
              DISPLAY 'FLD0817B ==> ' FLD0817B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0817B.
           IF FLD0817E   NOT EQUAL XPC-FLD0817E
              DISPLAY 'FLD0817E ==> ' FLD0817E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0817E.
           IF FLD0818B (1:)    NOT EQUAL XPC-FLD0818B
              DISPLAY 'FLD0818B ==> ' FLD0818B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0818B.
           IF FLD0818E   NOT EQUAL XPC-FLD0818E
              DISPLAY 'FLD0818E ==> ' FLD0818E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0818E.
           IF FLD0819B (1:)    NOT EQUAL XPC-FLD0819B
              DISPLAY 'FLD0819B ==> ' FLD0819B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0819B.
           IF FLD0819E   NOT EQUAL XPC-FLD0819E
              DISPLAY 'FLD0819E ==> ' FLD0819E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0819E.
           IF FLD0820B (1:)    NOT EQUAL XPC-FLD0820B
              DISPLAY 'FLD0820B ==> ' FLD0820B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0820B.
           IF FLD0820E   NOT EQUAL XPC-FLD0820E
              DISPLAY 'FLD0820E ==> ' FLD0820E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0820E.
           IF FLD0821B (1:)    NOT EQUAL XPC-FLD0821B
              DISPLAY 'FLD0821B ==> ' FLD0821B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0821B.
           IF FLD0821E   NOT EQUAL XPC-FLD0821E
              DISPLAY 'FLD0821E ==> ' FLD0821E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0821E.
           IF FLD0822B (1:)    NOT EQUAL XPC-FLD0822B
              DISPLAY 'FLD0822B ==> ' FLD0822B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0822B.
           IF FLD0822E   NOT EQUAL XPC-FLD0822E
              DISPLAY 'FLD0822E ==> ' FLD0822E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0822E.
           IF FLD0823B (1:)    NOT EQUAL XPC-FLD0823B
              DISPLAY 'FLD0823B ==> ' FLD0823B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0823B.
           IF FLD0823E   NOT EQUAL XPC-FLD0823E
              DISPLAY 'FLD0823E ==> ' FLD0823E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0823E.
           IF FLD0824B (1:)    NOT EQUAL XPC-FLD0824B
              DISPLAY 'FLD0824B ==> ' FLD0824B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0824B.
           IF FLD0824E   NOT EQUAL XPC-FLD0824E
              DISPLAY 'FLD0824E ==> ' FLD0824E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0824E.
           IF FLD0825B (1:)    NOT EQUAL XPC-FLD0825B
              DISPLAY 'FLD0825B ==> ' FLD0825B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0825B.
           IF FLD0825E   NOT EQUAL XPC-FLD0825E
              DISPLAY 'FLD0825E ==> ' FLD0825E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0825E.
           IF FLD0826B (1:)    NOT EQUAL XPC-FLD0826B
              DISPLAY 'FLD0826B ==> ' FLD0826B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0826B.
           IF FLD0826E   NOT EQUAL XPC-FLD0826E
              DISPLAY 'FLD0826E ==> ' FLD0826E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0826E.
           IF FLD0827B (1:)    NOT EQUAL XPC-FLD0827B
              DISPLAY 'FLD0827B ==> ' FLD0827B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0827B.
           IF FLD0827E   NOT EQUAL XPC-FLD0827E
              DISPLAY 'FLD0827E ==> ' FLD0827E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0827E.
           IF FLD0828B (1:)    NOT EQUAL XPC-FLD0828B
              DISPLAY 'FLD0828B ==> ' FLD0828B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0828B.
           IF FLD0828E   NOT EQUAL XPC-FLD0828E
              DISPLAY 'FLD0828E ==> ' FLD0828E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0828E.
           IF FLD0829B (1:)    NOT EQUAL XPC-FLD0829B
              DISPLAY 'FLD0829B ==> ' FLD0829B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0829B.
           IF FLD0829E   NOT EQUAL XPC-FLD0829E
              DISPLAY 'FLD0829E ==> ' FLD0829E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0829E.
           IF FLD0830B (1:)    NOT EQUAL XPC-FLD0830B
              DISPLAY 'FLD0830B ==> ' FLD0830B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0830B.
           IF FLD0830E   NOT EQUAL XPC-FLD0830E
              DISPLAY 'FLD0830E ==> ' FLD0830E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0830E.
           IF FLD0831B (1:)    NOT EQUAL XPC-FLD0831B
              DISPLAY 'FLD0831B ==> ' FLD0831B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0831B.
           IF FLD0831E   NOT EQUAL XPC-FLD0831E
              DISPLAY 'FLD0831E ==> ' FLD0831E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0831E.
           IF FLD0832B (1:)    NOT EQUAL XPC-FLD0832B
              DISPLAY 'FLD0832B ==> ' FLD0832B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0832B.
           IF FLD0832E   NOT EQUAL XPC-FLD0832E
              DISPLAY 'FLD0832E ==> ' FLD0832E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0832E.
           IF FLD0833B (1:)    NOT EQUAL XPC-FLD0833B
              DISPLAY 'FLD0833B ==> ' FLD0833B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0833B.
           IF FLD0833E   NOT EQUAL XPC-FLD0833E
              DISPLAY 'FLD0833E ==> ' FLD0833E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0833E.
           IF FLD0834B (1:)    NOT EQUAL XPC-FLD0834B
              DISPLAY 'FLD0834B ==> ' FLD0834B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0834B.
           IF FLD0834E   NOT EQUAL XPC-FLD0834E
              DISPLAY 'FLD0834E ==> ' FLD0834E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0834E.
           IF FLD0835B (1:)    NOT EQUAL XPC-FLD0835B
              DISPLAY 'FLD0835B ==> ' FLD0835B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0835B.
           IF FLD0835E   NOT EQUAL XPC-FLD0835E
              DISPLAY 'FLD0835E ==> ' FLD0835E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0835E.
           IF FLD0836B (1:)    NOT EQUAL XPC-FLD0836B
              DISPLAY 'FLD0836B ==> ' FLD0836B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0836B.
           IF FLD0836E   NOT EQUAL XPC-FLD0836E
              DISPLAY 'FLD0836E ==> ' FLD0836E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0836E.
           IF FLD0837B (1:)    NOT EQUAL XPC-FLD0837B
              DISPLAY 'FLD0837B ==> ' FLD0837B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0837B.
           IF FLD0837E   NOT EQUAL XPC-FLD0837E
              DISPLAY 'FLD0837E ==> ' FLD0837E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0837E.
           IF FLD0838B (1:)    NOT EQUAL XPC-FLD0838B
              DISPLAY 'FLD0838B ==> ' FLD0838B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0838B.
           IF FLD0838E   NOT EQUAL XPC-FLD0838E
              DISPLAY 'FLD0838E ==> ' FLD0838E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0838E.
           IF FLD0839B (1:)    NOT EQUAL XPC-FLD0839B
              DISPLAY 'FLD0839B ==> ' FLD0839B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0839B.
           IF FLD0839E   NOT EQUAL XPC-FLD0839E
              DISPLAY 'FLD0839E ==> ' FLD0839E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0839E.
           IF FLD0840B (1:)    NOT EQUAL XPC-FLD0840B
              DISPLAY 'FLD0840B ==> ' FLD0840B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0840B.
           IF FLD0840E   NOT EQUAL XPC-FLD0840E
              DISPLAY 'FLD0840E ==> ' FLD0840E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0840E.
           IF FLD0841B (1:)    NOT EQUAL XPC-FLD0841B
              DISPLAY 'FLD0841B ==> ' FLD0841B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0841B.
           IF FLD0841E   NOT EQUAL XPC-FLD0841E
              DISPLAY 'FLD0841E ==> ' FLD0841E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0841E.
           IF FLD0842B (1:)    NOT EQUAL XPC-FLD0842B
              DISPLAY 'FLD0842B ==> ' FLD0842B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0842B.
           IF FLD0842E   NOT EQUAL XPC-FLD0842E
              DISPLAY 'FLD0842E ==> ' FLD0842E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0842E.
           IF FLD0843B (1:)    NOT EQUAL XPC-FLD0843B
              DISPLAY 'FLD0843B ==> ' FLD0843B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0843B.
           IF FLD0843E   NOT EQUAL XPC-FLD0843E
              DISPLAY 'FLD0843E ==> ' FLD0843E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0843E.
           IF FLD0844B (1:)    NOT EQUAL XPC-FLD0844B
              DISPLAY 'FLD0844B ==> ' FLD0844B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0844B.
           IF FLD0844E   NOT EQUAL XPC-FLD0844E
              DISPLAY 'FLD0844E ==> ' FLD0844E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0844E.
           IF FLD0845B (1:)    NOT EQUAL XPC-FLD0845B
              DISPLAY 'FLD0845B ==> ' FLD0845B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0845B.
           IF FLD0845E   NOT EQUAL XPC-FLD0845E
              DISPLAY 'FLD0845E ==> ' FLD0845E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0845E.
           IF FLD0846B (1:)    NOT EQUAL XPC-FLD0846B
              DISPLAY 'FLD0846B ==> ' FLD0846B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0846B.
           IF FLD0846E   NOT EQUAL XPC-FLD0846E
              DISPLAY 'FLD0846E ==> ' FLD0846E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0846E.
           IF FLD0847B (1:)    NOT EQUAL XPC-FLD0847B
              DISPLAY 'FLD0847B ==> ' FLD0847B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0847B.
           IF FLD0847E   NOT EQUAL XPC-FLD0847E
              DISPLAY 'FLD0847E ==> ' FLD0847E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0847E.
           IF FLD0848B (1:)    NOT EQUAL XPC-FLD0848B
              DISPLAY 'FLD0848B ==> ' FLD0848B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0848B.
           IF FLD0848E   NOT EQUAL XPC-FLD0848E
              DISPLAY 'FLD0848E ==> ' FLD0848E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0848E.
           IF FLD0849B (1:)    NOT EQUAL XPC-FLD0849B
              DISPLAY 'FLD0849B ==> ' FLD0849B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0849B.
           IF FLD0849E   NOT EQUAL XPC-FLD0849E
              DISPLAY 'FLD0849E ==> ' FLD0849E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0849E.
           IF FLD0850B (1:)    NOT EQUAL XPC-FLD0850B
              DISPLAY 'FLD0850B ==> ' FLD0850B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0850B.
           IF FLD0850E   NOT EQUAL XPC-FLD0850E
              DISPLAY 'FLD0850E ==> ' FLD0850E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0850E.
           IF FLD0851B (1:)    NOT EQUAL XPC-FLD0851B
              DISPLAY 'FLD0851B ==> ' FLD0851B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0851B.
           IF FLD0851E   NOT EQUAL XPC-FLD0851E
              DISPLAY 'FLD0851E ==> ' FLD0851E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0851E.
           IF FLD0852B (1:)    NOT EQUAL XPC-FLD0852B
              DISPLAY 'FLD0852B ==> ' FLD0852B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0852B.
           IF FLD0852E   NOT EQUAL XPC-FLD0852E
              DISPLAY 'FLD0852E ==> ' FLD0852E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0852E.
           IF FLD0853B (1:)    NOT EQUAL XPC-FLD0853B
              DISPLAY 'FLD0853B ==> ' FLD0853B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0853B.
           IF FLD0853E   NOT EQUAL XPC-FLD0853E
              DISPLAY 'FLD0853E ==> ' FLD0853E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0853E.
           IF FLD0854B (1:)    NOT EQUAL XPC-FLD0854B
              DISPLAY 'FLD0854B ==> ' FLD0854B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0854B.
           IF FLD0854E   NOT EQUAL XPC-FLD0854E
              DISPLAY 'FLD0854E ==> ' FLD0854E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0854E.
           IF FLD0855B (1:)    NOT EQUAL XPC-FLD0855B
              DISPLAY 'FLD0855B ==> ' FLD0855B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0855B.
           IF FLD0855E   NOT EQUAL XPC-FLD0855E
              DISPLAY 'FLD0855E ==> ' FLD0855E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0855E.
           IF FLD0856B (1:)    NOT EQUAL XPC-FLD0856B
              DISPLAY 'FLD0856B ==> ' FLD0856B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0856B.
           IF FLD0856E   NOT EQUAL XPC-FLD0856E
              DISPLAY 'FLD0856E ==> ' FLD0856E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0856E.
           IF FLD0857B (1:)    NOT EQUAL XPC-FLD0857B
              DISPLAY 'FLD0857B ==> ' FLD0857B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0857B.
           IF FLD0857E   NOT EQUAL XPC-FLD0857E
              DISPLAY 'FLD0857E ==> ' FLD0857E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0857E.
           IF FLD0858B (1:)    NOT EQUAL XPC-FLD0858B
              DISPLAY 'FLD0858B ==> ' FLD0858B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0858B.
           IF FLD0858E   NOT EQUAL XPC-FLD0858E
              DISPLAY 'FLD0858E ==> ' FLD0858E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0858E.
           IF FLD0859B (1:)    NOT EQUAL XPC-FLD0859B
              DISPLAY 'FLD0859B ==> ' FLD0859B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0859B.
           IF FLD0859E   NOT EQUAL XPC-FLD0859E
              DISPLAY 'FLD0859E ==> ' FLD0859E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0859E.
           IF FLD0860B (1:)    NOT EQUAL XPC-FLD0860B
              DISPLAY 'FLD0860B ==> ' FLD0860B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0860B.
           IF FLD0860E   NOT EQUAL XPC-FLD0860E
              DISPLAY 'FLD0860E ==> ' FLD0860E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0860E.
           IF FLD0861B (1:)    NOT EQUAL XPC-FLD0861B
              DISPLAY 'FLD0861B ==> ' FLD0861B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0861B.
           IF FLD0861E   NOT EQUAL XPC-FLD0861E
              DISPLAY 'FLD0861E ==> ' FLD0861E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0861E.
           IF FLD0862B (1:)    NOT EQUAL XPC-FLD0862B
              DISPLAY 'FLD0862B ==> ' FLD0862B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0862B.
           IF FLD0862E   NOT EQUAL XPC-FLD0862E
              DISPLAY 'FLD0862E ==> ' FLD0862E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0862E.
           IF FLD0863B (1:)    NOT EQUAL XPC-FLD0863B
              DISPLAY 'FLD0863B ==> ' FLD0863B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0863B.
           IF FLD0863E   NOT EQUAL XPC-FLD0863E
              DISPLAY 'FLD0863E ==> ' FLD0863E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0863E.
           IF FLD0864B (1:)    NOT EQUAL XPC-FLD0864B
              DISPLAY 'FLD0864B ==> ' FLD0864B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0864B.
           IF FLD0864E   NOT EQUAL XPC-FLD0864E
              DISPLAY 'FLD0864E ==> ' FLD0864E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0864E.
           IF FLD0865B (1:)    NOT EQUAL XPC-FLD0865B
              DISPLAY 'FLD0865B ==> ' FLD0865B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0865B.
           IF FLD0865E   NOT EQUAL XPC-FLD0865E
              DISPLAY 'FLD0865E ==> ' FLD0865E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0865E.
           IF FLD0866B (1:)    NOT EQUAL XPC-FLD0866B
              DISPLAY 'FLD0866B ==> ' FLD0866B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0866B.
           IF FLD0866E   NOT EQUAL XPC-FLD0866E
              DISPLAY 'FLD0866E ==> ' FLD0866E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0866E.
           IF FLD0867B (1:)    NOT EQUAL XPC-FLD0867B
              DISPLAY 'FLD0867B ==> ' FLD0867B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0867B.
           IF FLD0867E   NOT EQUAL XPC-FLD0867E
              DISPLAY 'FLD0867E ==> ' FLD0867E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0867E.
           IF FLD0868B (1:)    NOT EQUAL XPC-FLD0868B
              DISPLAY 'FLD0868B ==> ' FLD0868B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0868B.
           IF FLD0868E   NOT EQUAL XPC-FLD0868E
              DISPLAY 'FLD0868E ==> ' FLD0868E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0868E.
           IF FLD0869B (1:)    NOT EQUAL XPC-FLD0869B
              DISPLAY 'FLD0869B ==> ' FLD0869B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0869B.
           IF FLD0869E   NOT EQUAL XPC-FLD0869E
              DISPLAY 'FLD0869E ==> ' FLD0869E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0869E.
           IF FLD0870B (1:)    NOT EQUAL XPC-FLD0870B
              DISPLAY 'FLD0870B ==> ' FLD0870B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0870B.
           IF FLD0870E   NOT EQUAL XPC-FLD0870E
              DISPLAY 'FLD0870E ==> ' FLD0870E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0870E.
           IF FLD0871B (1:)    NOT EQUAL XPC-FLD0871B
              DISPLAY 'FLD0871B ==> ' FLD0871B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0871B.
           IF FLD0871E   NOT EQUAL XPC-FLD0871E
              DISPLAY 'FLD0871E ==> ' FLD0871E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0871E.
           IF FLD0872B (1:)    NOT EQUAL XPC-FLD0872B
              DISPLAY 'FLD0872B ==> ' FLD0872B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0872B.
           IF FLD0872E   NOT EQUAL XPC-FLD0872E
              DISPLAY 'FLD0872E ==> ' FLD0872E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0872E.
           IF FLD0873B (1:)    NOT EQUAL XPC-FLD0873B
              DISPLAY 'FLD0873B ==> ' FLD0873B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0873B.
           IF FLD0873E   NOT EQUAL XPC-FLD0873E
              DISPLAY 'FLD0873E ==> ' FLD0873E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0873E.
           IF FLD0874B (1:)    NOT EQUAL XPC-FLD0874B
              DISPLAY 'FLD0874B ==> ' FLD0874B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0874B.
           IF FLD0874E   NOT EQUAL XPC-FLD0874E
              DISPLAY 'FLD0874E ==> ' FLD0874E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0874E.
           IF FLD0875B (1:)    NOT EQUAL XPC-FLD0875B
              DISPLAY 'FLD0875B ==> ' FLD0875B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0875B.
           IF FLD0875E   NOT EQUAL XPC-FLD0875E
              DISPLAY 'FLD0875E ==> ' FLD0875E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0875E.
           IF FLD0876B (1:)    NOT EQUAL XPC-FLD0876B
              DISPLAY 'FLD0876B ==> ' FLD0876B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0876B.
           IF FLD0876E   NOT EQUAL XPC-FLD0876E
              DISPLAY 'FLD0876E ==> ' FLD0876E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0876E.
           IF FLD0877B (1:)    NOT EQUAL XPC-FLD0877B
              DISPLAY 'FLD0877B ==> ' FLD0877B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0877B.
           IF FLD0877E   NOT EQUAL XPC-FLD0877E
              DISPLAY 'FLD0877E ==> ' FLD0877E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0877E.
           IF FLD0878B (1:)    NOT EQUAL XPC-FLD0878B
              DISPLAY 'FLD0878B ==> ' FLD0878B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0878B.
           IF FLD0878E   NOT EQUAL XPC-FLD0878E
              DISPLAY 'FLD0878E ==> ' FLD0878E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0878E.
           IF FLD0879B (1:)    NOT EQUAL XPC-FLD0879B
              DISPLAY 'FLD0879B ==> ' FLD0879B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0879B.
           IF FLD0879E   NOT EQUAL XPC-FLD0879E
              DISPLAY 'FLD0879E ==> ' FLD0879E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0879E.
           IF FLD0880B (1:)    NOT EQUAL XPC-FLD0880B
              DISPLAY 'FLD0880B ==> ' FLD0880B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0880B.
           IF FLD0880E   NOT EQUAL XPC-FLD0880E
              DISPLAY 'FLD0880E ==> ' FLD0880E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0880E.
           IF FLD0881B (1:)    NOT EQUAL XPC-FLD0881B
              DISPLAY 'FLD0881B ==> ' FLD0881B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0881B.
           IF FLD0881E   NOT EQUAL XPC-FLD0881E
              DISPLAY 'FLD0881E ==> ' FLD0881E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0881E.
           IF FLD0882B (1:)    NOT EQUAL XPC-FLD0882B
              DISPLAY 'FLD0882B ==> ' FLD0882B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0882B.
           IF FLD0882E   NOT EQUAL XPC-FLD0882E
              DISPLAY 'FLD0882E ==> ' FLD0882E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0882E.
           IF FLD0883B (1:)    NOT EQUAL XPC-FLD0883B
              DISPLAY 'FLD0883B ==> ' FLD0883B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0883B.
           IF FLD0883E   NOT EQUAL XPC-FLD0883E
              DISPLAY 'FLD0883E ==> ' FLD0883E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0883E.
           IF FLD0884B (1:)    NOT EQUAL XPC-FLD0884B
              DISPLAY 'FLD0884B ==> ' FLD0884B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0884B.
           IF FLD0884E   NOT EQUAL XPC-FLD0884E
              DISPLAY 'FLD0884E ==> ' FLD0884E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0884E.
           IF FLD0885B (1:)    NOT EQUAL XPC-FLD0885B
              DISPLAY 'FLD0885B ==> ' FLD0885B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0885B.
           IF FLD0885E   NOT EQUAL XPC-FLD0885E
              DISPLAY 'FLD0885E ==> ' FLD0885E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0885E.
           IF FLD0886B (1:)    NOT EQUAL XPC-FLD0886B
              DISPLAY 'FLD0886B ==> ' FLD0886B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0886B.
           IF FLD0886E   NOT EQUAL XPC-FLD0886E
              DISPLAY 'FLD0886E ==> ' FLD0886E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0886E.
           IF FLD0887B (1:)    NOT EQUAL XPC-FLD0887B
              DISPLAY 'FLD0887B ==> ' FLD0887B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0887B.
           IF FLD0887E   NOT EQUAL XPC-FLD0887E
              DISPLAY 'FLD0887E ==> ' FLD0887E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0887E.
           IF FLD0888B (1:)    NOT EQUAL XPC-FLD0888B
              DISPLAY 'FLD0888B ==> ' FLD0888B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0888B.
           IF FLD0888E   NOT EQUAL XPC-FLD0888E
              DISPLAY 'FLD0888E ==> ' FLD0888E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0888E.
           IF FLD0889B (1:)    NOT EQUAL XPC-FLD0889B
              DISPLAY 'FLD0889B ==> ' FLD0889B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0889B.
           IF FLD0889E   NOT EQUAL XPC-FLD0889E
              DISPLAY 'FLD0889E ==> ' FLD0889E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0889E.
           IF FLD0890B (1:)    NOT EQUAL XPC-FLD0890B
              DISPLAY 'FLD0890B ==> ' FLD0890B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0890B.
           IF FLD0890E   NOT EQUAL XPC-FLD0890E
              DISPLAY 'FLD0890E ==> ' FLD0890E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0890E.
           IF FLD0891B (1:)    NOT EQUAL XPC-FLD0891B
              DISPLAY 'FLD0891B ==> ' FLD0891B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0891B.
           IF FLD0891E   NOT EQUAL XPC-FLD0891E
              DISPLAY 'FLD0891E ==> ' FLD0891E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0891E.
           IF FLD0892B (1:)    NOT EQUAL XPC-FLD0892B
              DISPLAY 'FLD0892B ==> ' FLD0892B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0892B.
           IF FLD0892E   NOT EQUAL XPC-FLD0892E
              DISPLAY 'FLD0892E ==> ' FLD0892E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0892E.
           IF FLD0893B (1:)    NOT EQUAL XPC-FLD0893B
              DISPLAY 'FLD0893B ==> ' FLD0893B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0893B.
           IF FLD0893E   NOT EQUAL XPC-FLD0893E
              DISPLAY 'FLD0893E ==> ' FLD0893E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0893E.
           IF FLD0894B (1:)    NOT EQUAL XPC-FLD0894B
              DISPLAY 'FLD0894B ==> ' FLD0894B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0894B.
           IF FLD0894E   NOT EQUAL XPC-FLD0894E
              DISPLAY 'FLD0894E ==> ' FLD0894E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0894E.
           IF FLD0895B (1:)    NOT EQUAL XPC-FLD0895B
              DISPLAY 'FLD0895B ==> ' FLD0895B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0895B.
           IF FLD0895E   NOT EQUAL XPC-FLD0895E
              DISPLAY 'FLD0895E ==> ' FLD0895E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0895E.
           IF FLD0896B (1:)    NOT EQUAL XPC-FLD0896B
              DISPLAY 'FLD0896B ==> ' FLD0896B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0896B.
           IF FLD0896E   NOT EQUAL XPC-FLD0896E
              DISPLAY 'FLD0896E ==> ' FLD0896E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0896E.
           IF FLD0897B (1:)    NOT EQUAL XPC-FLD0897B
              DISPLAY 'FLD0897B ==> ' FLD0897B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0897B.
           IF FLD0897E   NOT EQUAL XPC-FLD0897E
              DISPLAY 'FLD0897E ==> ' FLD0897E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0897E.
           IF FLD0898B (1:)    NOT EQUAL XPC-FLD0898B
              DISPLAY 'FLD0898B ==> ' FLD0898B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0898B.
           IF FLD0898E   NOT EQUAL XPC-FLD0898E
              DISPLAY 'FLD0898E ==> ' FLD0898E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0898E.
           IF FLD0899B (1:)    NOT EQUAL XPC-FLD0899B
              DISPLAY 'FLD0899B ==> ' FLD0899B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0899B.
           IF FLD0899E   NOT EQUAL XPC-FLD0899E
              DISPLAY 'FLD0899E ==> ' FLD0899E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0899E.
           IF FLD0900B (1:)    NOT EQUAL XPC-FLD0900B
              DISPLAY 'FLD0900B ==> ' FLD0900B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0900B.
           IF FLD0900E   NOT EQUAL XPC-FLD0900E
              DISPLAY 'FLD0900E ==> ' FLD0900E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0900E.
           IF FLD0901B (1:)    NOT EQUAL XPC-FLD0901B
              DISPLAY 'FLD0901B ==> ' FLD0901B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0901B.
           IF FLD0901E   NOT EQUAL XPC-FLD0901E
              DISPLAY 'FLD0901E ==> ' FLD0901E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0901E.
           IF FLD0902B (1:)    NOT EQUAL XPC-FLD0902B
              DISPLAY 'FLD0902B ==> ' FLD0902B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0902B.
           IF FLD0902E   NOT EQUAL XPC-FLD0902E
              DISPLAY 'FLD0902E ==> ' FLD0902E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0902E.
           IF FLD0903B (1:)    NOT EQUAL XPC-FLD0903B
              DISPLAY 'FLD0903B ==> ' FLD0903B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0903B.
           IF FLD0903E   NOT EQUAL XPC-FLD0903E
              DISPLAY 'FLD0903E ==> ' FLD0903E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0903E.
           IF FLD0904B (1:)    NOT EQUAL XPC-FLD0904B
              DISPLAY 'FLD0904B ==> ' FLD0904B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0904B.
           IF FLD0904E   NOT EQUAL XPC-FLD0904E
              DISPLAY 'FLD0904E ==> ' FLD0904E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0904E.
           IF FLD0905B (1:)    NOT EQUAL XPC-FLD0905B
              DISPLAY 'FLD0905B ==> ' FLD0905B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0905B.
           IF FLD0905E   NOT EQUAL XPC-FLD0905E
              DISPLAY 'FLD0905E ==> ' FLD0905E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0905E.
           IF FLD0906B (1:)    NOT EQUAL XPC-FLD0906B
              DISPLAY 'FLD0906B ==> ' FLD0906B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0906B.
           IF FLD0906E   NOT EQUAL XPC-FLD0906E
              DISPLAY 'FLD0906E ==> ' FLD0906E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0906E.
           IF FLD0907B (1:)    NOT EQUAL XPC-FLD0907B
              DISPLAY 'FLD0907B ==> ' FLD0907B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0907B.
           IF FLD0907E   NOT EQUAL XPC-FLD0907E
              DISPLAY 'FLD0907E ==> ' FLD0907E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0907E.
           IF FLD0908B (1:)    NOT EQUAL XPC-FLD0908B
              DISPLAY 'FLD0908B ==> ' FLD0908B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0908B.
           IF FLD0908E   NOT EQUAL XPC-FLD0908E
              DISPLAY 'FLD0908E ==> ' FLD0908E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0908E.
           IF FLD0909B (1:)    NOT EQUAL XPC-FLD0909B
              DISPLAY 'FLD0909B ==> ' FLD0909B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0909B.
           IF FLD0909E   NOT EQUAL XPC-FLD0909E
              DISPLAY 'FLD0909E ==> ' FLD0909E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0909E.
           IF FLD0910B (1:)    NOT EQUAL XPC-FLD0910B
              DISPLAY 'FLD0910B ==> ' FLD0910B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0910B.
           IF FLD0910E   NOT EQUAL XPC-FLD0910E
              DISPLAY 'FLD0910E ==> ' FLD0910E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0910E.
           IF FLD0911B (1:)    NOT EQUAL XPC-FLD0911B
              DISPLAY 'FLD0911B ==> ' FLD0911B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0911B.
           IF FLD0911E   NOT EQUAL XPC-FLD0911E
              DISPLAY 'FLD0911E ==> ' FLD0911E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0911E.
           IF FLD0912B (1:)    NOT EQUAL XPC-FLD0912B
              DISPLAY 'FLD0912B ==> ' FLD0912B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0912B.
           IF FLD0912E   NOT EQUAL XPC-FLD0912E
              DISPLAY 'FLD0912E ==> ' FLD0912E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0912E.
           IF FLD0913B (1:)    NOT EQUAL XPC-FLD0913B
              DISPLAY 'FLD0913B ==> ' FLD0913B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0913B.
           IF FLD0913E   NOT EQUAL XPC-FLD0913E
              DISPLAY 'FLD0913E ==> ' FLD0913E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0913E.
           IF FLD0914B (1:)    NOT EQUAL XPC-FLD0914B
              DISPLAY 'FLD0914B ==> ' FLD0914B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0914B.
           IF FLD0914E   NOT EQUAL XPC-FLD0914E
              DISPLAY 'FLD0914E ==> ' FLD0914E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0914E.
           IF FLD0915B (1:)    NOT EQUAL XPC-FLD0915B
              DISPLAY 'FLD0915B ==> ' FLD0915B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0915B.
           IF FLD0915E   NOT EQUAL XPC-FLD0915E
              DISPLAY 'FLD0915E ==> ' FLD0915E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0915E.
           IF FLD0916B (1:)    NOT EQUAL XPC-FLD0916B
              DISPLAY 'FLD0916B ==> ' FLD0916B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0916B.
           IF FLD0916E   NOT EQUAL XPC-FLD0916E
              DISPLAY 'FLD0916E ==> ' FLD0916E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0916E.
           IF FLD0917B (1:)    NOT EQUAL XPC-FLD0917B
              DISPLAY 'FLD0917B ==> ' FLD0917B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0917B.
           IF FLD0917E   NOT EQUAL XPC-FLD0917E
              DISPLAY 'FLD0917E ==> ' FLD0917E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0917E.
           IF FLD0918B (1:)    NOT EQUAL XPC-FLD0918B
              DISPLAY 'FLD0918B ==> ' FLD0918B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0918B.
           IF FLD0918E   NOT EQUAL XPC-FLD0918E
              DISPLAY 'FLD0918E ==> ' FLD0918E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0918E.
           IF FLD0919B (1:)    NOT EQUAL XPC-FLD0919B
              DISPLAY 'FLD0919B ==> ' FLD0919B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0919B.
           IF FLD0919E   NOT EQUAL XPC-FLD0919E
              DISPLAY 'FLD0919E ==> ' FLD0919E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0919E.
           IF FLD0920B (1:)    NOT EQUAL XPC-FLD0920B
              DISPLAY 'FLD0920B ==> ' FLD0920B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0920B.
           IF FLD0920E   NOT EQUAL XPC-FLD0920E
              DISPLAY 'FLD0920E ==> ' FLD0920E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0920E.
           IF FLD0921B (1:)    NOT EQUAL XPC-FLD0921B
              DISPLAY 'FLD0921B ==> ' FLD0921B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0921B.
           IF FLD0921E   NOT EQUAL XPC-FLD0921E
              DISPLAY 'FLD0921E ==> ' FLD0921E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0921E.
           IF FLD0922B (1:)    NOT EQUAL XPC-FLD0922B
              DISPLAY 'FLD0922B ==> ' FLD0922B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0922B.
           IF FLD0922E   NOT EQUAL XPC-FLD0922E
              DISPLAY 'FLD0922E ==> ' FLD0922E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0922E.
           IF FLD0923B (1:)    NOT EQUAL XPC-FLD0923B
              DISPLAY 'FLD0923B ==> ' FLD0923B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0923B.
           IF FLD0923E   NOT EQUAL XPC-FLD0923E
              DISPLAY 'FLD0923E ==> ' FLD0923E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0923E.
           IF FLD0924B (1:)    NOT EQUAL XPC-FLD0924B
              DISPLAY 'FLD0924B ==> ' FLD0924B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0924B.
           IF FLD0924E   NOT EQUAL XPC-FLD0924E
              DISPLAY 'FLD0924E ==> ' FLD0924E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0924E.
           IF FLD0925B (1:)    NOT EQUAL XPC-FLD0925B
              DISPLAY 'FLD0925B ==> ' FLD0925B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0925B.
           IF FLD0925E   NOT EQUAL XPC-FLD0925E
              DISPLAY 'FLD0925E ==> ' FLD0925E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0925E.
           IF FLD0926B (1:)    NOT EQUAL XPC-FLD0926B
              DISPLAY 'FLD0926B ==> ' FLD0926B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0926B.
           IF FLD0926E   NOT EQUAL XPC-FLD0926E
              DISPLAY 'FLD0926E ==> ' FLD0926E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0926E.
           IF FLD0927B (1:)    NOT EQUAL XPC-FLD0927B
              DISPLAY 'FLD0927B ==> ' FLD0927B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0927B.
           IF FLD0927E   NOT EQUAL XPC-FLD0927E
              DISPLAY 'FLD0927E ==> ' FLD0927E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0927E.
           IF FLD0928B (1:)    NOT EQUAL XPC-FLD0928B
              DISPLAY 'FLD0928B ==> ' FLD0928B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0928B.
           IF FLD0928E   NOT EQUAL XPC-FLD0928E
              DISPLAY 'FLD0928E ==> ' FLD0928E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0928E.
           IF FLD0929B (1:)    NOT EQUAL XPC-FLD0929B
              DISPLAY 'FLD0929B ==> ' FLD0929B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0929B.
           IF FLD0929E   NOT EQUAL XPC-FLD0929E
              DISPLAY 'FLD0929E ==> ' FLD0929E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0929E.
           IF FLD0930B (1:)    NOT EQUAL XPC-FLD0930B
              DISPLAY 'FLD0930B ==> ' FLD0930B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0930B.
           IF FLD0930E   NOT EQUAL XPC-FLD0930E
              DISPLAY 'FLD0930E ==> ' FLD0930E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0930E.
           IF FLD0931B (1:)    NOT EQUAL XPC-FLD0931B
              DISPLAY 'FLD0931B ==> ' FLD0931B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0931B.
           IF FLD0931E   NOT EQUAL XPC-FLD0931E
              DISPLAY 'FLD0931E ==> ' FLD0931E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0931E.
           IF FLD0932B (1:)    NOT EQUAL XPC-FLD0932B
              DISPLAY 'FLD0932B ==> ' FLD0932B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0932B.
           IF FLD0932E   NOT EQUAL XPC-FLD0932E
              DISPLAY 'FLD0932E ==> ' FLD0932E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0932E.
           IF FLD0933B (1:)    NOT EQUAL XPC-FLD0933B
              DISPLAY 'FLD0933B ==> ' FLD0933B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0933B.
           IF FLD0933E   NOT EQUAL XPC-FLD0933E
              DISPLAY 'FLD0933E ==> ' FLD0933E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0933E.
           IF FLD0934B (1:)    NOT EQUAL XPC-FLD0934B
              DISPLAY 'FLD0934B ==> ' FLD0934B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0934B.
           IF FLD0934E   NOT EQUAL XPC-FLD0934E
              DISPLAY 'FLD0934E ==> ' FLD0934E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0934E.
           IF FLD0935B (1:)    NOT EQUAL XPC-FLD0935B
              DISPLAY 'FLD0935B ==> ' FLD0935B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0935B.
           IF FLD0935E   NOT EQUAL XPC-FLD0935E
              DISPLAY 'FLD0935E ==> ' FLD0935E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0935E.
           IF FLD0936B (1:)    NOT EQUAL XPC-FLD0936B
              DISPLAY 'FLD0936B ==> ' FLD0936B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0936B.
           IF FLD0936E   NOT EQUAL XPC-FLD0936E
              DISPLAY 'FLD0936E ==> ' FLD0936E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0936E.
           IF FLD0937B (1:)    NOT EQUAL XPC-FLD0937B
              DISPLAY 'FLD0937B ==> ' FLD0937B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0937B.
           IF FLD0937E   NOT EQUAL XPC-FLD0937E
              DISPLAY 'FLD0937E ==> ' FLD0937E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0937E.
           IF FLD0938B (1:)    NOT EQUAL XPC-FLD0938B
              DISPLAY 'FLD0938B ==> ' FLD0938B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0938B.
           IF FLD0938E   NOT EQUAL XPC-FLD0938E
              DISPLAY 'FLD0938E ==> ' FLD0938E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0938E.
           IF FLD0939B (1:)    NOT EQUAL XPC-FLD0939B
              DISPLAY 'FLD0939B ==> ' FLD0939B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0939B.
           IF FLD0939E   NOT EQUAL XPC-FLD0939E
              DISPLAY 'FLD0939E ==> ' FLD0939E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0939E.
           IF FLD0940B (1:)    NOT EQUAL XPC-FLD0940B
              DISPLAY 'FLD0940B ==> ' FLD0940B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0940B.
           IF FLD0940E   NOT EQUAL XPC-FLD0940E
              DISPLAY 'FLD0940E ==> ' FLD0940E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0940E.
           IF FLD0941B (1:)    NOT EQUAL XPC-FLD0941B
              DISPLAY 'FLD0941B ==> ' FLD0941B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0941B.
           IF FLD0941E   NOT EQUAL XPC-FLD0941E
              DISPLAY 'FLD0941E ==> ' FLD0941E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0941E.
           IF FLD0942B (1:)    NOT EQUAL XPC-FLD0942B
              DISPLAY 'FLD0942B ==> ' FLD0942B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0942B.
           IF FLD0942E   NOT EQUAL XPC-FLD0942E
              DISPLAY 'FLD0942E ==> ' FLD0942E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0942E.
           IF FLD0943B (1:)    NOT EQUAL XPC-FLD0943B
              DISPLAY 'FLD0943B ==> ' FLD0943B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0943B.
           IF FLD0943E   NOT EQUAL XPC-FLD0943E
              DISPLAY 'FLD0943E ==> ' FLD0943E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0943E.
           IF FLD0944B (1:)    NOT EQUAL XPC-FLD0944B
              DISPLAY 'FLD0944B ==> ' FLD0944B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0944B.
           IF FLD0944E   NOT EQUAL XPC-FLD0944E
              DISPLAY 'FLD0944E ==> ' FLD0944E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0944E.
           IF FLD0945B (1:)    NOT EQUAL XPC-FLD0945B
              DISPLAY 'FLD0945B ==> ' FLD0945B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0945B.
           IF FLD0945E   NOT EQUAL XPC-FLD0945E
              DISPLAY 'FLD0945E ==> ' FLD0945E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0945E.
           IF FLD0946B (1:)    NOT EQUAL XPC-FLD0946B
              DISPLAY 'FLD0946B ==> ' FLD0946B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0946B.
           IF FLD0946E   NOT EQUAL XPC-FLD0946E
              DISPLAY 'FLD0946E ==> ' FLD0946E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0946E.
           IF FLD0947B (1:)    NOT EQUAL XPC-FLD0947B
              DISPLAY 'FLD0947B ==> ' FLD0947B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0947B.
           IF FLD0947E   NOT EQUAL XPC-FLD0947E
              DISPLAY 'FLD0947E ==> ' FLD0947E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0947E.
           IF FLD0948B (1:)    NOT EQUAL XPC-FLD0948B
              DISPLAY 'FLD0948B ==> ' FLD0948B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0948B.
           IF FLD0948E   NOT EQUAL XPC-FLD0948E
              DISPLAY 'FLD0948E ==> ' FLD0948E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0948E.
           IF FLD0949B (1:)    NOT EQUAL XPC-FLD0949B
              DISPLAY 'FLD0949B ==> ' FLD0949B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0949B.
           IF FLD0949E   NOT EQUAL XPC-FLD0949E
              DISPLAY 'FLD0949E ==> ' FLD0949E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0949E.
           IF FLD0950B (1:)    NOT EQUAL XPC-FLD0950B
              DISPLAY 'FLD0950B ==> ' FLD0950B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0950B.
           IF FLD0950E   NOT EQUAL XPC-FLD0950E
              DISPLAY 'FLD0950E ==> ' FLD0950E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0950E.
           IF FLD0951B (1:)    NOT EQUAL XPC-FLD0951B
              DISPLAY 'FLD0951B ==> ' FLD0951B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0951B.
           IF FLD0951E   NOT EQUAL XPC-FLD0951E
              DISPLAY 'FLD0951E ==> ' FLD0951E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0951E.
           IF FLD0952B (1:)    NOT EQUAL XPC-FLD0952B
              DISPLAY 'FLD0952B ==> ' FLD0952B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0952B.
           IF FLD0952E   NOT EQUAL XPC-FLD0952E
              DISPLAY 'FLD0952E ==> ' FLD0952E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0952E.
           IF FLD0953B (1:)    NOT EQUAL XPC-FLD0953B
              DISPLAY 'FLD0953B ==> ' FLD0953B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0953B.
           IF FLD0953E   NOT EQUAL XPC-FLD0953E
              DISPLAY 'FLD0953E ==> ' FLD0953E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0953E.
           IF FLD0954B (1:)    NOT EQUAL XPC-FLD0954B
              DISPLAY 'FLD0954B ==> ' FLD0954B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0954B.
           IF FLD0954E   NOT EQUAL XPC-FLD0954E
              DISPLAY 'FLD0954E ==> ' FLD0954E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0954E.
           IF FLD0955B (1:)    NOT EQUAL XPC-FLD0955B
              DISPLAY 'FLD0955B ==> ' FLD0955B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0955B.
           IF FLD0955E   NOT EQUAL XPC-FLD0955E
              DISPLAY 'FLD0955E ==> ' FLD0955E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0955E.
           IF FLD0956B (1:)    NOT EQUAL XPC-FLD0956B
              DISPLAY 'FLD0956B ==> ' FLD0956B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0956B.
           IF FLD0956E   NOT EQUAL XPC-FLD0956E
              DISPLAY 'FLD0956E ==> ' FLD0956E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0956E.
           IF FLD0957B (1:)    NOT EQUAL XPC-FLD0957B
              DISPLAY 'FLD0957B ==> ' FLD0957B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0957B.
           IF FLD0957E   NOT EQUAL XPC-FLD0957E
              DISPLAY 'FLD0957E ==> ' FLD0957E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0957E.
           IF FLD0958B (1:)    NOT EQUAL XPC-FLD0958B
              DISPLAY 'FLD0958B ==> ' FLD0958B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0958B.
           IF FLD0958E   NOT EQUAL XPC-FLD0958E
              DISPLAY 'FLD0958E ==> ' FLD0958E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0958E.
           IF FLD0959B (1:)    NOT EQUAL XPC-FLD0959B
              DISPLAY 'FLD0959B ==> ' FLD0959B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0959B.
           IF FLD0959E   NOT EQUAL XPC-FLD0959E
              DISPLAY 'FLD0959E ==> ' FLD0959E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0959E.
           IF FLD0960B (1:)    NOT EQUAL XPC-FLD0960B
              DISPLAY 'FLD0960B ==> ' FLD0960B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0960B.
           IF FLD0960E   NOT EQUAL XPC-FLD0960E
              DISPLAY 'FLD0960E ==> ' FLD0960E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0960E.
           IF FLD0961B (1:)    NOT EQUAL XPC-FLD0961B
              DISPLAY 'FLD0961B ==> ' FLD0961B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0961B.
           IF FLD0961E   NOT EQUAL XPC-FLD0961E
              DISPLAY 'FLD0961E ==> ' FLD0961E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0961E.
           IF FLD0962B (1:)    NOT EQUAL XPC-FLD0962B
              DISPLAY 'FLD0962B ==> ' FLD0962B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0962B.
           IF FLD0962E   NOT EQUAL XPC-FLD0962E
              DISPLAY 'FLD0962E ==> ' FLD0962E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0962E.
           IF FLD0963B (1:)    NOT EQUAL XPC-FLD0963B
              DISPLAY 'FLD0963B ==> ' FLD0963B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0963B.
           IF FLD0963E   NOT EQUAL XPC-FLD0963E
              DISPLAY 'FLD0963E ==> ' FLD0963E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0963E.
           IF FLD0964B (1:)    NOT EQUAL XPC-FLD0964B
              DISPLAY 'FLD0964B ==> ' FLD0964B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0964B.
           IF FLD0964E   NOT EQUAL XPC-FLD0964E
              DISPLAY 'FLD0964E ==> ' FLD0964E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0964E.
           IF FLD0965B (1:)    NOT EQUAL XPC-FLD0965B
              DISPLAY 'FLD0965B ==> ' FLD0965B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0965B.
           IF FLD0965E   NOT EQUAL XPC-FLD0965E
              DISPLAY 'FLD0965E ==> ' FLD0965E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0965E.
           IF FLD0966B (1:)    NOT EQUAL XPC-FLD0966B
              DISPLAY 'FLD0966B ==> ' FLD0966B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0966B.
           IF FLD0966E   NOT EQUAL XPC-FLD0966E
              DISPLAY 'FLD0966E ==> ' FLD0966E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0966E.
           IF FLD0967B (1:)    NOT EQUAL XPC-FLD0967B
              DISPLAY 'FLD0967B ==> ' FLD0967B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0967B.
           IF FLD0967E   NOT EQUAL XPC-FLD0967E
              DISPLAY 'FLD0967E ==> ' FLD0967E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0967E.
           IF FLD0968B (1:)    NOT EQUAL XPC-FLD0968B
              DISPLAY 'FLD0968B ==> ' FLD0968B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0968B.
           IF FLD0968E   NOT EQUAL XPC-FLD0968E
              DISPLAY 'FLD0968E ==> ' FLD0968E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0968E.
           IF FLD0969B (1:)    NOT EQUAL XPC-FLD0969B
              DISPLAY 'FLD0969B ==> ' FLD0969B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0969B.
           IF FLD0969E   NOT EQUAL XPC-FLD0969E
              DISPLAY 'FLD0969E ==> ' FLD0969E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0969E.
           IF FLD0970B (1:)    NOT EQUAL XPC-FLD0970B
              DISPLAY 'FLD0970B ==> ' FLD0970B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0970B.
           IF FLD0970E   NOT EQUAL XPC-FLD0970E
              DISPLAY 'FLD0970E ==> ' FLD0970E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0970E.
           IF FLD0971B (1:)    NOT EQUAL XPC-FLD0971B
              DISPLAY 'FLD0971B ==> ' FLD0971B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0971B.
           IF FLD0971E   NOT EQUAL XPC-FLD0971E
              DISPLAY 'FLD0971E ==> ' FLD0971E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0971E.
           IF FLD0972B (1:)    NOT EQUAL XPC-FLD0972B
              DISPLAY 'FLD0972B ==> ' FLD0972B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0972B.
           IF FLD0972E   NOT EQUAL XPC-FLD0972E
              DISPLAY 'FLD0972E ==> ' FLD0972E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0972E.
           IF FLD0973B (1:)    NOT EQUAL XPC-FLD0973B
              DISPLAY 'FLD0973B ==> ' FLD0973B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0973B.
           IF FLD0973E   NOT EQUAL XPC-FLD0973E
              DISPLAY 'FLD0973E ==> ' FLD0973E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0973E.
           IF FLD0974B (1:)    NOT EQUAL XPC-FLD0974B
              DISPLAY 'FLD0974B ==> ' FLD0974B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0974B.
           IF FLD0974E   NOT EQUAL XPC-FLD0974E
              DISPLAY 'FLD0974E ==> ' FLD0974E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0974E.
           IF FLD0975B (1:)    NOT EQUAL XPC-FLD0975B
              DISPLAY 'FLD0975B ==> ' FLD0975B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0975B.
           IF FLD0975E   NOT EQUAL XPC-FLD0975E
              DISPLAY 'FLD0975E ==> ' FLD0975E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0975E.
           IF FLD0976B (1:)    NOT EQUAL XPC-FLD0976B
              DISPLAY 'FLD0976B ==> ' FLD0976B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0976B.
           IF FLD0976E   NOT EQUAL XPC-FLD0976E
              DISPLAY 'FLD0976E ==> ' FLD0976E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0976E.
           IF FLD0977B (1:)    NOT EQUAL XPC-FLD0977B
              DISPLAY 'FLD0977B ==> ' FLD0977B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0977B.
           IF FLD0977E   NOT EQUAL XPC-FLD0977E
              DISPLAY 'FLD0977E ==> ' FLD0977E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0977E.
           IF FLD0978B (1:)    NOT EQUAL XPC-FLD0978B
              DISPLAY 'FLD0978B ==> ' FLD0978B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0978B.
           IF FLD0978E   NOT EQUAL XPC-FLD0978E
              DISPLAY 'FLD0978E ==> ' FLD0978E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0978E.
           IF FLD0979B (1:)    NOT EQUAL XPC-FLD0979B
              DISPLAY 'FLD0979B ==> ' FLD0979B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0979B.
           IF FLD0979E   NOT EQUAL XPC-FLD0979E
              DISPLAY 'FLD0979E ==> ' FLD0979E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0979E.
           IF FLD0980B (1:)    NOT EQUAL XPC-FLD0980B
              DISPLAY 'FLD0980B ==> ' FLD0980B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0980B.
           IF FLD0980E   NOT EQUAL XPC-FLD0980E
              DISPLAY 'FLD0980E ==> ' FLD0980E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0980E.
           IF FLD0981B (1:)    NOT EQUAL XPC-FLD0981B
              DISPLAY 'FLD0981B ==> ' FLD0981B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0981B.
           IF FLD0981E   NOT EQUAL XPC-FLD0981E
              DISPLAY 'FLD0981E ==> ' FLD0981E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0981E.
           IF FLD0982B (1:)    NOT EQUAL XPC-FLD0982B
              DISPLAY 'FLD0982B ==> ' FLD0982B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0982B.
           IF FLD0982E   NOT EQUAL XPC-FLD0982E
              DISPLAY 'FLD0982E ==> ' FLD0982E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0982E.
           IF FLD0983B (1:)    NOT EQUAL XPC-FLD0983B
              DISPLAY 'FLD0983B ==> ' FLD0983B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0983B.
           IF FLD0983E   NOT EQUAL XPC-FLD0983E
              DISPLAY 'FLD0983E ==> ' FLD0983E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0983E.
           IF FLD0984B (1:)    NOT EQUAL XPC-FLD0984B
              DISPLAY 'FLD0984B ==> ' FLD0984B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0984B.
           IF FLD0984E   NOT EQUAL XPC-FLD0984E
              DISPLAY 'FLD0984E ==> ' FLD0984E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0984E.
           IF FLD0985B (1:)    NOT EQUAL XPC-FLD0985B
              DISPLAY 'FLD0985B ==> ' FLD0985B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0985B.
           IF FLD0985E   NOT EQUAL XPC-FLD0985E
              DISPLAY 'FLD0985E ==> ' FLD0985E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0985E.
           IF FLD0986B (1:)    NOT EQUAL XPC-FLD0986B
              DISPLAY 'FLD0986B ==> ' FLD0986B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0986B.
           IF FLD0986E   NOT EQUAL XPC-FLD0986E
              DISPLAY 'FLD0986E ==> ' FLD0986E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0986E.
           IF FLD0987B (1:)    NOT EQUAL XPC-FLD0987B
              DISPLAY 'FLD0987B ==> ' FLD0987B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0987B.
           IF FLD0987E   NOT EQUAL XPC-FLD0987E
              DISPLAY 'FLD0987E ==> ' FLD0987E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0987E.
           IF FLD0988B (1:)    NOT EQUAL XPC-FLD0988B
              DISPLAY 'FLD0988B ==> ' FLD0988B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0988B.
           IF FLD0988E   NOT EQUAL XPC-FLD0988E
              DISPLAY 'FLD0988E ==> ' FLD0988E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0988E.
           IF FLD0989B (1:)    NOT EQUAL XPC-FLD0989B
              DISPLAY 'FLD0989B ==> ' FLD0989B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0989B.
           IF FLD0989E   NOT EQUAL XPC-FLD0989E
              DISPLAY 'FLD0989E ==> ' FLD0989E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0989E.
           IF FLD0990B (1:)    NOT EQUAL XPC-FLD0990B
              DISPLAY 'FLD0990B ==> ' FLD0990B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0990B.
           IF FLD0990E   NOT EQUAL XPC-FLD0990E
              DISPLAY 'FLD0990E ==> ' FLD0990E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0990E.
           IF FLD0991B (1:)    NOT EQUAL XPC-FLD0991B
              DISPLAY 'FLD0991B ==> ' FLD0991B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0991B.
           IF FLD0991E   NOT EQUAL XPC-FLD0991E
              DISPLAY 'FLD0991E ==> ' FLD0991E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0991E.
           IF FLD0992B (1:)    NOT EQUAL XPC-FLD0992B
              DISPLAY 'FLD0992B ==> ' FLD0992B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0992B.
           IF FLD0992E   NOT EQUAL XPC-FLD0992E
              DISPLAY 'FLD0992E ==> ' FLD0992E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0992E.
           IF FLD0993B (1:)    NOT EQUAL XPC-FLD0993B
              DISPLAY 'FLD0993B ==> ' FLD0993B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0993B.
           IF FLD0993E   NOT EQUAL XPC-FLD0993E
              DISPLAY 'FLD0993E ==> ' FLD0993E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0993E.
           IF FLD0994B (1:)    NOT EQUAL XPC-FLD0994B
              DISPLAY 'FLD0994B ==> ' FLD0994B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0994B.
           IF FLD0994E   NOT EQUAL XPC-FLD0994E
              DISPLAY 'FLD0994E ==> ' FLD0994E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0994E.
           IF FLD0995B (1:)    NOT EQUAL XPC-FLD0995B
              DISPLAY 'FLD0995B ==> ' FLD0995B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0995B.
           IF FLD0995E   NOT EQUAL XPC-FLD0995E
              DISPLAY 'FLD0995E ==> ' FLD0995E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0995E.
           IF FLD0996B (1:)    NOT EQUAL XPC-FLD0996B
              DISPLAY 'FLD0996B ==> ' FLD0996B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0996B.
           IF FLD0996E   NOT EQUAL XPC-FLD0996E
              DISPLAY 'FLD0996E ==> ' FLD0996E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0996E.
           IF FLD0997B (1:)    NOT EQUAL XPC-FLD0997B
              DISPLAY 'FLD0997B ==> ' FLD0997B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0997B.
           IF FLD0997E   NOT EQUAL XPC-FLD0997E
              DISPLAY 'FLD0997E ==> ' FLD0997E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0997E.
           IF FLD0998B (1:)    NOT EQUAL XPC-FLD0998B
              DISPLAY 'FLD0998B ==> ' FLD0998B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0998B.
           IF FLD0998E   NOT EQUAL XPC-FLD0998E
              DISPLAY 'FLD0998E ==> ' FLD0998E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0998E.
           IF FLD0999B (1:)    NOT EQUAL XPC-FLD0999B
              DISPLAY 'FLD0999B ==> ' FLD0999B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0999B.
           IF FLD0999E   NOT EQUAL XPC-FLD0999E
              DISPLAY 'FLD0999E ==> ' FLD0999E
              DISPLAY 'EXPECTED ==> ' XPC-FLD0999E.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:16934: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "data_display.at:16934"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:16934"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:16935: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_display.at:16935"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:16935"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1257
#AT_START_1258
at_fn_group_banner 1258 'data_display.at:16940' \
  "DISPLAY: ADD and SUBTRACT, all ROUNDED MODEs" "   " 5
at_xfail=no
(
  $as_echo "1258. $at_setup_line: testing $at_desc ..."
  $at_traceon



# This test was originally generated and contributed by Chuck Haatvedt.
# It tests a huge amount of ADD / SUBTRACT between DISPLAY (originally BCD)
# fields with different attributes (size, decimal places, sign) with different
# rounding options and checks for the expected value after the computation.
# This code is an adjusted duplicate of the test in data_packed.at
# and checking with cob_decimal (while the BCD uses its own optimized routine).

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTR.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77  FLD0001A                       PIC  9(08)V9(19)
                   VALUE  72210483.5706116943150334464.
       77  FLD0001B                       PIC  9(01)
                   VALUE  0.

       77  FLD0002A                       PIC  9(05)V9(26)
                   VALUE  83954.98773698940597753903603006.
       77  FLD0002B                       PIC  9(05)V9(27)
                   VALUE  85526.912891598327881581553810974.

       77  FLD0003A                       PIC  9(01)
                   VALUE  0.
       77  FLD0003B                       PIC  9(10)V9(08)
                   VALUE  4976916625.40136914.

       77  FLD0004A                       PIC S9(08)V9(03)
                   VALUE +31348416.669.
       77  FLD0004B                       PIC  9(05)V9(01)
                   VALUE  16799.5.

       77  FLD0005A                       PIC S9(07)V9(01)
                   VALUE +2337334.8.
       77  FLD0005B                       PIC S9(09)V9(03)
                   VALUE +324331791.973.

       77  FLD0006A                       PIC  9(04)
                   VALUE  1169.
       77  FLD0006B                       PIC  9(03)V9(31)
                   VALUE  912.5850054312464321171205483551602.

       77  FLD0007A                       PIC S9(04)
                   VALUE +1123.
       77  FLD0007B                       PIC S9(08)V9(02)
                   VALUE -27032151.91.

       77  FLD0008A                       PIC  9(01)
                   VALUE  0.
       77  FLD0008B                       PIC S9(03)
                   VALUE -091.

       77  FLD0009A                       PIC  9(10)V9(07)
                   VALUE  4695987895.4491957.
       77  FLD0009B                       PIC  9(05)V9(28)
                   VALUE  87164.4396861416259625343627703841.

       77  FLD0010A                       PIC  9(03)V9(32)
                   VALUE  932.59120224122482589734772773226723.
       77  FLD0010B                       PIC S9(09)V9(06)
                   VALUE +401314086.816856.

       77  FLD0011A                       PIC  9(09)V9(04)
                   VALUE  356168291.4830.
       77  FLD0011B                       PIC  9(04)V9(29)
                   VALUE  8869.25340695890795927880390081554.

       77  FLD0012A                       PIC  9(03)
                   VALUE  087.
       77  FLD0012B                       PIC  9(08)V9(19)
                   VALUE  71485769.2486604356929547066.

       77  FLD0013A                       PIC  9(06)V9(25)
                   VALUE  829630.0004717120923913853403064.
       77  FLD0013B                       PIC  9(07)V9(02)
                   VALUE  2497013.60.

       77  FLD0014A                       PIC  9(09)V9(13)
                   VALUE  592943121.2490873237541.
       77  FLD0014B                       PIC  9(06)V9(01)
                   VALUE  186764.7.

       77  FLD0015A                       PIC  9(07)V9(23)
                   VALUE  7984732.71412134533164817185024.
       77  FLD0015B                       PIC  9(10)V9(08)
                   VALUE  4953047329.19498391.

       77  FLD0016A                       PIC  9(05)V9(28)
                   VALUE  87275.9557853607148558694461826235.
       77  FLD0016B                       PIC S9(10)V9(06)
                   VALUE +4316165362.791636.

       77  FLD0017A                       PIC  9(01)
                   VALUE  0.
       77  FLD0017B                       PIC  9(04)V9(30)
                   VALUE  8983.341087204116393039043941826093.

       77  FLD0018A                       PIC  9(07)V9(21)
                   VALUE  7619026.805277494540646898713.
       77  FLD0018B                       PIC S9(01)
                   VALUE -0.

       77  FLD0019A                       PIC S9(10)V9(08)
                   VALUE -4930528885.68236813.
       77  FLD0019B                       PIC S9(09)V9(06)
                   VALUE +402620216.542097.

       77  FLD0020A                       PIC  9(09)V9(15)
                   VALUE  643887452.720044328735582.
       77  FLD0020B                       PIC  9(09)V9(11)
                   VALUE  552340679.26366126055.

       77  FLD0021A                       PIC  9(01)V9(36)
                   VALUE  9.880441680787707126043528660375159233.
       77  FLD0021B                       PIC S9(01)
                   VALUE -0.

       77  FLD0022A                       PIC  9(06)V9(24)
                   VALUE  810040.192546636172998830716096.
       77  FLD0022B                       PIC  9(07)V9(21)
                   VALUE  7610660.641468062204140210269.

       77  FLD0023A                       PIC  9(02)
                   VALUE  06.
       77  FLD0023B                       PIC  9(02)V9(34)
                   VALUE  95.1865432391802879230624512274516746.

       77  FLD0024A                       PIC  9(09)V9(03)
                   VALUE  329406009.124.
       77  FLD0024B                       PIC S9(09)V9(06)
                   VALUE +410668612.232476.

       77  FLD0025A                       PIC S9(01)
                   VALUE +0.
       77  FLD0025B                       PIC  9(07)V9(02)
                   VALUE  2497488.27.

       77  FLD0026A                       PIC  9(01)
                   VALUE  0.
       77  FLD0026B                       PIC S9(09)V9(05)
                   VALUE -383757196.20564.

       77  FLD0027A                       PIC  9(09)V9(13)
                   VALUE  601026867.0937520818498.
       77  FLD0027B                       PIC  9(06)V9(25)
                   VALUE  815849.1045356750515082921992870.

       77  FLD0028A                       PIC  9(04)V9(29)
                   VALUE  8794.72782911061568000832266989164.
       77  FLD0028B                       PIC S9(01)
                   VALUE +0.

       77  FLD0029A                       PIC  9(05)
                   VALUE  13697.
       77  FLD0029B                       PIC  9(09)V9(17)
                   VALUE  684374480.18294422258378517.

       77  FLD0030A                       PIC S9(01)
                   VALUE +0.
       77  FLD0030B                       PIC  9(08)V9(18)
                   VALUE  70264210.169553353857452293.

       77  FLD0031A                       PIC  9(01)
                   VALUE  0.
       77  FLD0031B                       PIC  9(08)V9(18)
                   VALUE  70450280.588407820925311852.

       77  FLD0032A                       PIC  9(10)V9(10)
                   VALUE  5269599769.4606222516.
       77  FLD0032B                       PIC S9(09)V9(03)
                   VALUE +322379197.669.

       77  FLD0033A                       PIC  9(09)V9(15)
                   VALUE  641903038.069859710468278.
       77  FLD0033B                       PIC  9(09)V9(03)
                   VALUE  318353502.142.

       77  FLD0034A                       PIC S9(02)
                   VALUE -05.
       77  FLD0034B                       PIC S9(07)V9(01)
                   VALUE +2126766.9.

       77  FLD0035A                       PIC  9(06)V9(25)
                   VALUE  816285.5924199176049782522568420.
       77  FLD0035B                       PIC  9(07)V9(01)
                   VALUE  2276316.1.

       77  FLD0036A                       PIC  9(01)V9(36)
                   VALUE  9.789384107274801127829277902492322027.
       77  FLD0036B                       PIC  9(05)V9(27)
                   VALUE  84790.535447228665422159110676147.

       77  FLD0037A                       PIC  9(10)V9(11)
                   VALUE  5559560836.79804091701.
       77  FLD0037B                       PIC S9(05)
                   VALUE -15352.

       77  FLD0038A                       PIC  9(02)V9(34)
                   VALUE  95.5897506417712539139586169767426326.
       77  FLD0038B                       PIC  9(06)V9(25)
                   VALUE  819342.2486726212872198971126636.

       77  FLD0039A                       PIC  9(04)V9(29)
                   VALUE  8933.20399454893721014059337903745.
       77  FLD0039B                       PIC  9(06)V9(01)
                   VALUE  205344.3.

       77  FLD0040A                       PIC S9(06)
                   VALUE -162227.
       77  FLD0040B                       PIC S9(03)
                   VALUE +101.

       77  FLD0041A                       PIC  9(09)V9(17)
                   VALUE  687709210.19485042879892944.
       77  FLD0041B                       PIC  9(10)V9(09)
                   VALUE  5032246021.307608119.

       77  FLD0042A                       PIC  9(07)V9(22)
                   VALUE  7680734.5400734650109342283030.
       77  FLD0042B                       PIC  9(10)V9(10)
                   VALUE  5398987461.4943655917.

       77  FLD0043A                       PIC S9(08)V9(02)
                   VALUE -28038049.48.
       77  FLD0043B                       PIC  9(04)V9(30)
                   VALUE  9102.051349475740460448491830902639.

       77  FLD0044A                       PIC  9(06)V9(01)
                   VALUE  206224.3.
       77  FLD0044B                       PIC  9(09)V9(04)
                   VALUE  359534215.7883.

       77  FLD0045A                       PIC  9(08)V9(02)
                   VALUE  28592495.81.
       77  FLD0045B                       PIC  9(09)V9(05)
                   VALUE  377058873.76830.

       77  FLD0046A                       PIC  9(01)
                   VALUE  0.
       77  FLD0046B                       PIC  9(05)V9(27)
                   VALUE  86000.025910646182847330010190489.

       77  FLD0047A                       PIC  9(08)V9(02)
                   VALUE  26966592.97.
       77  FLD0047B                       PIC  9(10)V9(08)
                   VALUE  4982239515.90845814.

       77  FLD0048A                       PIC  9(05)V9(26)
                   VALUE  83962.84254838164429202151950448.
       77  FLD0048B                       PIC S9(05)V9(01)
                   VALUE -17309.9.

       77  FLD0049A                       PIC  9(09)V9(16)
                   VALUE  677621907.0336453320635428.
       77  FLD0049B                       PIC  9(01)V9(36)
                   VALUE  9.784571866912429305429554915463086217.

       77  FLD0050A                       PIC  9(09)V9(03)
                   VALUE  329667670.988.
       77  FLD0050B                       PIC  9(09)V9(06)
                   VALUE  408790070.710566.

       77  FLD0051A                       PIC  9(09)V9(15)
                   VALUE  643375703.689413991348544.
       77  FLD0051B                       PIC  9(04)V9(30)
                   VALUE  9064.871948640588206203005938732530.

       77  FLD0052A                       PIC  9(09)V9(04)
                   VALUE  367200483.8576.
       77  FLD0052B                       PIC  9(09)V9(11)
                   VALUE  550990476.15163754265.

       77  FLD0053A                       PIC  9(07)V9(01)
                   VALUE  2260324.6.
       77  FLD0053B                       PIC S9(09)V9(04)
                   VALUE -361176713.4701.

       77  FLD0054A                       PIC S9(01)
                   VALUE +0.
       77  FLD0054B                       PIC  9(09)V9(03)
                   VALUE  319288758.232.

       77  FLD0055A                       PIC  9(09)V9(14)
                   VALUE  622232417.66982828604426.
       77  FLD0055B                       PIC  9(08)V9(17)
                   VALUE  68254498.02012105715576240.

       77  FLD0056A                       PIC  9(07)V9(01)
                   VALUE  2161993.9.
       77  FLD0056B                       PIC  9(08)V9(02)
                   VALUE  27806089.73.

       77  FLD0057A                       PIC  9(03)V9(32)
                   VALUE  929.20878243011406638629523513372987.
       77  FLD0057B                       PIC S9(02)
                   VALUE -06.

       77  FLD0058A                       PIC  9(02)V9(34)
                   VALUE  96.6574119281082611010447180888149887.
       77  FLD0058B                       PIC S9(09)V9(04)
                   VALUE +343623662.0368.

       77  FLD0059A                       PIC  9(07)V9(02)
                   VALUE  2566438.61.
       77  FLD0059B                       PIC  9(09)V9(14)
                   VALUE  625762300.58564874525472.

       77  FLD0060A                       PIC  9(01)V9(36)
                   VALUE  9.888752946983269120906356874911580234.
       77  FLD0060B                       PIC  9(06)
                   VALUE  159150.

       77  FLD0061A                       PIC  9(03)
                   VALUE  095.
       77  FLD0061B                       PIC  9(06)V9(25)
                   VALUE  816564.2123096498172785118185856.

       77  FLD0062A                       PIC  9(10)V9(11)
                   VALUE  5579259193.81647705819.
       77  FLD0062B                       PIC  9(09)V9(13)
                   VALUE  602304146.8914084317631.

       77  FLD0063A                       PIC S9(07)V9(01)
                   VALUE +2106925.6.
       77  FLD0063B                       PIC  9(08)V9(19)
                   VALUE  73193550.7264897311507922950.

       77  FLD0064A                       PIC  9(06)V9(25)
                   VALUE  828553.1635867423583263757791428.
       77  FLD0064B                       PIC S9(04)
                   VALUE +1113.

       77  FLD0065A                       PIC  9(08)V9(02)
                   VALUE  26934154.73.
       77  FLD0065B                       PIC S9(04)
                   VALUE +1223.

       77  FLD0066A                       PIC  9(01)
                   VALUE  0.
       77  FLD0066B                       PIC  9(05)V9(27)
                   VALUE  85085.260849998822774153950376785.

       77  FLD0067A                       PIC S9(03)
                   VALUE -091.
       77  FLD0067B                       PIC S9(01)
                   VALUE +0.

       77  FLD0068A                       PIC  9(06)V9(25)
                   VALUE  838055.6814082209537986045688739.
       77  FLD0068B                       PIC  9(01)
                   VALUE  0.

       77  FLD0069A                       PIC  9(10)V9(08)
                   VALUE  4880885916.76487937.
       77  FLD0069B                       PIC  9(03)
                   VALUE  097.

       77  FLD0070A                       PIC  9(08)V9(18)
                   VALUE  69654747.914044090606466852.
       77  FLD0070B                       PIC S9(06)V9(01)
                   VALUE -192591.5.

       77  FLD0071A                       PIC  9(02)
                   VALUE  05.
       77  FLD0071B                       PIC  9(04)
                   VALUE  1269.

       77  FLD0072A                       PIC  9(01)V9(36)
                   VALUE  9.925387953744267965916492357791867107.
       77  FLD0072B                       PIC  9(09)V9(15)
                   VALUE  655377323.717403204028641.

       77  FLD0073A                       PIC  9(01)V9(36)
                   VALUE  9.812328554525302504174533169134519994.
       77  FLD0073B                       PIC  9(08)V9(18)
                   VALUE  70717230.890474991333860543.

       77  FLD0074A                       PIC  9(03)V9(32)
                   VALUE  925.84903592679257400277492706663906.
       77  FLD0074B                       PIC  9(01)V9(36)
                   VALUE  9.839916331263631743553332853480242192.

       77  FLD0075A                       PIC  9(10)V9(10)
                   VALUE  5446083738.8683014381.
       77  FLD0075B                       PIC S9(07)V9(01)
                   VALUE +2205661.8.

       77  FLD0076A                       PIC S9(07)V9(02)
                   VALUE +2412584.18.
       77  FLD0076B                       PIC  9(02)V9(34)
                   VALUE  95.1877730461857529675739897356834262.

       77  FLD0077A                       PIC  9(10)V9(08)
                   VALUE  4971042025.86989840.
       77  FLD0077B                       PIC  9(05)V9(28)
                   VALUE  87747.7884783979700245026833727024.

       77  FLD0078A                       PIC  9(06)V9(01)
                   VALUE  186044.2.
       77  FLD0078B                       PIC  9(10)V9(10)
                   VALUE  5264094377.6727222580.

       77  FLD0079A                       PIC  9(09)V9(15)
                   VALUE  638119223.314542294289708.
       77  FLD0079B                       PIC S9(03)
                   VALUE +101.

       77  FLD0080A                       PIC  9(07)V9(23)
                   VALUE  7905587.67133311302011122734256.
       77  FLD0080B                       PIC S9(09)V9(04)
                   VALUE -363247849.5626.

       77  FLD0081A                       PIC  9(01)V9(36)
                   VALUE  9.951308658902108250643436804239172488.
       77  FLD0081B                       PIC  9(09)V9(04)
                   VALUE  367206952.3371.

       77  FLD0082A                       PIC S9(08)V9(02)
                   VALUE -26324419.10.
       77  FLD0082B                       PIC  9(07)V9(22)
                   VALUE  7666475.1738066827524420432382.

       77  FLD0083A                       PIC  9(09)V9(14)
                   VALUE  631384121.39469823891602.
       77  FLD0083B                       PIC S9(07)V9(02)
                   VALUE -2518657.33.

       77  FLD0084A                       PIC  9(04)V9(29)
                   VALUE  8913.08379718931953483718189090723.
       77  FLD0084B                       PIC  9(09)V9(06)
                   VALUE  405118244.918866.

       77  FLD0085A                       PIC  9(05)
                   VALUE  15779.
       77  FLD0085B                       PIC  9(10)V9(06)
                   VALUE  4354227755.611629.

       77  FLD0086A                       PIC  9(01)V9(36)
                   VALUE  9.766547774737049936177868403319735080.
       77  FLD0086B                       PIC  9(10)V9(11)
                   VALUE  5711670223.78104349833.

       77  FLD0087A                       PIC  9(09)V9(14)
                   VALUE  617158605.01368802193411.
       77  FLD0087B                       PIC  9(04)
                   VALUE  1168.

       77  FLD0088A                       PIC  9(10)V9(12)
                   VALUE  5809468198.000283800652.
       77  FLD0088B                       PIC  9(09)V9(03)
                   VALUE  327927843.481.

       77  FLD0089A                       PIC  9(06)V9(24)
                   VALUE  802942.222446262787727278009697.
       77  FLD0089B                       PIC  9(03)V9(31)
                   VALUE  913.0556640200002682661306607769802.

       77  FLD0090A                       PIC S9(08)V9(02)
                   VALUE -28271627.31.
       77  FLD0090B                       PIC S9(08)V9(03)
                   VALUE -29023436.992.

       77  FLD0091A                       PIC  9(09)V9(07)
                   VALUE  438808038.0901770.
       77  FLD0091B                       PIC  9(08)V9(18)
                   VALUE  69809163.794725925811235356.

       77  FLD0092A                       PIC S9(07)V9(01)
                   VALUE +2146587.0.
       77  FLD0092B                       PIC  9(06)V9(25)
                   VALUE  828676.9901534452031910404912196.

       77  FLD0093A                       PIC  9(06)V9(25)
                   VALUE  831848.6927757260396276706160278.
       77  FLD0093B                       PIC  9(07)V9(23)
                   VALUE  7909193.25337388512409120266966.

       77  FLD0094A                       PIC  9(07)V9(01)
                   VALUE  2260698.5.
       77  FLD0094B                       PIC  9(10)V9(10)
                   VALUE  5308926344.5354850645.

       77  FLD0095A                       PIC  9(07)V9(22)
                   VALUE  7681159.7607563408818265315858.
       77  FLD0095B                       PIC  9(06)V9(25)
                   VALUE  835614.2190518044410296738533361.

       77  FLD0096A                       PIC  9(01)
                   VALUE  0.
       77  FLD0096B                       PIC  9(05)V9(28)
                   VALUE  87505.3049076218392166026660561328.

       77  FLD0097A                       PIC  9(03)
                   VALUE  085.
       77  FLD0097B                       PIC  9(07)V9(22)
                   VALUE  7663819.4132902548449948199049.

       77  FLD0098A                       PIC  9(05)V9(28)
                   VALUE  87637.1310136299430659789777564583.
       77  FLD0098B                       PIC  9(08)V9(04)
                   VALUE  33500668.0379.

       77  FLD0099A                       PIC S9(10)V9(08)
                   VALUE -4946809917.70565292.
       77  FLD0099B                       PIC S9(08)V9(03)
                   VALUE +30007106.715.

       77  FLD0100A                       PIC  9(10)V9(09)
                   VALUE  5148281813.288457797.
       77  FLD0100B                       PIC  9(09)V9(14)
                   VALUE  609442213.66168171982735.

       77  FLD0101A                       PIC S9(07)V9(02)
                   VALUE -2605358.58.
       77  FLD0101B                       PIC S9(07)V9(02)
                   VALUE -2515761.93.

       77  FLD0102A                       PIC  9(05)
                   VALUE  13880.
       77  FLD0102B                       PIC  9(09)V9(14)
                   VALUE  626009568.32775289662151.

       77  FLD0103A                       PIC  9(03)V9(32)
                   VALUE  929.51599988912647631877916865050792.
       77  FLD0103B                       PIC  9(01)
                   VALUE  0.

       77  FLD0104A                       PIC  9(07)V9(01)
                   VALUE  2254306.3.
       77  FLD0104B                       PIC S9(10)V9(08)
                   VALUE -4810300752.02174334.

       77  FLD0105A                       PIC S9(08)V9(03)
                   VALUE -29081388.428.
       77  FLD0105B                       PIC  9(08)V9(02)
                   VALUE  27558698.77.

       77  FLD0106A                       PIC S9(02)
                   VALUE -07.
       77  FLD0106B                       PIC S9(08)V9(02)
                   VALUE -26362185.29.

       77  FLD0107A                       PIC  9(09)V9(16)
                   VALUE  677462443.7557797973497031.
       77  FLD0107B                       PIC  9(08)V9(19)
                   VALUE  71705910.5997380985542122289.

       77  FLD0108A                       PIC  9(09)V9(14)
                   VALUE  610210882.31341436003418.
       77  FLD0108B                       PIC S9(08)V9(02)
                   VALUE -28421053.19.

       77  FLD0109A                       PIC S9(04)
                   VALUE +1136.
       77  FLD0109B                       PIC  9(04)V9(30)
                   VALUE  9020.720262660837374113498299266211.

       77  FLD0110A                       PIC  9(07)V9(23)
                   VALUE  7940109.55673497886841971649118.
       77  FLD0110B                       PIC  9(08)V9(18)
                   VALUE  69721135.284383173313926818.

       77  FLD0111A                       PIC  9(09)V9(03)
                   VALUE  326472185.831.
       77  FLD0111B                       PIC  9(10)V9(09)
                   VALUE  5255901748.964217912.

       77  FLD0112A                       PIC  9(08)V9(19)
                   VALUE  71238052.4624002697819946661.
       77  FLD0112B                       PIC S9(08)V9(02)
                   VALUE -27133920.74.

       77  FLD0113A                       PIC  9(04)V9(30)
                   VALUE  9092.566324157485002643852567416615.
       77  FLD0113B                       PIC  9(04)
                   VALUE  1277.

       77  FLD0114A                       PIC  9(09)V9(07)
                   VALUE  437805064.1539988.
       77  FLD0114B                       PIC  9(05)V9(01)
                   VALUE  17667.3.

       77  FLD0115A                       PIC  9(02)V9(34)
                   VALUE  96.2362934933669089687668929400388151.
       77  FLD0115B                       PIC S9(08)V9(03)
                   VALUE +30236682.408.

       77  FLD0116A                       PIC  9(07)V9(22)
                   VALUE  7646463.4359510952332783517704.
       77  FLD0116B                       PIC  9(01)
                   VALUE  0.

       77  FLD0117A                       PIC  9(09)V9(14)
                   VALUE  617509561.34001855346582.
       77  FLD0117B                       PIC  9(05)
                   VALUE  13612.

       77  FLD0118A                       PIC  9(10)V9(10)
                   VALUE  5408402726.5490597358.
       77  FLD0118B                       PIC S9(03)
                   VALUE -080.

       77  FLD0119A                       PIC S9(08)V9(03)
                   VALUE +30078875.458.
       77  FLD0119B                       PIC  9(07)V9(02)
                   VALUE  2460449.05.

       77  FLD0120A                       PIC  9(06)V9(25)
                   VALUE  830160.1137616416714593015058198.
       77  FLD0120B                       PIC S9(02)
                   VALUE -07.

       77  FLD0121A                       PIC S9(07)V9(01)
                   VALUE +2338292.2.
       77  FLD0121B                       PIC S9(09)V9(03)
                   VALUE +320991974.822.

       77  FLD0122A                       PIC S9(06)V9(01)
                   VALUE -184951.8.
       77  FLD0122B                       PIC  9(08)V9(02)
                   VALUE  26752619.72.

       77  FLD0123A                       PIC S9(02)
                   VALUE -05.
       77  FLD0123B                       PIC  9(07)V9(21)
                   VALUE  7502027.502690824523057244732.

       77  FLD0124A                       PIC  9(01)
                   VALUE  0.
       77  FLD0124B                       PIC S9(10)V9(06)
                   VALUE +4223876720.963152.

       77  FLD0125A                       PIC  9(04)V9(29)
                   VALUE  8800.31826789913984576685379579430.
       77  FLD0125B                       PIC  9(09)V9(15)
                   VALUE  637787216.045794358443288.

       77  FLD0126A                       PIC  9(06)V9(24)
                   VALUE  807990.071015203703552742808824.
       77  FLD0126B                       PIC  9(07)V9(01)
                   VALUE  2285688.0.

       77  FLD0127A                       PIC  9(04)V9(30)
                   VALUE  8981.860178820127993404298649693373.
       77  FLD0127B                       PIC  9(05)V9(28)
                   VALUE  87878.0390073648609572387613297905.

       77  FLD0128A                       PIC  9(10)V9(06)
                   VALUE  4298489587.591516.
       77  FLD0128B                       PIC  9(08)V9(02)
                   VALUE  26904320.50.

       77  FLD0129A                       PIC S9(08)V9(04)
                   VALUE +33460508.1048.
       77  FLD0129B                       PIC  9(09)V9(14)
                   VALUE  629564859.51748508700376.

       77  FLD0130A                       PIC  9(01)
                   VALUE  0.
       77  FLD0130B                       PIC  9(08)V9(03)
                   VALUE  30500681.275.

       77  FLD0131A                       PIC  9(08)V9(02)
                   VALUE  26916210.05.
       77  FLD0131B                       PIC  9(08)V9(18)
                   VALUE  70626515.642831921848454612.

       77  FLD0132A                       PIC  9(04)
                   VALUE  1270.
       77  FLD0132B                       PIC  9(07)V9(01)
                   VALUE  2163498.7.

       77  FLD0133A                       PIC  9(01)V9(36)
                   VALUE  9.890353542063604619372085835493635386.
       77  FLD0133B                       PIC S9(07)V9(02)
                   VALUE -2528421.98.

       77  FLD0134A                       PIC  9(08)V9(18)
                   VALUE  70385499.741438917187252855.
       77  FLD0134B                       PIC  9(09)V9(16)
                   VALUE  673960062.4739148226893803.

       77  FLD0135A                       PIC  9(10)V9(07)
                   VALUE  4678335500.0128495.
       77  FLD0135B                       PIC  9(07)V9(02)
                   VALUE  2561321.97.

       77  FLD0136A                       PIC S9(05)
                   VALUE -15169.
       77  FLD0136B                       PIC  9(08)V9(19)
                   VALUE  72091249.9695820607747975827.

       77  FLD0137A                       PIC S9(08)V9(02)
                   VALUE -27190319.39.
       77  FLD0137B                       PIC  9(03)V9(32)
                   VALUE  921.23024961283406231160597599227912.

       77  FLD0138A                       PIC S9(10)V9(08)
                   VALUE -4824223828.94490853.
       77  FLD0138B                       PIC  9(04)V9(30)
                   VALUE  8976.142294415691003095503219810780.

       77  FLD0139A                       PIC  9(09)V9(03)
                   VALUE  319644653.394.
       77  FLD0139B                       PIC  9(06)V9(25)
                   VALUE  818318.3537620841718762676464393.

       77  FLD0140A                       PIC S9(01)
                   VALUE +0.
       77  FLD0140B                       PIC  9(03)V9(31)
                   VALUE  913.4502802484925076953459210926666.

       77  FLD0141A                       PIC  9(09)V9(14)
                   VALUE  612266512.11346116987499.
       77  FLD0141B                       PIC  9(06)V9(01)
                   VALUE  198046.5.

       77  FLD0142A                       PIC  9(09)V9(04)
                   VALUE  356201246.7531.
       77  FLD0142B                       PIC S9(04)
                   VALUE +1134.

       77  FLD0143A                       PIC S9(07)V9(02)
                   VALUE -2608987.15.
       77  FLD0143B                       PIC  9(06)V9(01)
                   VALUE  205887.8.

       77  FLD0144A                       PIC  9(10)V9(11)
                   VALUE  5664625691.64754570216.
       77  FLD0144B                       PIC  9(07)V9(01)
                   VALUE  2170292.3.

       77  FLD0145A                       PIC  9(09)V9(13)
                   VALUE  592809780.4295365813587.
       77  FLD0145B                       PIC  9(09)V9(06)
                   VALUE  416669902.306984.

       77  FLD0146A                       PIC S9(03)
                   VALUE -091.
       77  FLD0146B                       PIC  9(09)V9(13)
                   VALUE  592675280.7490164309811.

       77  FLD0147A                       PIC  9(03)
                   VALUE  085.
       77  FLD0147B                       PIC  9(10)V9(05)
                   VALUE  3974420340.21838.

       77  FLD0148A                       PIC  9(04)
                   VALUE  1189.
       77  FLD0148B                       PIC  9(08)V9(04)
                   VALUE  33583306.9980.

       77  FLD0149A                       PIC  9(05)V9(27)
                   VALUE  86469.811002464236349140946913394.
       77  FLD0149B                       PIC S9(02)
                   VALUE -05.

       77  FLD0150A                       PIC S9(02)
                   VALUE -06.
       77  FLD0150B                       PIC  9(01)V9(36)
                   VALUE  9.779789481524289174174668914929497987.

       77  FLD0151A                       PIC  9(09)V9(13)
                   VALUE  602633749.4884196344102.
       77  FLD0151B                       PIC  9(07)V9(22)
                   VALUE  7715228.5011189425389943608024.

       77  FLD0152A                       PIC S9(08)V9(02)
                   VALUE -28005400.65.
       77  FLD0152B                       PIC  9(02)V9(34)
                   VALUE  96.9689035330467796747200281970435753.

       77  FLD0153A                       PIC  9(08)V9(18)
                   VALUE  69246387.672994647033419823.
       77  FLD0153B                       PIC  9(07)V9(22)
                   VALUE  7700147.9845998110906890588012.

       77  FLD0154A                       PIC  9(09)V9(14)
                   VALUE  618531644.61004783714059.
       77  FLD0154B                       PIC  9(10)V9(07)
                   VALUE  4667533939.9326892.

       77  FLD0155A                       PIC  9(10)V9(12)
                   VALUE  5816028861.286740569980.
       77  FLD0155B                       PIC  9(03)V9(31)
                   VALUE  920.9824083062539967770021576143335.

       77  FLD0156A                       PIC  9(02)V9(34)
                   VALUE  95.3830714078202746009083057288080453.
       77  FLD0156B                       PIC  9(04)V9(30)
                   VALUE  9080.971133779824899789900882751680.

       77  FLD0157A                       PIC  9(09)V9(16)
                   VALUE  659745695.0483697735165833.
       77  FLD0157B                       PIC  9(10)V9(06)
                   VALUE  4359875032.276696.

       77  FLD0158A                       PIC S9(09)V9(06)
                   VALUE +412656981.234114.
       77  FLD0158B                       PIC  9(09)V9(14)
                   VALUE  611832243.66474420197192.

       77  FLD0159A                       PIC  9(01)
                   VALUE  0.
       77  FLD0159B                       PIC  9(09)V9(15)
                   VALUE  643529357.674236912600918.

       77  FLD0160A                       PIC  9(08)V9(20)
                   VALUE  74656107.83998073429756914265.
       77  FLD0160B                       PIC  9(06)V9(01)
                   VALUE  207077.8.

       77  FLD0161A                       PIC  9(07)V9(22)
                   VALUE  7887170.9741627593626134284932.
       77  FLD0161B                       PIC  9(08)V9(19)
                   VALUE  71702582.3615881408024108623.

       77  FLD0162A                       PIC S9(02)
                   VALUE -07.
       77  FLD0162B                       PIC  9(10)V9(11)
                   VALUE  5668143857.58160899086.

       77  FLD0163A                       PIC  9(09)V9(14)
                   VALUE  618392824.19829444403802.
       77  FLD0163B                       PIC  9(09)V9(15)
                   VALUE  650815786.826470232817598.

       77  FLD0164A                       PIC S9(06)V9(01)
                   VALUE +204076.7.
       77  FLD0164B                       PIC  9(04)
                   VALUE  1076.

       77  FLD0165A                       PIC  9(09)V9(14)
                   VALUE  610409164.63927785695631.
       77  FLD0165B                       PIC  9(04)
                   VALUE  1267.

       77  FLD0166A                       PIC  9(07)V9(02)
                   VALUE  2460589.98.
       77  FLD0166B                       PIC  9(05)V9(01)
                   VALUE  17630.0.

       77  FLD0167A                       PIC S9(09)V9(03)
                   VALUE +323253458.962.
       77  FLD0167B                       PIC  9(06)V9(25)
                   VALUE  838285.1322478405142746282763255.

       77  FLD0168A                       PIC S9(04)
                   VALUE +1200.
       77  FLD0168B                       PIC S9(10)V9(06)
                   VALUE +4326937205.661665.

       77  FLD0169A                       PIC  9(06)V9(25)
                   VALUE  834885.7368063762329768451309064.
       77  FLD0169B                       PIC  9(08)V9(18)
                   VALUE  70699865.109667991980302304.

       77  FLD0170A                       PIC  9(08)V9(19)
                   VALUE  72325482.4666709539293663056.
       77  FLD0170B                       PIC  9(01)V9(36)
                   VALUE  9.863493423765207213094186045054811984.

       77  FLD0171A                       PIC  9(09)V9(16)
                   VALUE  675345293.4675296948086042.
       77  FLD0171B                       PIC  9(10)V9(06)
                   VALUE  4258478422.558273.

       77  FLD0172A                       PIC  9(02)V9(34)
                   VALUE  96.0216523360032936373897882731398567.
       77  FLD0172B                       PIC  9(04)V9(30)
                   VALUE  8999.798406174591702821885519369971.

       77  FLD0173A                       PIC S9(09)V9(06)
                   VALUE +412472914.336663.
       77  FLD0173B                       PIC  9(10)V9(08)
                   VALUE  4786981213.45750904.

       77  FLD0174A                       PIC S9(04)
                   VALUE +1244.
       77  FLD0174B                       PIC  9(10)V9(09)
                   VALUE  5152586737.087611057.

       77  FLD0175A                       PIC S9(05)
                   VALUE +13456.
       77  FLD0175B                       PIC S9(02)
                   VALUE -05.

       77  FLD0176A                       PIC  9(07)V9(23)
                   VALUE  7902178.74582138546379894705751.
       77  FLD0176B                       PIC  9(08)V9(03)
                   VALUE  29797398.003.

       77  FLD0177A                       PIC  9(07)V9(21)
                   VALUE  7618839.577049143496623173632.
       77  FLD0177B                       PIC  9(07)V9(02)
                   VALUE  2373414.07.

       77  FLD0178A                       PIC  9(09)V9(04)
                   VALUE  355502105.3348.
       77  FLD0178B                       PIC S9(08)V9(03)
                   VALUE +31397739.222.

       77  FLD0179A                       PIC  9(09)V9(05)
                   VALUE  388560564.63472.
       77  FLD0179B                       PIC  9(03)
                   VALUE  099.

       77  FLD0180A                       PIC  9(05)V9(27)
                   VALUE  85946.157652659294079455776227405.
       77  FLD0180B                       PIC  9(10)V9(10)
                   VALUE  5435189439.3573940700.

       77  FLD0181A                       PIC  9(06)V9(01)
                   VALUE  188908.8.
       77  FLD0181B                       PIC S9(10)V9(08)
                   VALUE -4740924741.33910868.

       77  FLD0182A                       PIC  9(10)V9(13)
                   VALUE  6061401860.3468300394609.
       77  FLD0182B                       PIC  9(09)V9(15)
                   VALUE  643493508.008180281620980.

       77  FLD0183A                       PIC  9(07)V9(23)
                   VALUE  7910108.10526126539876656806882.
       77  FLD0183B                       PIC S9(02)
                   VALUE -05.

       77  FLD0184A                       PIC  9(09)V9(15)
                   VALUE  635945742.812533687526865.
       77  FLD0184B                       PIC S9(07)V9(01)
                   VALUE +2343773.6.

       77  FLD0185A                       PIC  9(05)
                   VALUE  15666.
       77  FLD0185B                       PIC  9(08)V9(20)
                   VALUE  73935660.38753716096465495866.

       77  FLD0186A                       PIC  9(02)
                   VALUE  07.
       77  FLD0186B                       PIC  9(05)V9(26)
                   VALUE  84084.08947119312415452441200613.

       77  FLD0187A                       PIC  9(09)V9(13)
                   VALUE  604672028.7423602568921.
       77  FLD0187B                       PIC  9(10)V9(12)
                   VALUE  5893278013.192120301511.

       77  FLD0188A                       PIC  9(08)V9(17)
                   VALUE  68008236.87569536035724127.
       77  FLD0188B                       PIC  9(07)V9(21)
                   VALUE  7537078.198448752264226868646.

       77  FLD0189A                       PIC  9(10)V9(09)
                   VALUE  5115071016.238050827.
       77  FLD0189B                       PIC  9(10)V9(11)
                   VALUE  5668524677.20726727051.

       77  FLD0190A                       PIC  9(07)V9(02)
                   VALUE  2382137.54.
       77  FLD0190B                       PIC  9(09)V9(14)
                   VALUE  627148648.94273569806415.

       77  FLD0191A                       PIC  9(05)
                   VALUE  13720.
       77  FLD0191B                       PIC  9(06)V9(24)
                   VALUE  803717.168989411478996487403492.

       77  FLD0192A                       PIC  9(01)V9(36)
                   VALUE  9.894259454195439840162862310535274446.
       77  FLD0192B                       PIC  9(09)V9(04)
                   VALUE  358034239.3955.

       77  FLD0193A                       PIC  9(10)V9(06)
                   VALUE  4252943677.090519.
       77  FLD0193B                       PIC  9(09)V9(14)
                   VALUE  612048644.17243076690766.

       77  FLD0194A                       PIC  9(09)V9(06)
                   VALUE  417168379.939779.
       77  FLD0194B                       PIC  9(09)V9(15)
                   VALUE  634454032.998696626499679.

       77  FLD0195A                       PIC  9(08)V9(02)
                   VALUE  26645846.45.
       77  FLD0195B                       PIC  9(05)
                   VALUE  14921.

       77  FLD0196A                       PIC  9(01)
                   VALUE  0.
       77  FLD0196B                       PIC S9(05)V9(01)
                   VALUE -18000.7.

       77  FLD0197A                       PIC  9(01)V9(36)
                   VALUE  9.847788375924405590566834689525421708.
       77  FLD0197B                       PIC  9(02)
                   VALUE  05.

       77  FLD0198A                       PIC  9(09)V9(13)
                   VALUE  593293108.5591157671643.
       77  FLD0198B                       PIC S9(05)
                   VALUE +14072.

       77  FLD0199A                       PIC  9(07)V9(02)
                   VALUE  2483287.24.
       77  FLD0199B                       PIC  9(07)V9(23)
                   VALUE  7969040.17410605347571106449322.

       77  FLD0200A                       PIC S9(10)V9(08)
                   VALUE -4935972790.60619176.
       77  FLD0200B                       PIC  9(10)V9(07)
                   VALUE  4582475224.7206340.

       77  FLD0201A                       PIC  9(04)
                   VALUE  1282.
       77  FLD0201B                       PIC  9(07)V9(23)
                   VALUE  7926313.90444417882612526682351.

       77  FLD0202A                       PIC S9(09)V9(04)
                   VALUE -360603443.7503.
       77  FLD0202B                       PIC  9(03)V9(32)
                   VALUE  935.68197555010013122256395945441909.

       77  FLD0203A                       PIC  9(09)V9(14)
                   VALUE  628607663.38264040253847.
       77  FLD0203B                       PIC  9(03)V9(31)
                   VALUE  920.1886012491730104656539879215415.

       77  FLD0204A                       PIC  9(01)V9(35)
                   VALUE  9.73054030732718233664968465745914727.
       77  FLD0204B                       PIC  9(07)V9(01)
                   VALUE  2363275.3.

       77  FLD0205A                       PIC  9(09)V9(15)
                   VALUE  648926914.508991536933990.
       77  FLD0205B                       PIC  9(09)V9(15)
                   VALUE  639814213.238647178094709.

       77  FLD0206A                       PIC  9(06)V9(01)
                   VALUE  186967.7.
       77  FLD0206B                       PIC  9(08)V9(18)
                   VALUE  70826356.466434425840361654.

       77  FLD0207A                       PIC  9(05)V9(26)
                   VALUE  83944.39242287422553445708217623.
       77  FLD0207B                       PIC  9(07)V9(21)
                   VALUE  7607846.993308088334728722657.

       77  FLD0208A                       PIC  9(02)V9(34)
                   VALUE  96.7940040016311842308027735271025449.
       77  FLD0208B                       PIC  9(07)V9(01)
                   VALUE  2151595.4.

       77  FLD0209A                       PIC  9(03)V9(32)
                   VALUE  926.61149050802726900855077474261634.
       77  FLD0209B                       PIC  9(07)V9(23)
                   VALUE  7951784.48263920700789242346218.

       77  FLD0210A                       PIC  9(08)V9(19)
                   VALUE  72323528.1456575562764044207.
       77  FLD0210B                       PIC  9(01)
                   VALUE  0.

       77  FLD0211A                       PIC  9(01)
                   VALUE  0.
       77  FLD0211B                       PIC S9(09)V9(07)
                   VALUE +442113770.7554604.

       77  FLD0212A                       PIC  9(10)V9(08)
                   VALUE  4892032792.55731038.
       77  FLD0212B                       PIC S9(09)V9(05)
                   VALUE -372935567.70682.

       77  FLD0213A                       PIC S9(03)
                   VALUE -082.
       77  FLD0213B                       PIC  9(07)V9(21)
                   VALUE  7525721.770631302875997903356.

       77  FLD0214A                       PIC  9(01)
                   VALUE  0.
       77  FLD0214B                       PIC  9(09)V9(16)
                   VALUE  666893270.4655321508369070.

       77  FLD0215A                       PIC  9(03)V9(32)
                   VALUE  926.34033699271633999217101518297567.
       77  FLD0215B                       PIC S9(05)V9(01)
                   VALUE -18226.5.

       77  FLD0216A                       PIC S9(08)V9(02)
                   VALUE -28095374.87.
       77  FLD0216B                       PIC  9(08)V9(02)
                   VALUE  28541793.87.

       77  FLD0217A                       PIC  9(08)V9(20)
                   VALUE  74562962.48658396130792880285.
       77  FLD0217B                       PIC S9(09)V9(07)
                   VALUE +444563659.0422049.

       77  FLD0218A                       PIC S9(05)V9(01)
                   VALUE -18094.6.
       77  FLD0218B                       PIC  9(01)V9(36)
                   VALUE  9.867255193327033602201936446363106369.

       77  FLD0219A                       PIC  9(09)V9(12)
                   VALUE  578788992.127507229135.
       77  FLD0219B                       PIC  9(10)V9(10)
                   VALUE  5297903516.0907261836.

       77  FLD0220A                       PIC  9(09)V9(12)
                   VALUE  573343525.907533679841.
       77  FLD0220B                       PIC S9(05)
                   VALUE +14161.

       77  FLD0221A                       PIC  9(01)
                   VALUE  0.
       77  FLD0221B                       PIC  9(04)V9(29)
                   VALUE  8789.10367794605407176788958167890.

       77  FLD0222A                       PIC  9(09)V9(14)
                   VALUE  628182805.25174396977661.
       77  FLD0222B                       PIC S9(05)
                   VALUE -15228.

       77  FLD0223A                       PIC  9(01)
                   VALUE  0.
       77  FLD0223B                       PIC  9(08)V9(18)
                   VALUE  69950927.082806102497158917.

       77  FLD0224A                       PIC  9(06)V9(25)
                   VALUE  838187.2267509891116787912324070.
       77  FLD0224B                       PIC S9(09)V9(05)
                   VALUE -382169497.04991.

       77  FLD0225A                       PIC  9(05)
                   VALUE  13797.
       77  FLD0225B                       PIC  9(09)V9(12)
                   VALUE  572598612.808938978169.

       77  FLD0226A                       PIC  9(05)
                   VALUE  14900.
       77  FLD0226B                       PIC S9(07)V9(01)
                   VALUE +2129995.4.

       77  FLD0227A                       PIC  9(09)V9(14)
                   VALUE  629583055.15940859997670.
       77  FLD0227B                       PIC  9(04)V9(30)
                   VALUE  8983.577034983017961522477889957372.

       77  FLD0228A                       PIC S9(07)V9(01)
                   VALUE +2225916.3.
       77  FLD0228B                       PIC  9(01)V9(36)
                   VALUE  9.739690596877397243957830141880549490.

       77  FLD0229A                       PIC  9(01)V9(36)
                   VALUE  9.870473603260505601753038718015886843.
       77  FLD0229B                       PIC  9(08)V9(20)
                   VALUE  73838029.76208535540081356884.

       77  FLD0230A                       PIC S9(06)V9(01)
                   VALUE +201492.2.
       77  FLD0230B                       PIC S9(02)
                   VALUE -06.

       77  FLD0231A                       PIC  9(05)V9(28)
                   VALUE  87781.6812716511907233041256404248.
       77  FLD0231B                       PIC S9(08)V9(02)
                   VALUE -27182116.43.

       77  FLD0232A                       PIC  9(09)V9(04)
                   VALUE  356308264.5328.
       77  FLD0232B                       PIC  9(06)V9(25)
                   VALUE  833280.3014261945806495646138500.

       77  FLD0233A                       PIC  9(07)V9(21)
                   VALUE  7552156.809035388551620826547.
       77  FLD0233B                       PIC  9(08)V9(04)
                   VALUE  33739768.3403.

       77  FLD0234A                       PIC  9(08)V9(04)
                   VALUE  33831052.6754.
       77  FLD0234B                       PIC  9(09)V9(13)
                   VALUE  593899144.9424572133253.

       77  FLD0235A                       PIC S9(05)
                   VALUE +14123.
       77  FLD0235B                       PIC S9(10)V9(08)
                   VALUE -4808329310.19295639.

       77  FLD0236A                       PIC  9(04)V9(29)
                   VALUE  8818.23528289915170574886360554955.
       77  FLD0236B                       PIC  9(08)V9(18)
                   VALUE  70480160.116860446350983693.

       77  FLD0237A                       PIC  9(08)V9(02)
                   VALUE  28742037.59.
       77  FLD0237B                       PIC  9(04)V9(29)
                   VALUE  8850.90488581330880890618573175743.

       77  FLD0238A                       PIC  9(09)V9(15)
                   VALUE  634521096.430120334908053.
       77  FLD0238B                       PIC  9(06)V9(01)
                   VALUE  198396.3.

       77  FLD0239A                       PIC  9(09)V9(16)
                   VALUE  678585779.2924817610824561.
       77  FLD0239B                       PIC  9(09)V9(14)
                   VALUE  614739880.97122655993587.

       77  FLD0240A                       PIC  9(10)V9(06)
                   VALUE  4289853576.446766.
       77  FLD0240B                       PIC  9(06)V9(25)
                   VALUE  833165.4817075836438888813972880.

       77  FLD0241A                       PIC S9(05)
                   VALUE +14407.
       77  FLD0241B                       PIC  9(09)V9(14)
                   VALUE  608742950.23205993171444.

       77  FLD0242A                       PIC  9(10)V9(12)
                   VALUE  5860383854.989427154791.
       77  FLD0242B                       PIC S9(06)V9(01)
                   VALUE +201770.8.

       77  FLD0243A                       PIC  9(02)V9(34)
                   VALUE  97.0409660969254295181940506154205650.
       77  FLD0243B                       PIC  9(05)V9(28)
                   VALUE  86928.4847432245544318618613033322.

       77  FLD0244A                       PIC S9(01)
                   VALUE +0.
       77  FLD0244B                       PIC  9(09)V9(13)
                   VALUE  596454149.7067354924865.

       77  FLD0245A                       PIC S9(09)V9(05)
                   VALUE -371716886.14542.
       77  FLD0245B                       PIC  9(09)V9(15)
                   VALUE  636050719.355519267317333.

       77  FLD0246A                       PIC  9(05)V9(28)
                   VALUE  87216.9313623637143528810611314838.
       77  FLD0246B                       PIC  9(06)V9(01)
                   VALUE  208199.5.

       77  FLD0247A                       PIC  9(06)V9(25)
                   VALUE  834494.8214770686600871840710169.
       77  FLD0247B                       PIC  9(08)V9(19)
                   VALUE  73372232.8570783122181353519.

       77  FLD0248A                       PIC  9(04)V9(29)
                   VALUE  8885.56418584546814365410227765096.
       77  FLD0248B                       PIC  9(10)V9(11)
                   VALUE  5683594830.11341870550.

       77  FLD0249A                       PIC  9(09)V9(16)
                   VALUE  678470839.5950102000071524.
       77  FLD0249B                       PIC  9(09)V9(16)
                   VALUE  673175418.3146980707874718.

       77  FLD0250A                       PIC  9(09)V9(15)
                   VALUE  643468324.926731005675151.
       77  FLD0250B                       PIC  9(04)V9(30)
                   VALUE  9057.675398841628089385835664870683.

       77  FLD0251A                       PIC S9(09)V9(06)
                   VALUE +402548910.007195.
       77  FLD0251B                       PIC  9(06)V9(25)
                   VALUE  830149.1080513825338016431487631.

       77  FLD0252A                       PIC S9(05)V9(01)
                   VALUE -18339.3.
       77  FLD0252B                       PIC S9(07)V9(01)
                   VALUE +2343087.3.

       77  FLD0253A                       PIC  9(06)V9(25)
                   VALUE  822593.8518184680026124055984837.
       77  FLD0253B                       PIC  9(07)V9(01)
                   VALUE  2159897.7.

       77  FLD0254A                       PIC  9(10)V9(10)
                   VALUE  5401895692.3872574193.
       77  FLD0254B                       PIC S9(07)V9(02)
                   VALUE +2405256.16.

       77  FLD0255A                       PIC  9(02)V9(34)
                   VALUE  94.8299297085154591080424779647728428.
       77  FLD0255B                       PIC  9(10)V9(10)
                   VALUE  5408143412.7739858030.

       77  FLD0256A                       PIC S9(09)V9(08)
                   VALUE -473179644.06591722.
       77  FLD0256B                       PIC  9(04)V9(30)
                   VALUE  9107.434804383051085707734273455571.

       77  FLD0257A                       PIC  9(09)V9(12)
                   VALUE  577029491.737192756772.
       77  FLD0257B                       PIC S9(03)
                   VALUE -084.

       77  FLD0258A                       PIC  9(10)V9(12)
                   VALUE  5908893351.960881057394.
       77  FLD0258B                       PIC  9(05)V9(27)
                   VALUE  84978.202175808337237583600654033.

       77  FLD0259A                       PIC  9(03)V9(32)
                   VALUE  937.55337057593879368511124994256533.
       77  FLD0259B                       PIC S9(09)V9(05)
                   VALUE -374669242.27931.

       77  FLD0260A                       PIC  9(05)V9(27)
                   VALUE  86648.984966754782899300835197209.
       77  FLD0260B                       PIC  9(09)V9(13)
                   VALUE  601823310.0433563187436.

       77  FLD0261A                       PIC S9(09)V9(05)
                   VALUE -374213925.47904.
       77  FLD0261B                       PIC  9(09)V9(05)
                   VALUE  379885544.06227.

       77  FLD0262A                       PIC S9(05)V9(01)
                   VALUE -17015.9.
       77  FLD0262B                       PIC  9(09)V9(17)
                   VALUE  687559565.36759821329241049.

       77  FLD0263A                       PIC  9(05)V9(26)
                   VALUE  84046.29767805690265802809335582.
       77  FLD0263B                       PIC S9(02)
                   VALUE -06.

       77  FLD0264A                       PIC  9(03)V9(32)
                   VALUE  935.78568596491340514376133796758949.
       77  FLD0264B                       PIC  9(05)V9(01)
                   VALUE  17620.4.

       77  FLD0265A                       PIC S9(09)V9(05)
                   VALUE -380334582.15301.
       77  FLD0265B                       PIC  9(01)V9(36)
                   VALUE  9.854231270822284560750858872779645025.

       77  FLD0266A                       PIC  9(05)V9(27)
                   VALUE  84707.693570856212872399737534578.
       77  FLD0266B                       PIC  9(02)V9(34)
                   VALUE  96.1883348354436562566149859776487573.

       77  FLD0267A                       PIC  9(03)
                   VALUE  087.
       77  FLD0267B                       PIC S9(07)V9(01)
                   VALUE +2348814.4.

       77  FLD0268A                       PIC S9(01)
                   VALUE -0.
       77  FLD0268B                       PIC  9(06)V9(25)
                   VALUE  821150.0957830146774085733341053.

       77  FLD0269A                       PIC  9(08)V9(18)
                   VALUE  69955495.182247551255727557.
       77  FLD0269B                       PIC  9(01)
                   VALUE  0.

       77  FLD0270A                       PIC  9(08)V9(18)
                   VALUE  69584936.933990082508216801.
       77  FLD0270B                       PIC S9(04)
                   VALUE +1200.

       77  FLD0271A                       PIC  9(10)V9(07)
                   VALUE  4478155927.4435323.
       77  FLD0271B                       PIC  9(07)V9(02)
                   VALUE  2371664.59.

       77  FLD0272A                       PIC S9(09)V9(06)
                   VALUE +411514667.070764.
       77  FLD0272B                       PIC S9(10)V9(08)
                   VALUE -4748492295.95657285.

       77  FLD0273A                       PIC  9(10)V9(07)
                   VALUE  4698099460.5024867.
       77  FLD0273B                       PIC S9(10)V9(06)
                   VALUE +4338009792.593093.

       77  FLD0274A                       PIC  9(07)V9(01)
                   VALUE  2190249.4.
       77  FLD0274B                       PIC  9(10)V9(10)
                   VALUE  5271665070.2586675958.

       77  FLD0275A                       PIC  9(04)
                   VALUE  1157.
       77  FLD0275B                       PIC S9(07)V9(02)
                   VALUE +2422980.94.

       77  FLD0276A                       PIC  9(04)V9(30)
                   VALUE  9021.044697283423507983002309629227.
       77  FLD0276B                       PIC  9(02)V9(33)
                   VALUE  94.591784695476577304873444518307223.

       77  FLD0277A                       PIC  9(01)V9(36)
                   VALUE  9.749582162084949876756923003995325416.
       77  FLD0277B                       PIC  9(10)V9(08)
                   VALUE  4992154586.01645512.

       77  FLD0278A                       PIC  9(10)V9(06)
                   VALUE  4251062706.993476.
       77  FLD0278B                       PIC  9(03)V9(31)
                   VALUE  914.7657257947739983805490737722720.

       77  FLD0279A                       PIC S9(08)V9(02)
                   VALUE -27159201.10.
       77  FLD0279B                       PIC  9(03)V9(32)
                   VALUE  921.08160397424898579998853165307082.

       77  FLD0280A                       PIC  9(07)V9(02)
                   VALUE  2571968.92.
       77  FLD0280B                       PIC  9(08)V9(19)
                   VALUE  71229222.1254675839148262639.

       77  FLD0281A                       PIC S9(09)V9(04)
                   VALUE +342861689.3811.
       77  FLD0281B                       PIC  9(10)V9(07)
                   VALUE  4662459797.7205073.

       77  FLD0282A                       PIC S9(10)V9(07)
                   VALUE -4600147325.4430291.
       77  FLD0282B                       PIC  9(07)V9(22)
                   VALUE  7889304.3658446049271049105300.

       77  FLD0283A                       PIC  9(01)
                   VALUE  0.
       77  FLD0283B                       PIC S9(05)V9(01)
                   VALUE -18273.9.

       77  FLD0284A                       PIC  9(09)V9(17)
                   VALUE  689733171.20512533939802324.
       77  FLD0284B                       PIC  9(01)
                   VALUE  0.

       77  FLD0285A                       PIC  9(03)V9(32)
                   VALUE  928.78828230193799520009179104818031.
       77  FLD0285B                       PIC  9(08)V9(20)
                   VALUE  73692142.62351649891158444916.

       77  FLD0286A                       PIC  9(08)V9(18)
                   VALUE  70426964.322731444578806758.
       77  FLD0286B                       PIC  9(07)V9(01)
                   VALUE  2181620.7.

       77  FLD0287A                       PIC S9(07)V9(02)
                   VALUE -2521413.84.
       77  FLD0287B                       PIC  9(06)
                   VALUE  158585.

       77  FLD0288A                       PIC  9(09)V9(17)
                   VALUE  688074525.02240640246355951.
       77  FLD0288B                       PIC  9(04)V9(29)
                   VALUE  8936.92752615119712089608583482913.

       77  FLD0289A                       PIC S9(03)
                   VALUE -092.
       77  FLD0289B                       PIC  9(10)V9(11)
                   VALUE  5676330984.14293657540.

       77  FLD0290A                       PIC S9(09)V9(05)
                   VALUE -382951207.35442.
       77  FLD0290B                       PIC S9(03)
                   VALUE -094.

       77  FLD0291A                       PIC  9(01)V9(36)
                   VALUE  9.859384124391753490002088256005663424.
       77  FLD0291B                       PIC  9(06)V9(25)
                   VALUE  830008.1335268413296191170047677.

       77  FLD0292A                       PIC S9(08)V9(03)
                   VALUE +31020519.916.
       77  FLD0292B                       PIC  9(01)
                   VALUE  0.

       77  FLD0293A                       PIC S9(03)
                   VALUE -093.
       77  FLD0293B                       PIC  9(08)V9(03)
                   VALUE  30744484.924.

       77  FLD0294A                       PIC S9(09)V9(06)
                   VALUE +412445339.504106.
       77  FLD0294B                       PIC  9(01)
                   VALUE  0.

       77  FLD0295A                       PIC S9(07)V9(02)
                   VALUE -2502548.06.
       77  FLD0295B                       PIC S9(07)V9(01)
                   VALUE +2138373.7.

       77  FLD0296A                       PIC S9(06)
                   VALUE -160918.
       77  FLD0296B                       PIC  9(09)V9(12)
                   VALUE  574303107.736577889141.

       77  FLD0297A                       PIC  9(08)V9(03)
                   VALUE  30843552.269.
       77  FLD0297B                       PIC  9(10)V9(09)
                   VALUE  5180156945.333709295.

       77  FLD0298A                       PIC S9(10)V9(08)
                   VALUE -4831587379.88150510.
       77  FLD0298B                       PIC  9(01)V9(36)
                   VALUE  9.983859909908295859892746193509083241.

       77  FLD0299A                       PIC  9(10)V9(13)
                   VALUE  6064872573.5835784522720.
       77  FLD0299B                       PIC  9(09)V9(16)
                   VALUE  669818284.8844781434038964.

       77  FLD0300A                       PIC  9(08)V9(20)
                   VALUE  73956142.30661028409841151187.
       77  FLD0300B                       PIC  9(09)V9(14)
                   VALUE  624082886.12038953502292.

       77  FLD0301A                       PIC S9(10)V9(07)
                   VALUE -4524568495.0704084.
       77  FLD0301B                       PIC S9(01)
                   VALUE +0.

       77  FLD0302A                       PIC  9(02)V9(34)
                   VALUE  94.9764690231816866017311440373305231.
       77  FLD0302B                       PIC  9(10)V9(06)
                   VALUE  4291773437.216153.

       77  FLD0303A                       PIC  9(01)V9(36)
                   VALUE  9.998247249142951931233369577967096120.
       77  FLD0303B                       PIC  9(01)
                   VALUE  0.

       77  FLD0304A                       PIC S9(03)
                   VALUE -083.
       77  FLD0304B                       PIC  9(10)V9(11)
                   VALUE  5565734306.84127234968.

       77  FLD0305A                       PIC  9(09)V9(03)
                   VALUE  328435884.788.
       77  FLD0305B                       PIC S9(01)
                   VALUE +0.

       77  FLD0306A                       PIC S9(03)
                   VALUE -083.
       77  FLD0306B                       PIC S9(10)V9(08)
                   VALUE -4936418970.17687181.

       77  FLD0307A                       PIC  9(10)V9(10)
                   VALUE  5430567751.9659767416.
       77  FLD0307B                       PIC  9(03)V9(32)
                   VALUE  928.08547489686554765597747973515652.

       77  FLD0308A                       PIC  9(09)V9(05)
                   VALUE  377189267.62120.
       77  FLD0308B                       PIC  9(02)V9(34)
                   VALUE  96.4274365663057242414879510761238634.

       77  FLD0309A                       PIC  9(09)V9(03)
                   VALUE  325461096.612.
       77  FLD0309B                       PIC S9(03)
                   VALUE -093.

       77  FLD0310A                       PIC  9(09)V9(05)
                   VALUE  377541451.37210.
       77  FLD0310B                       PIC  9(09)V9(06)
                   VALUE  416709099.760976.

       77  FLD0311A                       PIC S9(02)
                   VALUE -06.
       77  FLD0311B                       PIC  9(01)V9(36)
                   VALUE  9.931117203050255914931199185957666486.

       77  FLD0312A                       PIC S9(10)V9(07)
                   VALUE -4631183834.9707568.
       77  FLD0312B                       PIC  9(01)
                   VALUE  0.

       77  FLD0313A                       PIC  9(05)V9(27)
                   VALUE  86493.365621715367907995641871821.
       77  FLD0313B                       PIC  9(09)V9(05)
                   VALUE  375066571.23058.

       77  FLD0314A                       PIC  9(03)
                   VALUE  088.
       77  FLD0314B                       PIC  9(08)V9(18)
                   VALUE  69720866.107690404600560896.

       77  FLD0315A                       PIC  9(07)V9(23)
                   VALUE  7933336.74589681625555215305212.
       77  FLD0315B                       PIC  9(09)V9(17)
                   VALUE  688307785.43204196306959374.

       77  FLD0316A                       PIC  9(06)V9(01)
                   VALUE  195827.4.
       77  FLD0316B                       PIC  9(10)V9(11)
                   VALUE  5611864585.06384822086.

       77  FLD0317A                       PIC  9(10)V9(08)
                   VALUE  4983225307.65216153.
       77  FLD0317B                       PIC S9(09)V9(03)
                   VALUE +331361572.492.

       77  FLD0318A                       PIC  9(08)V9(02)
                   VALUE  26926374.69.
       77  FLD0318B                       PIC  9(04)V9(29)
                   VALUE  8825.34717446214034275442372745601.

       77  FLD0319A                       PIC  9(08)V9(18)
                   VALUE  69931441.978879860243978328.
       77  FLD0319B                       PIC  9(09)V9(15)
                   VALUE  650439668.121860714578019.

       77  FLD0320A                       PIC  9(08)V9(19)
                   VALUE  71973495.8824565840274090078.
       77  FLD0320B                       PIC  9(10)V9(11)
                   VALUE  5542215777.53993832615.

       77  FLD0321A                       PIC  9(10)V9(09)
                   VALUE  5005504874.853489161.
       77  FLD0321B                       PIC  9(09)V9(16)
                   VALUE  660163921.0521921263818967.

       77  FLD0322A                       PIC S9(09)V9(07)
                   VALUE +442005310.2249054.
       77  FLD0322B                       PIC  9(09)V9(14)
                   VALUE  617916374.92097983841432.

       77  FLD0323A                       PIC S9(05)
                   VALUE -15097.
       77  FLD0323B                       PIC  9(01)V9(35)
                   VALUE  9.73366140153258840861383305309573188.

       77  FLD0324A                       PIC  9(10)V9(11)
                   VALUE  5601604504.75820970162.
       77  FLD0324B                       PIC  9(10)V9(10)
                   VALUE  5319146871.9734047443.

       77  FLD0325A                       PIC  9(04)
                   VALUE  1169.
       77  FLD0325B                       PIC  9(08)V9(19)
                   VALUE  72332591.2353324218528882738.

       77  FLD0326A                       PIC S9(08)V9(03)
                   VALUE +31312044.720.
       77  FLD0326B                       PIC S9(02)
                   VALUE -05.

       77  FLD0327A                       PIC S9(03)
                   VALUE -090.
       77  FLD0327B                       PIC S9(07)V9(01)
                   VALUE +2122536.7.

       77  FLD0328A                       PIC  9(08)V9(19)
                   VALUE  71147504.7716873310044150002.
       77  FLD0328B                       PIC S9(09)V9(05)
                   VALUE -393175029.86891.

       77  FLD0329A                       PIC S9(01)
                   VALUE +0.
       77  FLD0329B                       PIC  9(02)V9(34)
                   VALUE  95.2096907591406971249625712516717612.

       77  FLD0330A                       PIC  9(09)V9(07)
                   VALUE  445280746.1581723.
       77  FLD0330B                       PIC  9(07)V9(23)
                   VALUE  7955244.25555017788980194382020.

       77  FLD0331A                       PIC S9(07)V9(01)
                   VALUE +2232816.8.
       77  FLD0331B                       PIC  9(08)V9(02)
                   VALUE  27670053.03.

       77  FLD0332A                       PIC  9(05)V9(27)
                   VALUE  86562.988696340348315771962006692.
       77  FLD0332B                       PIC  9(09)V9(04)
                   VALUE  355930982.9079.

       77  FLD0333A                       PIC  9(02)V9(34)
                   VALUE  95.6494138775326296908474432711955159.
       77  FLD0333B                       PIC S9(07)V9(02)
                   VALUE +2431333.31.

       77  FLD0334A                       PIC  9(08)V9(03)
                   VALUE  28999492.466.
       77  FLD0334B                       PIC  9(09)V9(03)
                   VALUE  326043905.981.

       77  FLD0335A                       PIC S9(08)V9(03)
                   VALUE +30334218.791.
       77  FLD0335B                       PIC  9(10)V9(09)
                   VALUE  5075855226.668805064.

       77  FLD0336A                       PIC  9(05)V9(27)
                   VALUE  85800.255545984371874368434873758.
       77  FLD0336B                       PIC S9(08)V9(03)
                   VALUE -29245898.644.

       77  FLD0337A                       PIC  9(08)V9(19)
                   VALUE  72003996.5448931451597047725.
       77  FLD0337B                       PIC  9(08)V9(19)
                   VALUE  71409231.4076567258318561925.

       77  FLD0338A                       PIC S9(01)
                   VALUE -0.
       77  FLD0338B                       PIC  9(10)V9(10)
                   VALUE  5304768900.0456310637.

       77  FLD0339A                       PIC S9(06)
                   VALUE -160552.
       77  FLD0339B                       PIC  9(09)V9(13)
                   VALUE  594533435.7259434154840.

       77  FLD0340A                       PIC  9(10)V9(09)
                   VALUE  5028381651.473269320.
       77  FLD0340B                       PIC S9(09)V9(04)
                   VALUE -361499697.6055.

       77  FLD0341A                       PIC  9(10)V9(11)
                   VALUE  5676316159.01010966318.
       77  FLD0341B                       PIC  9(09)V9(12)
                   VALUE  572076310.146404809486.

       77  FLD0342A                       PIC S9(07)V9(01)
                   VALUE +2347143.0.
       77  FLD0342B                       PIC S9(10)V9(07)
                   VALUE -4530575977.8135124.

       77  FLD0343A                       PIC  9(08)V9(19)
                   VALUE  72866356.1504289902792663724.
       77  FLD0343B                       PIC  9(06)V9(01)
                   VALUE  195736.6.

       77  FLD0344A                       PIC  9(09)V9(07)
                   VALUE  439744878.9947105.
       77  FLD0344B                       PIC  9(04)V9(29)
                   VALUE  8815.39565612843856179381418769480.

       77  FLD0345A                       PIC  9(01)
                   VALUE  0.
       77  FLD0345B                       PIC  9(09)V9(06)
                   VALUE  405441574.894889.

       77  FLD0346A                       PIC  9(07)V9(22)
                   VALUE  7807860.0333687642187641131386.
       77  FLD0346B                       PIC  9(09)V9(16)
                   VALUE  674345587.8778652490268541.

       77  FLD0347A                       PIC  9(08)V9(18)
                   VALUE  70165985.253748408556617732.
       77  FLD0347B                       PIC  9(06)
                   VALUE  158396.

       77  FLD0348A                       PIC  9(08)V9(04)
                   VALUE  33778742.7133.
       77  FLD0348B                       PIC  9(09)V9(12)
                   VALUE  575387126.330844100863.

       77  FLD0349A                       PIC  9(10)V9(09)
                   VALUE  5122785066.779668161.
       77  FLD0349B                       PIC  9(03)V9(32)
                   VALUE  924.84903066843715535583214659709483.

       77  FLD0350A                       PIC  9(02)
                   VALUE  07.
       77  FLD0350B                       PIC  9(06)V9(25)
                   VALUE  826494.1389960360762501068165875.

       77  FLD0351A                       PIC  9(05)V9(27)
                   VALUE  84942.576912519174303639601930626.
       77  FLD0351B                       PIC  9(10)V9(10)
                   VALUE  5388327188.5283523516.

       77  FLD0352A                       PIC  9(03)V9(32)
                   VALUE  937.88592938035042489985926295048557.
       77  FLD0352B                       PIC  9(06)V9(01)
                   VALUE  195629.8.

       77  FLD0353A                       PIC S9(07)V9(02)
                   VALUE -2544588.73.
       77  FLD0353B                       PIC  9(02)V9(33)
                   VALUE  94.340663054368900652946194895775988.

       77  FLD0354A                       PIC  9(07)V9(01)
                   VALUE  2152460.4.
       77  FLD0354B                       PIC S9(08)V9(03)
                   VALUE -29015200.342.

       77  FLD0355A                       PIC  9(06)V9(01)
                   VALUE  208715.4.
       77  FLD0355B                       PIC S9(05)
                   VALUE -15428.

       77  FLD0356A                       PIC S9(09)V9(05)
                   VALUE -391398983.37050.
       77  FLD0356B                       PIC  9(05)V9(27)
                   VALUE  84690.187478976841628508509529638.

       77  FLD0357A                       PIC  9(10)V9(10)
                   VALUE  5323345989.0667944591.
       77  FLD0357B                       PIC  9(03)
                   VALUE  079.

       77  FLD0358A                       PIC  9(08)V9(03)
                   VALUE  29848403.943.
       77  FLD0358B                       PIC  9(09)V9(17)
                   VALUE  688595894.53938552239264936.

       77  FLD0359A                       PIC  9(07)V9(22)
                   VALUE  7654789.5985185210321333215688.
       77  FLD0359B                       PIC  9(01)V9(36)
                   VALUE  9.927521413787718795873615817981772124.

       77  FLD0360A                       PIC S9(09)V9(06)
                   VALUE +400277612.276280.
       77  FLD0360B                       PIC  9(08)V9(02)
                   VALUE  26666225.04.

       77  FLD0361A                       PIC  9(06)V9(25)
                   VALUE  823089.8044061112361902132761315.
       77  FLD0361B                       PIC  9(05)V9(27)
                   VALUE  84762.044237681810621154454565839.

       77  FLD0362A                       PIC S9(01)
                   VALUE -0.
       77  FLD0362B                       PIC  9(04)V9(30)
                   VALUE  8970.899599407193836242413453874178.

       77  FLD0363A                       PIC  9(09)V9(04)
                   VALUE  358575926.2078.
       77  FLD0363B                       PIC  9(04)V9(30)
                   VALUE  9034.927431796696550847514117776881.

       77  FLD0364A                       PIC S9(04)
                   VALUE +1234.
       77  FLD0364B                       PIC  9(06)V9(25)
                   VALUE  830028.0009277749559970516202156.

       77  FLD0365A                       PIC  9(09)V9(11)
                   VALUE  551967009.62472056151.
       77  FLD0365B                       PIC  9(09)V9(16)
                   VALUE  658782379.9892106313436102.

       77  FLD0366A                       PIC  9(06)V9(25)
                   VALUE  822414.3642778768414913770357088.
       77  FLD0366B                       PIC  9(06)V9(25)
                   VALUE  838180.2974044693099742175945721.

       77  FLD0367A                       PIC  9(09)V9(13)
                   VALUE  595975436.9256639039420.
       77  FLD0367B                       PIC S9(06)V9(01)
                   VALUE -191378.3.

       77  FLD0368A                       PIC  9(05)
                   VALUE  15663.
       77  FLD0368B                       PIC  9(01)
                   VALUE  0.

       77  FLD0369A                       PIC  9(01)
                   VALUE  0.
       77  FLD0369B                       PIC S9(08)V9(03)
                   VALUE +31224128.387.

       77  FLD0370A                       PIC  9(01)
                   VALUE  0.
       77  FLD0370B                       PIC S9(01)
                   VALUE -0.

       77  FLD0371A                       PIC S9(01)
                   VALUE +0.
       77  FLD0371B                       PIC S9(03)
                   VALUE -082.

       77  FLD0372A                       PIC  9(10)V9(09)
                   VALUE  5067586024.551302692.
       77  FLD0372B                       PIC  9(10)V9(09)
                   VALUE  5017586497.117959565.

       77  FLD0373A                       PIC  9(09)V9(16)
                   VALUE  660730415.8912360447786227.
       77  FLD0373B                       PIC S9(09)V9(04)
                   VALUE -352559577.5040.

       77  FLD0374A                       PIC  9(01)
                   VALUE  0.
       77  FLD0374B                       PIC  9(08)V9(19)
                   VALUE  71126449.7973442155753787119.

       77  FLD0375A                       PIC  9(07)V9(22)
                   VALUE  7816763.9605777072819847717255.
       77  FLD0375B                       PIC  9(01)
                   VALUE  0.

       77  FLD0376A                       PIC  9(05)V9(27)
                   VALUE  84980.958923270843996533585595898.
       77  FLD0376B                       PIC  9(10)V9(09)
                   VALUE  5240094598.000759607.

       77  FLD0377A                       PIC  9(02)V9(34)
                   VALUE  96.7759547981370871205797357106348499.
       77  FLD0377B                       PIC  9(07)V9(22)
                   VALUE  7813622.4062247550126159012506.

       77  FLD0378A                       PIC S9(01)
                   VALUE -0.
       77  FLD0378B                       PIC S9(06)
                   VALUE -163135.

       77  FLD0379A                       PIC  9(10)V9(10)
                   VALUE  5351160784.1302399890.
       77  FLD0379B                       PIC  9(01)
                   VALUE  0.

       77  FLD0380A                       PIC  9(09)V9(03)
                   VALUE  318886259.138.
       77  FLD0380B                       PIC S9(01)
                   VALUE +0.

       77  FLD0381A                       PIC  9(10)V9(09)
                   VALUE  5188977124.912377281.
       77  FLD0381B                       PIC  9(03)
                   VALUE  096.

       77  FLD0382A                       PIC  9(10)V9(10)
                   VALUE  5469463185.9002762475.
       77  FLD0382B                       PIC  9(04)
                   VALUE  1276.

       77  FLD0383A                       PIC  9(04)V9(29)
                   VALUE  8846.28028341020278269013488170458.
       77  FLD0383B                       PIC  9(06)V9(24)
                   VALUE  801588.906111812216082057602761.

       77  FLD0384A                       PIC S9(07)V9(02)
                   VALUE +2410021.83.
       77  FLD0384B                       PIC  9(01)
                   VALUE  0.

       77  FLD0385A                       PIC  9(09)V9(14)
                   VALUE  616198826.41569234671408.
       77  FLD0385B                       PIC  9(04)V9(29)
                   VALUE  8914.93363280043138452413131744833.

       77  FLD0386A                       PIC  9(10)V9(11)
                   VALUE  5671006446.22052230126.
       77  FLD0386B                       PIC  9(07)V9(21)
                   VALUE  7538453.430795608589676248811.

       77  FLD0387A                       PIC  9(08)V9(03)
                   VALUE  30516405.931.
       77  FLD0387B                       PIC  9(09)V9(16)
                   VALUE  660134959.6835575095354897.

       77  FLD0388A                       PIC  9(10)V9(11)
                   VALUE  5691303425.20841603359.
       77  FLD0388B                       PIC  9(03)
                   VALUE  099.

       77  FLD0389A                       PIC S9(10)V9(06)
                   VALUE +4300560615.719126.
       77  FLD0389B                       PIC  9(10)V9(12)
                   VALUE  5882065365.633618592156.

       77  FLD0390A                       PIC S9(02)
                   VALUE -07.
       77  FLD0390B                       PIC  9(03)
                   VALUE  095.

       77  FLD0391A                       PIC S9(08)V9(03)
                   VALUE +30066642.536.
       77  FLD0391B                       PIC S9(08)V9(02)
                   VALUE -26329271.26.

       77  FLD0392A                       PIC  9(02)V9(34)
                   VALUE  95.7627258628673261320329856971511617.
       77  FLD0392B                       PIC  9(10)V9(07)
                   VALUE  4682510725.0510572.

       77  FLD0393A                       PIC  9(02)
                   VALUE  05.
       77  FLD0393B                       PIC  9(04)V9(30)
                   VALUE  9067.420163680885991652758093550801.

       77  FLD0394A                       PIC  9(05)V9(01)
                   VALUE  16807.8.
       77  FLD0394B                       PIC S9(10)V9(08)
                   VALUE -4746288002.63585892.

       77  FLD0395A                       PIC  9(10)V9(09)
                   VALUE  5206691882.901124390.
       77  FLD0395B                       PIC S9(01)
                   VALUE +0.

       77  FLD0396A                       PIC  9(09)V9(06)
                   VALUE  419939827.280791.
       77  FLD0396B                       PIC  9(09)V9(07)
                   VALUE  446487444.5871826.

       77  FLD0397A                       PIC  9(05)V9(27)
                   VALUE  85569.982924983467587054519754019.
       77  FLD0397B                       PIC S9(02)
                   VALUE -07.

       77  FLD0398A                       PIC  9(05)V9(26)
                   VALUE  84110.85692078776876456913669244.
       77  FLD0398B                       PIC S9(08)V9(02)
                   VALUE -28358417.67.

       77  FLD0399A                       PIC  9(05)V9(27)
                   VALUE  86215.377080746946614198122915695.
       77  FLD0399B                       PIC  9(07)V9(02)
                   VALUE  2481207.70.

       77  FLD0400A                       PIC  9(10)V9(08)
                   VALUE  4880703034.67910082.
       77  FLD0400B                       PIC  9(06)V9(25)
                   VALUE  835199.6491942943467989834971376.

       77  FLD0401A                       PIC  9(08)V9(03)
                   VALUE  30757829.425.
       77  FLD0401B                       PIC  9(01)
                   VALUE  0.

       77  FLD0402A                       PIC  9(04)V9(29)
                   VALUE  8843.41306989221531686951038864208.
       77  FLD0402B                       PIC  9(08)V9(18)
                   VALUE  69652895.633901057426129455.

       77  FLD0403A                       PIC  9(10)V9(10)
                   VALUE  5351391185.2119278034.
       77  FLD0403B                       PIC  9(03)V9(32)
                   VALUE  939.96913575689089448417234962107613.

       77  FLD0404A                       PIC S9(10)V9(08)
                   VALUE -4810592903.51378177.
       77  FLD0404B                       PIC  9(09)V9(16)
                   VALUE  670850774.7441430080215241.

       77  FLD0405A                       PIC S9(09)V9(04)
                   VALUE -360620744.0007.
       77  FLD0405B                       PIC S9(05)
                   VALUE +14133.

       77  FLD0406A                       PIC S9(07)V9(02)
                   VALUE -2503018.94.
       77  FLD0406B                       PIC  9(07)V9(23)
                   VALUE  7996063.91391730064732712435215.

       77  FLD0407A                       PIC  9(09)V9(13)
                   VALUE  592634898.8738083800598.
       77  FLD0407B                       PIC  9(01)V9(36)
                   VALUE  9.879241102928391082826919955550692975.

       77  FLD0408A                       PIC  9(09)V9(07)
                   VALUE  438100099.1119252.
       77  FLD0408B                       PIC  9(08)V9(02)
                   VALUE  28626783.20.

       77  FLD0409A                       PIC  9(08)V9(02)
                   VALUE  28575188.65.
       77  FLD0409B                       PIC  9(09)V9(12)
                   VALUE  576691261.515216657684.

       77  FLD0410A                       PIC  9(09)V9(14)
                   VALUE  615937928.60877261130525.
       77  FLD0410B                       PIC  9(01)V9(36)
                   VALUE  9.822719722312858170454319406417198479.

       77  FLD0411A                       PIC  9(09)V9(17)
                   VALUE  688573322.26995748847286904.
       77  FLD0411B                       PIC  9(07)V9(22)
                   VALUE  7775778.4281136710369253250973.

       77  FLD0412A                       PIC  9(09)V9(12)
                   VALUE  572677017.522024045526.
       77  FLD0412B                       PIC S9(01)
                   VALUE +0.

       77  FLD0413A                       PIC  9(06)V9(25)
                   VALUE  828822.6462986850728853482905833.
       77  FLD0413B                       PIC S9(01)
                   VALUE +0.

       77  FLD0414A                       PIC  9(05)V9(27)
                   VALUE  84413.303017262042438062508153961.
       77  FLD0414B                       PIC S9(05)
                   VALUE -15377.

       77  FLD0415A                       PIC  9(09)V9(15)
                   VALUE  650722988.227690701812377.
       77  FLD0415B                       PIC  9(03)V9(31)
                   VALUE  919.0351051613949717733476063585840.

       77  FLD0416A                       PIC  9(09)V9(16)
                   VALUE  675584038.8269652718733482.
       77  FLD0416B                       PIC S9(01)
                   VALUE +0.

       77  FLD0417A                       PIC  9(03)V9(32)
                   VALUE  942.59186417160190085695603556814603.
       77  FLD0417B                       PIC  9(04)V9(29)
                   VALUE  8943.54109346381376255408213182818.

       77  FLD0418A                       PIC  9(01)
                   VALUE  0.
       77  FLD0418B                       PIC  9(01)
                   VALUE  0.

       77  FLD0419A                       PIC  9(09)V9(06)
                   VALUE  415695619.544491.
       77  FLD0419B                       PIC  9(10)V9(10)
                   VALUE  5349169017.3884820502.

       77  FLD0420A                       PIC  9(08)V9(02)
                   VALUE  26881191.37.
       77  FLD0420B                       PIC  9(04)V9(30)
                   VALUE  9092.387304867948216724471421912312.

       77  FLD0421A                       PIC  9(08)V9(19)
                   VALUE  71124707.9077118260492795798.
       77  FLD0421B                       PIC S9(06)V9(01)
                   VALUE +210383.3.

       77  FLD0422A                       PIC  9(08)V9(18)
                   VALUE  69276472.004700051510184266.
       77  FLD0422B                       PIC  9(02)V9(34)
                   VALUE  96.7464238557165900900258748151827603.

       77  FLD0423A                       PIC  9(09)V9(13)
                   VALUE  595417774.2919815052857.
       77  FLD0423B                       PIC  9(09)V9(17)
                   VALUE  689527286.14626146441679566.

       77  FLD0424A                       PIC  9(09)V9(11)
                   VALUE  551151541.59885582085.
       77  FLD0424B                       PIC  9(08)V9(19)
                   VALUE  72724692.5117367437607640567.

       77  FLD0425A                       PIC S9(10)V9(08)
                   VALUE -4741628720.81754727.
       77  FLD0425B                       PIC  9(10)V9(12)
                   VALUE  5846836543.074439562772.

       77  FLD0426A                       PIC  9(10)V9(11)
                   VALUE  5601456695.80725313885.
       77  FLD0426B                       PIC  9(10)V9(11)
                   VALUE  5581868249.31393821280.

       77  FLD0427A                       PIC  9(09)V9(04)
                   VALUE  365284621.5641.
       77  FLD0427B                       PIC  9(07)V9(22)
                   VALUE  7792109.4871910845380824639505.

       77  FLD0428A                       PIC  9(05)V9(27)
                   VALUE  85913.234918316627730661139139556.
       77  FLD0428B                       PIC  9(01)V9(36)
                   VALUE  9.753152813075189886404814387788064777.

       77  FLD0429A                       PIC  9(07)V9(22)
                   VALUE  7833347.6062909002113343603923.
       77  FLD0429B                       PIC  9(09)V9(06)
                   VALUE  415311789.274485.

       77  FLD0430A                       PIC  9(08)V9(03)
                   VALUE  30820998.502.
       77  FLD0430B                       PIC  9(09)V9(04)
                   VALUE  345613119.3468.

       77  FLD0431A                       PIC S9(01)
                   VALUE +0.
       77  FLD0431B                       PIC  9(03)V9(31)
                   VALUE  920.3928254587173674039490833820309.

       77  FLD0432A                       PIC  9(10)V9(11)
                   VALUE  5612307034.00538710745.
       77  FLD0432B                       PIC S9(06)
                   VALUE -161655.

       77  FLD0433A                       PIC  9(08)V9(19)
                   VALUE  72012955.8244768763763943297.
       77  FLD0433B                       PIC  9(06)V9(01)
                   VALUE  206502.1.

       77  FLD0434A                       PIC S9(10)V9(07)
                   VALUE -4547054675.3415619.
       77  FLD0434B                       PIC  9(03)V9(32)
                   VALUE  931.50114075800283242045907172723673.

       77  FLD0435A                       PIC  9(03)
                   VALUE  087.
       77  FLD0435B                       PIC  9(10)V9(12)
                   VALUE  5848414344.863717140299.

       77  FLD0436A                       PIC S9(01)
                   VALUE +0.
       77  FLD0436B                       PIC  9(06)V9(25)
                   VALUE  830719.5843004202551185244374210.

       77  FLD0437A                       PIC  9(09)V9(15)
                   VALUE  632897272.198471361193128.
       77  FLD0437B                       PIC  9(09)V9(15)
                   VALUE  644015379.475938010145341.

       77  FLD0438A                       PIC  9(09)V9(16)
                   VALUE  664694021.6365745390802999.
       77  FLD0438B                       PIC  9(05)V9(28)
                   VALUE  87427.7230957161255453513604152249.

       77  FLD0439A                       PIC  9(10)V9(08)
                   VALUE  4961134805.43429519.
       77  FLD0439B                       PIC  9(10)V9(11)
                   VALUE  5610850764.78219813012.

       77  FLD0440A                       PIC  9(04)V9(29)
                   VALUE  8899.07507055040514210020319296745.
       77  FLD0440B                       PIC  9(10)V9(07)
                   VALUE  4554701137.8932739.

       77  FLD0441A                       PIC  9(08)V9(19)
                   VALUE  71126905.4406556744396539215.
       77  FLD0441B                       PIC S9(10)V9(06)
                   VALUE +4339238601.837461.

       77  FLD0442A                       PIC  9(05)V9(01)
                   VALUE  16995.1.
       77  FLD0442B                       PIC  9(03)V9(31)
                   VALUE  915.7753741786495149668212434335146.

       77  FLD0443A                       PIC S9(10)V9(08)
                   VALUE -4744984255.46487689.
       77  FLD0443B                       PIC  9(09)V9(14)
                   VALUE  620915031.52970173307068.

       77  FLD0444A                       PIC  9(02)V9(33)
                   VALUE  94.673816662087151296844922399031929.
       77  FLD0444B                       PIC  9(10)V9(09)
                   VALUE  5047752845.189990011.

       77  FLD0445A                       PIC  9(10)V9(10)
                   VALUE  5416554544.5299512206.
       77  FLD0445B                       PIC S9(10)V9(07)
                   VALUE -4623541965.4562581.

       77  FLD0446A                       PIC  9(10)V9(09)
                   VALUE  5044897846.697211640.
       77  FLD0446B                       PIC  9(09)V9(16)
                   VALUE  665206327.4939082893055797.

       77  FLD0447A                       PIC  9(02)
                   VALUE  06.
       77  FLD0447B                       PIC  9(08)V9(02)
                   VALUE  27717300.69.

       77  FLD0448A                       PIC  9(06)V9(01)
                   VALUE  186565.4.
       77  FLD0448B                       PIC  9(10)V9(10)
                   VALUE  5373290497.5367845601.

       77  FLD0449A                       PIC S9(09)V9(05)
                   VALUE -384988094.18704.
       77  FLD0449B                       PIC S9(08)V9(04)
                   VALUE +34016016.2924.

       77  FLD0450A                       PIC  9(09)V9(14)
                   VALUE  625578375.50228334588808.
       77  FLD0450B                       PIC  9(09)V9(13)
                   VALUE  597300618.6146695428718.

       77  FLD0451A                       PIC  9(01)
                   VALUE  0.
       77  FLD0451B                       PIC S9(07)V9(02)
                   VALUE -2517390.40.

       77  FLD0452A                       PIC  9(08)V9(02)
                   VALUE  26826484.18.
       77  FLD0452B                       PIC  9(10)V9(11)
                   VALUE  5576443525.30127562772.

       77  FLD0453A                       PIC  9(10)V9(10)
                   VALUE  5383526546.5392911909.
       77  FLD0453B                       PIC  9(02)V9(34)
                   VALUE  96.7573296701221163829131910461001098.

       77  FLD0454A                       PIC S9(03)
                   VALUE -090.
       77  FLD0454B                       PIC S9(01)
                   VALUE -0.

       77  FLD0455A                       PIC S9(01)
                   VALUE -0.
       77  FLD0455B                       PIC  9(05)V9(27)
                   VALUE  85105.998788168291113720442808698.

       77  FLD0456A                       PIC S9(03)
                   VALUE -093.
       77  FLD0456B                       PIC  9(05)
                   VALUE  15509.

       77  FLD0457A                       PIC  9(04)V9(30)
                   VALUE  9063.641671624598217249513254500925.
       77  FLD0457B                       PIC  9(01)
                   VALUE  0.

       77  FLD0458A                       PIC  9(02)
                   VALUE  06.
       77  FLD0458B                       PIC  9(09)V9(03)
                   VALUE  319507540.378.

       77  FLD0459A                       PIC  9(06)V9(01)
                   VALUE  198479.9.
       77  FLD0459B                       PIC  9(10)V9(11)
                   VALUE  5635468078.16151518188.

       77  FLD0460A                       PIC  9(01)
                   VALUE  0.
       77  FLD0460B                       PIC  9(07)V9(22)
                   VALUE  7834589.5335320658858790920930.

       77  FLD0461A                       PIC S9(01)
                   VALUE +0.
       77  FLD0461B                       PIC S9(07)V9(01)
                   VALUE +2146839.2.

       77  FLD0462A                       PIC  9(08)V9(02)
                   VALUE  26776595.69.
       77  FLD0462B                       PIC  9(02)V9(34)
                   VALUE  95.2391194548525610308331579290097579.

       77  FLD0463A                       PIC  9(05)V9(27)
                   VALUE  85490.666934027292889197724434779.
       77  FLD0463B                       PIC  9(09)V9(06)
                   VALUE  407249114.981761.

       77  FLD0464A                       PIC  9(10)V9(07)
                   VALUE  4587031190.3834293.
       77  FLD0464B                       PIC  9(08)V9(19)
                   VALUE  71857481.5704608793609509120.

       77  FLD0465A                       PIC  9(10)V9(12)
                   VALUE  5816563985.597106301028.
       77  FLD0465B                       PIC  9(06)V9(25)
                   VALUE  837937.1800695708527584315561398.

       77  FLD0466A                       PIC  9(09)V9(15)
                   VALUE  654381306.333900236715805.
       77  FLD0466B                       PIC  9(05)
                   VALUE  14616.

       77  FLD0467A                       PIC S9(07)V9(01)
                   VALUE +2343287.0.
       77  FLD0467B                       PIC  9(04)V9(29)
                   VALUE  8929.74677715112297171629052172647.

       77  FLD0468A                       PIC S9(10)V9(06)
                   VALUE +4344132145.767680.
       77  FLD0468B                       PIC  9(08)V9(03)
                   VALUE  29592230.696.

       77  FLD0469A                       PIC  9(08)V9(18)
                   VALUE  70961503.876956555370014712.
       77  FLD0469B                       PIC  9(10)V9(09)
                   VALUE  5200119971.346918168.

       77  FLD0470A                       PIC  9(03)V9(31)
                   VALUE  913.6810028966669827710234130790922.
       77  FLD0470B                       PIC S9(09)V9(05)
                   VALUE -383130523.18889.

       77  FLD0471A                       PIC S9(07)V9(02)
                   VALUE -2507103.69.
       77  FLD0471B                       PIC  9(01)
                   VALUE  0.

       77  FLD0472A                       PIC  9(10)V9(09)
                   VALUE  5103990869.050332168.
       77  FLD0472B                       PIC  9(06)V9(26)
                   VALUE  843393.74409143441635450244575622.

       77  FLD0473A                       PIC  9(08)V9(20)
                   VALUE  74367162.06805468187823748849.
       77  FLD0473B                       PIC  9(08)V9(18)
                   VALUE  70143773.259305752798553612.

       77  FLD0474A                       PIC  9(08)V9(19)
                   VALUE  72625744.5118117406224200749.
       77  FLD0474B                       PIC S9(05)
                   VALUE +13295.

       77  FLD0475A                       PIC  9(10)V9(07)
                   VALUE  4588724634.2999971.
       77  FLD0475B                       PIC S9(09)V9(06)
                   VALUE +420010897.357724.

       77  FLD0476A                       PIC  9(08)V9(02)
                   VALUE  28869933.49.
       77  FLD0476B                       PIC  9(06)V9(01)
                   VALUE  197306.5.

       77  FLD0477A                       PIC  9(08)V9(20)
                   VALUE  74492482.99155191155307420558.
       77  FLD0477B                       PIC S9(09)V9(05)
                   VALUE -380644102.28203.

       77  FLD0478A                       PIC  9(08)V9(19)
                   VALUE  72616162.5751895356550846827.
       77  FLD0478B                       PIC  9(09)V9(04)
                   VALUE  345871637.9604.

       77  FLD0479A                       PIC S9(09)V9(06)
                   VALUE +413502052.896697.
       77  FLD0479B                       PIC  9(06)V9(25)
                   VALUE  820524.8465168897276100778981344.

       77  FLD0480A                       PIC S9(06)V9(01)
                   VALUE +203017.8.
       77  FLD0480B                       PIC  9(08)V9(20)
                   VALUE  74798417.21657910502685240317.

       77  FLD0481A                       PIC  9(05)
                   VALUE  15658.
       77  FLD0481B                       PIC  9(01)V9(36)
                   VALUE  9.907459007614364265847939350351225584.

       77  FLD0482A                       PIC  9(08)V9(18)
                   VALUE  70905037.950447225014727337.
       77  FLD0482B                       PIC S9(10)V9(08)
                   VALUE -4922020906.16106868.

       77  FLD0483A                       PIC  9(03)
                   VALUE  079.
       77  FLD0483B                       PIC S9(09)V9(03)
                   VALUE +323420049.144.

       77  FLD0484A                       PIC S9(01)
                   VALUE +0.
       77  FLD0484B                       PIC  9(09)V9(12)
                   VALUE  577123861.473882282524.

       77  FLD0485A                       PIC  9(07)V9(02)
                   VALUE  2567572.97.
       77  FLD0485B                       PIC  9(05)V9(01)
                   VALUE  16688.0.

       77  FLD0486A                       PIC  9(05)
                   VALUE  13937.
       77  FLD0486B                       PIC  9(10)V9(07)
                   VALUE  4583814690.4965959.

       77  FLD0487A                       PIC  9(06)V9(01)
                   VALUE  209384.2.
       77  FLD0487B                       PIC  9(08)V9(18)
                   VALUE  70207035.549040885946681100.

       77  FLD0488A                       PIC S9(10)V9(07)
                   VALUE -4519198906.7966076.
       77  FLD0488B                       PIC  9(09)V9(16)
                   VALUE  669660091.3134611587906874.

       77  FLD0489A                       PIC S9(05)V9(01)
                   VALUE -17360.6.
       77  FLD0489B                       PIC  9(01)V9(36)
                   VALUE  9.950567826331271348294649214949458837.

       77  FLD0490A                       PIC  9(10)V9(10)
                   VALUE  5352566580.2623056954.
       77  FLD0490B                       PIC  9(08)V9(02)
                   VALUE  28596817.06.

       77  FLD0491A                       PIC  9(03)V9(31)
                   VALUE  918.2459205467069507378141679510008.
       77  FLD0491B                       PIC  9(09)V9(16)
                   VALUE  661285516.5476814178759923.

       77  FLD0492A                       PIC  9(06)V9(25)
                   VALUE  819266.4570447540928199714471702.
       77  FLD0492B                       PIC S9(09)V9(04)
                   VALUE +343135449.1145.

       77  FLD0493A                       PIC S9(05)V9(01)
                   VALUE -18038.5.
       77  FLD0493B                       PIC  9(06)V9(24)
                   VALUE  808734.959278862186593528349476.

       77  FLD0494A                       PIC  9(05)V9(28)
                   VALUE  87574.5417791477964719604187848744.
       77  FLD0494B                       PIC  9(10)V9(09)
                   VALUE  5133082903.157394349.

       77  FLD0495A                       PIC S9(02)
                   VALUE -05.
       77  FLD0495B                       PIC  9(09)V9(15)
                   VALUE  646882578.915106698502768.

       77  FLD0496A                       PIC  9(06)V9(25)
                   VALUE  816763.6415427422802437718019064.
       77  FLD0496B                       PIC S9(04)
                   VALUE +1240.

       77  FLD0497A                       PIC  9(06)V9(25)
                   VALUE  836230.6435874340415637107071233.
       77  FLD0497B                       PIC  9(09)V9(16)
                   VALUE  665491997.9684780217965567.

       77  FLD0498A                       PIC  9(10)V9(08)
                   VALUE  4792455293.49441590.
       77  FLD0498B                       PIC  9(06)V9(01)
                   VALUE  189449.4.

       77  FLD0499A                       PIC  9(02)
                   VALUE  05.
       77  FLD0499B                       PIC  9(09)V9(15)
                   VALUE  634131211.402607308791345.

      * RESULTS-AREA
       78  XPC-FLD0001B
           VALUE '4'.
       78  XPC-FLD0002B
           VALUE '01571925154608921904042517780914'.
       78  XPC-FLD0003B
           VALUE '497691662540136914'.
       78  XPC-FLD0004B
           VALUE '316172'.
       78  XPC-FLD0005B
           VALUE '326669126773'.
       78  XPC-FLD0006B
           VALUE '2564149945687535678828794516448398'.
       78  XPC-FLD0007B
           VALUE '270310289q'.
       78  XPC-FLD0008B
           VALUE '09q'.
       78  XPC-FLD0009B
           VALUE '750598888818416259625343627703841'.
       78  XPC-FLD0010B
           VALUE '401313154225654'.
       78  XPC-FLD0011B
           VALUE '716073640695890795927880390081554'.
       78  XPC-FLD0012B
           VALUE '714856822486604356929547066'.
       78  XPC-FLD0013B
           VALUE '249701360'.
       78  XPC-FLD0014B
           VALUE '7563565'.
       78  XPC-FLD0015B
           VALUE '496103206190910525'.
       78  XPC-FLD0016B
           VALUE '4316078086835850'.
       78  XPC-FLD0017B
           VALUE '8983341087204116393039043941826093'.
       78  XPC-FLD0018B
           VALUE 'w'.
       78  XPC-FLD0019B
           VALUE '52790866914027q'.
       78  XPC-FLD0020B
           VALUE '09154677345638306819'.
       78  XPC-FLD0021B
           VALUE 'p'.
       78  XPC-FLD0022B
           VALUE '6800620448921426031141379553'.
       78  XPC-FLD0023B
           VALUE '011865432391802879230624512274516746'.
       78  XPC-FLD0024B
           VALUE '081262603108476'.
       78  XPC-FLD0025B
           VALUE '249748827'.
       78  XPC-FLD0026B
           VALUE '3837571962056t'.
       78  XPC-FLD0027B
           VALUE '8427161982877569013082921992870'.
       78  XPC-FLD0028B
           VALUE 'u'.
       78  XPC-FLD0029B
           VALUE '68438817718294422258378517'.
       78  XPC-FLD0030B
           VALUE '70264210169553353857452293'.
       78  XPC-FLD0031B
           VALUE '70450280588407820925311852'.
       78  XPC-FLD0032B
           VALUE '94722057179q'.
       78  XPC-FLD0033B
           VALUE '960256540212'.
       78  XPC-FLD0034B
           VALUE '21267719'.
       78  XPC-FLD0035B
           VALUE '30926017'.
       78  XPC-FLD0036B
           VALUE '84780746063121390621031281398245'.
       78  XPC-FLD0037B
           VALUE '1535r'.
       78  XPC-FLD0038B
           VALUE '8192466589219795159659831540467'.
       78  XPC-FLD0039B
           VALUE '2142775'.
       78  XPC-FLD0040B
           VALUE '328'.
       78  XPC-FLD0041B
           VALUE '5719955231502458548'.
       78  XPC-FLD0042B
           VALUE '53913067269542921267'.
       78  XPC-FLD0043B
           VALUE '8947428650524259539551508169097361'.
       78  XPC-FLD0044B
           VALUE '3593279914883'.
       78  XPC-FLD0045B
           VALUE '40565136957830'.
       78  XPC-FLD0046B
           VALUE '86000025910646182847330010190489'.
       78  XPC-FLD0047B
           VALUE '500920610887845814'.
       78  XPC-FLD0048B
           VALUE '01272w'.
       78  XPC-FLD0049B
           VALUE '6818217198975972105429554915463086217'.
       78  XPC-FLD0050B
           VALUE '079122399722566'.
       78  XPC-FLD0051B
           VALUE '4768561362631936750203005938732530'.
       78  XPC-FLD0052B
           VALUE '18378999229403754265'.
       78  XPC-FLD0053B
           VALUE '358916388870q'.
       78  XPC-FLD0054B
           VALUE '319288758232'.
       78  XPC-FLD0055B
           VALUE '9048691568994934320002240'.
       78  XPC-FLD0056B
           VALUE '2564409583'.
       78  XPC-FLD0057B
           VALUE '24'.
       78  XPC-FLD0058B
           VALUE '3436235653794'.
       78  XPC-FLD0059B
           VALUE '62832873919564874525472'.
       78  XPC-FLD0060B
           VALUE '159140'.
       78  XPC-FLD0061B
           VALUE '8166592123096498172785118185856'.
       78  XPC-FLD0062B
           VALUE '9769550469250686264269'.
       78  XPC-FLD0063B
           VALUE '753004763264897311507922950'.
       78  XPC-FLD0064B
           VALUE '744p'.
       78  XPC-FLD0065B
           VALUE '5378'.
       78  XPC-FLD0066B
           VALUE '85085260849998822774153950376785'.
       78  XPC-FLD0067B
           VALUE 'q'.
       78  XPC-FLD0068B
           VALUE '6'.
       78  XPC-FLD0069B
           VALUE '097'.
       78  XPC-FLD0070B
           VALUE '847339t'.
       78  XPC-FLD0071B
           VALUE '1274'.
       78  XPC-FLD0072B
           VALUE '655377313792015250284373'.
       78  XPC-FLD0073B
           VALUE '70717240702803545859163048'.
       78  XPC-FLD0074B
           VALUE '6009119595528942259221594213158817808'.
       78  XPC-FLD0075B
           VALUE '82894007'.
       78  XPC-FLD0076B
           VALUE '889922269538142470324260102643165738'.
       78  XPC-FLD0077B
           VALUE '297736583767979700245026833727024'.
       78  XPC-FLD0078B
           VALUE '52639083334727222580'.
       78  XPC-FLD0079B
           VALUE '324'.
       78  XPC-FLD0080B
           VALUE '371153437233y'.
       78  XPC-FLD0081B
           VALUE '3672069622885'.
       78  XPC-FLD0082B
           VALUE '39908942738066827524420432382'.
       78  XPC-FLD0083B
           VALUE '886546406'.
       78  XPC-FLD0084B
           VALUE '405109331835069'.
       78  XPC-FLD0085B
           VALUE '4354243534611629'.
       78  XPC-FLD0086B
           VALUE '571167021401449572360'.
       78  XPC-FLD0087B
           VALUE '9773'.
       78  XPC-FLD0088B
           VALUE '481540354519'.
       78  XPC-FLD0089B
           VALUE '8552781102827879955441403577769802'.
       78  XPC-FLD0090B
           VALUE '0075180968r'.
       78  XPC-FLD0091B
           VALUE '08617201884902925811235356'.
       78  XPC-FLD0092B
           VALUE '3179100098465547968089595087804'.
       78  XPC-FLD0093B
           VALUE '790919325337388512409120266966'.
       78  XPC-FLD0094B
           VALUE '53066656460354850645'.
       78  XPC-FLD0095B
           VALUE '5167739798081453228562054391361'.
       78  XPC-FLD0096B
           VALUE '875053049076218392166026660561328'.
       78  XPC-FLD0097B
           VALUE '76639044132902548449948199049'.
       78  XPC-FLD0098B
           VALUE '334130309069'.
       78  XPC-FLD0099B
           VALUE '1680281099q'.
       78  XPC-FLD0100B
           VALUE '53883959962677607717265'.
       78  XPC-FLD0101B
           VALUE '51211205q'.
       78  XPC-FLD0102B
           VALUE '62599568832775289662151'.
       78  XPC-FLD0103B
           VALUE '9'.
       78  XPC-FLD0104B
           VALUE '48125550583217433t'.
       78  XPC-FLD0105B
           VALUE '0152268966'.
       78  XPC-FLD0106B
           VALUE '263621782y'.
       78  XPC-FLD0107B
           VALUE '491683543555178959039153289'.
       78  XPC-FLD0108B
           VALUE '386319355p'.
       78  XPC-FLD0109B
           VALUE '0156720262660837374113498299266211'.
       78  XPC-FLD0110B
           VALUE '61781025727648194445507102'.
       78  XPC-FLD0111B
           VALUE '5582373934795217912'.
       78  XPC-FLD0112B
           VALUE '983719732p'.
       78  XPC-FLD0113B
           VALUE '0370'.
       78  XPC-FLD0114B
           VALUE '873969'.
       78  XPC-FLD0115B
           VALUE '30236778644'.
       78  XPC-FLD0116B
           VALUE '3'.
       78  XPC-FLD0117B
           VALUE '13612'.
       78  XPC-FLD0118B
           VALUE '80v'.
       78  XPC-FLD0119B
           VALUE '253932450'.
       78  XPC-FLD0120B
           VALUE '6w'.
       78  XPC-FLD0121B
           VALUE '323330267022'.
       78  XPC-FLD0122B
           VALUE '2693757152'.
       78  XPC-FLD0123B
           VALUE '7502022502690824523057244732'.
       78  XPC-FLD0124B
           VALUE '4223876720963152'.
       78  XPC-FLD0125B
           VALUE '637787216045794358443288'.
       78  XPC-FLD0126B
           VALUE '14776980'.
       78  XPC-FLD0127B
           VALUE '968598991861849889506430599794838'.
       78  XPC-FLD0128B
           VALUE '7158526709'.
       78  XPC-FLD0129B
           VALUE '66302536762228508700376'.
       78  XPC-FLD0130B
           VALUE '30500681275'.
       78  XPC-FLD0131B
           VALUE '97542725692831921848454612'.
       78  XPC-FLD0132B
           VALUE '21622287'.
       78  XPC-FLD0133B
           VALUE '25284219x'.
       78  XPC-FLD0134B
           VALUE '6035745627324759055021275'.
       78  XPC-FLD0135B
           VALUE '089682198'.
       78  XPC-FLD0136B
           VALUE '721064189695820607747975827'.
       78  XPC-FLD0137B
           VALUE '39815975038716593768839402400772088'.
       78  XPC-FLD0138B
           VALUE '2805087202945691003095503219810780'.
       78  XPC-FLD0139B
           VALUE '4629717477620841718762676464393'.
       78  XPC-FLD0140B
           VALUE '9134502802484925076953459210926666'.
       78  XPC-FLD0141B
           VALUE '1980465'.
       78  XPC-FLD0142B
           VALUE '011r'.
       78  XPC-FLD0143B
           VALUE '4030994'.
       78  XPC-FLD0144B
           VALUE '24553993'.
       78  XPC-FLD0145B
           VALUE '009479682736521'.
       78  XPC-FLD0146B
           VALUE '5926753717490164309811'.
       78  XPC-FLD0147B
           VALUE '397442042521838'.
       78  XPC-FLD0148B
           VALUE '335821179980'.
       78  XPC-FLD0149B
           VALUE '0u'.
       78  XPC-FLD0150B
           VALUE '5779789481524289174174668914929497987'.
       78  XPC-FLD0151B
           VALUE '03489779895385769491943608024'.
       78  XPC-FLD0152B
           VALUE '976189035330467796747200281970435753'.
       78  XPC-FLD0153B
           VALUE '69465356575944581241088818012'.
       78  XPC-FLD0154B
           VALUE '40490022953226414'.
       78  XPC-FLD0155B
           VALUE '7822691488762339967770021576143335'.
       78  XPC-FLD0156B
           VALUE '8985588062372004625188992577022872'.
       78  XPC-FLD0157B
           VALUE '4359875032276696'.
       78  XPC-FLD0158B
           VALUE '19917526243063020197192'.
       78  XPC-FLD0159B
           VALUE '643529357674236912600918'.
       78  XPC-FLD0160B
           VALUE '4490300'.
       78  XPC-FLD0161B
           VALUE '795897533357509001650242908'.
       78  XPC-FLD0162B
           VALUE '566814386458160899086'.
       78  XPC-FLD0163B
           VALUE '269208611024764676855618'.
       78  XPC-FLD0164B
           VALUE '3001'.
       78  XPC-FLD0165B
           VALUE '1267'.
       78  XPC-FLD0166B
           VALUE '429599'.
       78  XPC-FLD0167B
           VALUE '0917440942478405142746282763255'.
       78  XPC-FLD0168B
           VALUE '4326936005661665'.
       78  XPC-FLD0169B
           VALUE '71534750846474368213279150'.
       78  XPC-FLD0170B
           VALUE '2603177530164159092505813954945188016'.
       78  XPC-FLD0171B
           VALUE '4933823716025803'.
       78  XPC-FLD0172B
           VALUE '8903776753838588409184495731096831'.
       78  XPC-FLD0173B
           VALUE '519945412779417204'.
       78  XPC-FLD0174B
           VALUE '5152585493087611057'.
       78  XPC-FLD0175B
           VALUE '51'.
       78  XPC-FLD0176B
           VALUE '21895219257'.
       78  XPC-FLD0177B
           VALUE '999225365'.
       78  XPC-FLD0178B
           VALUE '2410436611s'.
       78  XPC-FLD0179B
           VALUE '664'.
       78  XPC-FLD0180B
           VALUE '54351034931997414107'.
       78  XPC-FLD0181B
           VALUE '47407358325391086x'.
       78  XPC-FLD0182B
           VALUE '417908352338649757839920'.
       78  XPC-FLD0183B
           VALUE '03'.
       78  XPC-FLD0184B
           VALUE '3601969r'.
       78  XPC-FLD0185B
           VALUE '7395132638753716096465495866'.
       78  XPC-FLD0186B
           VALUE '8407708947119312415452441200613'.
       78  XPC-FLD0187B
           VALUE '6497950041934480558403'.
       78  XPC-FLD0188B
           VALUE '0471158677246608093014401354'.
       78  XPC-FLD0189B
           VALUE '078359569344531809751'.
       78  XPC-FLD0190B
           VALUE '62476651140273569806415'.
       78  XPC-FLD0191B
           VALUE '817437168989411478996487403492'.
       78  XPC-FLD0192B
           VALUE '3580342295012'.
       78  XPC-FLD0193B
           VALUE '86499232126294976690766'.
       78  XPC-FLD0194B
           VALUE '217285653058917626499679'.
       78  XPC-FLD0195B
           VALUE '60767'.
       78  XPC-FLD0196B
           VALUE '18000w'.
       78  XPC-FLD0197B
           VALUE '05'.
       78  XPC-FLD0198B
           VALUE '7903v'.
       78  XPC-FLD0199B
           VALUE '045232741410605347571106449322'.
       78  XPC-FLD0200B
           VALUE '95184480153268257'.
       78  XPC-FLD0201B
           VALUE '792759590444417882612526682351'.
       78  XPC-FLD0202B
           VALUE '37943227555010013122256395945441909'.
       78  XPC-FLD0203B
           VALUE '5835712416517114804656539879215415'.
       78  XPC-FLD0204B
           VALUE '23632656'.
       78  XPC-FLD0205B
           VALUE '288741127747638715028699'.
       78  XPC-FLD0206B
           VALUE '70639388766434425840361654'.
       78  XPC-FLD0207B
           VALUE '7691791385730962560263179739'.
       78  XPC-FLD0208B
           VALUE '21514986'.
       78  XPC-FLD0209B
           VALUE '795271109412971503516143201296'.
       78  XPC-FLD0210B
           VALUE '8'.
       78  XPC-FLD0211B
           VALUE '4421137707554604'.
       78  XPC-FLD0212B
           VALUE '2649683602641s'.
       78  XPC-FLD0213B
           VALUE '7525639770631302875997903356'.
       78  XPC-FLD0214B
           VALUE '6668932704655321508369070'.
       78  XPC-FLD0215B
           VALUE '17300r'.
       78  XPC-FLD0216B
           VALUE '5663716874'.
       78  XPC-FLD0217B
           VALUE '5191266215287889'.
       78  XPC-FLD0218B
           VALUE '4467255193327033602201936446363106369'.
       78  XPC-FLD0219B
           VALUE '58766925082182334127'.
       78  XPC-FLD0220B
           VALUE '2936u'.
       78  XPC-FLD0221B
           VALUE '878910367794605407176788958167890'.
       78  XPC-FLD0222B
           VALUE '9803s'.
       78  XPC-FLD0223B
           VALUE '69950927082806102497158917'.
       78  XPC-FLD0224B
           VALUE '3830076842766v'.
       78  XPC-FLD0225B
           VALUE '572612409808938978169'.
       78  XPC-FLD0226B
           VALUE '21150954'.
       78  XPC-FLD0227B
           VALUE '2038736443582994661522477889957372'.
       78  XPC-FLD0228B
           VALUE '6560309403122602756042169858119450510'.
       78  XPC-FLD0229B
           VALUE '7383802976208535540081356884'.
       78  XPC-FLD0230B
           VALUE '9x'.
       78  XPC-FLD0231B
           VALUE '270943347u'.
       78  XPC-FLD0232B
           VALUE '4749842313738054193504353861500'.
       78  XPC-FLD0233B
           VALUE '412919251494'.
       78  XPC-FLD0234B
           VALUE '5600680922670572133253'.
       78  XPC-FLD0235B
           VALUE '48083151871929563y'.
       78  XPC-FLD0236B
           VALUE '70471341881577547199277944'.
       78  XPC-FLD0237B
           VALUE '088849488581330880890618573175743'.
       78  XPC-FLD0238B
           VALUE '3227001'.
       78  XPC-FLD0239B
           VALUE '29332566026370832101832'.
       78  XPC-FLD0240B
           VALUE '0204109650584163561111186027120'.
       78  XPC-FLD0241B
           VALUE '60875735723205993171444'.
       78  XPC-FLD0242B
           VALUE '182084r'.
       78  XPC-FLD0243B
           VALUE '870255257093214798613800553539476'.
       78  XPC-FLD0244B
           VALUE '5964541497067354924865'.
       78  XPC-FLD0245B
           VALUE '264333833210099267317333'.
       78  XPC-FLD0246B
           VALUE '1209826'.
       78  XPC-FLD0247B
           VALUE '742067276785553808782225359'.
       78  XPC-FLD0248B
           VALUE '568358594454923286003'.
       78  XPC-FLD0249B
           VALUE '3516462579097082707946242'.
       78  XPC-FLD0250B
           VALUE '9267251332164047061614164335129317'.
       78  XPC-FLD0251B
           VALUE '3790591152463825338016431487631'.
       78  XPC-FLD0252B
           VALUE '23614266'.
       78  XPC-FLD0253B
           VALUE '21598977'.
       78  XPC-FLD0254B
           VALUE '94904362r'.
       78  XPC-FLD0255B
           VALUE '54081435076039155115'.
       78  XPC-FLD0256B
           VALUE '8751500721603051085707734273455571'.
       78  XPC-FLD0257B
           VALUE '408'.
       78  XPC-FLD0258B
           VALUE '08373758705249056762416399345967'.
       78  XPC-FLD0259B
           VALUE '3746683047259t'.
       78  XPC-FLD0260B
           VALUE '6017366610583895639607'.
       78  XPC-FLD0261B
           VALUE '00567161858323'.
       78  XPC-FLD0262B
           VALUE '68757658126759821329241049'.
       78  XPC-FLD0263B
           VALUE '40'.
       78  XPC-FLD0264B
           VALUE '166846'.
       78  XPC-FLD0265B
           VALUE '2298778729177715439249141127220354975'.
       78  XPC-FLD0266B
           VALUE '115052360207692161431225486003512427'.
       78  XPC-FLD0267B
           VALUE '23489014'.
       78  XPC-FLD0268B
           VALUE '8211500957830146774085733341053'.
       78  XPC-FLD0269B
           VALUE '0'.
       78  XPC-FLD0270B
           VALUE '373v'.
       78  XPC-FLD0271B
           VALUE '052759203'.
       78  XPC-FLD0272B
           VALUE '51600069630273368u'.
       78  XPC-FLD0273B
           VALUE '9036109253095580'.
       78  XPC-FLD0274B
           VALUE '52694748208586675958'.
       78  XPC-FLD0275B
           VALUE '242413794'.
       78  XPC-FLD0276B
           VALUE '26452912587946930678128865110919777'.
       78  XPC-FLD0277B
           VALUE '499215458601645512'.
       78  XPC-FLD0278B
           VALUE '7922277502052260016194509262277280'.
       78  XPC-FLD0279B
           VALUE '28001839602575101420001146834692918'.
       78  XPC-FLD0280B
           VALUE '686572532054675839148262639'.
       78  XPC-FLD0281B
           VALUE '50053214871016073'.
       78  XPC-FLD0282B
           VALUE '80366298088737049271049105300'.
       78  XPC-FLD0283B
           VALUE '18273y'.
       78  XPC-FLD0284B
           VALUE '1'.
       78  XPC-FLD0285B
           VALUE '7369214262351649891158444916'.
       78  XPC-FLD0286B
           VALUE '82453436'.
       78  XPC-FLD0287B
           VALUE '362829'.
       78  XPC-FLD0288B
           VALUE '558809488025126643861391416517087'.
       78  XPC-FLD0289B
           VALUE '567633089214293657540'.
       78  XPC-FLD0290B
           VALUE '113'.
       78  XPC-FLD0291B
           VALUE '8300179929109657213726070068560'.
       78  XPC-FLD0292B
           VALUE '0'.
       78  XPC-FLD0293B
           VALUE '30744391924'.
       78  XPC-FLD0294B
           VALUE '9'.
       78  XPC-FLD0295B
           VALUE '0364174t'.
       78  XPC-FLD0296B
           VALUE '574464025736577889141'.
       78  XPC-FLD0297B
           VALUE '5211000497602709295'.
       78  XPC-FLD0298B
           VALUE '9865365009908295859892746193509083241'.
       78  XPC-FLD0299B
           VALUE '7346908584680565956758964'.
       78  XPC-FLD0300B
           VALUE '55012674381377925092451'.
       78  XPC-FLD0301B
           VALUE '0'.
       78  XPC-FLD0302B
           VALUE '4291773342239684'.
       78  XPC-FLD0303B
           VALUE '9'.
       78  XPC-FLD0304B
           VALUE '556573438984127234968'.
       78  XPC-FLD0305B
           VALUE '5'.
       78  XPC-FLD0306B
           VALUE '49364188871768718q'.
       78  XPC-FLD0307B
           VALUE '68005145163846554765597747973515652'.
       78  XPC-FLD0308B
           VALUE '711937634336942757585120489238761366'.
       78  XPC-FLD0309B
           VALUE '09s'.
       78  XPC-FLD0310B
           VALUE '039167648388876'.
       78  XPC-FLD0311B
           VALUE '3931117203050255914931199185957666486'.
       78  XPC-FLD0312B
           VALUE '4'.
       78  XPC-FLD0313B
           VALUE '37515306459621'.
       78  XPC-FLD0314B
           VALUE '69720778107690404600560896'.
       78  XPC-FLD0315B
           VALUE '69624112217793877932514589'.
       78  XPC-FLD0316B
           VALUE '561166875766384822086'.
       78  XPC-FLD0317B
           VALUE '331361572492'.
       78  XPC-FLD0318B
           VALUE '754934282553785965724557627254399'.
       78  XPC-FLD0319B
           VALUE '720371110100740574821997'.
       78  XPC-FLD0320B
           VALUE '547024228165748174212'.
       78  XPC-FLD0321B
           VALUE '6656687959056812873818967'.
       78  XPC-FLD0322B
           VALUE '17591106469607443841432'.
       78  XPC-FLD0323B
           VALUE '726633859846741159138616694690426812'.
       78  XPC-FLD0324B
           VALUE '02824576327848049573'.
       78  XPC-FLD0325B
           VALUE '723337602353324218528882738'.
       78  XPC-FLD0326B
           VALUE '4y'.
       78  XPC-FLD0327B
           VALUE '21224467'.
       78  XPC-FLD0328B
           VALUE '4643225346405y'.
       78  XPC-FLD0329B
           VALUE '952096907591406971249625712516717612'.
       78  XPC-FLD0330B
           VALUE '732550190262212211019805617980'.
       78  XPC-FLD0331B
           VALUE '2990286983'.
       78  XPC-FLD0332B
           VALUE '3558444199192'.
       78  XPC-FLD0333B
           VALUE '243133331'.
       78  XPC-FLD0334B
           VALUE '297044413515'.
       78  XPC-FLD0335B
           VALUE '5106189445459805064'.
       78  XPC-FLD0336B
           VALUE '2933169889y'.
       78  XPC-FLD0337B
           VALUE '434132279525498709915609650'.
       78  XPC-FLD0338B
           VALUE '53047689000456310637'.
       78  XPC-FLD0339B
           VALUE '5943728837259434154840'.
       78  XPC-FLD0340B
           VALUE '389881349078x'.
       78  XPC-FLD0341B
           VALUE '248392469156514472666'.
       78  XPC-FLD0342B
           VALUE '4532923120813512t'.
       78  XPC-FLD0343B
           VALUE '0620927'.
       78  XPC-FLD0344B
           VALUE '606359905437156143820618581230520'.
       78  XPC-FLD0345B
           VALUE '405441574894889'.
       78  XPC-FLD0346B
           VALUE '6665377278444964848080900'.
       78  XPC-FLD0347B
           VALUE '324381'.
       78  XPC-FLD0348B
           VALUE '541608383617544100863'.
       78  XPC-FLD0349B
           VALUE '99162869882943715535583214659709483'.
       78  XPC-FLD0350B
           VALUE '8264871389960360762501068165875'.
       78  XPC-FLD0351B
           VALUE '53884121311052648707'.
       78  XPC-FLD0352B
           VALUE '1946919'.
       78  XPC-FLD0353B
           VALUE '94389336945631099347053805104224012'.
       78  XPC-FLD0354B
           VALUE '3116766074r'.
       78  XPC-FLD0355B
           VALUE '93287'.
       78  XPC-FLD0356B
           VALUE '83673557978976841628508509529638'.
       78  XPC-FLD0357B
           VALUE '079'.
       78  XPC-FLD0358B
           VALUE '65874749059638552239264936'.
       78  XPC-FLD0359B
           VALUE '9526039934819852117442415817981772124'.
       78  XPC-FLD0360B
           VALUE '7361138723'.
       78  XPC-FLD0361B
           VALUE '07851848643793046811367730697339'.
       78  XPC-FLD0362B
           VALUE '8970899599407193836242413453874178'.
       78  XPC-FLD0363B
           VALUE '4961135231796696550847514117776881'.
       78  XPC-FLD0364B
           VALUE '8287940009277749559970516202156'.
       78  XPC-FLD0365B
           VALUE '2107493896139311928536102'.
       78  XPC-FLD0366B
           VALUE '0157659331265924684828405588633'.
       78  XPC-FLD0367B
           VALUE '7840586'.
       78  XPC-FLD0368B
           VALUE '3'.
       78  XPC-FLD0369B
           VALUE '31224128387'.
       78  XPC-FLD0370B
           VALUE '0'.
       78  XPC-FLD0371B
           VALUE '08r'.
       78  XPC-FLD0372B
           VALUE '0049999527433343127'.
       78  XPC-FLD0373B
           VALUE '352559577504p'.
       78  XPC-FLD0374B
           VALUE '711264497973442155753787119'.
       78  XPC-FLD0375B
           VALUE '3'.
       78  XPC-FLD0376B
           VALUE '5240009617041836336'.
       78  XPC-FLD0377B
           VALUE '78137191821795531497030218304'.
       78  XPC-FLD0378B
           VALUE '16313u'.
       78  XPC-FLD0379B
           VALUE '4'.
       78  XPC-FLD0380B
           VALUE 'y'.
       78  XPC-FLD0381B
           VALUE '096'.
       78  XPC-FLD0382B
           VALUE '1909'.
       78  XPC-FLD0383B
           VALUE '810435186395222418864747737642'.
       78  XPC-FLD0384B
           VALUE '1'.
       78  XPC-FLD0385B
           VALUE '774134932514714546452413131744833'.
       78  XPC-FLD0386B
           VALUE '3467992789726692670323751189'.
       78  XPC-FLD0387B
           VALUE '6906513656145575095354897'.
       78  XPC-FLD0388B
           VALUE '326'.
       78  XPC-FLD0389B
           VALUE '0182625981352744592156'.
       78  XPC-FLD0390B
           VALUE '102'.
       78  XPC-FLD0391B
           VALUE '0373737127'.
       78  XPC-FLD0392B
           VALUE '46825106292883313'.
       78  XPC-FLD0393B
           VALUE '9072420163680885991652758093550801'.
       78  XPC-FLD0394B
           VALUE '47463048104358589r'.
       78  XPC-FLD0395B
           VALUE '3'.
       78  XPC-FLD0396B
           VALUE '0265476173063916'.
       78  XPC-FLD0397B
           VALUE '0w'.
       78  XPC-FLD0398B
           VALUE '284425285r'.
       78  XPC-FLD0399B
           VALUE '256742307'.
       78  XPC-FLD0400B
           VALUE '8678350299065256532010165028624'.
       78  XPC-FLD0401B
           VALUE '0'.
       78  XPC-FLD0402B
           VALUE '69644052220831165210812585'.
       78  XPC-FLD0403B
           VALUE '12518106356029089448417234962107613'.
       78  XPC-FLD0404B
           VALUE '4814436782579247780215241'.
       78  XPC-FLD0405B
           VALUE '14133'.
       78  XPC-FLD0406B
           VALUE '049908285391730064732712435215'.
       78  XPC-FLD0407B
           VALUE '8753049482988191082826919955550692975'.
       78  XPC-FLD0408B
           VALUE '0947331591'.
       78  XPC-FLD0409B
           VALUE '605266450165216657684'.
       78  XPC-FLD0410B
           VALUE '8786052888992391829545680593582801521'.
       78  XPC-FLD0411B
           VALUE '63491006980711595097943650973'.
       78  XPC-FLD0412B
           VALUE 'x'.
       78  XPC-FLD0413B
           VALUE '0'.
       78  XPC-FLD0414B
           VALUE '9979p'.
       78  XPC-FLD0415B
           VALUE '9072627958632073487733476063585840'.
       78  XPC-FLD0416B
           VALUE 'x'.
       78  XPC-FLD0417B
           VALUE '988613295763541566341103816739633'.
       78  XPC-FLD0418B
           VALUE '0'.
       78  XPC-FLD0419B
           VALUE '57648646369329730502'.
       78  XPC-FLD0420B
           VALUE '2098982695132051783275528578087688'.
       78  XPC-FLD0421B
           VALUE '2103833'.
       78  XPC-FLD0422B
           VALUE '752582761957935941759741251848172397'.
       78  XPC-FLD0423B
           VALUE '28494506043824296970249566'.
       78  XPC-FLD0424B
           VALUE '784268490871190770892359433'.
       78  XPC-FLD0425B
           VALUE '1105207822256892292772'.
       78  XPC-FLD0426B
           VALUE '001958844649331492605'.
       78  XPC-FLD0427B
           VALUE '30767310512910845380824639505'.
       78  XPC-FLD0428B
           VALUE '3481765503552540774734325168211935223'.
       78  XPC-FLD0429B
           VALUE '415311789274485'.
       78  XPC-FLD0430B
           VALUE '3147921208448'.
       78  XPC-FLD0431B
           VALUE '9203928254587173674039490833820309'.
       78  XPC-FLD0432B
           VALUE '46868y'.
       78  XPC-FLD0433B
           VALUE '2194580'.
       78  XPC-FLD0434B
           VALUE '60684270265800283242045907172723673'.
       78  XPC-FLD0435B
           VALUE '5848414431863717140299'.
       78  XPC-FLD0436B
           VALUE '8307195843004202551185244374210'.
       78  XPC-FLD0437B
           VALUE '276912651674409371338469'.
       78  XPC-FLD0438B
           VALUE '065939134788229547545486395847751'.
       78  XPC-FLD0439B
           VALUE '057198557021649332012'.
       78  XPC-FLD0440B
           VALUE '45546922388182033'.
       78  XPC-FLD0441B
           VALUE '4410365507278117'.
       78  XPC-FLD0442B
           VALUE '0793246258213504850331787565664854'.
       78  XPC-FLD0443B
           VALUE '12406922393517515692932'.
       78  XPC-FLD0444B
           VALUE '5047752750516173349'.
       78  XPC-FLD0445B
           VALUE '4623541965456258q'.
       78  XPC-FLD0446B
           VALUE '3796915192033033506944203'.
       78  XPC-FLD0447B
           VALUE '2771730669'.
       78  XPC-FLD0448B
           VALUE '53731039321367845601'.
       78  XPC-FLD0449B
           VALUE '50972077894w'.
       78  XPC-FLD0450B
           VALUE '0282777568876138030163'.
       78  XPC-FLD0451B
           VALUE '25173904p'.
       78  XPC-FLD0452B
           VALUE '554961704112127562772'.
       78  XPC-FLD0453B
           VALUE '432966208610221163829131910461001098'.
       78  XPC-FLD0454B
           VALUE '0'.
       78  XPC-FLD0455B
           VALUE '85105998788168291113720442808698'.
       78  XPC-FLD0456B
           VALUE '15602'.
       78  XPC-FLD0457B
           VALUE '4'.
       78  XPC-FLD0458B
           VALUE '319507534378'.
       78  XPC-FLD0459B
           VALUE '563566655806151518188'.
       78  XPC-FLD0460B
           VALUE '78345895335320658858790920930'.
       78  XPC-FLD0461B
           VALUE '21468392'.
       78  XPC-FLD0462B
           VALUE '004508805451474389691668420709902421'.
       78  XPC-FLD0463B
           VALUE '407334605648695'.
       78  XPC-FLD0464B
           VALUE '151737088129684206390490880'.
       78  XPC-FLD0465B
           VALUE '4019227771758718807584315561398'.
       78  XPC-FLD0466B
           VALUE '66690'.
       78  XPC-FLD0467B
           VALUE '221674677715112297171629052172647'.
       78  XPC-FLD0468B
           VALUE '14539915072'.
       78  XPC-FLD0469B
           VALUE '5200119971346918168'.
       78  XPC-FLD0470B
           VALUE '3831314368698y'.
       78  XPC-FLD0471B
           VALUE '4'.
       78  XPC-FLD0472B
           VALUE '14747530624073358364549755424378'.
       78  XPC-FLD0473B
           VALUE '44510935327360434676791101'.
       78  XPC-FLD0474B
           VALUE '1245p'.
       78  XPC-FLD0475B
           VALUE '008735531657721'.
       78  XPC-FLD0476B
           VALUE '6726270'.
       78  XPC-FLD0477B
           VALUE '3806441022820s'.
       78  XPC-FLD0478B
           VALUE '2732554753853'.
       78  XPC-FLD0479B
           VALUE '3225777432138897276100778981344'.
       78  XPC-FLD0480B
           VALUE '7459539941657910502685240317'.
       78  XPC-FLD0481B
           VALUE '7907459007614364265847939350351225584'.
       78  XPC-FLD0482B
           VALUE '49929259441115159q'.
       78  XPC-FLD0483B
           VALUE '323420128144'.
       78  XPC-FLD0484B
           VALUE '577123861473882282524'.
       78  XPC-FLD0485B
           VALUE '166880'.
       78  XPC-FLD0486B
           VALUE '45838007534965959'.
       78  XPC-FLD0487B
           VALUE '70416419749040885946681100'.
       78  XPC-FLD0488B
           VALUE '1888589981100687587906874'.
       78  XPC-FLD0489B
           VALUE '0649432173668728651705350785050541163'.
       78  XPC-FLD0490B
           VALUE '2396976320'.
       78  XPC-FLD0491B
           VALUE '6612864347936019645829430'.
       78  XPC-FLD0492B
           VALUE '3423161826575'.
       78  XPC-FLD0493B
           VALUE '790696459278862186593528349476'.
       78  XPC-FLD0494B
           VALUE '5132995328615615202'.
       78  XPC-FLD0495B
           VALUE '646882573915106698502768'.
       78  XPC-FLD0496B
           VALUE '552s'.
       78  XPC-FLD0497B
           VALUE '6663282286120654558381205'.
       78  XPC-FLD0498B
           VALUE '2658441'.
       78  XPC-FLD0499B
           VALUE '634131216402607308791345'.


       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           ADD FLD0001A        TO FLD0001B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0002A        FROM FLD0002B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0003A        TO FLD0003B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0004A        FROM FLD0004B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0005A        TO FLD0005B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0006A        FROM FLD0006B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0007A        TO FLD0007B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0008A        FROM FLD0008B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0009A        TO FLD0009B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0010A        FROM FLD0010B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0011A        TO FLD0011B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0012A        FROM FLD0012B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0013A        TO FLD0013B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0014A        FROM FLD0014B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0015A        TO FLD0015B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0016A        FROM FLD0016B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0017A        TO FLD0017B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0018A        FROM FLD0018B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0019A        TO FLD0019B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0020A        FROM FLD0020B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0021A        TO FLD0021B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0022A        FROM FLD0022B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0023A        TO FLD0023B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0024A        FROM FLD0024B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0025A        TO FLD0025B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0026A        FROM FLD0026B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0027A        TO FLD0027B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0028A        FROM FLD0028B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0029A        TO FLD0029B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0030A        FROM FLD0030B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0031A        TO FLD0031B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0032A        FROM FLD0032B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0033A        TO FLD0033B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0034A        FROM FLD0034B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0035A        TO FLD0035B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0036A        FROM FLD0036B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0037A        TO FLD0037B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0038A        FROM FLD0038B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0039A        TO FLD0039B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0040A        FROM FLD0040B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0041A        TO FLD0041B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0042A        FROM FLD0042B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0043A        TO FLD0043B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0044A        FROM FLD0044B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0045A        TO FLD0045B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0046A        FROM FLD0046B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0047A        TO FLD0047B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0048A        FROM FLD0048B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0049A        TO FLD0049B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0050A        FROM FLD0050B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0051A        TO FLD0051B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0052A        FROM FLD0052B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0053A        TO FLD0053B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0054A        FROM FLD0054B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0055A        TO FLD0055B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0056A        FROM FLD0056B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0057A        TO FLD0057B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0058A        FROM FLD0058B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0059A        TO FLD0059B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0060A        FROM FLD0060B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0061A        TO FLD0061B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0062A        FROM FLD0062B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0063A        TO FLD0063B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0064A        FROM FLD0064B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0065A        TO FLD0065B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0066A        FROM FLD0066B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0067A        TO FLD0067B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0068A        FROM FLD0068B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0069A        TO FLD0069B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0070A        FROM FLD0070B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0071A        TO FLD0071B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0072A        FROM FLD0072B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0073A        TO FLD0073B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0074A        FROM FLD0074B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0075A        TO FLD0075B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0076A        FROM FLD0076B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0077A        TO FLD0077B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0078A        FROM FLD0078B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0079A        TO FLD0079B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0080A        FROM FLD0080B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0081A        TO FLD0081B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0082A        FROM FLD0082B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0083A        TO FLD0083B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0084A        FROM FLD0084B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0085A        TO FLD0085B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0086A        FROM FLD0086B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0087A        TO FLD0087B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0088A        FROM FLD0088B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0089A        TO FLD0089B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0090A        FROM FLD0090B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0091A        TO FLD0091B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0092A        FROM FLD0092B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0093A        TO FLD0093B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0094A        FROM FLD0094B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0095A        TO FLD0095B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0096A        FROM FLD0096B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0097A        TO FLD0097B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0098A        FROM FLD0098B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0099A        TO FLD0099B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0100A        FROM FLD0100B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0101A        TO FLD0101B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0102A        FROM FLD0102B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0103A        TO FLD0103B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0104A        FROM FLD0104B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0105A        TO FLD0105B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0106A        FROM FLD0106B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0107A        TO FLD0107B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0108A        FROM FLD0108B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0109A        TO FLD0109B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0110A        FROM FLD0110B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0111A        TO FLD0111B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0112A        FROM FLD0112B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0113A        TO FLD0113B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0114A        FROM FLD0114B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0115A        TO FLD0115B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0116A        FROM FLD0116B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0117A        TO FLD0117B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0118A        FROM FLD0118B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0119A        TO FLD0119B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0120A        FROM FLD0120B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0121A        TO FLD0121B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0122A        FROM FLD0122B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0123A        TO FLD0123B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0124A        FROM FLD0124B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0125A        TO FLD0125B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0126A        FROM FLD0126B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0127A        TO FLD0127B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0128A        FROM FLD0128B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0129A        TO FLD0129B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0130A        FROM FLD0130B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0131A        TO FLD0131B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0132A        FROM FLD0132B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0133A        TO FLD0133B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0134A        FROM FLD0134B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0135A        TO FLD0135B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0136A        FROM FLD0136B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0137A        TO FLD0137B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0138A        FROM FLD0138B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0139A        TO FLD0139B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0140A        FROM FLD0140B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0141A        TO FLD0141B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0142A        FROM FLD0142B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0143A        TO FLD0143B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0144A        FROM FLD0144B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0145A        TO FLD0145B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0146A        FROM FLD0146B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0147A        TO FLD0147B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0148A        FROM FLD0148B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0149A        TO FLD0149B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0150A        FROM FLD0150B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0151A        TO FLD0151B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0152A        FROM FLD0152B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0153A        TO FLD0153B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0154A        FROM FLD0154B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0155A        TO FLD0155B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0156A        FROM FLD0156B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0157A        TO FLD0157B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0158A        FROM FLD0158B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0159A        TO FLD0159B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0160A        FROM FLD0160B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0161A        TO FLD0161B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0162A        FROM FLD0162B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0163A        TO FLD0163B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0164A        FROM FLD0164B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0165A        TO FLD0165B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0166A        FROM FLD0166B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0167A        TO FLD0167B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0168A        FROM FLD0168B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0169A        TO FLD0169B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0170A        FROM FLD0170B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0171A        TO FLD0171B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0172A        FROM FLD0172B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0173A        TO FLD0173B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0174A        FROM FLD0174B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0175A        TO FLD0175B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0176A        FROM FLD0176B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0177A        TO FLD0177B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0178A        FROM FLD0178B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0179A        TO FLD0179B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0180A        FROM FLD0180B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0181A        TO FLD0181B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0182A        FROM FLD0182B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0183A        TO FLD0183B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0184A        FROM FLD0184B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0185A        TO FLD0185B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0186A        FROM FLD0186B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0187A        TO FLD0187B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0188A        FROM FLD0188B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0189A        TO FLD0189B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0190A        FROM FLD0190B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0191A        TO FLD0191B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0192A        FROM FLD0192B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0193A        TO FLD0193B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0194A        FROM FLD0194B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0195A        TO FLD0195B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0196A        FROM FLD0196B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0197A        TO FLD0197B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0198A        FROM FLD0198B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0199A        TO FLD0199B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0200A        FROM FLD0200B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0201A        TO FLD0201B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0202A        FROM FLD0202B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0203A        TO FLD0203B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0204A        FROM FLD0204B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0205A        TO FLD0205B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0206A        FROM FLD0206B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0207A        TO FLD0207B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0208A        FROM FLD0208B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0209A        TO FLD0209B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0210A        FROM FLD0210B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0211A        TO FLD0211B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0212A        FROM FLD0212B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0213A        TO FLD0213B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0214A        FROM FLD0214B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0215A        TO FLD0215B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0216A        FROM FLD0216B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0217A        TO FLD0217B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0218A        FROM FLD0218B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0219A        TO FLD0219B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0220A        FROM FLD0220B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0221A        TO FLD0221B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0222A        FROM FLD0222B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0223A        TO FLD0223B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0224A        FROM FLD0224B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0225A        TO FLD0225B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0226A        FROM FLD0226B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0227A        TO FLD0227B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0228A        FROM FLD0228B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0229A        TO FLD0229B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0230A        FROM FLD0230B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0231A        TO FLD0231B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0232A        FROM FLD0232B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0233A        TO FLD0233B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0234A        FROM FLD0234B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0235A        TO FLD0235B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0236A        FROM FLD0236B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0237A        TO FLD0237B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0238A        FROM FLD0238B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0239A        TO FLD0239B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0240A        FROM FLD0240B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0241A        TO FLD0241B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0242A        FROM FLD0242B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0243A        TO FLD0243B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0244A        FROM FLD0244B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0245A        TO FLD0245B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0246A        FROM FLD0246B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0247A        TO FLD0247B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0248A        FROM FLD0248B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0249A        TO FLD0249B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0250A        FROM FLD0250B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0251A        TO FLD0251B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0252A        FROM FLD0252B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0253A        TO FLD0253B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0254A        FROM FLD0254B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0255A        TO FLD0255B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0256A        FROM FLD0256B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0257A        TO FLD0257B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0258A        FROM FLD0258B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0259A        TO FLD0259B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0260A        FROM FLD0260B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0261A        TO FLD0261B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0262A        FROM FLD0262B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0263A        TO FLD0263B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0264A        FROM FLD0264B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0265A        TO FLD0265B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0266A        FROM FLD0266B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0267A        TO FLD0267B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0268A        FROM FLD0268B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0269A        TO FLD0269B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0270A        FROM FLD0270B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0271A        TO FLD0271B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0272A        FROM FLD0272B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0273A        TO FLD0273B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0274A        FROM FLD0274B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0275A        TO FLD0275B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0276A        FROM FLD0276B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0277A        TO FLD0277B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0278A        FROM FLD0278B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0279A        TO FLD0279B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0280A        FROM FLD0280B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0281A        TO FLD0281B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0282A        FROM FLD0282B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0283A        TO FLD0283B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0284A        FROM FLD0284B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0285A        TO FLD0285B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0286A        FROM FLD0286B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0287A        TO FLD0287B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0288A        FROM FLD0288B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0289A        TO FLD0289B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0290A        FROM FLD0290B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0291A        TO FLD0291B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0292A        FROM FLD0292B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0293A        TO FLD0293B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0294A        FROM FLD0294B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0295A        TO FLD0295B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0296A        FROM FLD0296B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0297A        TO FLD0297B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0298A        FROM FLD0298B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0299A        TO FLD0299B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0300A        FROM FLD0300B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0301A        TO FLD0301B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0302A        FROM FLD0302B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0303A        TO FLD0303B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0304A        FROM FLD0304B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0305A        TO FLD0305B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0306A        FROM FLD0306B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0307A        TO FLD0307B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0308A        FROM FLD0308B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0309A        TO FLD0309B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0310A        FROM FLD0310B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0311A        TO FLD0311B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0312A        FROM FLD0312B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0313A        TO FLD0313B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0314A        FROM FLD0314B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0315A        TO FLD0315B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0316A        FROM FLD0316B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0317A        TO FLD0317B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0318A        FROM FLD0318B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0319A        TO FLD0319B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0320A        FROM FLD0320B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0321A        TO FLD0321B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0322A        FROM FLD0322B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0323A        TO FLD0323B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0324A        FROM FLD0324B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0325A        TO FLD0325B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0326A        FROM FLD0326B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0327A        TO FLD0327B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0328A        FROM FLD0328B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0329A        TO FLD0329B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0330A        FROM FLD0330B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0331A        TO FLD0331B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0332A        FROM FLD0332B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0333A        TO FLD0333B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0334A        FROM FLD0334B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0335A        TO FLD0335B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0336A        FROM FLD0336B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0337A        TO FLD0337B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0338A        FROM FLD0338B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0339A        TO FLD0339B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0340A        FROM FLD0340B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0341A        TO FLD0341B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0342A        FROM FLD0342B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0343A        TO FLD0343B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0344A        FROM FLD0344B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0345A        TO FLD0345B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0346A        FROM FLD0346B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0347A        TO FLD0347B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0348A        FROM FLD0348B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0349A        TO FLD0349B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0350A        FROM FLD0350B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0351A        TO FLD0351B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0352A        FROM FLD0352B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0353A        TO FLD0353B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0354A        FROM FLD0354B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0355A        TO FLD0355B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0356A        FROM FLD0356B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0357A        TO FLD0357B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0358A        FROM FLD0358B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0359A        TO FLD0359B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0360A        FROM FLD0360B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0361A        TO FLD0361B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0362A        FROM FLD0362B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0363A        TO FLD0363B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0364A        FROM FLD0364B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0365A        TO FLD0365B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0366A        FROM FLD0366B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0367A        TO FLD0367B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0368A        FROM FLD0368B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0369A        TO FLD0369B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0370A        FROM FLD0370B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0371A        TO FLD0371B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0372A        FROM FLD0372B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0373A        TO FLD0373B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0374A        FROM FLD0374B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0375A        TO FLD0375B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0376A        FROM FLD0376B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0377A        TO FLD0377B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0378A        FROM FLD0378B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0379A        TO FLD0379B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0380A        FROM FLD0380B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0381A        TO FLD0381B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0382A        FROM FLD0382B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0383A        TO FLD0383B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0384A        FROM FLD0384B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0385A        TO FLD0385B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0386A        FROM FLD0386B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0387A        TO FLD0387B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0388A        FROM FLD0388B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0389A        TO FLD0389B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0390A        FROM FLD0390B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0391A        TO FLD0391B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0392A        FROM FLD0392B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0393A        TO FLD0393B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0394A        FROM FLD0394B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0395A        TO FLD0395B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0396A        FROM FLD0396B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0397A        TO FLD0397B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0398A        FROM FLD0398B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0399A        TO FLD0399B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0400A        FROM FLD0400B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0401A        TO FLD0401B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0402A        FROM FLD0402B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0403A        TO FLD0403B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0404A        FROM FLD0404B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0405A        TO FLD0405B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0406A        FROM FLD0406B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0407A        TO FLD0407B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0408A        FROM FLD0408B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0409A        TO FLD0409B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0410A        FROM FLD0410B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0411A        TO FLD0411B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0412A        FROM FLD0412B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0413A        TO FLD0413B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0414A        FROM FLD0414B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0415A        TO FLD0415B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0416A        FROM FLD0416B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0417A        TO FLD0417B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0418A        FROM FLD0418B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0419A        TO FLD0419B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0420A        FROM FLD0420B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0421A        TO FLD0421B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0422A        FROM FLD0422B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0423A        TO FLD0423B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0424A        FROM FLD0424B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0425A        TO FLD0425B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0426A        FROM FLD0426B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0427A        TO FLD0427B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0428A        FROM FLD0428B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0429A        TO FLD0429B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0430A        FROM FLD0430B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0431A        TO FLD0431B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0432A        FROM FLD0432B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0433A        TO FLD0433B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0434A        FROM FLD0434B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0435A        TO FLD0435B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0436A        FROM FLD0436B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0437A        TO FLD0437B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0438A        FROM FLD0438B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0439A        TO FLD0439B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0440A        FROM FLD0440B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0441A        TO FLD0441B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0442A        FROM FLD0442B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0443A        TO FLD0443B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0444A        FROM FLD0444B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0445A        TO FLD0445B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0446A        FROM FLD0446B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0447A        TO FLD0447B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0448A        FROM FLD0448B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0449A        TO FLD0449B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0450A        FROM FLD0450B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0451A        TO FLD0451B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0452A        FROM FLD0452B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0453A        TO FLD0453B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0454A        FROM FLD0454B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0455A        TO FLD0455B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0456A        FROM FLD0456B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0457A        TO FLD0457B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0458A        FROM FLD0458B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0459A        TO FLD0459B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0460A        FROM FLD0460B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0461A        TO FLD0461B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0462A        FROM FLD0462B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0463A        TO FLD0463B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0464A        FROM FLD0464B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0465A        TO FLD0465B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0466A        FROM FLD0466B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0467A        TO FLD0467B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0468A        FROM FLD0468B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0469A        TO FLD0469B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0470A        FROM FLD0470B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0471A        TO FLD0471B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0472A        FROM FLD0472B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0473A        TO FLD0473B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0474A        FROM FLD0474B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0475A        TO FLD0475B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0476A        FROM FLD0476B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0477A        TO FLD0477B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0478A        FROM FLD0478B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0479A        TO FLD0479B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0480A        FROM FLD0480B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0481A        TO FLD0481B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0482A        FROM FLD0482B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0483A        TO FLD0483B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0484A        FROM FLD0484B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0485A        TO FLD0485B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0486A        FROM FLD0486B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0487A        TO FLD0487B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0488A        FROM FLD0488B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0489A        TO FLD0489B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0490A        FROM FLD0490B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0491A        TO FLD0491B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0492A        FROM FLD0492B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0493A        TO FLD0493B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0494A        FROM FLD0494B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0495A        TO FLD0495B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0496A        FROM FLD0496B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0497A        TO FLD0497B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0498A        FROM FLD0498B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0499A        TO FLD0499B
               ROUNDED MODE IS NEAREST-EVEN          .

      *4000-COMPARE.

           IF FLD0001B (1:)    NOT EQUAL XPC-FLD0001B
              DISPLAY 'FLD0001B ==> ' FLD0001B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0001B.
           IF FLD0002B (1:)    NOT EQUAL XPC-FLD0002B
              DISPLAY 'FLD0002B ==> ' FLD0002B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0002B.
           IF FLD0003B (1:)    NOT EQUAL XPC-FLD0003B
              DISPLAY 'FLD0003B ==> ' FLD0003B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0003B.
           IF FLD0004B (1:)    NOT EQUAL XPC-FLD0004B
              DISPLAY 'FLD0004B ==> ' FLD0004B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0004B.
           IF FLD0005B (1:)    NOT EQUAL XPC-FLD0005B
              DISPLAY 'FLD0005B ==> ' FLD0005B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0005B.
           IF FLD0006B (1:)    NOT EQUAL XPC-FLD0006B
              DISPLAY 'FLD0006B ==> ' FLD0006B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0006B.
           IF FLD0007B (1:)    NOT EQUAL XPC-FLD0007B
              DISPLAY 'FLD0007B ==> ' FLD0007B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0007B.
           IF FLD0008B (1:)    NOT EQUAL XPC-FLD0008B
              DISPLAY 'FLD0008B ==> ' FLD0008B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0008B.
           IF FLD0009B (1:)    NOT EQUAL XPC-FLD0009B
              DISPLAY 'FLD0009B ==> ' FLD0009B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0009B.
           IF FLD0010B (1:)    NOT EQUAL XPC-FLD0010B
              DISPLAY 'FLD0010B ==> ' FLD0010B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0010B.
           IF FLD0011B (1:)    NOT EQUAL XPC-FLD0011B
              DISPLAY 'FLD0011B ==> ' FLD0011B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0011B.
           IF FLD0012B (1:)    NOT EQUAL XPC-FLD0012B
              DISPLAY 'FLD0012B ==> ' FLD0012B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0012B.
           IF FLD0013B (1:)    NOT EQUAL XPC-FLD0013B
              DISPLAY 'FLD0013B ==> ' FLD0013B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0013B.
           IF FLD0014B (1:)    NOT EQUAL XPC-FLD0014B
              DISPLAY 'FLD0014B ==> ' FLD0014B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0014B.
           IF FLD0015B (1:)    NOT EQUAL XPC-FLD0015B
              DISPLAY 'FLD0015B ==> ' FLD0015B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0015B.
           IF FLD0016B (1:)    NOT EQUAL XPC-FLD0016B
              DISPLAY 'FLD0016B ==> ' FLD0016B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0016B.
           IF FLD0017B (1:)    NOT EQUAL XPC-FLD0017B
              DISPLAY 'FLD0017B ==> ' FLD0017B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0017B.
           IF FLD0018B (1:)    NOT EQUAL XPC-FLD0018B
              DISPLAY 'FLD0018B ==> ' FLD0018B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0018B.
           IF FLD0019B (1:)    NOT EQUAL XPC-FLD0019B
              DISPLAY 'FLD0019B ==> ' FLD0019B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0019B.
           IF FLD0020B (1:)    NOT EQUAL XPC-FLD0020B
              DISPLAY 'FLD0020B ==> ' FLD0020B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0020B.
           IF FLD0021B (1:)    NOT EQUAL XPC-FLD0021B
              DISPLAY 'FLD0021B ==> ' FLD0021B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0021B.
           IF FLD0022B (1:)    NOT EQUAL XPC-FLD0022B
              DISPLAY 'FLD0022B ==> ' FLD0022B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0022B.
           IF FLD0023B (1:)    NOT EQUAL XPC-FLD0023B
              DISPLAY 'FLD0023B ==> ' FLD0023B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0023B.
           IF FLD0024B (1:)    NOT EQUAL XPC-FLD0024B
              DISPLAY 'FLD0024B ==> ' FLD0024B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0024B.
           IF FLD0025B (1:)    NOT EQUAL XPC-FLD0025B
              DISPLAY 'FLD0025B ==> ' FLD0025B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0025B.
           IF FLD0026B (1:)    NOT EQUAL XPC-FLD0026B
              DISPLAY 'FLD0026B ==> ' FLD0026B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0026B.
           IF FLD0027B (1:)    NOT EQUAL XPC-FLD0027B
              DISPLAY 'FLD0027B ==> ' FLD0027B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0027B.
           IF FLD0028B (1:)    NOT EQUAL XPC-FLD0028B
              DISPLAY 'FLD0028B ==> ' FLD0028B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0028B.
           IF FLD0029B (1:)    NOT EQUAL XPC-FLD0029B
              DISPLAY 'FLD0029B ==> ' FLD0029B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0029B.
           IF FLD0030B (1:)    NOT EQUAL XPC-FLD0030B
              DISPLAY 'FLD0030B ==> ' FLD0030B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0030B.
           IF FLD0031B (1:)    NOT EQUAL XPC-FLD0031B
              DISPLAY 'FLD0031B ==> ' FLD0031B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0031B.
           IF FLD0032B (1:)    NOT EQUAL XPC-FLD0032B
              DISPLAY 'FLD0032B ==> ' FLD0032B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0032B.
           IF FLD0033B (1:)    NOT EQUAL XPC-FLD0033B
              DISPLAY 'FLD0033B ==> ' FLD0033B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0033B.
           IF FLD0034B (1:)    NOT EQUAL XPC-FLD0034B
              DISPLAY 'FLD0034B ==> ' FLD0034B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0034B.
           IF FLD0035B (1:)    NOT EQUAL XPC-FLD0035B
              DISPLAY 'FLD0035B ==> ' FLD0035B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0035B.
           IF FLD0036B (1:)    NOT EQUAL XPC-FLD0036B
              DISPLAY 'FLD0036B ==> ' FLD0036B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0036B.
           IF FLD0037B (1:)    NOT EQUAL XPC-FLD0037B
              DISPLAY 'FLD0037B ==> ' FLD0037B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0037B.
           IF FLD0038B (1:)    NOT EQUAL XPC-FLD0038B
              DISPLAY 'FLD0038B ==> ' FLD0038B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0038B.
           IF FLD0039B (1:)    NOT EQUAL XPC-FLD0039B
              DISPLAY 'FLD0039B ==> ' FLD0039B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0039B.
           IF FLD0040B (1:)    NOT EQUAL XPC-FLD0040B
              DISPLAY 'FLD0040B ==> ' FLD0040B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0040B.
           IF FLD0041B (1:)    NOT EQUAL XPC-FLD0041B
              DISPLAY 'FLD0041B ==> ' FLD0041B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0041B.
           IF FLD0042B (1:)    NOT EQUAL XPC-FLD0042B
              DISPLAY 'FLD0042B ==> ' FLD0042B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0042B.
           IF FLD0043B (1:)    NOT EQUAL XPC-FLD0043B
              DISPLAY 'FLD0043B ==> ' FLD0043B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0043B.
           IF FLD0044B (1:)    NOT EQUAL XPC-FLD0044B
              DISPLAY 'FLD0044B ==> ' FLD0044B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0044B.
           IF FLD0045B (1:)    NOT EQUAL XPC-FLD0045B
              DISPLAY 'FLD0045B ==> ' FLD0045B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0045B.
           IF FLD0046B (1:)    NOT EQUAL XPC-FLD0046B
              DISPLAY 'FLD0046B ==> ' FLD0046B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0046B.
           IF FLD0047B (1:)    NOT EQUAL XPC-FLD0047B
              DISPLAY 'FLD0047B ==> ' FLD0047B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0047B.
           IF FLD0048B (1:)    NOT EQUAL XPC-FLD0048B
              DISPLAY 'FLD0048B ==> ' FLD0048B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0048B.
           IF FLD0049B (1:)    NOT EQUAL XPC-FLD0049B
              DISPLAY 'FLD0049B ==> ' FLD0049B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0049B.
           IF FLD0050B (1:)    NOT EQUAL XPC-FLD0050B
              DISPLAY 'FLD0050B ==> ' FLD0050B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0050B.
           IF FLD0051B (1:)    NOT EQUAL XPC-FLD0051B
              DISPLAY 'FLD0051B ==> ' FLD0051B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0051B.
           IF FLD0052B (1:)    NOT EQUAL XPC-FLD0052B
              DISPLAY 'FLD0052B ==> ' FLD0052B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0052B.
           IF FLD0053B (1:)    NOT EQUAL XPC-FLD0053B
              DISPLAY 'FLD0053B ==> ' FLD0053B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0053B.
           IF FLD0054B (1:)    NOT EQUAL XPC-FLD0054B
              DISPLAY 'FLD0054B ==> ' FLD0054B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0054B.
           IF FLD0055B (1:)    NOT EQUAL XPC-FLD0055B
              DISPLAY 'FLD0055B ==> ' FLD0055B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0055B.
           IF FLD0056B (1:)    NOT EQUAL XPC-FLD0056B
              DISPLAY 'FLD0056B ==> ' FLD0056B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0056B.
           IF FLD0057B (1:)    NOT EQUAL XPC-FLD0057B
              DISPLAY 'FLD0057B ==> ' FLD0057B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0057B.
           IF FLD0058B (1:)    NOT EQUAL XPC-FLD0058B
              DISPLAY 'FLD0058B ==> ' FLD0058B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0058B.
           IF FLD0059B (1:)    NOT EQUAL XPC-FLD0059B
              DISPLAY 'FLD0059B ==> ' FLD0059B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0059B.
           IF FLD0060B (1:)    NOT EQUAL XPC-FLD0060B
              DISPLAY 'FLD0060B ==> ' FLD0060B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0060B.
           IF FLD0061B (1:)    NOT EQUAL XPC-FLD0061B
              DISPLAY 'FLD0061B ==> ' FLD0061B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0061B.
           IF FLD0062B (1:)    NOT EQUAL XPC-FLD0062B
              DISPLAY 'FLD0062B ==> ' FLD0062B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0062B.
           IF FLD0063B (1:)    NOT EQUAL XPC-FLD0063B
              DISPLAY 'FLD0063B ==> ' FLD0063B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0063B.
           IF FLD0064B (1:)    NOT EQUAL XPC-FLD0064B
              DISPLAY 'FLD0064B ==> ' FLD0064B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0064B.
           IF FLD0065B (1:)    NOT EQUAL XPC-FLD0065B
              DISPLAY 'FLD0065B ==> ' FLD0065B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0065B.
           IF FLD0066B (1:)    NOT EQUAL XPC-FLD0066B
              DISPLAY 'FLD0066B ==> ' FLD0066B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0066B.
           IF FLD0067B (1:)    NOT EQUAL XPC-FLD0067B
              DISPLAY 'FLD0067B ==> ' FLD0067B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0067B.
           IF FLD0068B (1:)    NOT EQUAL XPC-FLD0068B
              DISPLAY 'FLD0068B ==> ' FLD0068B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0068B.
           IF FLD0069B (1:)    NOT EQUAL XPC-FLD0069B
              DISPLAY 'FLD0069B ==> ' FLD0069B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0069B.
           IF FLD0070B (1:)    NOT EQUAL XPC-FLD0070B
              DISPLAY 'FLD0070B ==> ' FLD0070B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0070B.
           IF FLD0071B (1:)    NOT EQUAL XPC-FLD0071B
              DISPLAY 'FLD0071B ==> ' FLD0071B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0071B.
           IF FLD0072B (1:)    NOT EQUAL XPC-FLD0072B
              DISPLAY 'FLD0072B ==> ' FLD0072B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0072B.
           IF FLD0073B (1:)    NOT EQUAL XPC-FLD0073B
              DISPLAY 'FLD0073B ==> ' FLD0073B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0073B.
           IF FLD0074B (1:)    NOT EQUAL XPC-FLD0074B
              DISPLAY 'FLD0074B ==> ' FLD0074B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0074B.
           IF FLD0075B (1:)    NOT EQUAL XPC-FLD0075B
              DISPLAY 'FLD0075B ==> ' FLD0075B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0075B.
           IF FLD0076B (1:)    NOT EQUAL XPC-FLD0076B
              DISPLAY 'FLD0076B ==> ' FLD0076B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0076B.
           IF FLD0077B (1:)    NOT EQUAL XPC-FLD0077B
              DISPLAY 'FLD0077B ==> ' FLD0077B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0077B.
           IF FLD0078B (1:)    NOT EQUAL XPC-FLD0078B
              DISPLAY 'FLD0078B ==> ' FLD0078B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0078B.
           IF FLD0079B (1:)    NOT EQUAL XPC-FLD0079B
              DISPLAY 'FLD0079B ==> ' FLD0079B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0079B.
           IF FLD0080B (1:)    NOT EQUAL XPC-FLD0080B
              DISPLAY 'FLD0080B ==> ' FLD0080B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0080B.
           IF FLD0081B (1:)    NOT EQUAL XPC-FLD0081B
              DISPLAY 'FLD0081B ==> ' FLD0081B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0081B.
           IF FLD0082B (1:)    NOT EQUAL XPC-FLD0082B
              DISPLAY 'FLD0082B ==> ' FLD0082B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0082B.
           IF FLD0083B (1:)    NOT EQUAL XPC-FLD0083B
              DISPLAY 'FLD0083B ==> ' FLD0083B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0083B.
           IF FLD0084B (1:)    NOT EQUAL XPC-FLD0084B
              DISPLAY 'FLD0084B ==> ' FLD0084B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0084B.
           IF FLD0085B (1:)    NOT EQUAL XPC-FLD0085B
              DISPLAY 'FLD0085B ==> ' FLD0085B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0085B.
           IF FLD0086B (1:)    NOT EQUAL XPC-FLD0086B
              DISPLAY 'FLD0086B ==> ' FLD0086B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0086B.
           IF FLD0087B (1:)    NOT EQUAL XPC-FLD0087B
              DISPLAY 'FLD0087B ==> ' FLD0087B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0087B.
           IF FLD0088B (1:)    NOT EQUAL XPC-FLD0088B
              DISPLAY 'FLD0088B ==> ' FLD0088B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0088B.
           IF FLD0089B (1:)    NOT EQUAL XPC-FLD0089B
              DISPLAY 'FLD0089B ==> ' FLD0089B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0089B.
           IF FLD0090B (1:)    NOT EQUAL XPC-FLD0090B
              DISPLAY 'FLD0090B ==> ' FLD0090B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0090B.
           IF FLD0091B (1:)    NOT EQUAL XPC-FLD0091B
              DISPLAY 'FLD0091B ==> ' FLD0091B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0091B.
           IF FLD0092B (1:)    NOT EQUAL XPC-FLD0092B
              DISPLAY 'FLD0092B ==> ' FLD0092B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0092B.
           IF FLD0093B (1:)    NOT EQUAL XPC-FLD0093B
              DISPLAY 'FLD0093B ==> ' FLD0093B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0093B.
           IF FLD0094B (1:)    NOT EQUAL XPC-FLD0094B
              DISPLAY 'FLD0094B ==> ' FLD0094B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0094B.
           IF FLD0095B (1:)    NOT EQUAL XPC-FLD0095B
              DISPLAY 'FLD0095B ==> ' FLD0095B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0095B.
           IF FLD0096B (1:)    NOT EQUAL XPC-FLD0096B
              DISPLAY 'FLD0096B ==> ' FLD0096B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0096B.
           IF FLD0097B (1:)    NOT EQUAL XPC-FLD0097B
              DISPLAY 'FLD0097B ==> ' FLD0097B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0097B.
           IF FLD0098B (1:)    NOT EQUAL XPC-FLD0098B
              DISPLAY 'FLD0098B ==> ' FLD0098B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0098B.
           IF FLD0099B (1:)    NOT EQUAL XPC-FLD0099B
              DISPLAY 'FLD0099B ==> ' FLD0099B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0099B.
           IF FLD0100B (1:)    NOT EQUAL XPC-FLD0100B
              DISPLAY 'FLD0100B ==> ' FLD0100B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0100B.
           IF FLD0101B (1:)    NOT EQUAL XPC-FLD0101B
              DISPLAY 'FLD0101B ==> ' FLD0101B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0101B.
           IF FLD0102B (1:)    NOT EQUAL XPC-FLD0102B
              DISPLAY 'FLD0102B ==> ' FLD0102B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0102B.
           IF FLD0103B (1:)    NOT EQUAL XPC-FLD0103B
              DISPLAY 'FLD0103B ==> ' FLD0103B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0103B.
           IF FLD0104B (1:)    NOT EQUAL XPC-FLD0104B
              DISPLAY 'FLD0104B ==> ' FLD0104B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0104B.
           IF FLD0105B (1:)    NOT EQUAL XPC-FLD0105B
              DISPLAY 'FLD0105B ==> ' FLD0105B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0105B.
           IF FLD0106B (1:)    NOT EQUAL XPC-FLD0106B
              DISPLAY 'FLD0106B ==> ' FLD0106B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0106B.
           IF FLD0107B (1:)    NOT EQUAL XPC-FLD0107B
              DISPLAY 'FLD0107B ==> ' FLD0107B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0107B.
           IF FLD0108B (1:)    NOT EQUAL XPC-FLD0108B
              DISPLAY 'FLD0108B ==> ' FLD0108B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0108B.
           IF FLD0109B (1:)    NOT EQUAL XPC-FLD0109B
              DISPLAY 'FLD0109B ==> ' FLD0109B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0109B.
           IF FLD0110B (1:)    NOT EQUAL XPC-FLD0110B
              DISPLAY 'FLD0110B ==> ' FLD0110B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0110B.
           IF FLD0111B (1:)    NOT EQUAL XPC-FLD0111B
              DISPLAY 'FLD0111B ==> ' FLD0111B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0111B.
           IF FLD0112B (1:)    NOT EQUAL XPC-FLD0112B
              DISPLAY 'FLD0112B ==> ' FLD0112B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0112B.
           IF FLD0113B (1:)    NOT EQUAL XPC-FLD0113B
              DISPLAY 'FLD0113B ==> ' FLD0113B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0113B.
           IF FLD0114B (1:)    NOT EQUAL XPC-FLD0114B
              DISPLAY 'FLD0114B ==> ' FLD0114B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0114B.
           IF FLD0115B (1:)    NOT EQUAL XPC-FLD0115B
              DISPLAY 'FLD0115B ==> ' FLD0115B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0115B.
           IF FLD0116B (1:)    NOT EQUAL XPC-FLD0116B
              DISPLAY 'FLD0116B ==> ' FLD0116B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0116B.
           IF FLD0117B (1:)    NOT EQUAL XPC-FLD0117B
              DISPLAY 'FLD0117B ==> ' FLD0117B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0117B.
           IF FLD0118B (1:)    NOT EQUAL XPC-FLD0118B
              DISPLAY 'FLD0118B ==> ' FLD0118B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0118B.
           IF FLD0119B (1:)    NOT EQUAL XPC-FLD0119B
              DISPLAY 'FLD0119B ==> ' FLD0119B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0119B.
           IF FLD0120B (1:)    NOT EQUAL XPC-FLD0120B
              DISPLAY 'FLD0120B ==> ' FLD0120B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0120B.
           IF FLD0121B (1:)    NOT EQUAL XPC-FLD0121B
              DISPLAY 'FLD0121B ==> ' FLD0121B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0121B.
           IF FLD0122B (1:)    NOT EQUAL XPC-FLD0122B
              DISPLAY 'FLD0122B ==> ' FLD0122B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0122B.
           IF FLD0123B (1:)    NOT EQUAL XPC-FLD0123B
              DISPLAY 'FLD0123B ==> ' FLD0123B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0123B.
           IF FLD0124B (1:)    NOT EQUAL XPC-FLD0124B
              DISPLAY 'FLD0124B ==> ' FLD0124B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0124B.
           IF FLD0125B (1:)    NOT EQUAL XPC-FLD0125B
              DISPLAY 'FLD0125B ==> ' FLD0125B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0125B.
           IF FLD0126B (1:)    NOT EQUAL XPC-FLD0126B
              DISPLAY 'FLD0126B ==> ' FLD0126B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0126B.
           IF FLD0127B (1:)    NOT EQUAL XPC-FLD0127B
              DISPLAY 'FLD0127B ==> ' FLD0127B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0127B.
           IF FLD0128B (1:)    NOT EQUAL XPC-FLD0128B
              DISPLAY 'FLD0128B ==> ' FLD0128B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0128B.
           IF FLD0129B (1:)    NOT EQUAL XPC-FLD0129B
              DISPLAY 'FLD0129B ==> ' FLD0129B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0129B.
           IF FLD0130B (1:)    NOT EQUAL XPC-FLD0130B
              DISPLAY 'FLD0130B ==> ' FLD0130B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0130B.
           IF FLD0131B (1:)    NOT EQUAL XPC-FLD0131B
              DISPLAY 'FLD0131B ==> ' FLD0131B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0131B.
           IF FLD0132B (1:)    NOT EQUAL XPC-FLD0132B
              DISPLAY 'FLD0132B ==> ' FLD0132B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0132B.
           IF FLD0133B (1:)    NOT EQUAL XPC-FLD0133B
              DISPLAY 'FLD0133B ==> ' FLD0133B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0133B.
           IF FLD0134B (1:)    NOT EQUAL XPC-FLD0134B
              DISPLAY 'FLD0134B ==> ' FLD0134B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0134B.
           IF FLD0135B (1:)    NOT EQUAL XPC-FLD0135B
              DISPLAY 'FLD0135B ==> ' FLD0135B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0135B.
           IF FLD0136B (1:)    NOT EQUAL XPC-FLD0136B
              DISPLAY 'FLD0136B ==> ' FLD0136B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0136B.
           IF FLD0137B (1:)    NOT EQUAL XPC-FLD0137B
              DISPLAY 'FLD0137B ==> ' FLD0137B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0137B.
           IF FLD0138B (1:)    NOT EQUAL XPC-FLD0138B
              DISPLAY 'FLD0138B ==> ' FLD0138B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0138B.
           IF FLD0139B (1:)    NOT EQUAL XPC-FLD0139B
              DISPLAY 'FLD0139B ==> ' FLD0139B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0139B.
           IF FLD0140B (1:)    NOT EQUAL XPC-FLD0140B
              DISPLAY 'FLD0140B ==> ' FLD0140B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0140B.
           IF FLD0141B (1:)    NOT EQUAL XPC-FLD0141B
              DISPLAY 'FLD0141B ==> ' FLD0141B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0141B.
           IF FLD0142B (1:)    NOT EQUAL XPC-FLD0142B
              DISPLAY 'FLD0142B ==> ' FLD0142B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0142B.
           IF FLD0143B (1:)    NOT EQUAL XPC-FLD0143B
              DISPLAY 'FLD0143B ==> ' FLD0143B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0143B.
           IF FLD0144B (1:)    NOT EQUAL XPC-FLD0144B
              DISPLAY 'FLD0144B ==> ' FLD0144B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0144B.
           IF FLD0145B (1:)    NOT EQUAL XPC-FLD0145B
              DISPLAY 'FLD0145B ==> ' FLD0145B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0145B.
           IF FLD0146B (1:)    NOT EQUAL XPC-FLD0146B
              DISPLAY 'FLD0146B ==> ' FLD0146B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0146B.
           IF FLD0147B (1:)    NOT EQUAL XPC-FLD0147B
              DISPLAY 'FLD0147B ==> ' FLD0147B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0147B.
           IF FLD0148B (1:)    NOT EQUAL XPC-FLD0148B
              DISPLAY 'FLD0148B ==> ' FLD0148B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0148B.
           IF FLD0149B (1:)    NOT EQUAL XPC-FLD0149B
              DISPLAY 'FLD0149B ==> ' FLD0149B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0149B.
           IF FLD0150B (1:)    NOT EQUAL XPC-FLD0150B
              DISPLAY 'FLD0150B ==> ' FLD0150B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0150B.
           IF FLD0151B (1:)    NOT EQUAL XPC-FLD0151B
              DISPLAY 'FLD0151B ==> ' FLD0151B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0151B.
           IF FLD0152B (1:)    NOT EQUAL XPC-FLD0152B
              DISPLAY 'FLD0152B ==> ' FLD0152B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0152B.
           IF FLD0153B (1:)    NOT EQUAL XPC-FLD0153B
              DISPLAY 'FLD0153B ==> ' FLD0153B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0153B.
           IF FLD0154B (1:)    NOT EQUAL XPC-FLD0154B
              DISPLAY 'FLD0154B ==> ' FLD0154B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0154B.
           IF FLD0155B (1:)    NOT EQUAL XPC-FLD0155B
              DISPLAY 'FLD0155B ==> ' FLD0155B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0155B.
           IF FLD0156B (1:)    NOT EQUAL XPC-FLD0156B
              DISPLAY 'FLD0156B ==> ' FLD0156B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0156B.
           IF FLD0157B (1:)    NOT EQUAL XPC-FLD0157B
              DISPLAY 'FLD0157B ==> ' FLD0157B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0157B.
           IF FLD0158B (1:)    NOT EQUAL XPC-FLD0158B
              DISPLAY 'FLD0158B ==> ' FLD0158B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0158B.
           IF FLD0159B (1:)    NOT EQUAL XPC-FLD0159B
              DISPLAY 'FLD0159B ==> ' FLD0159B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0159B.
           IF FLD0160B (1:)    NOT EQUAL XPC-FLD0160B
              DISPLAY 'FLD0160B ==> ' FLD0160B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0160B.
           IF FLD0161B (1:)    NOT EQUAL XPC-FLD0161B
              DISPLAY 'FLD0161B ==> ' FLD0161B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0161B.
           IF FLD0162B (1:)    NOT EQUAL XPC-FLD0162B
              DISPLAY 'FLD0162B ==> ' FLD0162B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0162B.
           IF FLD0163B (1:)    NOT EQUAL XPC-FLD0163B
              DISPLAY 'FLD0163B ==> ' FLD0163B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0163B.
           IF FLD0164B (1:)    NOT EQUAL XPC-FLD0164B
              DISPLAY 'FLD0164B ==> ' FLD0164B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0164B.
           IF FLD0165B (1:)    NOT EQUAL XPC-FLD0165B
              DISPLAY 'FLD0165B ==> ' FLD0165B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0165B.
           IF FLD0166B (1:)    NOT EQUAL XPC-FLD0166B
              DISPLAY 'FLD0166B ==> ' FLD0166B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0166B.
           IF FLD0167B (1:)    NOT EQUAL XPC-FLD0167B
              DISPLAY 'FLD0167B ==> ' FLD0167B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0167B.
           IF FLD0168B (1:)    NOT EQUAL XPC-FLD0168B
              DISPLAY 'FLD0168B ==> ' FLD0168B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0168B.
           IF FLD0169B (1:)    NOT EQUAL XPC-FLD0169B
              DISPLAY 'FLD0169B ==> ' FLD0169B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0169B.
           IF FLD0170B (1:)    NOT EQUAL XPC-FLD0170B
              DISPLAY 'FLD0170B ==> ' FLD0170B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0170B.
           IF FLD0171B (1:)    NOT EQUAL XPC-FLD0171B
              DISPLAY 'FLD0171B ==> ' FLD0171B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0171B.
           IF FLD0172B (1:)    NOT EQUAL XPC-FLD0172B
              DISPLAY 'FLD0172B ==> ' FLD0172B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0172B.
           IF FLD0173B (1:)    NOT EQUAL XPC-FLD0173B
              DISPLAY 'FLD0173B ==> ' FLD0173B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0173B.
           IF FLD0174B (1:)    NOT EQUAL XPC-FLD0174B
              DISPLAY 'FLD0174B ==> ' FLD0174B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0174B.
           IF FLD0175B (1:)    NOT EQUAL XPC-FLD0175B
              DISPLAY 'FLD0175B ==> ' FLD0175B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0175B.
           IF FLD0176B (1:)    NOT EQUAL XPC-FLD0176B
              DISPLAY 'FLD0176B ==> ' FLD0176B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0176B.
           IF FLD0177B (1:)    NOT EQUAL XPC-FLD0177B
              DISPLAY 'FLD0177B ==> ' FLD0177B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0177B.
           IF FLD0178B (1:)    NOT EQUAL XPC-FLD0178B
              DISPLAY 'FLD0178B ==> ' FLD0178B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0178B.
           IF FLD0179B (1:)    NOT EQUAL XPC-FLD0179B
              DISPLAY 'FLD0179B ==> ' FLD0179B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0179B.
           IF FLD0180B (1:)    NOT EQUAL XPC-FLD0180B
              DISPLAY 'FLD0180B ==> ' FLD0180B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0180B.
           IF FLD0181B (1:)    NOT EQUAL XPC-FLD0181B
              DISPLAY 'FLD0181B ==> ' FLD0181B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0181B.
           IF FLD0182B (1:)    NOT EQUAL XPC-FLD0182B
              DISPLAY 'FLD0182B ==> ' FLD0182B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0182B.
           IF FLD0183B (1:)    NOT EQUAL XPC-FLD0183B
              DISPLAY 'FLD0183B ==> ' FLD0183B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0183B.
           IF FLD0184B (1:)    NOT EQUAL XPC-FLD0184B
              DISPLAY 'FLD0184B ==> ' FLD0184B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0184B.
           IF FLD0185B (1:)    NOT EQUAL XPC-FLD0185B
              DISPLAY 'FLD0185B ==> ' FLD0185B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0185B.
           IF FLD0186B (1:)    NOT EQUAL XPC-FLD0186B
              DISPLAY 'FLD0186B ==> ' FLD0186B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0186B.
           IF FLD0187B (1:)    NOT EQUAL XPC-FLD0187B
              DISPLAY 'FLD0187B ==> ' FLD0187B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0187B.
           IF FLD0188B (1:)    NOT EQUAL XPC-FLD0188B
              DISPLAY 'FLD0188B ==> ' FLD0188B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0188B.
           IF FLD0189B (1:)    NOT EQUAL XPC-FLD0189B
              DISPLAY 'FLD0189B ==> ' FLD0189B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0189B.
           IF FLD0190B (1:)    NOT EQUAL XPC-FLD0190B
              DISPLAY 'FLD0190B ==> ' FLD0190B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0190B.
           IF FLD0191B (1:)    NOT EQUAL XPC-FLD0191B
              DISPLAY 'FLD0191B ==> ' FLD0191B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0191B.
           IF FLD0192B (1:)    NOT EQUAL XPC-FLD0192B
              DISPLAY 'FLD0192B ==> ' FLD0192B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0192B.
           IF FLD0193B (1:)    NOT EQUAL XPC-FLD0193B
              DISPLAY 'FLD0193B ==> ' FLD0193B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0193B.
           IF FLD0194B (1:)    NOT EQUAL XPC-FLD0194B
              DISPLAY 'FLD0194B ==> ' FLD0194B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0194B.
           IF FLD0195B (1:)    NOT EQUAL XPC-FLD0195B
              DISPLAY 'FLD0195B ==> ' FLD0195B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0195B.
           IF FLD0196B (1:)    NOT EQUAL XPC-FLD0196B
              DISPLAY 'FLD0196B ==> ' FLD0196B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0196B.
           IF FLD0197B (1:)    NOT EQUAL XPC-FLD0197B
              DISPLAY 'FLD0197B ==> ' FLD0197B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0197B.
           IF FLD0198B (1:)    NOT EQUAL XPC-FLD0198B
              DISPLAY 'FLD0198B ==> ' FLD0198B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0198B.
           IF FLD0199B (1:)    NOT EQUAL XPC-FLD0199B
              DISPLAY 'FLD0199B ==> ' FLD0199B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0199B.
           IF FLD0200B (1:)    NOT EQUAL XPC-FLD0200B
              DISPLAY 'FLD0200B ==> ' FLD0200B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0200B.
           IF FLD0201B (1:)    NOT EQUAL XPC-FLD0201B
              DISPLAY 'FLD0201B ==> ' FLD0201B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0201B.
           IF FLD0202B (1:)    NOT EQUAL XPC-FLD0202B
              DISPLAY 'FLD0202B ==> ' FLD0202B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0202B.
           IF FLD0203B (1:)    NOT EQUAL XPC-FLD0203B
              DISPLAY 'FLD0203B ==> ' FLD0203B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0203B.
           IF FLD0204B (1:)    NOT EQUAL XPC-FLD0204B
              DISPLAY 'FLD0204B ==> ' FLD0204B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0204B.
           IF FLD0205B (1:)    NOT EQUAL XPC-FLD0205B
              DISPLAY 'FLD0205B ==> ' FLD0205B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0205B.
           IF FLD0206B (1:)    NOT EQUAL XPC-FLD0206B
              DISPLAY 'FLD0206B ==> ' FLD0206B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0206B.
           IF FLD0207B (1:)    NOT EQUAL XPC-FLD0207B
              DISPLAY 'FLD0207B ==> ' FLD0207B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0207B.
           IF FLD0208B (1:)    NOT EQUAL XPC-FLD0208B
              DISPLAY 'FLD0208B ==> ' FLD0208B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0208B.
           IF FLD0209B (1:)    NOT EQUAL XPC-FLD0209B
              DISPLAY 'FLD0209B ==> ' FLD0209B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0209B.
           IF FLD0210B (1:)    NOT EQUAL XPC-FLD0210B
              DISPLAY 'FLD0210B ==> ' FLD0210B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0210B.
           IF FLD0211B (1:)    NOT EQUAL XPC-FLD0211B
              DISPLAY 'FLD0211B ==> ' FLD0211B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0211B.
           IF FLD0212B (1:)    NOT EQUAL XPC-FLD0212B
              DISPLAY 'FLD0212B ==> ' FLD0212B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0212B.
           IF FLD0213B (1:)    NOT EQUAL XPC-FLD0213B
              DISPLAY 'FLD0213B ==> ' FLD0213B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0213B.
           IF FLD0214B (1:)    NOT EQUAL XPC-FLD0214B
              DISPLAY 'FLD0214B ==> ' FLD0214B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0214B.
           IF FLD0215B (1:)    NOT EQUAL XPC-FLD0215B
              DISPLAY 'FLD0215B ==> ' FLD0215B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0215B.
           IF FLD0216B (1:)    NOT EQUAL XPC-FLD0216B
              DISPLAY 'FLD0216B ==> ' FLD0216B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0216B.
           IF FLD0217B (1:)    NOT EQUAL XPC-FLD0217B
              DISPLAY 'FLD0217B ==> ' FLD0217B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0217B.
           IF FLD0218B (1:)    NOT EQUAL XPC-FLD0218B
              DISPLAY 'FLD0218B ==> ' FLD0218B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0218B.
           IF FLD0219B (1:)    NOT EQUAL XPC-FLD0219B
              DISPLAY 'FLD0219B ==> ' FLD0219B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0219B.
           IF FLD0220B (1:)    NOT EQUAL XPC-FLD0220B
              DISPLAY 'FLD0220B ==> ' FLD0220B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0220B.
           IF FLD0221B (1:)    NOT EQUAL XPC-FLD0221B
              DISPLAY 'FLD0221B ==> ' FLD0221B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0221B.
           IF FLD0222B (1:)    NOT EQUAL XPC-FLD0222B
              DISPLAY 'FLD0222B ==> ' FLD0222B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0222B.
           IF FLD0223B (1:)    NOT EQUAL XPC-FLD0223B
              DISPLAY 'FLD0223B ==> ' FLD0223B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0223B.
           IF FLD0224B (1:)    NOT EQUAL XPC-FLD0224B
              DISPLAY 'FLD0224B ==> ' FLD0224B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0224B.
           IF FLD0225B (1:)    NOT EQUAL XPC-FLD0225B
              DISPLAY 'FLD0225B ==> ' FLD0225B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0225B.
           IF FLD0226B (1:)    NOT EQUAL XPC-FLD0226B
              DISPLAY 'FLD0226B ==> ' FLD0226B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0226B.
           IF FLD0227B (1:)    NOT EQUAL XPC-FLD0227B
              DISPLAY 'FLD0227B ==> ' FLD0227B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0227B.
           IF FLD0228B (1:)    NOT EQUAL XPC-FLD0228B
              DISPLAY 'FLD0228B ==> ' FLD0228B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0228B.
           IF FLD0229B (1:)    NOT EQUAL XPC-FLD0229B
              DISPLAY 'FLD0229B ==> ' FLD0229B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0229B.
           IF FLD0230B (1:)    NOT EQUAL XPC-FLD0230B
              DISPLAY 'FLD0230B ==> ' FLD0230B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0230B.
           IF FLD0231B (1:)    NOT EQUAL XPC-FLD0231B
              DISPLAY 'FLD0231B ==> ' FLD0231B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0231B.
           IF FLD0232B (1:)    NOT EQUAL XPC-FLD0232B
              DISPLAY 'FLD0232B ==> ' FLD0232B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0232B.
           IF FLD0233B (1:)    NOT EQUAL XPC-FLD0233B
              DISPLAY 'FLD0233B ==> ' FLD0233B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0233B.
           IF FLD0234B (1:)    NOT EQUAL XPC-FLD0234B
              DISPLAY 'FLD0234B ==> ' FLD0234B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0234B.
           IF FLD0235B (1:)    NOT EQUAL XPC-FLD0235B
              DISPLAY 'FLD0235B ==> ' FLD0235B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0235B.
           IF FLD0236B (1:)    NOT EQUAL XPC-FLD0236B
              DISPLAY 'FLD0236B ==> ' FLD0236B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0236B.
           IF FLD0237B (1:)    NOT EQUAL XPC-FLD0237B
              DISPLAY 'FLD0237B ==> ' FLD0237B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0237B.
           IF FLD0238B (1:)    NOT EQUAL XPC-FLD0238B
              DISPLAY 'FLD0238B ==> ' FLD0238B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0238B.
           IF FLD0239B (1:)    NOT EQUAL XPC-FLD0239B
              DISPLAY 'FLD0239B ==> ' FLD0239B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0239B.
           IF FLD0240B (1:)    NOT EQUAL XPC-FLD0240B
              DISPLAY 'FLD0240B ==> ' FLD0240B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0240B.
           IF FLD0241B (1:)    NOT EQUAL XPC-FLD0241B
              DISPLAY 'FLD0241B ==> ' FLD0241B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0241B.
           IF FLD0242B (1:)    NOT EQUAL XPC-FLD0242B
              DISPLAY 'FLD0242B ==> ' FLD0242B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0242B.
           IF FLD0243B (1:)    NOT EQUAL XPC-FLD0243B
              DISPLAY 'FLD0243B ==> ' FLD0243B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0243B.
           IF FLD0244B (1:)    NOT EQUAL XPC-FLD0244B
              DISPLAY 'FLD0244B ==> ' FLD0244B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0244B.
           IF FLD0245B (1:)    NOT EQUAL XPC-FLD0245B
              DISPLAY 'FLD0245B ==> ' FLD0245B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0245B.
           IF FLD0246B (1:)    NOT EQUAL XPC-FLD0246B
              DISPLAY 'FLD0246B ==> ' FLD0246B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0246B.
           IF FLD0247B (1:)    NOT EQUAL XPC-FLD0247B
              DISPLAY 'FLD0247B ==> ' FLD0247B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0247B.
           IF FLD0248B (1:)    NOT EQUAL XPC-FLD0248B
              DISPLAY 'FLD0248B ==> ' FLD0248B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0248B.
           IF FLD0249B (1:)    NOT EQUAL XPC-FLD0249B
              DISPLAY 'FLD0249B ==> ' FLD0249B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0249B.
           IF FLD0250B (1:)    NOT EQUAL XPC-FLD0250B
              DISPLAY 'FLD0250B ==> ' FLD0250B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0250B.
           IF FLD0251B (1:)    NOT EQUAL XPC-FLD0251B
              DISPLAY 'FLD0251B ==> ' FLD0251B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0251B.
           IF FLD0252B (1:)    NOT EQUAL XPC-FLD0252B
              DISPLAY 'FLD0252B ==> ' FLD0252B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0252B.
           IF FLD0253B (1:)    NOT EQUAL XPC-FLD0253B
              DISPLAY 'FLD0253B ==> ' FLD0253B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0253B.
           IF FLD0254B (1:)    NOT EQUAL XPC-FLD0254B
              DISPLAY 'FLD0254B ==> ' FLD0254B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0254B.
           IF FLD0255B (1:)    NOT EQUAL XPC-FLD0255B
              DISPLAY 'FLD0255B ==> ' FLD0255B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0255B.
           IF FLD0256B (1:)    NOT EQUAL XPC-FLD0256B
              DISPLAY 'FLD0256B ==> ' FLD0256B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0256B.
           IF FLD0257B (1:)    NOT EQUAL XPC-FLD0257B
              DISPLAY 'FLD0257B ==> ' FLD0257B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0257B.
           IF FLD0258B (1:)    NOT EQUAL XPC-FLD0258B
              DISPLAY 'FLD0258B ==> ' FLD0258B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0258B.
           IF FLD0259B (1:)    NOT EQUAL XPC-FLD0259B
              DISPLAY 'FLD0259B ==> ' FLD0259B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0259B.
           IF FLD0260B (1:)    NOT EQUAL XPC-FLD0260B
              DISPLAY 'FLD0260B ==> ' FLD0260B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0260B.
           IF FLD0261B (1:)    NOT EQUAL XPC-FLD0261B
              DISPLAY 'FLD0261B ==> ' FLD0261B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0261B.
           IF FLD0262B (1:)    NOT EQUAL XPC-FLD0262B
              DISPLAY 'FLD0262B ==> ' FLD0262B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0262B.
           IF FLD0263B (1:)    NOT EQUAL XPC-FLD0263B
              DISPLAY 'FLD0263B ==> ' FLD0263B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0263B.
           IF FLD0264B (1:)    NOT EQUAL XPC-FLD0264B
              DISPLAY 'FLD0264B ==> ' FLD0264B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0264B.
           IF FLD0265B (1:)    NOT EQUAL XPC-FLD0265B
              DISPLAY 'FLD0265B ==> ' FLD0265B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0265B.
           IF FLD0266B (1:)    NOT EQUAL XPC-FLD0266B
              DISPLAY 'FLD0266B ==> ' FLD0266B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0266B.
           IF FLD0267B (1:)    NOT EQUAL XPC-FLD0267B
              DISPLAY 'FLD0267B ==> ' FLD0267B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0267B.
           IF FLD0268B (1:)    NOT EQUAL XPC-FLD0268B
              DISPLAY 'FLD0268B ==> ' FLD0268B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0268B.
           IF FLD0269B (1:)    NOT EQUAL XPC-FLD0269B
              DISPLAY 'FLD0269B ==> ' FLD0269B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0269B.
           IF FLD0270B (1:)    NOT EQUAL XPC-FLD0270B
              DISPLAY 'FLD0270B ==> ' FLD0270B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0270B.
           IF FLD0271B (1:)    NOT EQUAL XPC-FLD0271B
              DISPLAY 'FLD0271B ==> ' FLD0271B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0271B.
           IF FLD0272B (1:)    NOT EQUAL XPC-FLD0272B
              DISPLAY 'FLD0272B ==> ' FLD0272B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0272B.
           IF FLD0273B (1:)    NOT EQUAL XPC-FLD0273B
              DISPLAY 'FLD0273B ==> ' FLD0273B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0273B.
           IF FLD0274B (1:)    NOT EQUAL XPC-FLD0274B
              DISPLAY 'FLD0274B ==> ' FLD0274B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0274B.
           IF FLD0275B (1:)    NOT EQUAL XPC-FLD0275B
              DISPLAY 'FLD0275B ==> ' FLD0275B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0275B.
           IF FLD0276B (1:)    NOT EQUAL XPC-FLD0276B
              DISPLAY 'FLD0276B ==> ' FLD0276B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0276B.
           IF FLD0277B (1:)    NOT EQUAL XPC-FLD0277B
              DISPLAY 'FLD0277B ==> ' FLD0277B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0277B.
           IF FLD0278B (1:)    NOT EQUAL XPC-FLD0278B
              DISPLAY 'FLD0278B ==> ' FLD0278B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0278B.
           IF FLD0279B (1:)    NOT EQUAL XPC-FLD0279B
              DISPLAY 'FLD0279B ==> ' FLD0279B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0279B.
           IF FLD0280B (1:)    NOT EQUAL XPC-FLD0280B
              DISPLAY 'FLD0280B ==> ' FLD0280B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0280B.
           IF FLD0281B (1:)    NOT EQUAL XPC-FLD0281B
              DISPLAY 'FLD0281B ==> ' FLD0281B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0281B.
           IF FLD0282B (1:)    NOT EQUAL XPC-FLD0282B
              DISPLAY 'FLD0282B ==> ' FLD0282B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0282B.
           IF FLD0283B (1:)    NOT EQUAL XPC-FLD0283B
              DISPLAY 'FLD0283B ==> ' FLD0283B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0283B.
           IF FLD0284B (1:)    NOT EQUAL XPC-FLD0284B
              DISPLAY 'FLD0284B ==> ' FLD0284B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0284B.
           IF FLD0285B (1:)    NOT EQUAL XPC-FLD0285B
              DISPLAY 'FLD0285B ==> ' FLD0285B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0285B.
           IF FLD0286B (1:)    NOT EQUAL XPC-FLD0286B
              DISPLAY 'FLD0286B ==> ' FLD0286B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0286B.
           IF FLD0287B (1:)    NOT EQUAL XPC-FLD0287B
              DISPLAY 'FLD0287B ==> ' FLD0287B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0287B.
           IF FLD0288B (1:)    NOT EQUAL XPC-FLD0288B
              DISPLAY 'FLD0288B ==> ' FLD0288B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0288B.
           IF FLD0289B (1:)    NOT EQUAL XPC-FLD0289B
              DISPLAY 'FLD0289B ==> ' FLD0289B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0289B.
           IF FLD0290B (1:)    NOT EQUAL XPC-FLD0290B
              DISPLAY 'FLD0290B ==> ' FLD0290B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0290B.
           IF FLD0291B (1:)    NOT EQUAL XPC-FLD0291B
              DISPLAY 'FLD0291B ==> ' FLD0291B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0291B.
           IF FLD0292B (1:)    NOT EQUAL XPC-FLD0292B
              DISPLAY 'FLD0292B ==> ' FLD0292B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0292B.
           IF FLD0293B (1:)    NOT EQUAL XPC-FLD0293B
              DISPLAY 'FLD0293B ==> ' FLD0293B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0293B.
           IF FLD0294B (1:)    NOT EQUAL XPC-FLD0294B
              DISPLAY 'FLD0294B ==> ' FLD0294B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0294B.
           IF FLD0295B (1:)    NOT EQUAL XPC-FLD0295B
              DISPLAY 'FLD0295B ==> ' FLD0295B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0295B.
           IF FLD0296B (1:)    NOT EQUAL XPC-FLD0296B
              DISPLAY 'FLD0296B ==> ' FLD0296B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0296B.
           IF FLD0297B (1:)    NOT EQUAL XPC-FLD0297B
              DISPLAY 'FLD0297B ==> ' FLD0297B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0297B.
           IF FLD0298B (1:)    NOT EQUAL XPC-FLD0298B
              DISPLAY 'FLD0298B ==> ' FLD0298B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0298B.
           IF FLD0299B (1:)    NOT EQUAL XPC-FLD0299B
              DISPLAY 'FLD0299B ==> ' FLD0299B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0299B.
           IF FLD0300B (1:)    NOT EQUAL XPC-FLD0300B
              DISPLAY 'FLD0300B ==> ' FLD0300B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0300B.
           IF FLD0301B (1:)    NOT EQUAL XPC-FLD0301B
              DISPLAY 'FLD0301B ==> ' FLD0301B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0301B.
           IF FLD0302B (1:)    NOT EQUAL XPC-FLD0302B
              DISPLAY 'FLD0302B ==> ' FLD0302B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0302B.
           IF FLD0303B (1:)    NOT EQUAL XPC-FLD0303B
              DISPLAY 'FLD0303B ==> ' FLD0303B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0303B.
           IF FLD0304B (1:)    NOT EQUAL XPC-FLD0304B
              DISPLAY 'FLD0304B ==> ' FLD0304B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0304B.
           IF FLD0305B (1:)    NOT EQUAL XPC-FLD0305B
              DISPLAY 'FLD0305B ==> ' FLD0305B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0305B.
           IF FLD0306B (1:)    NOT EQUAL XPC-FLD0306B
              DISPLAY 'FLD0306B ==> ' FLD0306B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0306B.
           IF FLD0307B (1:)    NOT EQUAL XPC-FLD0307B
              DISPLAY 'FLD0307B ==> ' FLD0307B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0307B.
           IF FLD0308B (1:)    NOT EQUAL XPC-FLD0308B
              DISPLAY 'FLD0308B ==> ' FLD0308B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0308B.
           IF FLD0309B (1:)    NOT EQUAL XPC-FLD0309B
              DISPLAY 'FLD0309B ==> ' FLD0309B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0309B.
           IF FLD0310B (1:)    NOT EQUAL XPC-FLD0310B
              DISPLAY 'FLD0310B ==> ' FLD0310B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0310B.
           IF FLD0311B (1:)    NOT EQUAL XPC-FLD0311B
              DISPLAY 'FLD0311B ==> ' FLD0311B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0311B.
           IF FLD0312B (1:)    NOT EQUAL XPC-FLD0312B
              DISPLAY 'FLD0312B ==> ' FLD0312B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0312B.
           IF FLD0313B (1:)    NOT EQUAL XPC-FLD0313B
              DISPLAY 'FLD0313B ==> ' FLD0313B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0313B.
           IF FLD0314B (1:)    NOT EQUAL XPC-FLD0314B
              DISPLAY 'FLD0314B ==> ' FLD0314B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0314B.
           IF FLD0315B (1:)    NOT EQUAL XPC-FLD0315B
              DISPLAY 'FLD0315B ==> ' FLD0315B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0315B.
           IF FLD0316B (1:)    NOT EQUAL XPC-FLD0316B
              DISPLAY 'FLD0316B ==> ' FLD0316B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0316B.
           IF FLD0317B (1:)    NOT EQUAL XPC-FLD0317B
              DISPLAY 'FLD0317B ==> ' FLD0317B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0317B.
           IF FLD0318B (1:)    NOT EQUAL XPC-FLD0318B
              DISPLAY 'FLD0318B ==> ' FLD0318B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0318B.
           IF FLD0319B (1:)    NOT EQUAL XPC-FLD0319B
              DISPLAY 'FLD0319B ==> ' FLD0319B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0319B.
           IF FLD0320B (1:)    NOT EQUAL XPC-FLD0320B
              DISPLAY 'FLD0320B ==> ' FLD0320B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0320B.
           IF FLD0321B (1:)    NOT EQUAL XPC-FLD0321B
              DISPLAY 'FLD0321B ==> ' FLD0321B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0321B.
           IF FLD0322B (1:)    NOT EQUAL XPC-FLD0322B
              DISPLAY 'FLD0322B ==> ' FLD0322B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0322B.
           IF FLD0323B (1:)    NOT EQUAL XPC-FLD0323B
              DISPLAY 'FLD0323B ==> ' FLD0323B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0323B.
           IF FLD0324B (1:)    NOT EQUAL XPC-FLD0324B
              DISPLAY 'FLD0324B ==> ' FLD0324B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0324B.
           IF FLD0325B (1:)    NOT EQUAL XPC-FLD0325B
              DISPLAY 'FLD0325B ==> ' FLD0325B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0325B.
           IF FLD0326B (1:)    NOT EQUAL XPC-FLD0326B
              DISPLAY 'FLD0326B ==> ' FLD0326B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0326B.
           IF FLD0327B (1:)    NOT EQUAL XPC-FLD0327B
              DISPLAY 'FLD0327B ==> ' FLD0327B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0327B.
           IF FLD0328B (1:)    NOT EQUAL XPC-FLD0328B
              DISPLAY 'FLD0328B ==> ' FLD0328B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0328B.
           IF FLD0329B (1:)    NOT EQUAL XPC-FLD0329B
              DISPLAY 'FLD0329B ==> ' FLD0329B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0329B.
           IF FLD0330B (1:)    NOT EQUAL XPC-FLD0330B
              DISPLAY 'FLD0330B ==> ' FLD0330B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0330B.
           IF FLD0331B (1:)    NOT EQUAL XPC-FLD0331B
              DISPLAY 'FLD0331B ==> ' FLD0331B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0331B.
           IF FLD0332B (1:)    NOT EQUAL XPC-FLD0332B
              DISPLAY 'FLD0332B ==> ' FLD0332B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0332B.
           IF FLD0333B (1:)    NOT EQUAL XPC-FLD0333B
              DISPLAY 'FLD0333B ==> ' FLD0333B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0333B.
           IF FLD0334B (1:)    NOT EQUAL XPC-FLD0334B
              DISPLAY 'FLD0334B ==> ' FLD0334B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0334B.
           IF FLD0335B (1:)    NOT EQUAL XPC-FLD0335B
              DISPLAY 'FLD0335B ==> ' FLD0335B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0335B.
           IF FLD0336B (1:)    NOT EQUAL XPC-FLD0336B
              DISPLAY 'FLD0336B ==> ' FLD0336B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0336B.
           IF FLD0337B (1:)    NOT EQUAL XPC-FLD0337B
              DISPLAY 'FLD0337B ==> ' FLD0337B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0337B.
           IF FLD0338B (1:)    NOT EQUAL XPC-FLD0338B
              DISPLAY 'FLD0338B ==> ' FLD0338B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0338B.
           IF FLD0339B (1:)    NOT EQUAL XPC-FLD0339B
              DISPLAY 'FLD0339B ==> ' FLD0339B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0339B.
           IF FLD0340B (1:)    NOT EQUAL XPC-FLD0340B
              DISPLAY 'FLD0340B ==> ' FLD0340B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0340B.
           IF FLD0341B (1:)    NOT EQUAL XPC-FLD0341B
              DISPLAY 'FLD0341B ==> ' FLD0341B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0341B.
           IF FLD0342B (1:)    NOT EQUAL XPC-FLD0342B
              DISPLAY 'FLD0342B ==> ' FLD0342B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0342B.
           IF FLD0343B (1:)    NOT EQUAL XPC-FLD0343B
              DISPLAY 'FLD0343B ==> ' FLD0343B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0343B.
           IF FLD0344B (1:)    NOT EQUAL XPC-FLD0344B
              DISPLAY 'FLD0344B ==> ' FLD0344B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0344B.
           IF FLD0345B (1:)    NOT EQUAL XPC-FLD0345B
              DISPLAY 'FLD0345B ==> ' FLD0345B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0345B.
           IF FLD0346B (1:)    NOT EQUAL XPC-FLD0346B
              DISPLAY 'FLD0346B ==> ' FLD0346B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0346B.
           IF FLD0347B (1:)    NOT EQUAL XPC-FLD0347B
              DISPLAY 'FLD0347B ==> ' FLD0347B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0347B.
           IF FLD0348B (1:)    NOT EQUAL XPC-FLD0348B
              DISPLAY 'FLD0348B ==> ' FLD0348B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0348B.
           IF FLD0349B (1:)    NOT EQUAL XPC-FLD0349B
              DISPLAY 'FLD0349B ==> ' FLD0349B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0349B.
           IF FLD0350B (1:)    NOT EQUAL XPC-FLD0350B
              DISPLAY 'FLD0350B ==> ' FLD0350B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0350B.
           IF FLD0351B (1:)    NOT EQUAL XPC-FLD0351B
              DISPLAY 'FLD0351B ==> ' FLD0351B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0351B.
           IF FLD0352B (1:)    NOT EQUAL XPC-FLD0352B
              DISPLAY 'FLD0352B ==> ' FLD0352B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0352B.
           IF FLD0353B (1:)    NOT EQUAL XPC-FLD0353B
              DISPLAY 'FLD0353B ==> ' FLD0353B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0353B.
           IF FLD0354B (1:)    NOT EQUAL XPC-FLD0354B
              DISPLAY 'FLD0354B ==> ' FLD0354B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0354B.
           IF FLD0355B (1:)    NOT EQUAL XPC-FLD0355B
              DISPLAY 'FLD0355B ==> ' FLD0355B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0355B.
           IF FLD0356B (1:)    NOT EQUAL XPC-FLD0356B
              DISPLAY 'FLD0356B ==> ' FLD0356B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0356B.
           IF FLD0357B (1:)    NOT EQUAL XPC-FLD0357B
              DISPLAY 'FLD0357B ==> ' FLD0357B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0357B.
           IF FLD0358B (1:)    NOT EQUAL XPC-FLD0358B
              DISPLAY 'FLD0358B ==> ' FLD0358B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0358B.
           IF FLD0359B (1:)    NOT EQUAL XPC-FLD0359B
              DISPLAY 'FLD0359B ==> ' FLD0359B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0359B.
           IF FLD0360B (1:)    NOT EQUAL XPC-FLD0360B
              DISPLAY 'FLD0360B ==> ' FLD0360B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0360B.
           IF FLD0361B (1:)    NOT EQUAL XPC-FLD0361B
              DISPLAY 'FLD0361B ==> ' FLD0361B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0361B.
           IF FLD0362B (1:)    NOT EQUAL XPC-FLD0362B
              DISPLAY 'FLD0362B ==> ' FLD0362B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0362B.
           IF FLD0363B (1:)    NOT EQUAL XPC-FLD0363B
              DISPLAY 'FLD0363B ==> ' FLD0363B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0363B.
           IF FLD0364B (1:)    NOT EQUAL XPC-FLD0364B
              DISPLAY 'FLD0364B ==> ' FLD0364B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0364B.
           IF FLD0365B (1:)    NOT EQUAL XPC-FLD0365B
              DISPLAY 'FLD0365B ==> ' FLD0365B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0365B.
           IF FLD0366B (1:)    NOT EQUAL XPC-FLD0366B
              DISPLAY 'FLD0366B ==> ' FLD0366B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0366B.
           IF FLD0367B (1:)    NOT EQUAL XPC-FLD0367B
              DISPLAY 'FLD0367B ==> ' FLD0367B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0367B.
           IF FLD0368B (1:)    NOT EQUAL XPC-FLD0368B
              DISPLAY 'FLD0368B ==> ' FLD0368B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0368B.
           IF FLD0369B (1:)    NOT EQUAL XPC-FLD0369B
              DISPLAY 'FLD0369B ==> ' FLD0369B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0369B.
           IF FLD0370B (1:)    NOT EQUAL XPC-FLD0370B
              DISPLAY 'FLD0370B ==> ' FLD0370B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0370B.
           IF FLD0371B (1:)    NOT EQUAL XPC-FLD0371B
              DISPLAY 'FLD0371B ==> ' FLD0371B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0371B.
           IF FLD0372B (1:)    NOT EQUAL XPC-FLD0372B
              DISPLAY 'FLD0372B ==> ' FLD0372B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0372B.
           IF FLD0373B (1:)    NOT EQUAL XPC-FLD0373B
              DISPLAY 'FLD0373B ==> ' FLD0373B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0373B.
           IF FLD0374B (1:)    NOT EQUAL XPC-FLD0374B
              DISPLAY 'FLD0374B ==> ' FLD0374B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0374B.
           IF FLD0375B (1:)    NOT EQUAL XPC-FLD0375B
              DISPLAY 'FLD0375B ==> ' FLD0375B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0375B.
           IF FLD0376B (1:)    NOT EQUAL XPC-FLD0376B
              DISPLAY 'FLD0376B ==> ' FLD0376B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0376B.
           IF FLD0377B (1:)    NOT EQUAL XPC-FLD0377B
              DISPLAY 'FLD0377B ==> ' FLD0377B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0377B.
           IF FLD0378B (1:)    NOT EQUAL XPC-FLD0378B
              DISPLAY 'FLD0378B ==> ' FLD0378B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0378B.
           IF FLD0379B (1:)    NOT EQUAL XPC-FLD0379B
              DISPLAY 'FLD0379B ==> ' FLD0379B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0379B.
           IF FLD0380B (1:)    NOT EQUAL XPC-FLD0380B
              DISPLAY 'FLD0380B ==> ' FLD0380B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0380B.
           IF FLD0381B (1:)    NOT EQUAL XPC-FLD0381B
              DISPLAY 'FLD0381B ==> ' FLD0381B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0381B.
           IF FLD0382B (1:)    NOT EQUAL XPC-FLD0382B
              DISPLAY 'FLD0382B ==> ' FLD0382B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0382B.
           IF FLD0383B (1:)    NOT EQUAL XPC-FLD0383B
              DISPLAY 'FLD0383B ==> ' FLD0383B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0383B.
           IF FLD0384B (1:)    NOT EQUAL XPC-FLD0384B
              DISPLAY 'FLD0384B ==> ' FLD0384B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0384B.
           IF FLD0385B (1:)    NOT EQUAL XPC-FLD0385B
              DISPLAY 'FLD0385B ==> ' FLD0385B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0385B.
           IF FLD0386B (1:)    NOT EQUAL XPC-FLD0386B
              DISPLAY 'FLD0386B ==> ' FLD0386B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0386B.
           IF FLD0387B (1:)    NOT EQUAL XPC-FLD0387B
              DISPLAY 'FLD0387B ==> ' FLD0387B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0387B.
           IF FLD0388B (1:)    NOT EQUAL XPC-FLD0388B
              DISPLAY 'FLD0388B ==> ' FLD0388B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0388B.
           IF FLD0389B (1:)    NOT EQUAL XPC-FLD0389B
              DISPLAY 'FLD0389B ==> ' FLD0389B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0389B.
           IF FLD0390B (1:)    NOT EQUAL XPC-FLD0390B
              DISPLAY 'FLD0390B ==> ' FLD0390B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0390B.
           IF FLD0391B (1:)    NOT EQUAL XPC-FLD0391B
              DISPLAY 'FLD0391B ==> ' FLD0391B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0391B.
           IF FLD0392B (1:)    NOT EQUAL XPC-FLD0392B
              DISPLAY 'FLD0392B ==> ' FLD0392B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0392B.
           IF FLD0393B (1:)    NOT EQUAL XPC-FLD0393B
              DISPLAY 'FLD0393B ==> ' FLD0393B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0393B.
           IF FLD0394B (1:)    NOT EQUAL XPC-FLD0394B
              DISPLAY 'FLD0394B ==> ' FLD0394B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0394B.
           IF FLD0395B (1:)    NOT EQUAL XPC-FLD0395B
              DISPLAY 'FLD0395B ==> ' FLD0395B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0395B.
           IF FLD0396B (1:)    NOT EQUAL XPC-FLD0396B
              DISPLAY 'FLD0396B ==> ' FLD0396B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0396B.
           IF FLD0397B (1:)    NOT EQUAL XPC-FLD0397B
              DISPLAY 'FLD0397B ==> ' FLD0397B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0397B.
           IF FLD0398B (1:)    NOT EQUAL XPC-FLD0398B
              DISPLAY 'FLD0398B ==> ' FLD0398B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0398B.
           IF FLD0399B (1:)    NOT EQUAL XPC-FLD0399B
              DISPLAY 'FLD0399B ==> ' FLD0399B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0399B.
           IF FLD0400B (1:)    NOT EQUAL XPC-FLD0400B
              DISPLAY 'FLD0400B ==> ' FLD0400B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0400B.
           IF FLD0401B (1:)    NOT EQUAL XPC-FLD0401B
              DISPLAY 'FLD0401B ==> ' FLD0401B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0401B.
           IF FLD0402B (1:)    NOT EQUAL XPC-FLD0402B
              DISPLAY 'FLD0402B ==> ' FLD0402B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0402B.
           IF FLD0403B (1:)    NOT EQUAL XPC-FLD0403B
              DISPLAY 'FLD0403B ==> ' FLD0403B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0403B.
           IF FLD0404B (1:)    NOT EQUAL XPC-FLD0404B
              DISPLAY 'FLD0404B ==> ' FLD0404B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0404B.
           IF FLD0405B (1:)    NOT EQUAL XPC-FLD0405B
              DISPLAY 'FLD0405B ==> ' FLD0405B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0405B.
           IF FLD0406B (1:)    NOT EQUAL XPC-FLD0406B
              DISPLAY 'FLD0406B ==> ' FLD0406B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0406B.
           IF FLD0407B (1:)    NOT EQUAL XPC-FLD0407B
              DISPLAY 'FLD0407B ==> ' FLD0407B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0407B.
           IF FLD0408B (1:)    NOT EQUAL XPC-FLD0408B
              DISPLAY 'FLD0408B ==> ' FLD0408B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0408B.
           IF FLD0409B (1:)    NOT EQUAL XPC-FLD0409B
              DISPLAY 'FLD0409B ==> ' FLD0409B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0409B.
           IF FLD0410B (1:)    NOT EQUAL XPC-FLD0410B
              DISPLAY 'FLD0410B ==> ' FLD0410B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0410B.
           IF FLD0411B (1:)    NOT EQUAL XPC-FLD0411B
              DISPLAY 'FLD0411B ==> ' FLD0411B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0411B.
           IF FLD0412B (1:)    NOT EQUAL XPC-FLD0412B
              DISPLAY 'FLD0412B ==> ' FLD0412B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0412B.
           IF FLD0413B (1:)    NOT EQUAL XPC-FLD0413B
              DISPLAY 'FLD0413B ==> ' FLD0413B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0413B.
           IF FLD0414B (1:)    NOT EQUAL XPC-FLD0414B
              DISPLAY 'FLD0414B ==> ' FLD0414B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0414B.
           IF FLD0415B (1:)    NOT EQUAL XPC-FLD0415B
              DISPLAY 'FLD0415B ==> ' FLD0415B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0415B.
           IF FLD0416B (1:)    NOT EQUAL XPC-FLD0416B
              DISPLAY 'FLD0416B ==> ' FLD0416B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0416B.
           IF FLD0417B (1:)    NOT EQUAL XPC-FLD0417B
              DISPLAY 'FLD0417B ==> ' FLD0417B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0417B.
           IF FLD0418B (1:)    NOT EQUAL XPC-FLD0418B
              DISPLAY 'FLD0418B ==> ' FLD0418B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0418B.
           IF FLD0419B (1:)    NOT EQUAL XPC-FLD0419B
              DISPLAY 'FLD0419B ==> ' FLD0419B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0419B.
           IF FLD0420B (1:)    NOT EQUAL XPC-FLD0420B
              DISPLAY 'FLD0420B ==> ' FLD0420B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0420B.
           IF FLD0421B (1:)    NOT EQUAL XPC-FLD0421B
              DISPLAY 'FLD0421B ==> ' FLD0421B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0421B.
           IF FLD0422B (1:)    NOT EQUAL XPC-FLD0422B
              DISPLAY 'FLD0422B ==> ' FLD0422B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0422B.
           IF FLD0423B (1:)    NOT EQUAL XPC-FLD0423B
              DISPLAY 'FLD0423B ==> ' FLD0423B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0423B.
           IF FLD0424B (1:)    NOT EQUAL XPC-FLD0424B
              DISPLAY 'FLD0424B ==> ' FLD0424B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0424B.
           IF FLD0425B (1:)    NOT EQUAL XPC-FLD0425B
              DISPLAY 'FLD0425B ==> ' FLD0425B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0425B.
           IF FLD0426B (1:)    NOT EQUAL XPC-FLD0426B
              DISPLAY 'FLD0426B ==> ' FLD0426B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0426B.
           IF FLD0427B (1:)    NOT EQUAL XPC-FLD0427B
              DISPLAY 'FLD0427B ==> ' FLD0427B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0427B.
           IF FLD0428B (1:)    NOT EQUAL XPC-FLD0428B
              DISPLAY 'FLD0428B ==> ' FLD0428B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0428B.
           IF FLD0429B (1:)    NOT EQUAL XPC-FLD0429B
              DISPLAY 'FLD0429B ==> ' FLD0429B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0429B.
           IF FLD0430B (1:)    NOT EQUAL XPC-FLD0430B
              DISPLAY 'FLD0430B ==> ' FLD0430B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0430B.
           IF FLD0431B (1:)    NOT EQUAL XPC-FLD0431B
              DISPLAY 'FLD0431B ==> ' FLD0431B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0431B.
           IF FLD0432B (1:)    NOT EQUAL XPC-FLD0432B
              DISPLAY 'FLD0432B ==> ' FLD0432B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0432B.
           IF FLD0433B (1:)    NOT EQUAL XPC-FLD0433B
              DISPLAY 'FLD0433B ==> ' FLD0433B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0433B.
           IF FLD0434B (1:)    NOT EQUAL XPC-FLD0434B
              DISPLAY 'FLD0434B ==> ' FLD0434B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0434B.
           IF FLD0435B (1:)    NOT EQUAL XPC-FLD0435B
              DISPLAY 'FLD0435B ==> ' FLD0435B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0435B.
           IF FLD0436B (1:)    NOT EQUAL XPC-FLD0436B
              DISPLAY 'FLD0436B ==> ' FLD0436B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0436B.
           IF FLD0437B (1:)    NOT EQUAL XPC-FLD0437B
              DISPLAY 'FLD0437B ==> ' FLD0437B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0437B.
           IF FLD0438B (1:)    NOT EQUAL XPC-FLD0438B
              DISPLAY 'FLD0438B ==> ' FLD0438B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0438B.
           IF FLD0439B (1:)    NOT EQUAL XPC-FLD0439B
              DISPLAY 'FLD0439B ==> ' FLD0439B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0439B.
           IF FLD0440B (1:)    NOT EQUAL XPC-FLD0440B
              DISPLAY 'FLD0440B ==> ' FLD0440B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0440B.
           IF FLD0441B (1:)    NOT EQUAL XPC-FLD0441B
              DISPLAY 'FLD0441B ==> ' FLD0441B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0441B.
           IF FLD0442B (1:)    NOT EQUAL XPC-FLD0442B
              DISPLAY 'FLD0442B ==> ' FLD0442B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0442B.
           IF FLD0443B (1:)    NOT EQUAL XPC-FLD0443B
              DISPLAY 'FLD0443B ==> ' FLD0443B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0443B.
           IF FLD0444B (1:)    NOT EQUAL XPC-FLD0444B
              DISPLAY 'FLD0444B ==> ' FLD0444B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0444B.
           IF FLD0445B (1:)    NOT EQUAL XPC-FLD0445B
              DISPLAY 'FLD0445B ==> ' FLD0445B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0445B.
           IF FLD0446B (1:)    NOT EQUAL XPC-FLD0446B
              DISPLAY 'FLD0446B ==> ' FLD0446B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0446B.
           IF FLD0447B (1:)    NOT EQUAL XPC-FLD0447B
              DISPLAY 'FLD0447B ==> ' FLD0447B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0447B.
           IF FLD0448B (1:)    NOT EQUAL XPC-FLD0448B
              DISPLAY 'FLD0448B ==> ' FLD0448B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0448B.
           IF FLD0449B (1:)    NOT EQUAL XPC-FLD0449B
              DISPLAY 'FLD0449B ==> ' FLD0449B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0449B.
           IF FLD0450B (1:)    NOT EQUAL XPC-FLD0450B
              DISPLAY 'FLD0450B ==> ' FLD0450B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0450B.
           IF FLD0451B (1:)    NOT EQUAL XPC-FLD0451B
              DISPLAY 'FLD0451B ==> ' FLD0451B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0451B.
           IF FLD0452B (1:)    NOT EQUAL XPC-FLD0452B
              DISPLAY 'FLD0452B ==> ' FLD0452B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0452B.
           IF FLD0453B (1:)    NOT EQUAL XPC-FLD0453B
              DISPLAY 'FLD0453B ==> ' FLD0453B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0453B.
           IF FLD0454B (1:)    NOT EQUAL XPC-FLD0454B
              DISPLAY 'FLD0454B ==> ' FLD0454B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0454B.
           IF FLD0455B (1:)    NOT EQUAL XPC-FLD0455B
              DISPLAY 'FLD0455B ==> ' FLD0455B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0455B.
           IF FLD0456B (1:)    NOT EQUAL XPC-FLD0456B
              DISPLAY 'FLD0456B ==> ' FLD0456B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0456B.
           IF FLD0457B (1:)    NOT EQUAL XPC-FLD0457B
              DISPLAY 'FLD0457B ==> ' FLD0457B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0457B.
           IF FLD0458B (1:)    NOT EQUAL XPC-FLD0458B
              DISPLAY 'FLD0458B ==> ' FLD0458B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0458B.
           IF FLD0459B (1:)    NOT EQUAL XPC-FLD0459B
              DISPLAY 'FLD0459B ==> ' FLD0459B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0459B.
           IF FLD0460B (1:)    NOT EQUAL XPC-FLD0460B
              DISPLAY 'FLD0460B ==> ' FLD0460B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0460B.
           IF FLD0461B (1:)    NOT EQUAL XPC-FLD0461B
              DISPLAY 'FLD0461B ==> ' FLD0461B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0461B.
           IF FLD0462B (1:)    NOT EQUAL XPC-FLD0462B
              DISPLAY 'FLD0462B ==> ' FLD0462B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0462B.
           IF FLD0463B (1:)    NOT EQUAL XPC-FLD0463B
              DISPLAY 'FLD0463B ==> ' FLD0463B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0463B.
           IF FLD0464B (1:)    NOT EQUAL XPC-FLD0464B
              DISPLAY 'FLD0464B ==> ' FLD0464B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0464B.
           IF FLD0465B (1:)    NOT EQUAL XPC-FLD0465B
              DISPLAY 'FLD0465B ==> ' FLD0465B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0465B.
           IF FLD0466B (1:)    NOT EQUAL XPC-FLD0466B
              DISPLAY 'FLD0466B ==> ' FLD0466B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0466B.
           IF FLD0467B (1:)    NOT EQUAL XPC-FLD0467B
              DISPLAY 'FLD0467B ==> ' FLD0467B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0467B.
           IF FLD0468B (1:)    NOT EQUAL XPC-FLD0468B
              DISPLAY 'FLD0468B ==> ' FLD0468B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0468B.
           IF FLD0469B (1:)    NOT EQUAL XPC-FLD0469B
              DISPLAY 'FLD0469B ==> ' FLD0469B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0469B.
           IF FLD0470B (1:)    NOT EQUAL XPC-FLD0470B
              DISPLAY 'FLD0470B ==> ' FLD0470B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0470B.
           IF FLD0471B (1:)    NOT EQUAL XPC-FLD0471B
              DISPLAY 'FLD0471B ==> ' FLD0471B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0471B.
           IF FLD0472B (1:)    NOT EQUAL XPC-FLD0472B
              DISPLAY 'FLD0472B ==> ' FLD0472B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0472B.
           IF FLD0473B (1:)    NOT EQUAL XPC-FLD0473B
              DISPLAY 'FLD0473B ==> ' FLD0473B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0473B.
           IF FLD0474B (1:)    NOT EQUAL XPC-FLD0474B
              DISPLAY 'FLD0474B ==> ' FLD0474B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0474B.
           IF FLD0475B (1:)    NOT EQUAL XPC-FLD0475B
              DISPLAY 'FLD0475B ==> ' FLD0475B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0475B.
           IF FLD0476B (1:)    NOT EQUAL XPC-FLD0476B
              DISPLAY 'FLD0476B ==> ' FLD0476B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0476B.
           IF FLD0477B (1:)    NOT EQUAL XPC-FLD0477B
              DISPLAY 'FLD0477B ==> ' FLD0477B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0477B.
           IF FLD0478B (1:)    NOT EQUAL XPC-FLD0478B
              DISPLAY 'FLD0478B ==> ' FLD0478B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0478B.
           IF FLD0479B (1:)    NOT EQUAL XPC-FLD0479B
              DISPLAY 'FLD0479B ==> ' FLD0479B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0479B.
           IF FLD0480B (1:)    NOT EQUAL XPC-FLD0480B
              DISPLAY 'FLD0480B ==> ' FLD0480B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0480B.
           IF FLD0481B (1:)    NOT EQUAL XPC-FLD0481B
              DISPLAY 'FLD0481B ==> ' FLD0481B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0481B.
           IF FLD0482B (1:)    NOT EQUAL XPC-FLD0482B
              DISPLAY 'FLD0482B ==> ' FLD0482B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0482B.
           IF FLD0483B (1:)    NOT EQUAL XPC-FLD0483B
              DISPLAY 'FLD0483B ==> ' FLD0483B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0483B.
           IF FLD0484B (1:)    NOT EQUAL XPC-FLD0484B
              DISPLAY 'FLD0484B ==> ' FLD0484B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0484B.
           IF FLD0485B (1:)    NOT EQUAL XPC-FLD0485B
              DISPLAY 'FLD0485B ==> ' FLD0485B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0485B.
           IF FLD0486B (1:)    NOT EQUAL XPC-FLD0486B
              DISPLAY 'FLD0486B ==> ' FLD0486B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0486B.
           IF FLD0487B (1:)    NOT EQUAL XPC-FLD0487B
              DISPLAY 'FLD0487B ==> ' FLD0487B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0487B.
           IF FLD0488B (1:)    NOT EQUAL XPC-FLD0488B
              DISPLAY 'FLD0488B ==> ' FLD0488B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0488B.
           IF FLD0489B (1:)    NOT EQUAL XPC-FLD0489B
              DISPLAY 'FLD0489B ==> ' FLD0489B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0489B.
           IF FLD0490B (1:)    NOT EQUAL XPC-FLD0490B
              DISPLAY 'FLD0490B ==> ' FLD0490B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0490B.
           IF FLD0491B (1:)    NOT EQUAL XPC-FLD0491B
              DISPLAY 'FLD0491B ==> ' FLD0491B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0491B.
           IF FLD0492B (1:)    NOT EQUAL XPC-FLD0492B
              DISPLAY 'FLD0492B ==> ' FLD0492B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0492B.
           IF FLD0493B (1:)    NOT EQUAL XPC-FLD0493B
              DISPLAY 'FLD0493B ==> ' FLD0493B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0493B.
           IF FLD0494B (1:)    NOT EQUAL XPC-FLD0494B
              DISPLAY 'FLD0494B ==> ' FLD0494B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0494B.
           IF FLD0495B (1:)    NOT EQUAL XPC-FLD0495B
              DISPLAY 'FLD0495B ==> ' FLD0495B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0495B.
           IF FLD0496B (1:)    NOT EQUAL XPC-FLD0496B
              DISPLAY 'FLD0496B ==> ' FLD0496B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0496B.
           IF FLD0497B (1:)    NOT EQUAL XPC-FLD0497B
              DISPLAY 'FLD0497B ==> ' FLD0497B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0497B.
           IF FLD0498B (1:)    NOT EQUAL XPC-FLD0498B
              DISPLAY 'FLD0498B ==> ' FLD0498B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0498B.
           IF FLD0499B (1:)    NOT EQUAL XPC-FLD0499B
              DISPLAY 'FLD0499B ==> ' FLD0499B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0499B.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:22976: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_display.at:22976"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:22976"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:22977: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_display.at:22977"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:22977"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTR2.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77  FLD0500A                       PIC S9(10)V9(08)
                   VALUE -4830218621.81680639.
       77  FLD0500B                       PIC  9(03)
                   VALUE  087.

       77  FLD0501A                       PIC  9(09)V9(15)
                   VALUE  652910855.370784748430423.
       77  FLD0501B                       PIC  9(09)V9(14)
                   VALUE  628093348.73677369337485.

       77  FLD0502A                       PIC  9(03)
                   VALUE  079.
       77  FLD0502B                       PIC  9(07)V9(22)
                   VALUE  7893241.6286150020034995122841.

       77  FLD0503A                       PIC  9(10)V9(11)
                   VALUE  5662523582.77427925159.
       77  FLD0503B                       PIC  9(04)V9(29)
                   VALUE  8834.70722999726620905391882843105.

       77  FLD0504A                       PIC S9(08)V9(02)
                   VALUE -28360864.01.
       77  FLD0504B                       PIC  9(10)V9(09)
                   VALUE  5000570062.577901486.

       77  FLD0505A                       PIC  9(04)V9(30)
                   VALUE  9110.332843503369248949752545740921.
       77  FLD0505B                       PIC  9(10)V9(10)
                   VALUE  5407979633.7587637822.

       77  FLD0506A                       PIC  9(10)V9(11)
                   VALUE  5546838940.35467472960.
       77  FLD0506B                       PIC S9(07)V9(01)
                   VALUE +2340559.3.

       77  FLD0507A                       PIC  9(08)V9(18)
                   VALUE  70736506.262277043521891073.
       77  FLD0507B                       PIC  9(10)V9(09)
                   VALUE  5205430142.820132166.

       77  FLD0508A                       PIC  9(09)V9(16)
                   VALUE  658855971.9467786957025623.
       77  FLD0508B                       PIC S9(09)V9(07)
                   VALUE +444447149.8618901.

       77  FLD0509A                       PIC S9(01)
                   VALUE +0.
       77  FLD0509B                       PIC  9(10)V9(08)
                   VALUE  4889373386.26299289.

       77  FLD0510A                       PIC  9(04)
                   VALUE  1295.
       77  FLD0510B                       PIC S9(03)
                   VALUE -092.

       77  FLD0511A                       PIC  9(06)V9(25)
                   VALUE  815863.7850571600624860479911149.
       77  FLD0511B                       PIC  9(10)V9(09)
                   VALUE  5256921146.480894035.

       77  FLD0512A                       PIC  9(05)
                   VALUE  13945.
       77  FLD0512B                       PIC  9(01)V9(36)
                   VALUE  9.908282031313487836499120930966455489.

       77  FLD0513A                       PIC  9(09)V9(15)
                   VALUE  653773832.246937192103075.
       77  FLD0513B                       PIC  9(08)V9(20)
                   VALUE  74124087.47450585089211472222.

       77  FLD0514A                       PIC  9(08)V9(18)
                   VALUE  70109343.593910689040882289.
       77  FLD0514B                       PIC  9(09)V9(04)
                   VALUE  348891343.2762.

       77  FLD0515A                       PIC  9(09)V9(16)
                   VALUE  658210435.7548693718271692.
       77  FLD0515B                       PIC  9(03)V9(32)
                   VALUE  941.14524908048735607479784448514692.

       77  FLD0516A                       PIC  9(01)V9(36)
                   VALUE  9.884403805479323734672902901365887373.
       77  FLD0516B                       PIC  9(01)
                   VALUE  0.

       77  FLD0517A                       PIC  9(10)V9(07)
                   VALUE  4497620438.0577999.
       77  FLD0517B                       PIC S9(10)V9(08)
                   VALUE -4811021778.48490686.

       77  FLD0518A                       PIC  9(09)V9(16)
                   VALUE  664556684.1155496895510168.
       77  FLD0518B                       PIC S9(02)
                   VALUE -05.

       77  FLD0519A                       PIC  9(09)V9(14)
                   VALUE  630097608.79846921088898.
       77  FLD0519B                       PIC  9(08)V9(17)
                   VALUE  68412596.06583623975595287.

       77  FLD0520A                       PIC  9(04)V9(30)
                   VALUE  9052.329380117529744609328190563246.
       77  FLD0520B                       PIC  9(09)V9(14)
                   VALUE  610604586.65389061305717.

       77  FLD0521A                       PIC  9(05)
                   VALUE  13956.
       77  FLD0521B                       PIC S9(05)
                   VALUE +14099.

       77  FLD0522A                       PIC S9(01)
                   VALUE +0.
       77  FLD0522B                       PIC S9(09)V9(04)
                   VALUE -351067614.4076.

       77  FLD0523A                       PIC  9(08)V9(18)
                   VALUE  70807149.512639711019801325.
       77  FLD0523B                       PIC S9(08)V9(02)
                   VALUE -28004002.44.

       77  FLD0524A                       PIC S9(06)V9(01)
                   VALUE +201515.3.
       77  FLD0524B                       PIC  9(10)V9(09)
                   VALUE  5046210377.505329081.

       77  FLD0525A                       PIC S9(01)
                   VALUE -0.
       77  FLD0525B                       PIC  9(04)V9(29)
                   VALUE  8873.36156634660588871099662355845.

       77  FLD0526A                       PIC  9(07)V9(22)
                   VALUE  7812896.0072540409864672028561.
       77  FLD0526B                       PIC  9(07)V9(02)
                   VALUE  2461308.93.

       77  FLD0527A                       PIC  9(10)V9(12)
                   VALUE  5853770318.384275972434.
       77  FLD0527B                       PIC  9(10)V9(09)
                   VALUE  5140096263.891610339.

       77  FLD0528A                       PIC  9(10)V9(08)
                   VALUE  4856797949.89136714.
       77  FLD0528B                       PIC S9(04)
                   VALUE +1207.

       77  FLD0529A                       PIC  9(10)V9(10)
                   VALUE  5298570971.4885653731.
       77  FLD0529B                       PIC S9(10)V9(07)
                   VALUE -4613280273.7797717.

       77  FLD0530A                       PIC  9(05)V9(28)
                   VALUE  87536.5484141958027919372398173436.
       77  FLD0530B                       PIC S9(02)
                   VALUE -06.

       77  FLD0531A                       PIC  9(09)V9(03)
                   VALUE  317487049.751.
       77  FLD0531B                       PIC S9(07)V9(01)
                   VALUE +2322772.2.

       77  FLD0532A                       PIC  9(09)V9(15)
                   VALUE  653250626.044252880042506.
       77  FLD0532B                       PIC S9(01)
                   VALUE +0.

       77  FLD0533A                       PIC  9(07)V9(02)
                   VALUE  2559928.55.
       77  FLD0533B                       PIC  9(03)
                   VALUE  086.

       77  FLD0534A                       PIC  9(09)V9(06)
                   VALUE  408226706.354108.
       77  FLD0534B                       PIC  9(10)V9(09)
                   VALUE  5204512753.981520578.

       77  FLD0535A                       PIC  9(10)V9(11)
                   VALUE  5556101599.27967472981.
       77  FLD0535B                       PIC  9(05)V9(27)
                   VALUE  85335.564071638048133650045201648.

       77  FLD0536A                       PIC S9(08)V9(03)
                   VALUE -29061270.882.
       77  FLD0536B                       PIC S9(01)
                   VALUE -0.

       77  FLD0537A                       PIC  9(08)V9(03)
                   VALUE  29943354.242.
       77  FLD0537B                       PIC  9(04)
                   VALUE  1199.

       77  FLD0538A                       PIC  9(03)V9(32)
                   VALUE  922.29859860523566439383102988358587.
       77  FLD0538B                       PIC  9(04)V9(29)
                   VALUE  8861.76614320458799767266100388951.

       77  FLD0539A                       PIC  9(05)V9(27)
                   VALUE  85666.721070025741990860979058197.
       77  FLD0539B                       PIC  9(05)V9(27)
                   VALUE  84375.338828007329095015620623598.

       77  FLD0540A                       PIC S9(04)
                   VALUE +1227.
       77  FLD0540B                       PIC  9(01)
                   VALUE  0.

       77  FLD0541A                       PIC  9(09)V9(05)
                   VALUE  387240740.80744.
       77  FLD0541B                       PIC  9(07)V9(22)
                   VALUE  7676023.3773886621388982121061.

       77  FLD0542A                       PIC  9(06)V9(25)
                   VALUE  831706.5789473143677668076634290.
       77  FLD0542B                       PIC  9(10)V9(11)
                   VALUE  5532908670.51828949563.

       77  FLD0543A                       PIC  9(06)V9(01)
                   VALUE  188772.9.
       77  FLD0543B                       PIC  9(07)V9(02)
                   VALUE  2581387.79.

       77  FLD0544A                       PIC  9(10)V9(09)
                   VALUE  5241766194.366106468.
       77  FLD0544B                       PIC  9(08)V9(02)
                   VALUE  27953166.13.

       77  FLD0545A                       PIC  9(09)V9(14)
                   VALUE  622229285.46684597161942.
       77  FLD0545B                       PIC  9(08)V9(19)
                   VALUE  72256359.1476747091313370674.

       77  FLD0546A                       PIC  9(06)V9(25)
                   VALUE  820358.8689269564193651262939965.
       77  FLD0546B                       PIC  9(09)V9(14)
                   VALUE  610779194.05314462508727.

       77  FLD0547A                       PIC  9(06)V9(25)
                   VALUE  821925.7242001770658035297856258.
       77  FLD0547B                       PIC S9(09)V9(04)
                   VALUE -360691511.9302.

       77  FLD0548A                       PIC  9(07)V9(23)
                   VALUE  7955385.78445739497091437897324.
       77  FLD0548B                       PIC  9(09)V9(17)
                   VALUE  689149957.90453892343663255.

       77  FLD0549A                       PIC  9(07)V9(01)
                   VALUE  2367856.7.
       77  FLD0549B                       PIC  9(09)V9(06)
                   VALUE  415548355.051954.

       77  FLD0550A                       PIC  9(09)V9(15)
                   VALUE  656651700.520587522369453.
       77  FLD0550B                       PIC  9(02)
                   VALUE  06.

       77  FLD0551A                       PIC  9(07)V9(02)
                   VALUE  2589973.73.
       77  FLD0551B                       PIC  9(09)V9(15)
                   VALUE  652529070.867454263904505.

       77  FLD0552A                       PIC  9(10)V9(07)
                   VALUE  4579590761.6898545.
       77  FLD0552B                       PIC  9(05)
                   VALUE  14745.

       77  FLD0553A                       PIC S9(01)
                   VALUE +0.
       77  FLD0553B                       PIC S9(09)V9(04)
                   VALUE -360871096.9090.

       77  FLD0554A                       PIC  9(07)V9(02)
                   VALUE  2568219.15.
       77  FLD0554B                       PIC  9(03)V9(32)
                   VALUE  932.99236247731820448336748086148872.

       77  FLD0555A                       PIC  9(09)V9(05)
                   VALUE  388184875.66560.
       77  FLD0555B                       PIC  9(10)V9(09)
                   VALUE  5217501857.988002811.

       77  FLD0556A                       PIC  9(04)V9(30)
                   VALUE  8983.209260005348140154524116951506.
       77  FLD0556B                       PIC  9(10)V9(11)
                   VALUE  5685562200.43860527368.

       77  FLD0557A                       PIC  9(09)V9(15)
                   VALUE  650877011.601572519339242.
       77  FLD0557B                       PIC S9(05)
                   VALUE +13329.

       77  FLD0558A                       PIC  9(09)V9(13)
                   VALUE  595830550.3266489999703.
       77  FLD0558B                       PIC  9(06)V9(01)
                   VALUE  209604.9.

       77  FLD0559A                       PIC  9(10)V9(09)
                   VALUE  5242032248.235551916.
       77  FLD0559B                       PIC  9(07)V9(22)
                   VALUE  7882034.1791675385678672682843.

       77  FLD0560A                       PIC S9(09)V9(06)
                   VALUE +403640603.914505.
       77  FLD0560B                       PIC  9(09)V9(07)
                   VALUE  438743115.5223073.

       77  FLD0561A                       PIC  9(05)
                   VALUE  14931.
       77  FLD0561B                       PIC  9(01)
                   VALUE  0.

       77  FLD0562A                       PIC S9(01)
                   VALUE -0.
       77  FLD0562B                       PIC  9(02)V9(34)
                   VALUE  95.8208334412512741096179524902254343.

       77  FLD0563A                       PIC  9(10)V9(09)
                   VALUE  5040974749.501065943.
       77  FLD0563B                       PIC S9(08)V9(03)
                   VALUE +31252590.212.

       77  FLD0564A                       PIC  9(09)V9(16)
                   VALUE  666123633.8391588462926051.
       77  FLD0564B                       PIC  9(03)V9(32)
                   VALUE  925.73034981753798966508384182816371.

       77  FLD0565A                       PIC  9(04)V9(30)
                   VALUE  8999.472704059103822515908177592791.
       77  FLD0565B                       PIC  9(06)V9(01)
                   VALUE  209088.7.

       77  FLD0566A                       PIC  9(10)V9(10)
                   VALUE  5451645287.6426646501.
       77  FLD0566B                       PIC  9(09)V9(03)
                   VALUE  317445075.017.

       77  FLD0567A                       PIC S9(07)V9(02)
                   VALUE -2621767.34.
       77  FLD0567B                       PIC  9(04)V9(29)
                   VALUE  8789.70351596639054569948257267242.

       77  FLD0568A                       PIC S9(08)V9(02)
                   VALUE -28119737.76.
       77  FLD0568B                       PIC  9(09)V9(14)
                   VALUE  616894259.97583058336459.

       77  FLD0569A                       PIC  9(10)V9(10)
                   VALUE  5301098669.5201622875.
       77  FLD0569B                       PIC S9(09)V9(06)
                   VALUE +421009403.834593.

       77  FLD0570A                       PIC  9(05)
                   VALUE  13775.
       77  FLD0570B                       PIC  9(08)V9(19)
                   VALUE  72019797.5322646066764775696.

       77  FLD0571A                       PIC  9(10)V9(08)
                   VALUE  4995844884.12155025.
       77  FLD0571B                       PIC  9(09)V9(16)
                   VALUE  666328034.4715885039619251.

       77  FLD0572A                       PIC  9(06)V9(01)
                   VALUE  199648.9.
       77  FLD0572B                       PIC S9(06)
                   VALUE -163410.

       77  FLD0573A                       PIC  9(10)V9(11)
                   VALUE  5579051586.61930800079.
       77  FLD0573B                       PIC  9(01)V9(36)
                   VALUE  9.908582147727897915245875992695800960.

       77  FLD0574A                       PIC  9(10)V9(09)
                   VALUE  5021035726.447702352.
       77  FLD0574B                       PIC S9(01)
                   VALUE +0.

       77  FLD0575A                       PIC  9(02)V9(34)
                   VALUE  96.0495649054037059499933093320578336.
       77  FLD0575B                       PIC S9(01)
                   VALUE +0.

       77  FLD0576A                       PIC  9(09)V9(11)
                   VALUE  551289746.02273483895.
       77  FLD0576B                       PIC  9(10)V9(10)
                   VALUE  5275129807.0789420791.

       77  FLD0577A                       PIC S9(10)V9(06)
                   VALUE +4245433083.607936.
       77  FLD0577B                       PIC  9(02)V9(34)
                   VALUE  96.8922152301445405164770363626303151.

       77  FLD0578A                       PIC S9(07)V9(02)
                   VALUE +2444375.29.
       77  FLD0578B                       PIC  9(05)V9(01)
                   VALUE  16994.3.

       77  FLD0579A                       PIC  9(09)V9(17)
                   VALUE  688719854.55414208576740975.
       77  FLD0579B                       PIC  9(10)V9(09)
                   VALUE  5219660742.233359629.

       77  FLD0580A                       PIC S9(08)V9(04)
                   VALUE +33455460.0291.
       77  FLD0580B                       PIC  9(02)V9(34)
                   VALUE  95.3840741032953354228141051862621679.

       77  FLD0581A                       PIC S9(08)V9(02)
                   VALUE -28271118.43.
       77  FLD0581B                       PIC  9(09)V9(15)
                   VALUE  638334092.073881143036828.

       77  FLD0582A                       PIC  9(02)V9(34)
                   VALUE  95.0957041455027018983514608407858759.
       77  FLD0582B                       PIC  9(09)V9(14)
                   VALUE  628562844.11633944753106.

       77  FLD0583A                       PIC  9(04)V9(30)
                   VALUE  9004.015213488590907431330379040446.
       77  FLD0583B                       PIC S9(01)
                   VALUE +0.

       77  FLD0584A                       PIC S9(01)
                   VALUE +0.
       77  FLD0584B                       PIC  9(02)V9(34)
                   VALUE  95.5867594557756605766485336062032729.

       77  FLD0585A                       PIC S9(10)V9(06)
                   VALUE +4326355872.600766.
       77  FLD0585B                       PIC  9(03)V9(32)
                   VALUE  926.67442032915370297985191427869722.

       77  FLD0586A                       PIC  9(05)V9(27)
                   VALUE  85722.001340062370378092282408033.
       77  FLD0586B                       PIC  9(07)V9(22)
                   VALUE  7865140.9974229868904416207442.

       77  FLD0587A                       PIC S9(09)V9(05)
                   VALUE -381433349.51035.
       77  FLD0587B                       PIC S9(04)
                   VALUE +1221.

       77  FLD0588A                       PIC  9(10)V9(09)
                   VALUE  5181115773.570048599.
       77  FLD0588B                       PIC  9(04)V9(30)
                   VALUE  9002.074772136551272794235956098418.

       77  FLD0589A                       PIC S9(09)V9(06)
                   VALUE +401102073.275349.
       77  FLD0589B                       PIC S9(04)
                   VALUE +1219.

       77  FLD0590A                       PIC  9(08)V9(18)
                   VALUE  70309799.830174168899787900.
       77  FLD0590B                       PIC S9(06)V9(01)
                   VALUE +203587.9.

       77  FLD0591A                       PIC  9(09)V9(12)
                   VALUE  576933255.371857245386.
       77  FLD0591B                       PIC  9(10)V9(09)
                   VALUE  5123728162.782491546.

       77  FLD0592A                       PIC  9(09)V9(15)
                   VALUE  644514829.253344467829833.
       77  FLD0592B                       PIC S9(08)V9(03)
                   VALUE -29392268.940.

       77  FLD0593A                       PIC  9(08)V9(19)
                   VALUE  72063942.4137167527995018190.
       77  FLD0593B                       PIC S9(02)
                   VALUE -05.

       77  FLD0594A                       PIC S9(08)V9(02)
                   VALUE -27405154.91.
       77  FLD0594B                       PIC  9(07)V9(22)
                   VALUE  7738893.5043103479483050932685.

       77  FLD0595A                       PIC  9(08)V9(18)
                   VALUE  70489201.749069052560514592.
       77  FLD0595B                       PIC  9(06)V9(25)
                   VALUE  830535.6563477365172687427730124.

       77  FLD0596A                       PIC  9(04)V9(30)
                   VALUE  9050.358418523600789740157779306173.
       77  FLD0596B                       PIC  9(09)V9(15)
                   VALUE  657865013.656926733709440.

       77  FLD0597A                       PIC S9(10)V9(07)
                   VALUE -4611492066.1642122.
       77  FLD0597B                       PIC  9(06)V9(25)
                   VALUE  816255.9991782142310157155407068.

       77  FLD0598A                       PIC  9(10)V9(12)
                   VALUE  5888650589.753158248740.
       77  FLD0598B                       PIC S9(09)V9(06)
                   VALUE +420172956.568651.

       77  FLD0599A                       PIC  9(05)V9(27)
                   VALUE  85689.140306102984379066356268594.
       77  FLD0599B                       PIC  9(01)
                   VALUE  0.

       77  FLD0600A                       PIC S9(09)V9(06)
                   VALUE +401694362.049109.
       77  FLD0600B                       PIC  9(06)V9(24)
                   VALUE  804504.375985138686644404515391.

       77  FLD0601A                       PIC  9(01)V9(36)
                   VALUE  9.763793413809590537866256454435642808.
       77  FLD0601B                       PIC  9(08)V9(03)
                   VALUE  29749803.347.

       77  FLD0602A                       PIC  9(09)V9(17)
                   VALUE  685435627.00727922454291274.
       77  FLD0602B                       PIC  9(07)V9(02)
                   VALUE  2399467.62.

       77  FLD0603A                       PIC  9(09)V9(16)
                   VALUE  679265807.5584466770280300.
       77  FLD0603B                       PIC S9(05)V9(01)
                   VALUE -17089.6.

       77  FLD0604A                       PIC  9(08)V9(19)
                   VALUE  72862711.3591577502127449861.
       77  FLD0604B                       PIC  9(10)V9(11)
                   VALUE  5587264166.34705347341.

       77  FLD0605A                       PIC  9(04)
                   VALUE  1194.
       77  FLD0605B                       PIC  9(10)V9(06)
                   VALUE  4256956703.307752.

       77  FLD0606A                       PIC  9(07)V9(23)
                   VALUE  7955557.56926823565144957228767.
       77  FLD0606B                       PIC S9(08)V9(04)
                   VALUE +33373395.9174.

       77  FLD0607A                       PIC  9(10)V9(08)
                   VALUE  4950511846.00309279.
       77  FLD0607B                       PIC  9(05)
                   VALUE  13935.

       77  FLD0608A                       PIC  9(09)V9(03)
                   VALUE  328182518.441.
       77  FLD0608B                       PIC  9(02)V9(34)
                   VALUE  95.9183130416232931914066739409463480.

       77  FLD0609A                       PIC  9(08)V9(04)
                   VALUE  33948712.4475.
       77  FLD0609B                       PIC  9(10)V9(07)
                   VALUE  4478674210.4372267.

       77  FLD0610A                       PIC  9(06)V9(24)
                   VALUE  807988.537497822956190418608457.
       77  FLD0610B                       PIC  9(08)V9(02)
                   VALUE  28672541.25.

       77  FLD0611A                       PIC  9(07)V9(22)
                   VALUE  7747853.4043620861382350994972.
       77  FLD0611B                       PIC  9(01)
                   VALUE  0.

       77  FLD0612A                       PIC  9(10)V9(11)
                   VALUE  5644161799.14422944108.
       77  FLD0612B                       PIC  9(07)V9(22)
                   VALUE  7874462.2890006543691754359315.

       77  FLD0613A                       PIC  9(05)
                   VALUE  15551.
       77  FLD0613B                       PIC S9(07)V9(01)
                   VALUE +2249276.6.

       77  FLD0614A                       PIC  9(10)V9(09)
                   VALUE  5201647014.630440546.
       77  FLD0614B                       PIC  9(09)V9(13)
                   VALUE  596348860.2168276475623.

       77  FLD0615A                       PIC S9(03)
                   VALUE +101.
       77  FLD0615B                       PIC S9(07)V9(01)
                   VALUE +2334095.1.

       77  FLD0616A                       PIC  9(07)V9(22)
                   VALUE  7639230.3574527464782306651613.
       77  FLD0616B                       PIC  9(02)
                   VALUE  07.

       77  FLD0617A                       PIC S9(01)
                   VALUE -0.
       77  FLD0617B                       PIC  9(01)
                   VALUE  0.

       77  FLD0618A                       PIC  9(01)V9(36)
                   VALUE  9.817148549708982763206677191192284226.
       77  FLD0618B                       PIC  9(03)
                   VALUE  089.

       77  FLD0619A                       PIC  9(06)V9(24)
                   VALUE  801850.998363624500875346257089.
       77  FLD0619B                       PIC  9(10)V9(10)
                   VALUE  5342180526.7555677598.

       77  FLD0620A                       PIC  9(08)V9(19)
                   VALUE  71717267.3810957062023874186.
       77  FLD0620B                       PIC  9(09)V9(15)
                   VALUE  655677089.730182127702562.

       77  FLD0621A                       PIC  9(04)V9(30)
                   VALUE  9035.013690395441443570234696380794.
       77  FLD0621B                       PIC  9(08)V9(19)
                   VALUE  73424367.1686218957184166811.

       77  FLD0622A                       PIC  9(09)V9(13)
                   VALUE  592420192.5737704321761.
       77  FLD0622B                       PIC S9(09)V9(04)
                   VALUE -361821982.1111.

       77  FLD0623A                       PIC S9(03)
                   VALUE +104.
       77  FLD0623B                       PIC  9(09)V9(15)
                   VALUE  641616818.896418195095066.

       77  FLD0624A                       PIC S9(06)
                   VALUE -162056.
       77  FLD0624B                       PIC  9(10)V9(06)
                   VALUE  4356343039.582531.

       77  FLD0625A                       PIC  9(04)
                   VALUE  1296.
       77  FLD0625B                       PIC  9(07)V9(22)
                   VALUE  7829547.5769811728739000500354.

       77  FLD0626A                       PIC  9(04)V9(29)
                   VALUE  8839.60373056715265072114107169909.
       77  FLD0626B                       PIC S9(09)V9(05)
                   VALUE -374265939.71690.

       77  FLD0627A                       PIC  9(04)
                   VALUE  1093.
       77  FLD0627B                       PIC S9(07)V9(01)
                   VALUE +2323895.2.

       77  FLD0628A                       PIC  9(01)V9(36)
                   VALUE  9.943034041886028573387079632084351032.
       77  FLD0628B                       PIC  9(08)V9(03)
                   VALUE  29681737.673.

       77  FLD0629A                       PIC  9(03)V9(32)
                   VALUE  925.54391942612090904418664649710990.
       77  FLD0629B                       PIC  9(05)V9(28)
                   VALUE  87091.5644969416202769707524566911.

       77  FLD0630A                       PIC S9(09)V9(06)
                   VALUE +400669561.119235.
       77  FLD0630B                       PIC  9(09)V9(12)
                   VALUE  575188656.368988304734.

       77  FLD0631A                       PIC  9(09)V9(15)
                   VALUE  644864894.904831453814608.
       77  FLD0631B                       PIC  9(05)V9(01)
                   VALUE  17568.5.

       77  FLD0632A                       PIC  9(08)V9(18)
                   VALUE  69998401.036213298009869276.
       77  FLD0632B                       PIC  9(10)V9(09)
                   VALUE  5082278856.741135886.

       77  FLD0633A                       PIC  9(08)V9(19)
                   VALUE  72186800.0789349095747127194.
       77  FLD0633B                       PIC S9(09)V9(03)
                   VALUE +332989951.149.

       77  FLD0634A                       PIC S9(10)V9(06)
                   VALUE +4236607402.255205.
       77  FLD0634B                       PIC  9(07)V9(23)
                   VALUE  7926419.75404680843020344127580.

       77  FLD0635A                       PIC S9(06)V9(01)
                   VALUE -190863.2.
       77  FLD0635B                       PIC  9(10)V9(11)
                   VALUE  5580856572.20784292498.

       77  FLD0636A                       PIC S9(07)V9(01)
                   VALUE +2326055.8.
       77  FLD0636B                       PIC  9(05)
                   VALUE  15706.

       77  FLD0637A                       PIC  9(08)V9(19)
                   VALUE  73470187.3111827330475875896.
       77  FLD0637B                       PIC  9(10)V9(10)
                   VALUE  5305678545.6603405837.

       77  FLD0638A                       PIC  9(07)V9(22)
                   VALUE  7752451.2041246673721417437263.
       77  FLD0638B                       PIC  9(06)V9(25)
                   VALUE  822351.5027967045476486873667454.

       77  FLD0639A                       PIC S9(09)V9(03)
                   VALUE +320313574.327.
       77  FLD0639B                       PIC  9(01)V9(36)
                   VALUE  9.751092072024196699686626743641681969.

       77  FLD0640A                       PIC  9(04)V9(29)
                   VALUE  8818.61493829378950692898797569796.
       77  FLD0640B                       PIC  9(03)V9(32)
                   VALUE  921.50555740058603948483550993842072.

       77  FLD0641A                       PIC  9(07)V9(22)
                   VALUE  7672056.2697199168322725881807.
       77  FLD0641B                       PIC  9(08)V9(19)
                   VALUE  72539277.3386829170512157816.

       77  FLD0642A                       PIC  9(08)V9(18)
                   VALUE  70806494.663622721041917884.
       77  FLD0642B                       PIC  9(09)V9(13)
                   VALUE  592898946.8504934912118.

       77  FLD0643A                       PIC  9(07)V9(01)
                   VALUE  2194714.9.
       77  FLD0643B                       PIC  9(08)V9(02)
                   VALUE  26711153.59.

       77  FLD0644A                       PIC  9(02)
                   VALUE  07.
       77  FLD0644B                       PIC  9(03)V9(32)
                   VALUE  936.97460492260109532480782945640385.

       77  FLD0645A                       PIC  9(03)V9(31)
                   VALUE  913.1000502995376688630813077907077.
       77  FLD0645B                       PIC  9(07)V9(02)
                   VALUE  2467302.34.

       77  FLD0646A                       PIC  9(07)V9(21)
                   VALUE  7520596.805608434909373727350.
       77  FLD0646B                       PIC  9(09)V9(13)
                   VALUE  595843790.0187590896550.

       77  FLD0647A                       PIC S9(02)
                   VALUE -07.
       77  FLD0647B                       PIC  9(09)V9(16)
                   VALUE  659893156.1456289340839020.

       77  FLD0648A                       PIC S9(04)
                   VALUE +1149.
       77  FLD0648B                       PIC  9(09)V9(15)
                   VALUE  634287010.942461315643470.

       77  FLD0649A                       PIC  9(07)V9(23)
                   VALUE  7912687.10466688007798552462190.
       77  FLD0649B                       PIC  9(10)V9(09)
                   VALUE  5026519944.429308495.

       77  FLD0650A                       PIC  9(01)V9(36)
                   VALUE  9.878734262172308433491707546636462211.
       77  FLD0650B                       PIC  9(09)V9(16)
                   VALUE  671574601.9768447094833163.

       77  FLD0651A                       PIC  9(08)V9(18)
                   VALUE  69993795.648145529231243244.
       77  FLD0651B                       PIC S9(09)V9(05)
                   VALUE -390933259.39761.

       77  FLD0652A                       PIC  9(05)V9(01)
                   VALUE  16676.6.
       77  FLD0652B                       PIC S9(07)V9(01)
                   VALUE +2109381.3.

       77  FLD0653A                       PIC  9(09)V9(14)
                   VALUE  620233215.83922497168828.
       77  FLD0653B                       PIC  9(06)
                   VALUE  165087.

       77  FLD0654A                       PIC  9(09)V9(15)
                   VALUE  639337130.284049814932245.
       77  FLD0654B                       PIC  9(08)V9(02)
                   VALUE  27813223.51.

       77  FLD0655A                       PIC  9(06)V9(25)
                   VALUE  818013.3890362937254536745967925.
       77  FLD0655B                       PIC  9(09)V9(13)
                   VALUE  594166317.4495728227952.

       77  FLD0656A                       PIC S9(06)V9(01)
                   VALUE +200859.7.
       77  FLD0656B                       PIC  9(09)V9(15)
                   VALUE  650208537.267117914204561.

       77  FLD0657A                       PIC  9(03)V9(32)
                   VALUE  936.17194619070143168926279031438753.
       77  FLD0657B                       PIC  9(08)V9(18)
                   VALUE  70468283.988380520099781278.

       77  FLD0658A                       PIC  9(08)V9(18)
                   VALUE  70069365.832955088357891781.
       77  FLD0658B                       PIC  9(10)V9(10)
                   VALUE  5438086690.5335789596.

       77  FLD0659A                       PIC  9(04)V9(30)
                   VALUE  9044.337793801533464943531726021319.
       77  FLD0659B                       PIC  9(08)V9(19)
                   VALUE  71946522.3294514011342926096.

       77  FLD0660A                       PIC  9(10)V9(09)
                   VALUE  5240012407.843260833.
       77  FLD0660B                       PIC S9(05)
                   VALUE -15464.

       77  FLD0661A                       PIC  9(02)V9(34)
                   VALUE  96.5581569624071600621562083688331767.
       77  FLD0661B                       PIC  9(10)V9(11)
                   VALUE  5705409453.15247127744.

       77  FLD0662A                       PIC S9(07)V9(01)
                   VALUE +2131985.0.
       77  FLD0662B                       PIC  9(09)V9(16)
                   VALUE  669960203.6476681732324323.

       77  FLD0663A                       PIC  9(05)
                   VALUE  15788.
       77  FLD0663B                       PIC  9(04)V9(29)
                   VALUE  8894.69232052811142885673234559362.

       77  FLD0664A                       PIC S9(05)
                   VALUE +14371.
       77  FLD0664B                       PIC S9(09)V9(07)
                   VALUE +440580330.5288489.

       77  FLD0665A                       PIC  9(07)V9(02)
                   VALUE  2455875.37.
       77  FLD0665B                       PIC  9(09)V9(16)
                   VALUE  674160289.5706166886924393.

       77  FLD0666A                       PIC  9(05)V9(27)
                   VALUE  86015.549175288641414738322055200.
       77  FLD0666B                       PIC  9(02)
                   VALUE  05.

       77  FLD0667A                       PIC  9(02)V9(33)
                   VALUE  94.482499794694274619644147605868056.
       77  FLD0667B                       PIC  9(09)V9(15)
                   VALUE  632143875.790169951223163.

       77  FLD0668A                       PIC  9(03)V9(32)
                   VALUE  935.15331845029669999291854765033349.
       77  FLD0668B                       PIC  9(10)V9(09)
                   VALUE  5144629393.825745911.

       77  FLD0669A                       PIC  9(01)V9(36)
                   VALUE  9.937328225295053441001869032334070652.
       77  FLD0669B                       PIC  9(10)V9(05)
                   VALUE  3959366397.86081.

       77  FLD0670A                       PIC  9(07)V9(02)
                   VALUE  2567113.54.
       77  FLD0670B                       PIC  9(02)V9(34)
                   VALUE  97.1019073438902258210703166696475818.

       77  FLD0671A                       PIC  9(09)V9(03)
                   VALUE  326622169.718.
       77  FLD0671B                       PIC  9(06)V9(01)
                   VALUE  186874.6.

       77  FLD0672A                       PIC  9(10)V9(07)
                   VALUE  4564917934.3294549.
       77  FLD0672B                       PIC  9(09)V9(15)
                   VALUE  637002039.815689924395769.

       77  FLD0673A                       PIC  9(10)V9(06)
                   VALUE  4285002333.462958.
       77  FLD0673B                       PIC  9(07)V9(02)
                   VALUE  2489778.77.

       77  FLD0674A                       PIC  9(10)V9(10)
                   VALUE  5491650640.0821929467.
       77  FLD0674B                       PIC  9(06)V9(25)
                   VALUE  828061.3110769976525915581078152.

       77  FLD0675A                       PIC  9(05)V9(27)
                   VALUE  84609.285471017914304070473008323.
       77  FLD0675B                       PIC  9(10)V9(09)
                   VALUE  5083540664.870341840.

       77  FLD0676A                       PIC  9(03)
                   VALUE  096.
       77  FLD0676B                       PIC  9(02)V9(34)
                   VALUE  96.4664170342459437179627457226160913.

       77  FLD0677A                       PIC S9(07)V9(01)
                   VALUE +2248183.1.
       77  FLD0677B                       PIC  9(04)V9(29)
                   VALUE  8903.66445455624266891447859961772.

       77  FLD0678A                       PIC S9(03)
                   VALUE -092.
       77  FLD0678B                       PIC  9(05)V9(27)
                   VALUE  85887.366357613359468814451247453.

       77  FLD0679A                       PIC S9(03)
                   VALUE -080.
       77  FLD0679B                       PIC  9(10)V9(07)
                   VALUE  4490278235.6612852.

       77  FLD0680A                       PIC S9(08)V9(02)
                   VALUE -28119381.66.
       77  FLD0680B                       PIC  9(10)V9(11)
                   VALUE  5617591008.16083600804.

       77  FLD0681A                       PIC  9(08)V9(17)
                   VALUE  68244115.95644890304868113.
       77  FLD0681B                       PIC  9(06)V9(25)
                   VALUE  821371.7547801553386932482681004.

       77  FLD0682A                       PIC S9(10)V9(08)
                   VALUE -4949729784.45772315.
       77  FLD0682B                       PIC  9(06)V9(25)
                   VALUE  831097.0812489861803129542749957.

       77  FLD0683A                       PIC  9(05)V9(28)
                   VALUE  86894.3068817851549390240961656672.
       77  FLD0683B                       PIC  9(10)V9(12)
                   VALUE  5829735573.963021888488.

       77  FLD0684A                       PIC  9(10)V9(13)
                   VALUE  6059233373.6406744915115.
       77  FLD0684B                       PIC  9(09)V9(07)
                   VALUE  438339473.7646870.

       77  FLD0685A                       PIC S9(07)V9(02)
                   VALUE -2545714.99.
       77  FLD0685B                       PIC  9(07)V9(23)
                   VALUE  7915567.03876752143500539204978.

       77  FLD0686A                       PIC  9(09)V9(14)
                   VALUE  621044693.11257093355749.
       77  FLD0686B                       PIC  9(09)V9(13)
                   VALUE  602970496.8531952591348.

       77  FLD0687A                       PIC S9(09)V9(05)
                   VALUE -394005874.76898.
       77  FLD0687B                       PIC  9(10)V9(08)
                   VALUE  4960980508.03440715.

       77  FLD0688A                       PIC  9(03)V9(32)
                   VALUE  932.26844955554755145499257196206599.
       77  FLD0688B                       PIC  9(04)
                   VALUE  1064.

       77  FLD0689A                       PIC  9(10)V9(07)
                   VALUE  4559306991.4341932.
       77  FLD0689B                       PIC S9(08)V9(04)
                   VALUE +34024840.8710.

       77  FLD0690A                       PIC  9(01)V9(36)
                   VALUE  9.793660005922469879990899244148749858.
       77  FLD0690B                       PIC S9(08)V9(02)
                   VALUE -28078949.75.

       77  FLD0691A                       PIC  9(09)V9(07)
                   VALUE  439500550.5938089.
       77  FLD0691B                       PIC S9(10)V9(06)
                   VALUE +4308484639.535531.

       77  FLD0692A                       PIC  9(09)V9(04)
                   VALUE  358382577.7464.
       77  FLD0692B                       PIC  9(09)V9(15)
                   VALUE  636450165.553045121846764.

       77  FLD0693A                       PIC S9(07)V9(01)
                   VALUE +2127399.6.
       77  FLD0693B                       PIC S9(01)
                   VALUE -0.

       77  FLD0694A                       PIC  9(09)V9(05)
                   VALUE  378019656.01658.
       77  FLD0694B                       PIC  9(01)
                   VALUE  0.

       77  FLD0695A                       PIC S9(09)V9(04)
                   VALUE -354304867.1111.
       77  FLD0695B                       PIC  9(09)V9(15)
                   VALUE  639721730.127885357397587.

       77  FLD0696A                       PIC  9(04)V9(30)
                   VALUE  9067.945209731629319094281527213752.
       77  FLD0696B                       PIC  9(09)V9(03)
                   VALUE  318871778.848.

       77  FLD0697A                       PIC S9(09)V9(06)
                   VALUE +414586353.841170.
       77  FLD0697B                       PIC  9(10)V9(09)
                   VALUE  5161837194.897523906.

       77  FLD0698A                       PIC  9(08)V9(18)
                   VALUE  69447533.832122987362822641.
       77  FLD0698B                       PIC S9(03)
                   VALUE -080.

       77  FLD0699A                       PIC  9(09)V9(13)
                   VALUE  597064952.5204202445749.
       77  FLD0699B                       PIC  9(09)V9(14)
                   VALUE  630288401.27729701681147.

       77  FLD0700A                       PIC  9(06)V9(25)
                   VALUE  820234.3139012789885455845251271.
       77  FLD0700B                       PIC S9(01)
                   VALUE -0.

       77  FLD0701A                       PIC  9(06)V9(24)
                   VALUE  809485.363390515577641792788199.
       77  FLD0701B                       PIC  9(02)V9(34)
                   VALUE  97.0800419877562270620785511709982529.

       77  FLD0702A                       PIC  9(04)V9(30)
                   VALUE  9021.848589518318695112952809722628.
       77  FLD0702B                       PIC  9(07)V9(01)
                   VALUE  2351439.7.

       77  FLD0703A                       PIC S9(04)
                   VALUE +1126.
       77  FLD0703B                       PIC  9(08)V9(04)
                   VALUE  33525578.1235.

       77  FLD0704A                       PIC  9(10)V9(07)
                   VALUE  4696322933.5995404.
       77  FLD0704B                       PIC  9(09)V9(14)
                   VALUE  611168884.71092423174013.

       77  FLD0705A                       PIC  9(10)V9(10)
                   VALUE  5381864238.0664638569.
       77  FLD0705B                       PIC  9(10)V9(07)
                   VALUE  4699950479.7278301.

       77  FLD0706A                       PIC  9(07)V9(22)
                   VALUE  7815442.4104873465584120140192.
       77  FLD0706B                       PIC S9(05)V9(01)
                   VALUE -17297.4.

       77  FLD0707A                       PIC  9(01)
                   VALUE  0.
       77  FLD0707B                       PIC  9(10)V9(09)
                   VALUE  5129442198.407349051.

       77  FLD0708A                       PIC  9(02)V9(34)
                   VALUE  95.1225570140109555339336111501324921.
       77  FLD0708B                       PIC  9(08)V9(04)
                   VALUE  33834894.3169.

       77  FLD0709A                       PIC S9(04)
                   VALUE +1124.
       77  FLD0709B                       PIC  9(09)V9(05)
                   VALUE  379344826.68404.

       77  FLD0710A                       PIC  9(01)V9(36)
                   VALUE  9.946833086486408515014545628218911588.
       77  FLD0710B                       PIC S9(09)V9(03)
                   VALUE +322996298.459.

       77  FLD0711A                       PIC  9(09)V9(16)
                   VALUE  677754067.1912668512888444.
       77  FLD0711B                       PIC  9(02)
                   VALUE  06.

       77  FLD0712A                       PIC  9(09)V9(14)
                   VALUE  610433230.32745544498567.
       77  FLD0712B                       PIC S9(10)V9(08)
                   VALUE -4947392148.88603839.

       77  FLD0713A                       PIC S9(08)V9(03)
                   VALUE -29280564.557.
       77  FLD0713B                       PIC  9(07)V9(01)
                   VALUE  2168463.7.

       77  FLD0714A                       PIC  9(10)V9(07)
                   VALUE  4593980567.3719869.
       77  FLD0714B                       PIC  9(09)V9(04)
                   VALUE  347385951.5252.

       77  FLD0715A                       PIC  9(09)V9(06)
                   VALUE  406643755.503527.
       77  FLD0715B                       PIC  9(10)V9(10)
                   VALUE  5480282475.3098877685.

       77  FLD0716A                       PIC S9(08)V9(03)
                   VALUE -29497495.128.
       77  FLD0716B                       PIC  9(03)V9(31)
                   VALUE  914.3056916239737930141018296126276.

       77  FLD0717A                       PIC  9(05)V9(28)
                   VALUE  86936.9843469434133709228262887336.
       77  FLD0717B                       PIC  9(07)V9(21)
                   VALUE  7570171.861371541854879296806.

       77  FLD0718A                       PIC  9(06)
                   VALUE  158746.
       77  FLD0718B                       PIC  9(10)V9(06)
                   VALUE  4283417063.648062.

       77  FLD0719A                       PIC  9(01)
                   VALUE  0.
       77  FLD0719B                       PIC  9(07)V9(02)
                   VALUE  2390904.61.

       77  FLD0720A                       PIC  9(03)
                   VALUE  087.
       77  FLD0720B                       PIC S9(09)V9(06)
                   VALUE +404886316.426392.

       77  FLD0721A                       PIC S9(09)V9(03)
                   VALUE +332294869.962.
       77  FLD0721B                       PIC  9(07)V9(01)
                   VALUE  2285954.3.

       77  FLD0722A                       PIC S9(05)V9(01)
                   VALUE -17094.9.
       77  FLD0722B                       PIC  9(07)V9(21)
                   VALUE  7607809.920924922808538326535.

       77  FLD0723A                       PIC  9(05)V9(28)
                   VALUE  87349.0901765646254872876852459739.
       77  FLD0723B                       PIC  9(02)
                   VALUE  07.

       77  FLD0724A                       PIC  9(09)V9(03)
                   VALUE  317474559.928.
       77  FLD0724B                       PIC  9(10)V9(09)
                   VALUE  5251486411.115240393.

       77  FLD0725A                       PIC  9(03)V9(31)
                   VALUE  915.1169879467740964074096154945436.
       77  FLD0725B                       PIC S9(09)V9(07)
                   VALUE +444412819.1361023.

       77  FLD0726A                       PIC  9(05)
                   VALUE  14771.
       77  FLD0726B                       PIC S9(09)V9(06)
                   VALUE +401835639.675800.

       77  FLD0727A                       PIC  9(10)V9(10)
                   VALUE  5412169008.2113094177.
       77  FLD0727B                       PIC  9(09)V9(16)
                   VALUE  677439277.9021225496904889.

       77  FLD0728A                       PIC  9(09)V9(07)
                   VALUE  439411444.5456123.
       77  FLD0728B                       PIC S9(09)V9(05)
                   VALUE -371357711.97684.

       77  FLD0729A                       PIC  9(02)V9(33)
                   VALUE  94.514768998125520127473464526701718.
       77  FLD0729B                       PIC  9(07)V9(23)
                   VALUE  7959700.26538914909863819957536.

       77  FLD0730A                       PIC  9(06)V9(25)
                   VALUE  822685.8594490329412707296796725.
       77  FLD0730B                       PIC  9(09)V9(14)
                   VALUE  630270988.23946403616247.

       77  FLD0731A                       PIC  9(10)V9(12)
                   VALUE  5808279049.356201984011.
       77  FLD0731B                       PIC  9(09)V9(13)
                   VALUE  600372700.6085320949679.

       77  FLD0732A                       PIC  9(03)V9(31)
                   VALUE  915.5080332184045710519626481982413.
       77  FLD0732B                       PIC S9(04)
                   VALUE +1229.

       77  FLD0733A                       PIC  9(09)V9(03)
                   VALUE  328019305.824.
       77  FLD0733B                       PIC  9(09)V9(15)
                   VALUE  637621846.224700750127567.

       77  FLD0734A                       PIC S9(06)
                   VALUE -164821.
       77  FLD0734B                       PIC  9(02)
                   VALUE  05.

       77  FLD0735A                       PIC S9(06)V9(01)
                   VALUE -190229.8.
       77  FLD0735B                       PIC  9(09)V9(15)
                   VALUE  641899075.827484955070190.

       77  FLD0736A                       PIC  9(10)V9(09)
                   VALUE  5128678158.202983894.
       77  FLD0736B                       PIC  9(07)V9(23)
                   VALUE  7952260.56216242538354777025233.

       77  FLD0737A                       PIC S9(07)V9(02)
                   VALUE -2601084.10.
       77  FLD0737B                       PIC S9(07)V9(02)
                   VALUE -2623355.12.

       77  FLD0738A                       PIC  9(10)V9(09)
                   VALUE  5071467647.954436275.
       77  FLD0738B                       PIC  9(02)V9(34)
                   VALUE  96.7470462418068333221299326396547257.

       77  FLD0739A                       PIC S9(09)V9(03)
                   VALUE +324797211.447.
       77  FLD0739B                       PIC S9(10)V9(08)
                   VALUE -4916417996.38161292.

       77  FLD0740A                       PIC S9(08)V9(03)
                   VALUE +30394739.303.
       77  FLD0740B                       PIC  9(05)V9(28)
                   VALUE  87461.9397808273024708114462555386.

       77  FLD0741A                       PIC S9(09)V9(03)
                   VALUE +322386723.831.
       77  FLD0741B                       PIC S9(09)V9(03)
                   VALUE +321782512.880.

       77  FLD0742A                       PIC  9(09)V9(06)
                   VALUE  419367234.713135.
       77  FLD0742B                       PIC S9(08)V9(03)
                   VALUE +30468212.851.

       77  FLD0743A                       PIC  9(05)V9(27)
                   VALUE  85864.867305029812794003873932524.
       77  FLD0743B                       PIC  9(06)V9(01)
                   VALUE  209820.2.

       77  FLD0744A                       PIC  9(01)
                   VALUE  0.
       77  FLD0744B                       PIC  9(08)V9(02)
                   VALUE  26956228.79.

       77  FLD0745A                       PIC  9(01)V9(36)
                   VALUE  9.759709501186564217789509712019935250.
       77  FLD0745B                       PIC  9(05)
                   VALUE  13548.

       77  FLD0746A                       PIC  9(10)V9(10)
                   VALUE  5435731573.3552813430.
       77  FLD0746B                       PIC  9(10)V9(09)
                   VALUE  5204204473.599284286.

       77  FLD0747A                       PIC  9(10)V9(11)
                   VALUE  5681676571.07930934579.
       77  FLD0747B                       PIC  9(03)V9(31)
                   VALUE  916.9159297409485986918298294767737.

       77  FLD0748A                       PIC  9(03)
                   VALUE  086.
       77  FLD0748B                       PIC S9(05)V9(01)
                   VALUE -18032.7.

       77  FLD0749A                       PIC S9(10)V9(07)
                   VALUE -4609096560.3942379.
       77  FLD0749B                       PIC  9(06)V9(25)
                   VALUE  820519.2560948625368766329302161.

       77  FLD0750A                       PIC  9(07)V9(22)
                   VALUE  7666736.3171436386792834127845.
       77  FLD0750B                       PIC  9(08)V9(04)
                   VALUE  33966692.5145.

       77  FLD0751A                       PIC  9(02)
                   VALUE  06.
       77  FLD0751B                       PIC S9(05)
                   VALUE -15176.

       77  FLD0752A                       PIC  9(02)
                   VALUE  07.
       77  FLD0752B                       PIC  9(03)V9(32)
                   VALUE  922.38508268330654527034084821934811.

       77  FLD0753A                       PIC  9(08)V9(19)
                   VALUE  73379118.3872512742247806727.
       77  FLD0753B                       PIC S9(01)
                   VALUE +0.

       77  FLD0754A                       PIC S9(09)V9(03)
                   VALUE +322061792.108.
       77  FLD0754B                       PIC  9(07)V9(02)
                   VALUE  2450066.21.

       77  FLD0755A                       PIC  9(06)V9(25)
                   VALUE  835592.8333445592492978448717622.
       77  FLD0755B                       PIC  9(10)V9(10)
                   VALUE  5346301002.0417645051.

       77  FLD0756A                       PIC  9(09)V9(04)
                   VALUE  366295057.8421.
       77  FLD0756B                       PIC S9(05)
                   VALUE -15366.

       77  FLD0757A                       PIC  9(08)V9(19)
                   VALUE  71466976.1113856494283425035.
       77  FLD0757B                       PIC S9(07)V9(02)
                   VALUE +2429438.31.

       77  FLD0758A                       PIC  9(07)V9(01)
                   VALUE  2293699.9.
       77  FLD0758B                       PIC S9(06)
                   VALUE -162229.

       77  FLD0759A                       PIC  9(03)V9(32)
                   VALUE  931.38963166127219928114300273591652.
       77  FLD0759B                       PIC  9(07)V9(21)
                   VALUE  7621303.882836163445801958005.

       77  FLD0760A                       PIC  9(06)V9(01)
                   VALUE  188511.3.
       77  FLD0760B                       PIC  9(04)V9(30)
                   VALUE  9041.413390221895163278986728982999.

       77  FLD0761A                       PIC  9(09)V9(17)
                   VALUE  690006529.44346418937726639.
       77  FLD0761B                       PIC  9(09)V9(14)
                   VALUE  629261290.31917010792085.

       77  FLD0762A                       PIC  9(09)V9(16)
                   VALUE  671435372.9957326377686399.
       77  FLD0762B                       PIC  9(07)V9(02)
                   VALUE  2591343.61.

       77  FLD0763A                       PIC  9(08)V9(19)
                   VALUE  71468145.3175585401638159055.
       77  FLD0763B                       PIC  9(06)V9(24)
                   VALUE  815545.608346078032546699887461.

       77  FLD0764A                       PIC  9(10)V9(11)
                   VALUE  5535007698.50315821329.
       77  FLD0764B                       PIC  9(10)V9(08)
                   VALUE  4979398183.62831021.

       77  FLD0765A                       PIC  9(04)V9(29)
                   VALUE  8855.80582773889624093044403707608.
       77  FLD0765B                       PIC S9(04)
                   VALUE +1212.

       77  FLD0766A                       PIC S9(01)
                   VALUE +0.
       77  FLD0766B                       PIC  9(07)V9(01)
                   VALUE  2294943.2.

       77  FLD0767A                       PIC S9(10)V9(08)
                   VALUE -4848285740.27346248.
       77  FLD0767B                       PIC S9(01)
                   VALUE +0.

       77  FLD0768A                       PIC  9(09)V9(17)
                   VALUE  684230789.92735519854306858.
       77  FLD0768B                       PIC S9(02)
                   VALUE -07.

       77  FLD0769A                       PIC  9(07)V9(02)
                   VALUE  2565731.27.
       77  FLD0769B                       PIC  9(09)V9(04)
                   VALUE  356094054.4649.

       77  FLD0770A                       PIC  9(09)V9(12)
                   VALUE  574214303.174467532997.
       77  FLD0770B                       PIC  9(10)V9(13)
                   VALUE  6057194691.9895736094474.

       77  FLD0771A                       PIC  9(08)V9(18)
                   VALUE  69721614.519732855175249142.
       77  FLD0771B                       PIC  9(09)V9(17)
                   VALUE  690190375.47148320843604096.

       77  FLD0772A                       PIC  9(10)V9(08)
                   VALUE  4868623585.10471993.
       77  FLD0772B                       PIC  9(10)V9(05)
                   VALUE  3959689116.24786.

       77  FLD0773A                       PIC S9(07)V9(01)
                   VALUE +2339835.9.
       77  FLD0773B                       PIC  9(03)V9(32)
                   VALUE  931.93997423560348547511011929600499.

       77  FLD0774A                       PIC  9(01)
                   VALUE  0.
       77  FLD0774B                       PIC S9(07)V9(02)
                   VALUE +2425891.04.

       77  FLD0775A                       PIC  9(09)V9(06)
                   VALUE  418947899.183504.
       77  FLD0775B                       PIC  9(03)V9(32)
                   VALUE  930.87735098341006789723905967548489.

       77  FLD0776A                       PIC  9(09)V9(06)
                   VALUE  418950765.017868.
       77  FLD0776B                       PIC  9(05)V9(27)
                   VALUE  84781.081485203291236985023715533.

       77  FLD0777A                       PIC S9(08)V9(03)
                   VALUE +31438250.184.
       77  FLD0777B                       PIC  9(10)V9(11)
                   VALUE  5606560858.83416754889.

       77  FLD0778A                       PIC S9(06)V9(01)
                   VALUE -192739.4.
       77  FLD0778B                       PIC  9(03)V9(31)
                   VALUE  916.8465464730475300569878527312539.

       77  FLD0779A                       PIC  9(04)V9(30)
                   VALUE  9029.333248069044692840634525055065.
       77  FLD0779B                       PIC S9(10)V9(08)
                   VALUE -4740907582.59428035.

       77  FLD0780A                       PIC  9(09)V9(03)
                   VALUE  318241207.749.
       77  FLD0780B                       PIC  9(06)V9(25)
                   VALUE  822759.6235369002419801631731388.

       77  FLD0781A                       PIC  9(10)V9(08)
                   VALUE  4967153543.73054196.
       77  FLD0781B                       PIC  9(08)V9(03)
                   VALUE  29720911.669.

       77  FLD0782A                       PIC  9(05)
                   VALUE  13793.
       77  FLD0782B                       PIC  9(02)V9(34)
                   VALUE  95.5158015091007617236584792408393695.

       77  FLD0783A                       PIC  9(04)V9(29)
                   VALUE  8813.39219378433402773964644438819.
       77  FLD0783B                       PIC S9(10)V9(06)
                   VALUE +4236433759.282261.

       77  FLD0784A                       PIC  9(09)V9(15)
                   VALUE  641964802.793786426526878.
       77  FLD0784B                       PIC  9(06)V9(25)
                   VALUE  824637.3935062285553954097849782.

       77  FLD0785A                       PIC  9(08)V9(17)
                   VALUE  68097654.34600172362422654.
       77  FLD0785B                       PIC  9(09)V9(03)
                   VALUE  325202869.704.

       77  FLD0786A                       PIC  9(01)V9(36)
                   VALUE  9.820249933224565186407062356011010706.
       77  FLD0786B                       PIC  9(05)V9(27)
                   VALUE  85417.725929538756979297886573476.

       77  FLD0787A                       PIC  9(10)V9(11)
                   VALUE  5592847098.07636559730.
       77  FLD0787B                       PIC  9(06)V9(01)
                   VALUE  199330.4.

       77  FLD0788A                       PIC  9(02)V9(34)
                   VALUE  95.6557531637097668841818176588276401.
       77  FLD0788B                       PIC  9(07)V9(22)
                   VALUE  7789929.3063459995600794627534.

       77  FLD0789A                       PIC S9(05)V9(01)
                   VALUE -17101.7.
       77  FLD0789B                       PIC  9(09)V9(16)
                   VALUE  660444958.2132847496040994.

       77  FLD0790A                       PIC  9(07)V9(02)
                   VALUE  2384369.54.
       77  FLD0790B                       PIC S9(08)V9(03)
                   VALUE -29309999.122.

       77  FLD0791A                       PIC  9(03)
                   VALUE  088.
       77  FLD0791B                       PIC  9(08)V9(20)
                   VALUE  73827325.48868294886190710712.

       77  FLD0792A                       PIC  9(02)V9(34)
                   VALUE  95.5230059106088935649836457741912454.
       77  FLD0792B                       PIC  9(09)V9(05)
                   VALUE  379824535.06313.

       77  FLD0793A                       PIC  9(06)V9(01)
                   VALUE  199221.9.
       77  FLD0793B                       PIC  9(10)V9(11)
                   VALUE  5591577156.30166807230.

       77  FLD0794A                       PIC S9(08)V9(04)
                   VALUE +33437009.5807.
       77  FLD0794B                       PIC S9(01)
                   VALUE -0.

       77  FLD0795A                       PIC S9(01)
                   VALUE +0.
       77  FLD0795B                       PIC S9(08)V9(04)
                   VALUE +33494400.6958.

       77  FLD0796A                       PIC  9(07)V9(21)
                   VALUE  7565685.006144580171394409262.
       77  FLD0796B                       PIC  9(08)V9(19)
                   VALUE  72949831.5977354816475042298.

       77  FLD0797A                       PIC  9(01)
                   VALUE  0.
       77  FLD0797B                       PIC  9(09)V9(04)
                   VALUE  348777486.0252.

       77  FLD0798A                       PIC S9(09)V9(03)
                   VALUE +332243375.906.
       77  FLD0798B                       PIC  9(09)V9(16)
                   VALUE  673821443.1439371043808250.

       77  FLD0799A                       PIC  9(09)V9(17)
                   VALUE  690866271.33683375934225523.
       77  FLD0799B                       PIC  9(09)V9(11)
                   VALUE  551526790.74963362193.

       77  FLD0800A                       PIC  9(08)V9(18)
                   VALUE  70036112.416705975647346349.
       77  FLD0800B                       PIC  9(08)V9(02)
                   VALUE  26662512.18.

       77  FLD0801A                       PIC S9(09)V9(07)
                   VALUE +443093279.8052367.
       77  FLD0801B                       PIC  9(01)V9(36)
                   VALUE  9.827967002397862694706986985693220049.

       77  FLD0802A                       PIC S9(07)V9(02)
                   VALUE +2449505.23.
       77  FLD0802B                       PIC  9(04)V9(29)
                   VALUE  8911.32090012832223102634543465683.

       77  FLD0803A                       PIC S9(05)V9(01)
                   VALUE -17467.0.
       77  FLD0803B                       PIC  9(10)V9(11)
                   VALUE  5556247901.99399698487.

       77  FLD0804A                       PIC  9(07)V9(02)
                   VALUE  2599541.84.
       77  FLD0804B                       PIC  9(01)
                   VALUE  0.

       77  FLD0805A                       PIC  9(07)V9(01)
                   VALUE  2358341.0.
       77  FLD0805B                       PIC  9(10)V9(08)
                   VALUE  4796323563.66873291.

       77  FLD0806A                       PIC  9(10)V9(11)
                   VALUE  5703927562.80738821850.
       77  FLD0806B                       PIC  9(09)V9(07)
                   VALUE  445849105.9648416.

       77  FLD0807A                       PIC  9(09)V9(17)
                   VALUE  689326682.16034242991696601.
       77  FLD0807B                       PIC S9(03)
                   VALUE -090.

       77  FLD0808A                       PIC  9(01)
                   VALUE  0.
       77  FLD0808B                       PIC  9(10)V9(07)
                   VALUE  4574455047.5690953.

       77  FLD0809A                       PIC  9(05)V9(28)
                   VALUE  86873.4196996681751201663246320094.
       77  FLD0809B                       PIC S9(09)V9(07)
                   VALUE +440334288.3961999.

       77  FLD0810A                       PIC S9(04)
                   VALUE +1129.
       77  FLD0810B                       PIC S9(07)V9(01)
                   VALUE +2130584.0.

       77  FLD0811A                       PIC  9(09)V9(15)
                   VALUE  648943185.643321429623142.
       77  FLD0811B                       PIC  9(01)V9(36)
                   VALUE  9.811592432324195423021251372119877487.

       77  FLD0812A                       PIC S9(08)V9(03)
                   VALUE -29270905.795.
       77  FLD0812B                       PIC  9(08)V9(02)
                   VALUE  27514068.39.

       77  FLD0813A                       PIC  9(10)V9(08)
                   VALUE  4881724662.84412076.
       77  FLD0813B                       PIC S9(08)V9(03)
                   VALUE -29113136.400.

       77  FLD0814A                       PIC S9(02)
                   VALUE -07.
       77  FLD0814B                       PIC  9(07)V9(21)
                   VALUE  7525112.595496631362479433846.

       77  FLD0815A                       PIC  9(06)V9(25)
                   VALUE  838676.0467962863785373883729334.
       77  FLD0815B                       PIC  9(02)V9(34)
                   VALUE  95.3836598694868031955707010638434439.

       77  FLD0816A                       PIC  9(08)V9(18)
                   VALUE  70774184.783492177786001775.
       77  FLD0816B                       PIC  9(04)V9(29)
                   VALUE  8859.15144904112161761133847903693.

       77  FLD0817A                       PIC  9(10)V9(09)
                   VALUE  5163345142.860672476.
       77  FLD0817B                       PIC  9(10)V9(09)
                   VALUE  5158922133.304477686.

       77  FLD0818A                       PIC  9(08)V9(03)
                   VALUE  30586164.664.
       77  FLD0818B                       PIC  9(08)V9(19)
                   VALUE  71565910.0751609544843745425.

       77  FLD0819A                       PIC  9(01)V9(36)
                   VALUE  9.844708607145921108738662042014766484.
       77  FLD0819B                       PIC S9(03)
                   VALUE -092.

       77  FLD0820A                       PIC  9(01)
                   VALUE  0.
       77  FLD0820B                       PIC  9(02)V9(34)
                   VALUE  95.6537139953218984445015848905313760.

       77  FLD0821A                       PIC  9(09)V9(11)
                   VALUE  550576956.44832715942.
       77  FLD0821B                       PIC S9(09)V9(05)
                   VALUE -383656536.39422.

       77  FLD0822A                       PIC S9(05)
                   VALUE +14037.
       77  FLD0822B                       PIC  9(04)
                   VALUE  1092.

       77  FLD0823A                       PIC  9(08)V9(20)
                   VALUE  73880168.20028298070610617287.
       77  FLD0823B                       PIC S9(09)V9(06)
                   VALUE +410430433.569272.

       77  FLD0824A                       PIC  9(10)V9(10)
                   VALUE  5351534260.3280557920.
       77  FLD0824B                       PIC  9(09)V9(14)
                   VALUE  619637811.24301098301998.

       77  FLD0825A                       PIC  9(01)
                   VALUE  0.
       77  FLD0825B                       PIC S9(05)V9(01)
                   VALUE -17069.2.

       77  FLD0826A                       PIC S9(06)V9(01)
                   VALUE -190786.5.
       77  FLD0826B                       PIC S9(10)V9(08)
                   VALUE -4805976358.59735916.

       77  FLD0827A                       PIC  9(07)V9(22)
                   VALUE  7763847.1978375678261841130733.
       77  FLD0827B                       PIC  9(10)V9(07)
                   VALUE  4683286251.1747114.

       77  FLD0828A                       PIC S9(10)V9(07)
                   VALUE -4530916009.2405642.
       77  FLD0828B                       PIC S9(05)
                   VALUE -15016.

       77  FLD0829A                       PIC  9(09)V9(17)
                   VALUE  691486534.21926165041355716.
       77  FLD0829B                       PIC  9(07)V9(23)
                   VALUE  7963194.44710118728991687930829.

       77  FLD0830A                       PIC  9(04)V9(30)
                   VALUE  8965.722935126121395654763546190224.
       77  FLD0830B                       PIC  9(10)V9(11)
                   VALUE  5655358049.53465004452.

       77  FLD0831A                       PIC  9(04)V9(30)
                   VALUE  8956.555580996397036841472072410397.
       77  FLD0831B                       PIC  9(09)V9(16)
                   VALUE  660284490.9595845246386147.

       77  FLD0832A                       PIC  9(04)
                   VALUE  1185.
       77  FLD0832B                       PIC  9(09)V9(06)
                   VALUE  419049138.539795.

       77  FLD0833A                       PIC  9(06)V9(24)
                   VALUE  804859.798300300854911881742737.
       77  FLD0833B                       PIC  9(09)V9(16)
                   VALUE  664990588.4825918489511309.

       77  FLD0834A                       PIC  9(09)V9(04)
                   VALUE  349209744.2881.
       77  FLD0834B                       PIC  9(08)V9(19)
                   VALUE  71191898.1740956136050613167.

       77  FLD0835A                       PIC  9(08)V9(19)
                   VALUE  71178359.2779248075466114187.
       77  FLD0835B                       PIC  9(07)V9(22)
                   VALUE  7891261.8513661014763016510187.

       77  FLD0836A                       PIC  9(09)V9(07)
                   VALUE  446141389.3412962.
       77  FLD0836B                       PIC  9(09)V9(13)
                   VALUE  594066179.3005866941896.

       77  FLD0837A                       PIC  9(04)V9(30)
                   VALUE  8982.008694278872384941792006429750.
       77  FLD0837B                       PIC S9(08)V9(03)
                   VALUE -29146758.519.

       77  FLD0838A                       PIC  9(10)V9(12)
                   VALUE  5873188106.793812979233.
       77  FLD0838B                       PIC  9(07)V9(22)
                   VALUE  7748686.2151072521953665273031.

       77  FLD0839A                       PIC  9(08)V9(19)
                   VALUE  71324671.8649382605015318858.
       77  FLD0839B                       PIC  9(06)V9(01)
                   VALUE  205379.6.

       77  FLD0840A                       PIC S9(03)
                   VALUE -094.
       77  FLD0840B                       PIC  9(04)
                   VALUE  1059.

       77  FLD0841A                       PIC  9(08)V9(18)
                   VALUE  70179428.042996372383299785.
       77  FLD0841B                       PIC  9(06)V9(24)
                   VALUE  813553.693586876014443021176703.

       77  FLD0842A                       PIC  9(09)V9(16)
                   VALUE  661649948.5739699704112126.
       77  FLD0842B                       PIC  9(02)V9(33)
                   VALUE  94.543261545044898763734408930758945.

       77  FLD0843A                       PIC  9(06)V9(25)
                   VALUE  818928.0761087860405211813485948.
       77  FLD0843B                       PIC S9(08)V9(03)
                   VALUE +30347988.647.

       77  FLD0844A                       PIC  9(07)V9(22)
                   VALUE  7754458.9142564990247308287507.
       77  FLD0844B                       PIC  9(10)V9(07)
                   VALUE  4487113046.2525055.

       77  FLD0845A                       PIC  9(10)V9(12)
                   VALUE  5903835745.060688200425.
       77  FLD0845B                       PIC  9(09)V9(15)
                   VALUE  651184321.418812994686220.

       77  FLD0846A                       PIC  9(08)V9(03)
                   VALUE  29802576.878.
       77  FLD0846B                       PIC  9(10)V9(07)
                   VALUE  4580030325.9646085.

       77  FLD0847A                       PIC  9(05)V9(26)
                   VALUE  84041.42690564196938041163775778.
       77  FLD0847B                       PIC  9(08)V9(03)
                   VALUE  29618694.346.

       77  FLD0848A                       PIC  9(07)V9(23)
                   VALUE  7949747.62786875510656159349309.
       77  FLD0848B                       PIC  9(08)V9(19)
                   VALUE  71130247.7845018432667245633.

       77  FLD0849A                       PIC  9(09)V9(13)
                   VALUE  595598045.8961575019216.
       77  FLD0849B                       PIC  9(07)V9(21)
                   VALUE  7527838.155592773139446194363.

       77  FLD0850A                       PIC  9(09)V9(06)
                   VALUE  418716850.605351.
       77  FLD0850B                       PIC  9(09)V9(15)
                   VALUE  631787055.454641532925563.

       77  FLD0851A                       PIC S9(03)
                   VALUE -082.
       77  FLD0851B                       PIC  9(07)V9(01)
                   VALUE  2252059.3.

       77  FLD0852A                       PIC  9(10)V9(11)
                   VALUE  5643399909.75319838462.
       77  FLD0852B                       PIC  9(08)V9(02)
                   VALUE  28682579.88.

       77  FLD0853A                       PIC  9(06)V9(24)
                   VALUE  801200.590406665469345171004533.
       77  FLD0853B                       PIC S9(01)
                   VALUE +0.

       77  FLD0854A                       PIC  9(01)V9(35)
                   VALUE  9.72377885073923198255840816273121163.
       77  FLD0854B                       PIC  9(01)
                   VALUE  0.

       77  FLD0855A                       PIC  9(08)V9(19)
                   VALUE  73562901.0042854747375429269.
       77  FLD0855B                       PIC  9(05)V9(01)
                   VALUE  16705.4.

       77  FLD0856A                       PIC  9(09)V9(04)
                   VALUE  356144099.6704.
       77  FLD0856B                       PIC S9(05)
                   VALUE +13257.

       77  FLD0857A                       PIC  9(03)V9(31)
                   VALUE  915.3286634102202334872799838194623.
       77  FLD0857B                       PIC S9(02)
                   VALUE -05.

       77  FLD0858A                       PIC  9(10)V9(11)
                   VALUE  5560594458.08950059131.
       77  FLD0858B                       PIC  9(08)V9(03)
                   VALUE  30966624.473.

       77  FLD0859A                       PIC S9(01)
                   VALUE +0.
       77  FLD0859B                       PIC  9(02)V9(34)
                   VALUE  97.1628168143447767945986015547532588.

       77  FLD0860A                       PIC  9(07)V9(02)
                   VALUE  2576407.94.
       77  FLD0860B                       PIC  9(08)V9(04)
                   VALUE  33654706.3315.

       77  FLD0861A                       PIC S9(10)V9(07)
                   VALUE -4605509961.3842453.
       77  FLD0861B                       PIC  9(04)
                   VALUE  1091.

       77  FLD0862A                       PIC  9(07)V9(22)
                   VALUE  7652464.2157409383802502134130.
       77  FLD0862B                       PIC  9(09)V9(12)
                   VALUE  576630833.581719182134.

       77  FLD0863A                       PIC  9(05)V9(27)
                   VALUE  85070.091557533766835064170663827.
       77  FLD0863B                       PIC  9(10)V9(09)
                   VALUE  5171260723.603198217.

       77  FLD0864A                       PIC  9(10)V9(11)
                   VALUE  5711242885.34377577697.
       77  FLD0864B                       PIC  9(04)V9(29)
                   VALUE  8791.30787212824560405977081245509.

       77  FLD0865A                       PIC  9(06)V9(24)
                   VALUE  807409.725415061507725056344497.
       77  FLD0865B                       PIC S9(03)
                   VALUE -082.

       77  FLD0866A                       PIC  9(09)V9(05)
                   VALUE  376060050.51851.
       77  FLD0866B                       PIC  9(04)V9(30)
                   VALUE  9076.867019798932068042063292523380.

       77  FLD0867A                       PIC S9(05)
                   VALUE +14084.
       77  FLD0867B                       PIC  9(08)V9(19)
                   VALUE  72879777.6966572774526298417.

       77  FLD0868A                       PIC  9(07)V9(22)
                   VALUE  7648419.8420910554094831468319.
       77  FLD0868B                       PIC  9(10)V9(12)
                   VALUE  5849128371.667725589944.

       77  FLD0869A                       PIC S9(01)
                   VALUE +0.
       77  FLD0869B                       PIC  9(08)V9(17)
                   VALUE  68157822.06919422936408636.

       77  FLD0870A                       PIC S9(01)
                   VALUE +0.
       77  FLD0870B                       PIC  9(09)V9(15)
                   VALUE  657570531.523696821807334.

       77  FLD0871A                       PIC  9(09)V9(14)
                   VALUE  609764683.38536315982878.
       77  FLD0871B                       PIC  9(10)V9(09)
                   VALUE  5134836781.377033476.

       77  FLD0872A                       PIC  9(04)V9(29)
                   VALUE  8816.31176263962479389135751262074.
       77  FLD0872B                       PIC  9(10)V9(07)
                   VALUE  4591409950.7884903.

       77  FLD0873A                       PIC  9(07)V9(21)
                   VALUE  7561255.223942077163812314211.
       77  FLD0873B                       PIC  9(05)
                   VALUE  15597.

       77  FLD0874A                       PIC  9(01)
                   VALUE  0.
       77  FLD0874B                       PIC  9(06)V9(01)
                   VALUE  188106.3.

       77  FLD0875A                       PIC S9(06)V9(01)
                   VALUE +204126.0.
       77  FLD0875B                       PIC  9(02)
                   VALUE  06.

       77  FLD0876A                       PIC  9(01)
                   VALUE  0.
       77  FLD0876B                       PIC  9(07)V9(23)
                   VALUE  7928238.87607293276147402139031.

       77  FLD0877A                       PIC  9(08)V9(18)
                   VALUE  69924605.886404200827399790.
       77  FLD0877B                       PIC  9(09)V9(15)
                   VALUE  651975862.412979334514773.

       77  FLD0878A                       PIC  9(07)V9(22)
                   VALUE  7831260.9220719830993573395971.
       77  FLD0878B                       PIC  9(04)V9(29)
                   VALUE  8832.64528360225620318146866338793.

       77  FLD0879A                       PIC  9(07)V9(02)
                   VALUE  2371533.81.
       77  FLD0879B                       PIC  9(05)V9(27)
                   VALUE  85230.962794591269560129376259283.

       77  FLD0880A                       PIC S9(10)V9(06)
                   VALUE +4237732309.742536.
       77  FLD0880B                       PIC  9(05)V9(26)
                   VALUE  83915.37539577657023315282458497.

       77  FLD0881A                       PIC  9(10)V9(11)
                   VALUE  5571129514.90407404264.
       77  FLD0881B                       PIC S9(09)V9(04)
                   VALUE -360610120.1846.

       77  FLD0882A                       PIC  9(10)V9(12)
                   VALUE  5888713345.878072713546.
       77  FLD0882B                       PIC  9(09)V9(16)
                   VALUE  677832951.8186110291821933.

       77  FLD0883A                       PIC  9(09)V9(16)
                   VALUE  672192258.1526228457349247.
       77  FLD0883B                       PIC  9(07)V9(21)
                   VALUE  7561874.624389478549701948395.

       77  FLD0884A                       PIC  9(10)V9(08)
                   VALUE  4954020911.85092596.
       77  FLD0884B                       PIC  9(07)V9(21)
                   VALUE  7530519.818486510752464369033.

       77  FLD0885A                       PIC S9(05)
                   VALUE +13360.
       77  FLD0885B                       PIC S9(05)
                   VALUE -15432.

       77  FLD0886A                       PIC S9(09)V9(05)
                   VALUE -374529584.88504.
       77  FLD0886B                       PIC S9(09)V9(05)
                   VALUE -380480275.58811.

       77  FLD0887A                       PIC S9(07)V9(01)
                   VALUE +2114795.5.
       77  FLD0887B                       PIC  9(06)V9(25)
                   VALUE  815821.3018675709582439026235078.

       77  FLD0888A                       PIC  9(08)V9(19)
                   VALUE  73580519.1914812417586233550.
       77  FLD0888B                       PIC  9(07)V9(02)
                   VALUE  2394446.18.

       77  FLD0889A                       PIC S9(05)
                   VALUE -15225.
       77  FLD0889B                       PIC  9(02)V9(34)
                   VALUE  96.3719675610497206186266794247785583.

       77  FLD0890A                       PIC S9(01)
                   VALUE +0.
       77  FLD0890B                       PIC  9(08)V9(19)
                   VALUE  72161358.3480198661490589984.

       77  FLD0891A                       PIC  9(02)V9(34)
                   VALUE  95.7956124985634538404610793804749846.
       77  FLD0891B                       PIC  9(08)V9(19)
                   VALUE  73526985.6204998628612656830.

       77  FLD0892A                       PIC  9(10)V9(09)
                   VALUE  5079027644.377075434.
       77  FLD0892B                       PIC  9(03)
                   VALUE  088.

       77  FLD0893A                       PIC  9(10)V9(12)
                   VALUE  5900775083.003402254888.
       77  FLD0893B                       PIC  9(02)
                   VALUE  07.

       77  FLD0894A                       PIC  9(06)V9(25)
                   VALUE  819872.1409522375935807758651208.
       77  FLD0894B                       PIC  9(09)V9(15)
                   VALUE  655129000.141700390535959.

       77  FLD0895A                       PIC  9(10)V9(09)
                   VALUE  5099949658.575000377.
       77  FLD0895B                       PIC  9(08)V9(02)
                   VALUE  28944204.51.

       77  FLD0896A                       PIC  9(10)V9(07)
                   VALUE  4576511370.6787369.
       77  FLD0896B                       PIC S9(01)
                   VALUE +0.

       77  FLD0897A                       PIC  9(01)V9(36)
                   VALUE  9.997543976245016894566219889384228736.
       77  FLD0897B                       PIC S9(09)V9(07)
                   VALUE +440492210.0858147.

       77  FLD0898A                       PIC  9(09)V9(05)
                   VALUE  378033726.09171.
       77  FLD0898B                       PIC  9(06)V9(01)
                   VALUE  199374.1.

       77  FLD0899A                       PIC  9(08)V9(20)
                   VALUE  74918436.40783237834313013081.
       77  FLD0899B                       PIC  9(09)V9(07)
                   VALUE  438142184.6749312.

       77  FLD0900A                       PIC  9(03)V9(32)
                   VALUE  929.41329164379282712360463847289793.
       77  FLD0900B                       PIC  9(06)V9(01)
                   VALUE  185639.8.

       77  FLD0901A                       PIC  9(10)V9(07)
                   VALUE  4563598931.5070740.
       77  FLD0901B                       PIC  9(01)V9(36)
                   VALUE  9.782322298369796609307513790554367005.

       77  FLD0902A                       PIC  9(05)V9(28)
                   VALUE  87405.6741908566081633580324705690.
       77  FLD0902B                       PIC  9(10)V9(09)
                   VALUE  5131137190.755751253.

       77  FLD0903A                       PIC  9(08)V9(02)
                   VALUE  28616952.10.
       77  FLD0903B                       PIC S9(02)
                   VALUE -06.

       77  FLD0904A                       PIC S9(04)
                   VALUE +1137.
       77  FLD0904B                       PIC S9(01)
                   VALUE -0.

       77  FLD0905A                       PIC  9(09)V9(04)
                   VALUE  357938124.4724.
       77  FLD0905B                       PIC  9(09)V9(04)
                   VALUE  349599231.9688.

       77  FLD0906A                       PIC  9(09)V9(16)
                   VALUE  669388906.6218295935684068.
       77  FLD0906B                       PIC  9(01)
                   VALUE  0.

       77  FLD0907A                       PIC S9(09)V9(05)
                   VALUE -390800584.69506.
       77  FLD0907B                       PIC  9(10)V9(11)
                   VALUE  5692874702.16027324809.

       77  FLD0908A                       PIC S9(10)V9(06)
                   VALUE +4306350776.286586.
       77  FLD0908B                       PIC  9(03)V9(31)
                   VALUE  912.0472776451683527554337160836439.

       77  FLD0909A                       PIC  9(08)V9(03)
                   VALUE  30663800.453.
       77  FLD0909B                       PIC  9(01)
                   VALUE  0.

       77  FLD0910A                       PIC S9(06)V9(01)
                   VALUE -193158.9.
       77  FLD0910B                       PIC  9(04)V9(30)
                   VALUE  9098.433765600096867487422969134058.

       77  FLD0911A                       PIC S9(10)V9(07)
                   VALUE -4611964452.0728980.
       77  FLD0911B                       PIC  9(08)V9(20)
                   VALUE  74305071.04102702653491974160.

       77  FLD0912A                       PIC  9(10)V9(09)
                   VALUE  5000191930.396378214.
       77  FLD0912B                       PIC  9(01)
                   VALUE  0.

       77  FLD0913A                       PIC S9(04)
                   VALUE +1246.
       77  FLD0913B                       PIC  9(03)
                   VALUE  079.

       77  FLD0914A                       PIC  9(03)V9(31)
                   VALUE  917.2012666333545505281676923914346.
       77  FLD0914B                       PIC  9(01)V9(36)
                   VALUE  9.801144784183424274459639491396956145.

       77  FLD0915A                       PIC  9(08)V9(20)
                   VALUE  74750906.49492384109464637731.
       77  FLD0915B                       PIC S9(04)
                   VALUE +1130.

       77  FLD0916A                       PIC S9(01)
                   VALUE +0.
       77  FLD0916B                       PIC  9(10)V9(06)
                   VALUE  4372777685.598984.

       77  FLD0917A                       PIC  9(01)
                   VALUE  0.
       77  FLD0917B                       PIC  9(04)
                   VALUE  1084.

       77  FLD0918A                       PIC  9(04)
                   VALUE  1059.
       77  FLD0918B                       PIC  9(10)V9(11)
                   VALUE  5693106161.94893204244.

       77  FLD0919A                       PIC S9(02)
                   VALUE -06.
       77  FLD0919B                       PIC S9(01)
                   VALUE +0.

       77  FLD0920A                       PIC S9(05)V9(01)
                   VALUE -17474.9.
       77  FLD0920B                       PIC  9(09)V9(16)
                   VALUE  669843285.3658151664433262.

       77  FLD0921A                       PIC  9(10)V9(10)
                   VALUE  5463494999.0456427304.
       77  FLD0921B                       PIC S9(01)
                   VALUE +0.

       77  FLD0922A                       PIC S9(01)
                   VALUE +0.
       77  FLD0922B                       PIC S9(05)V9(01)
                   VALUE -18331.8.

       77  FLD0923A                       PIC  9(06)
                   VALUE  159582.
       77  FLD0923B                       PIC S9(04)
                   VALUE +1310.

       77  FLD0924A                       PIC  9(10)V9(11)
                   VALUE  5650505738.70210182114.
       77  FLD0924B                       PIC  9(06)V9(25)
                   VALUE  830413.4742864166529585645548650.

       77  FLD0925A                       PIC S9(04)
                   VALUE +1236.
       77  FLD0925B                       PIC S9(01)
                   VALUE +0.

       77  FLD0926A                       PIC  9(08)V9(18)
                   VALUE  69535643.175280814620720093.
       77  FLD0926B                       PIC S9(07)V9(02)
                   VALUE -2533128.95.

       77  FLD0927A                       PIC  9(06)V9(24)
                   VALUE  800954.558131814597921049880824.
       77  FLD0927B                       PIC  9(10)V9(09)
                   VALUE  5121064754.192180545.

       77  FLD0928A                       PIC  9(01)
                   VALUE  0.
       77  FLD0928B                       PIC  9(07)V9(02)
                   VALUE  2551694.92.

       77  FLD0929A                       PIC  9(05)V9(28)
                   VALUE  87174.0739403786824013309342262800.
       77  FLD0929B                       PIC  9(08)V9(19)
                   VALUE  71306594.2354483839338286088.

       77  FLD0930A                       PIC  9(01)V9(36)
                   VALUE  9.911281003002671008417223674769047647.
       77  FLD0930B                       PIC  9(09)V9(13)
                   VALUE  591594874.8305130955316.

       77  FLD0931A                       PIC  9(09)V9(12)
                   VALUE  573747057.720371378408.
       77  FLD0931B                       PIC S9(07)V9(02)
                   VALUE -2503283.13.

       77  FLD0932A                       PIC  9(10)V9(09)
                   VALUE  5079506475.355934913.
       77  FLD0932B                       PIC  9(10)V9(09)
                   VALUE  5196217943.575858200.

       77  FLD0933A                       PIC  9(07)V9(22)
                   VALUE  7776883.1704294028028812135744.
       77  FLD0933B                       PIC  9(09)V9(03)
                   VALUE  328435728.864.

       77  FLD0934A                       PIC  9(05)V9(01)
                   VALUE  16899.6.
       77  FLD0934B                       PIC  9(07)V9(02)
                   VALUE  2394400.51.

       77  FLD0935A                       PIC  9(05)V9(01)
                   VALUE  16691.2.
       77  FLD0935B                       PIC  9(10)V9(08)
                   VALUE  4853829665.64275264.

       77  FLD0936A                       PIC  9(08)V9(03)
                   VALUE  29560937.131.
       77  FLD0936B                       PIC  9(02)V9(34)
                   VALUE  95.2998853185021421730027668672846630.

       77  FLD0937A                       PIC  9(02)V9(33)
                   VALUE  94.462893191714936147462822191300801.
       77  FLD0937B                       PIC  9(01)
                   VALUE  0.

       77  FLD0938A                       PIC  9(09)V9(12)
                   VALUE  578242437.999430092254.
       77  FLD0938B                       PIC  9(08)V9(18)
                   VALUE  70721875.972746128802270959.

       77  FLD0939A                       PIC  9(10)V9(13)
                   VALUE  6084884727.3780637401330.
       77  FLD0939B                       PIC S9(01)
                   VALUE -0.

       77  FLD0940A                       PIC  9(09)V9(12)
                   VALUE  577997061.609985873786.
       77  FLD0940B                       PIC  9(10)V9(08)
                   VALUE  4780052522.48498546.

       77  FLD0941A                       PIC  9(09)V9(16)
                   VALUE  670449367.9367865555107641.
       77  FLD0941B                       PIC  9(09)V9(04)
                   VALUE  345028332.3540.

       77  FLD0942A                       PIC  9(10)V9(10)
                   VALUE  5309347867.8071082121.
       77  FLD0942B                       PIC  9(03)V9(32)
                   VALUE  922.70492697630424050458941565011627.

       77  FLD0943A                       PIC S9(09)V9(03)
                   VALUE +323766798.919.
       77  FLD0943B                       PIC S9(06)V9(01)
                   VALUE +203018.6.

       77  FLD0944A                       PIC  9(02)V9(34)
                   VALUE  95.7363239628727824559462078468641266.
       77  FLD0944B                       PIC S9(07)V9(02)
                   VALUE -2600465.21.

       77  FLD0945A                       PIC  9(10)V9(10)
                   VALUE  5427766423.1255295934.
       77  FLD0945B                       PIC S9(10)V9(06)
                   VALUE +4211785767.712989.

       77  FLD0946A                       PIC S9(07)V9(02)
                   VALUE -2603132.30.
       77  FLD0946B                       PIC  9(02)V9(34)
                   VALUE  96.2407519811451561686510558502050116.

       77  FLD0947A                       PIC  9(05)V9(27)
                   VALUE  85846.989065825540787812997223227.
       77  FLD0947B                       PIC  9(09)V9(16)
                   VALUE  671942080.3697424560141371.

       77  FLD0948A                       PIC  9(04)
                   VALUE  1058.
       77  FLD0948B                       PIC  9(07)V9(21)
                   VALUE  7582594.805549627281493485497.

       77  FLD0949A                       PIC S9(10)V9(06)
                   VALUE +4307044196.647341.
       77  FLD0949B                       PIC  9(10)V9(07)
                   VALUE  4670230467.6696332.

       77  FLD0950A                       PIC  9(09)V9(14)
                   VALUE  614898523.03850200954116.
       77  FLD0950B                       PIC  9(04)V9(30)
                   VALUE  9056.465512238127679722765606129541.

       77  FLD0951A                       PIC S9(08)V9(03)
                   VALUE +31116955.475.
       77  FLD0951B                       PIC  9(08)V9(20)
                   VALUE  74599134.92992847894313968026.

       77  FLD0952A                       PIC  9(09)V9(03)
                   VALUE  315844571.317.
       77  FLD0952B                       PIC  9(02)
                   VALUE  06.

       77  FLD0953A                       PIC  9(06)
                   VALUE  166635.
       77  FLD0953B                       PIC  9(10)V9(09)
                   VALUE  5187782319.462912461.

       77  FLD0954A                       PIC  9(10)V9(11)
                   VALUE  5577123049.60128579800.
       77  FLD0954B                       PIC  9(02)V9(34)
                   VALUE  97.0603521071659591790137255884474143.

       77  FLD0955A                       PIC S9(08)V9(02)
                   VALUE -27357789.23.
       77  FLD0955B                       PIC  9(06)V9(25)
                   VALUE  823687.4590304759102821208216482.

       77  FLD0956A                       PIC S9(08)V9(02)
                   VALUE -27355040.84.
       77  FLD0956B                       PIC  9(08)V9(18)
                   VALUE  70029518.862281070479269828.

       77  FLD0957A                       PIC  9(09)V9(15)
                   VALUE  637627083.330792543414133.
       77  FLD0957B                       PIC S9(04)
                   VALUE +1212.

       77  FLD0958A                       PIC S9(08)V9(03)
                   VALUE -29370744.150.
       77  FLD0958B                       PIC  9(10)V9(06)
                   VALUE  4358178846.720288.

       77  FLD0959A                       PIC  9(06)V9(25)
                   VALUE  827211.6833605048791255853757320.
       77  FLD0959B                       PIC S9(01)
                   VALUE +0.

       77  FLD0960A                       PIC  9(10)V9(11)
                   VALUE  5559976801.18206716315.
       77  FLD0960B                       PIC S9(01)
                   VALUE +0.

       77  FLD0961A                       PIC  9(08)V9(19)
                   VALUE  72708740.7191407630868695832.
       77  FLD0961B                       PIC S9(04)
                   VALUE +1315.

       77  FLD0962A                       PIC  9(02)V9(34)
                   VALUE  96.8081984946274620718043024680810049.
       77  FLD0962B                       PIC  9(08)V9(17)
                   VALUE  68265700.44059103725686554.

       77  FLD0963A                       PIC  9(01)V9(36)
                   VALUE  9.803573230667260718362854277074802666.
       77  FLD0963B                       PIC  9(09)V9(16)
                   VALUE  657950850.8072698935720268.

       77  FLD0964A                       PIC  9(09)V9(15)
                   VALUE  639504907.969730918004813.
       77  FLD0964B                       PIC  9(09)V9(13)
                   VALUE  599568613.7680703575725.

       77  FLD0965A                       PIC  9(05)
                   VALUE  13581.
       77  FLD0965B                       PIC  9(01)
                   VALUE  0.

       77  FLD0966A                       PIC  9(06)V9(01)
                   VALUE  189200.6.
       77  FLD0966B                       PIC  9(06)V9(01)
                   VALUE  189757.7.

       77  FLD0967A                       PIC  9(02)
                   VALUE  06.
       77  FLD0967B                       PIC  9(09)V9(04)
                   VALUE  356045641.3147.

       77  FLD0968A                       PIC  9(09)V9(15)
                   VALUE  649996663.320669743058033.
       77  FLD0968B                       PIC S9(04)
                   VALUE +1132.

       77  FLD0969A                       PIC S9(05)
                   VALUE -15366.
       77  FLD0969B                       PIC  9(09)V9(13)
                   VALUE  594539058.0989867723715.

       77  FLD0970A                       PIC  9(09)V9(14)
                   VALUE  631417540.20798013247173.
       77  FLD0970B                       PIC  9(02)V9(34)
                   VALUE  96.8862081091470539462306987843476235.

       77  FLD0971A                       PIC  9(07)V9(01)
                   VALUE  2161446.9.
       77  FLD0971B                       PIC S9(09)V9(06)
                   VALUE +400705169.115322.

       77  FLD0972A                       PIC  9(09)V9(15)
                   VALUE  647710182.878484586055378.
       77  FLD0972B                       PIC  9(05)
                   VALUE  13649.

       77  FLD0973A                       PIC  9(05)
                   VALUE  13817.
       77  FLD0973B                       PIC  9(06)V9(25)
                   VALUE  828260.5282429751358819203232997.

       77  FLD0974A                       PIC  9(04)
                   VALUE  1180.
       77  FLD0974B                       PIC S9(03)
                   VALUE +104.

       77  FLD0975A                       PIC S9(02)
                   VALUE -06.
       77  FLD0975B                       PIC  9(09)V9(03)
                   VALUE  329183580.054.

       77  FLD0976A                       PIC S9(07)V9(01)
                   VALUE +2206144.7.
       77  FLD0976B                       PIC  9(10)V9(09)
                   VALUE  5191401776.232426046.

       77  FLD0977A                       PIC  9(09)V9(03)
                   VALUE  327431372.704.
       77  FLD0977B                       PIC S9(09)V9(05)
                   VALUE -393208707.80387.

       77  FLD0978A                       PIC  9(09)V9(16)
                   VALUE  675062190.8116747338368668.
       77  FLD0978B                       PIC S9(09)V9(06)
                   VALUE +411411057.685845.

       77  FLD0979A                       PIC  9(03)V9(32)
                   VALUE  925.33169671466619643496187563869170.
       77  FLD0979B                       PIC  9(09)V9(05)
                   VALUE  388509802.38797.

       77  FLD0980A                       PIC  9(03)V9(32)
                   VALUE  935.82234581280043794748735308530740.
       77  FLD0980B                       PIC  9(09)V9(15)
                   VALUE  647159992.565670250108667.

       77  FLD0981A                       PIC  9(06)V9(01)
                   VALUE  195132.7.
       77  FLD0981B                       PIC S9(09)V9(04)
                   VALUE -360473610.9762.

       77  FLD0982A                       PIC  9(06)V9(25)
                   VALUE  816610.1728260642955703474399342.
       77  FLD0982B                       PIC S9(08)V9(03)
                   VALUE +31469845.616.

       77  FLD0983A                       PIC  9(10)V9(09)
                   VALUE  5114754992.436914005.
       77  FLD0983B                       PIC  9(02)V9(34)
                   VALUE  95.8147071945383510538363225350622087.

       77  FLD0984A                       PIC  9(09)V9(15)
                   VALUE  632949921.330981046807551.
       77  FLD0984B                       PIC  9(10)V9(09)
                   VALUE  5090793805.153389639.

       77  FLD0985A                       PIC  9(10)V9(06)
                   VALUE  4296662473.303992.
       77  FLD0985B                       PIC  9(05)V9(28)
                   VALUE  87137.5808353749947698929645412135.

       77  FLD0986A                       PIC  9(05)
                   VALUE  14588.
       77  FLD0986B                       PIC  9(01)
                   VALUE  0.

       77  FLD0987A                       PIC  9(01)V9(36)
                   VALUE  9.834402345123109956404050535638816654.
       77  FLD0987B                       PIC  9(06)V9(26)
                   VALUE  842525.10302045313661523096016026.

       77  FLD0988A                       PIC  9(01)
                   VALUE  0.
       77  FLD0988B                       PIC S9(05)V9(01)
                   VALUE -18152.0.

       77  FLD0989A                       PIC S9(04)
                   VALUE +1235.
       77  FLD0989B                       PIC  9(09)V9(13)
                   VALUE  593212782.9792923634499.

       77  FLD0990A                       PIC  9(07)V9(22)
                   VALUE  7806084.0781040319313888176111.
       77  FLD0990B                       PIC  9(06)V9(01)
                   VALUE  208986.1.

       77  FLD0991A                       PIC  9(06)V9(24)
                   VALUE  807774.663029880435338725419569.
       77  FLD0991B                       PIC S9(09)V9(06)
                   VALUE +403465254.324070.

       77  FLD0992A                       PIC  9(07)V9(22)
                   VALUE  7784108.2583169551867285917978.
       77  FLD0992B                       PIC  9(04)V9(29)
                   VALUE  8920.19846678347883006665597349638.

       77  FLD0993A                       PIC  9(08)V9(20)
                   VALUE  74534466.64416291111976420324.
       77  FLD0993B                       PIC S9(04)
                   VALUE +1132.

       77  FLD0994A                       PIC  9(06)V9(24)
                   VALUE  815107.307501011568717785849003.
       77  FLD0994B                       PIC S9(10)V9(08)
                   VALUE -4847118976.22432053.

       77  FLD0995A                       PIC S9(01)
                   VALUE +0.
       77  FLD0995B                       PIC  9(06)V9(01)
                   VALUE  188825.8.

       77  FLD0996A                       PIC  9(09)V9(14)
                   VALUE  619241405.61761309431432.
       77  FLD0996B                       PIC  9(09)V9(16)
                   VALUE  669751940.2443259384227758.

       77  FLD0997A                       PIC  9(10)V9(09)
                   VALUE  5006446394.611311356.
       77  FLD0997B                       PIC  9(10)V9(09)
                   VALUE  5005353152.147143935.

       77  FLD0998A                       PIC  9(09)V9(13)
                   VALUE  598229443.4201559374386.
       77  FLD0998B                       PIC S9(01)
                   VALUE +0.

       77  FLD0999A                       PIC S9(03)
                   VALUE -081.
       77  FLD0999B                       PIC S9(01)
                   VALUE -0.

      * RESULTS-AREA

       78  XPC-FLD0500B
           VALUE '709'.
       78  XPC-FLD0501B
           VALUE 62809334873677369337485.
       78  XPC-FLD0502B
           VALUE '78931626286150020034995122841'.
       78  XPC-FLD0503B
           VALUE '241748150924885620905391882843105'.
       78  XPC-FLD0504B
           VALUE '5028930926587901486'.
       78  XPC-FLD0505B
           VALUE '54079887440916072856'.
       78  XPC-FLD0506B
           VALUE '4498381q'.
       78  XPC-FLD0507B
           VALUE '5276166649082409210'.
       78  XPC-FLD0508B
           VALUE '214408822084888v'.
       78  XPC-FLD0509B
           VALUE '488937338626299289'.
       78  XPC-FLD0510B
           VALUE '38w'.
       78  XPC-FLD0511B
           VALUE '5257737010265951195'.
       78  XPC-FLD0512B
           VALUE '5091717968686512163500879069033544511'.
       78  XPC-FLD0513B
           VALUE '2789791972144304299518972222'.
       78  XPC-FLD0514B
           VALUE '2787819996823'.
       78  XPC-FLD0515B
           VALUE '37690011845231452527479784448514692'.
       78  XPC-FLD0516B
           VALUE '0'.
       78  XPC-FLD0517B
           VALUE '03134013404271069v'.
       78  XPC-FLD0518B
           VALUE '8y'.
       78  XPC-FLD0519B
           VALUE '9851020486430545064493287'.
       78  XPC-FLD0520B
           VALUE '61059553432451049552742'.
       78  XPC-FLD0521B
           VALUE '28055'.
       78  XPC-FLD0522B
           VALUE '351067614407v'.
       78  XPC-FLD0523B
           VALUE '4280314707'.
       78  XPC-FLD0524B
           VALUE '5046008862205329081'.
       78  XPC-FLD0525B
           VALUE '887336156634660588871099662355845'.
       78  XPC-FLD0526B
           VALUE '535158707'.
       78  XPC-FLD0527B
           VALUE '0993866582275886311'.
       78  XPC-FLD0528B
           VALUE '674r'.
       78  XPC-FLD0529B
           VALUE '06852906977087937'.
       78  XPC-FLD0530B
           VALUE '4s'.
       78  XPC-FLD0531B
           VALUE '98098220'.
       78  XPC-FLD0532B
           VALUE 'v'.
       78  XPC-FLD0533B
           VALUE '086'.
       78  XPC-FLD0534B
           VALUE '4796286047627412578'.
       78  XPC-FLD0535B
           VALUE '86934843746367858133650045201648'.
       78  XPC-FLD0536B
           VALUE '0'.
       78  XPC-FLD0537B
           VALUE '4554'.
       78  XPC-FLD0538B
           VALUE '793946754459935233327882997400592'.
       78  XPC-FLD0539B
           VALUE '70042059898033071085876599681795'.
       78  XPC-FLD0540B
           VALUE '7'.
       78  XPC-FLD0541B
           VALUE '49167641848286621388982121061'.
       78  XPC-FLD0542B
           VALUE '553207696393934218127'.
       78  XPC-FLD0543B
           VALUE '277016069'.
       78  XPC-FLD0544B
           VALUE '1381302823'.
       78  XPC-FLD0545B
           VALUE '944856446145206807507570674'.
       78  XPC-FLD0546B
           VALUE '60995883518421766866790'.
       78  XPC-FLD0547B
           VALUE '359869586206p'.
       78  XPC-FLD0548B
           VALUE '68119457212008152846571817'.
       78  XPC-FLD0549B
           VALUE '417916211751954'.
       78  XPC-FLD0550B
           VALUE '94'.
       78  XPC-FLD0551B
           VALUE '655119044597454263904505'.
       78  XPC-FLD0552B
           VALUE '76016'.
       78  XPC-FLD0553B
           VALUE '360871096909p'.
       78  XPC-FLD0554B
           VALUE '28615763752268179551663251913851128'.
       78  XPC-FLD0555B
           VALUE '5605686733653602811'.
       78  XPC-FLD0556B
           VALUE '568555321722934526833'.
       78  XPC-FLD0557B
           VALUE '13329'.
       78  XPC-FLD0558B
           VALUE '6209454'.
       78  XPC-FLD0559B
           VALUE '99142824147194545678672682843'.
       78  XPC-FLD0560B
           VALUE '0351025116078023'.
       78  XPC-FLD0561B
           VALUE '1'.
       78  XPC-FLD0562B
           VALUE '958208334412512741096179524902254343'.
       78  XPC-FLD0563B
           VALUE '72227339713'.
       78  XPC-FLD0564B
           VALUE '70810880902875461543491615817183629'.
       78  XPC-FLD0565B
           VALUE '2090887'.
       78  XPC-FLD0566B
           VALUE '134200212625'.
       78  XPC-FLD0567B
           VALUE '297763648403360945430051742732758'.
       78  XPC-FLD0568B
           VALUE '64501399773583058336459'.
       78  XPC-FLD0569B
           VALUE '722108073354756'.
       78  XPC-FLD0570B
           VALUE '720060225322646066764775696'.
       78  XPC-FLD0571B
           VALUE '6621729185931387539619251'.
       78  XPC-FLD0572B
           VALUE '36305y'.
       78  XPC-FLD0573B
           VALUE '6527890148517897915245875992695800960'.
       78  XPC-FLD0574B
           VALUE 'v'.
       78  XPC-FLD0575B
           VALUE '6'.
       78  XPC-FLD0576B
           VALUE '47238400610562072401'.
       78  XPC-FLD0577B
           VALUE '805001512301445405164770363626303151'.
       78  XPC-FLD0578B
           VALUE '273810'.
       78  XPC-FLD0579B
           VALUE '5908380596787501715'.
       78  XPC-FLD0580B
           VALUE '646450258967046645771858948137378321'.
       78  XPC-FLD0581B
           VALUE '610062973643881143036828'.
       78  XPC-FLD0582B
           VALUE '62856274902063530202836'.
       78  XPC-FLD0583B
           VALUE '4'.
       78  XPC-FLD0584B
           VALUE '955867594557756605766485336062032729'.
       78  XPC-FLD0585B
           VALUE '79927518632915370297985191427869722'.
       78  XPC-FLD0586B
           VALUE '77794189960829245200635284618'.
       78  XPC-FLD0587B
           VALUE '212y'.
       78  XPC-FLD0588B
           VALUE '6771495276462448727205764043901582'.
       78  XPC-FLD0589B
           VALUE '1219'.
       78  XPC-FLD0590B
           VALUE '106211y'.
       78  XPC-FLD0591B
           VALUE '5700661418154348791'.
       78  XPC-FLD0592B
           VALUE '7390709819s'.
       78  XPC-FLD0593B
           VALUE '38'.
       78  XPC-FLD0594B
           VALUE '51440484143103479483050932685'.
       78  XPC-FLD0595B
           VALUE '3197374054167890777833347730124'.
       78  XPC-FLD0596B
           VALUE '657855963298508210108650'.
       78  XPC-FLD0597B
           VALUE '6758101650339857689842844592932'.
       78  XPC-FLD0598B
           VALUE '46847763318450w'.
       78  XPC-FLD0599B
           VALUE '9'.
       78  XPC-FLD0600B
           VALUE '889857673123861313355595484609'.
       78  XPC-FLD0601B
           VALUE '29749813111'.
       78  XPC-FLD0602B
           VALUE '303615939'.
       78  XPC-FLD0603B
           VALUE '487180'.
       78  XPC-FLD0604B
           VALUE '551440145498789572320'.
       78  XPC-FLD0605B
           VALUE '4256957897307752'.
       78  XPC-FLD0606B
           VALUE '254178383482'.
       78  XPC-FLD0607B
           VALUE '25781'.
       78  XPC-FLD0608B
           VALUE '225226869583767068085933260590536520'.
       78  XPC-FLD0609B
           VALUE '45126229228847267'.
       78  XPC-FLD0610B
           VALUE '2786455271'.
       78  XPC-FLD0611B
           VALUE '3'.
       78  XPC-FLD0612B
           VALUE '62873368552287867108245640685'.
       78  XPC-FLD0613B
           VALUE '22648276'.
       78  XPC-FLD0614B
           VALUE '6052981544136128984377'.
       78  XPC-FLD0615B
           VALUE '23341961'.
       78  XPC-FLD0616B
           VALUE '23'.
       78  XPC-FLD0617B
           VALUE '0'.
       78  XPC-FLD0618B
           VALUE '079'.
       78  XPC-FLD0619B
           VALUE '53429823777539313843'.
       78  XPC-FLD0620B
           VALUE '583959822349086421500175'.
       78  XPC-FLD0621B
           VALUE '734243671686218957184166811'.
       78  XPC-FLD0622B
           VALUE '954242174684x'.
       78  XPC-FLD0623B
           VALUE '641616922896418195095066'.
       78  XPC-FLD0624B
           VALUE '4356505095582531'.
       78  XPC-FLD0625B
           VALUE '78308435769811728739000500354'.
       78  XPC-FLD0626B
           VALUE '3742747793206s'.
       78  XPC-FLD0627B
           VALUE '23249882'.
       78  XPC-FLD0628B
           VALUE '29681727730'.
       78  XPC-FLD0629B
           VALUE '870915644969416202769707524566911'.
       78  XPC-FLD0630B
           VALUE '174519095249753304734'.
       78  XPC-FLD0631B
           VALUE '824634'.
       78  XPC-FLD0632B
           VALUE '5012280455704922587'.
       78  XPC-FLD0633B
           VALUE '405176751228'.
       78  XPC-FLD0634B
           VALUE '868098250115819156979655872420'.
       78  XPC-FLD0635B
           VALUE '558066570900784292498'.
       78  XPC-FLD0636B
           VALUE '10350'.
       78  XPC-FLD0637B
           VALUE '53056785456603405837'.
       78  XPC-FLD0638B
           VALUE '9300997013279628244930563595546'.
       78  XPC-FLD0639B
           VALUE '4078092072024196699686626743641681969'.
       78  XPC-FLD0640B
           VALUE '89710938089320346744415246575953928'.
       78  XPC-FLD0641B
           VALUE '802113336084028338834883698'.
       78  XPC-FLD0642B
           VALUE '5220924521868707701699'.
       78  XPC-FLD0643B
           VALUE '2890586849'.
       78  XPC-FLD0644B
           VALUE '92997460492260109532480782945640385'.
       78  XPC-FLD0645B
           VALUE '246730234'.
       78  XPC-FLD0646B
           VALUE '5883231932131506547457'.
       78  XPC-FLD0647B
           VALUE '6598931491456289340839020'.
       78  XPC-FLD0648B
           VALUE '634285861942461315643470'.
       78  XPC-FLD0649B
           VALUE '5034432631533975376'.
       78  XPC-FLD0650B
           VALUE '6715745920981104473110079'.
       78  XPC-FLD0651B
           VALUE '3209394637494v'.
       78  XPC-FLD0652B
           VALUE '20927047'.
       78  XPC-FLD0653B
           VALUE '165087'.
       78  XPC-FLD0654B
           VALUE '1152390677'.
       78  XPC-FLD0655B
           VALUE '5949843308386091165206'.
       78  XPC-FLD0656B
           VALUE '650007677567117914204561'.
       78  XPC-FLD0657B
           VALUE '70469220160326710801212968'.
       78  XPC-FLD0658B
           VALUE '53680173247006238712'.
       78  XPC-FLD0659B
           VALUE '719555666672452026677575531'.
       78  XPC-FLD0660B
           VALUE '2787r'.
       78  XPC-FLD0661B
           VALUE '570540945315247127744'.
       78  XPC-FLD0662B
           VALUE '6678282186476681732324323'.
       78  XPC-FLD0663B
           VALUE '468269232052811142885673234559362'.
       78  XPC-FLD0664B
           VALUE '4405659595288489'.
       78  XPC-FLD0665B
           VALUE '6766161649406166886924393'.
       78  XPC-FLD0666B
           VALUE '11'.
       78  XPC-FLD0667B
           VALUE '632143970272669745917438'.
       78  XPC-FLD0668B
           VALUE '5144628458672427461'.
       78  XPC-FLD0669B
           VALUE '395936639786081'.
       78  XPC-FLD0670B
           VALUE '164380926561097741789296833303524182'.
       78  XPC-FLD0671B
           VALUE '8090443'.
       78  XPC-FLD0672B
           VALUE '927915894513764975604231'.
       78  XPC-FLD0673B
           VALUE '749211224'.
       78  XPC-FLD0674B
           VALUE '8225787711159490474084418921848'.
       78  XPC-FLD0675B
           VALUE '5083625274155812858'.
       78  XPC-FLD0676B
           VALUE '004664170342459437179627457226160913'.
       78  XPC-FLD0677B
           VALUE '708676445455624266891447859961772'.
       78  XPC-FLD0678B
           VALUE '85979366357613359468814451247453'.
       78  XPC-FLD0679B
           VALUE '44902781556612852'.
       78  XPC-FLD0680B
           VALUE '564571038982083600804'.
       78  XPC-FLD0681B
           VALUE '0654877112290583873743782681004'.
       78  XPC-FLD0682B
           VALUE '5608815389721361803129542749957'.
       78  XPC-FLD0683B
           VALUE '5829822468269903673643'.
       78  XPC-FLD0684B
           VALUE '6208938998759875'.
       78  XPC-FLD0685B
           VALUE '536985204876752143500539204978'.
       78  XPC-FLD0686B
           VALUE '0180741962593756744226'.
       78  XPC-FLD0687B
           VALUE '456697463326542715'.
       78  XPC-FLD0688B
           VALUE '0131'.
       78  XPC-FLD0689B
           VALUE '933318323052'.
       78  XPC-FLD0690B
           VALUE '280789595t'.
       78  XPC-FLD0691B
           VALUE '4747985190129340'.
       78  XPC-FLD0692B
           VALUE '278067587806645121846764'.
       78  XPC-FLD0693B
           VALUE 'p'.
       78  XPC-FLD0694B
           VALUE '6'.
       78  XPC-FLD0695B
           VALUE '285416863016785357397587'.
       78  XPC-FLD0696B
           VALUE '318862710902'.
       78  XPC-FLD0697B
           VALUE '5576423548738693906'.
       78  XPC-FLD0698B
           VALUE '61t'.
       78  XPC-FLD0699B
           VALUE '22735335379771726138637'.
       78  XPC-FLD0700B
           VALUE 't'.
       78  XPC-FLD0701B
           VALUE '824434325033338688548667501709982529'.
       78  XPC-FLD0702B
           VALUE '23424179'.
       78  XPC-FLD0703B
           VALUE '335267041235'.
       78  XPC-FLD0704B
           VALUE '08515404888861616825987'.
       78  XPC-FLD0705B
           VALUE '00818147177942940'.
       78  XPC-FLD0706B
           VALUE '32739x'.
       78  XPC-FLD0707B
           VALUE '5129442198407349051'.
       78  XPC-FLD0708B
           VALUE '338347991943'.
       78  XPC-FLD0709B
           VALUE '37934595068404'.
       78  XPC-FLD0710B
           VALUE '322996288513'.
       78  XPC-FLD0711B
           VALUE '73'.
       78  XPC-FLD0712B
           VALUE '55578253792134938s'.
       78  XPC-FLD0713B
           VALUE '71121009'.
       78  XPC-FLD0714B
           VALUE '2465946158468'.
       78  XPC-FLD0715B
           VALUE '58869262308134147685'.
       78  XPC-FLD0716B
           VALUE '4094336916239737930141018296126276'.
       78  XPC-FLD0717B
           VALUE '7570171861371541854879296806'.
       78  XPC-FLD0718B
           VALUE '4283258317648062'.
       78  XPC-FLD0719B
           VALUE '239090461'.
       78  XPC-FLD0720B
           VALUE '404886229426392'.
       78  XPC-FLD0721B
           VALUE '45808243'.
       78  XPC-FLD0722B
           VALUE '7624904820924922808538326535'.
       78  XPC-FLD0723B
           VALUE '56'.
       78  XPC-FLD0724B
           VALUE '4934011851187240393'.
       78  XPC-FLD0725B
           VALUE '4444128191361023'.
       78  XPC-FLD0726B
           VALUE '401820868675800'.
       78  XPC-FLD0727B
           VALUE '0896082861134319673904889'.
       78  XPC-FLD0728B
           VALUE '8107691565224u'.
       78  XPC-FLD0729B
           VALUE '795979478015814722415832704883'.
       78  XPC-FLD0730B
           VALUE '62944830238001500322120'.
       78  XPC-FLD0731B
           VALUE '4086517499647340789789'.
       78  XPC-FLD0732B
           VALUE '0313'.
       78  XPC-FLD0733B
           VALUE '965641152048700750127567'.
       78  XPC-FLD0734B
           VALUE '26'.
       78  XPC-FLD0735B
           VALUE '641708846027484955070190'.
       78  XPC-FLD0736B
           VALUE '072589764082146861645222974767'.
       78  XPC-FLD0737B
           VALUE '52244392r'.
       78  XPC-FLD0738B
           VALUE '512073900331931666778700673603452743'.
       78  XPC-FLD0739B
           VALUE '45916207849346129r'.
       78  XPC-FLD0740B
           VALUE '072773632191726975291885537444614'.
       78  XPC-FLD0741B
           VALUE '644169236711'.
       78  XPC-FLD0742B
           VALUE '8889902186r'.
       78  XPC-FLD0743B
           VALUE '2956850'.
       78  XPC-FLD0744B
           VALUE '2695622879'.
       78  XPC-FLD0745B
           VALUE '13558'.
       78  XPC-FLD0746B
           VALUE '0231527099755997057'.
       78  XPC-FLD0747B
           VALUE '4879952390867385986918298294767737'.
       78  XPC-FLD0748B
           VALUE '18118w'.
       78  XPC-FLD0749B
           VALUE '2760411381430374631233670697839'.
       78  XPC-FLD0750B
           VALUE '262999561974'.
       78  XPC-FLD0751B
           VALUE '1517p'.
       78  XPC-FLD0752B
           VALUE '91538508268330654527034084821934811'.
       78  XPC-FLD0753B
           VALUE '9'.
       78  XPC-FLD0754B
           VALUE '961172590'.
       78  XPC-FLD0755B
           VALUE '53471365948751090643'.
       78  XPC-FLD0756B
           VALUE '1042t'.
       78  XPC-FLD0757B
           VALUE '242943831'.
       78  XPC-FLD0758B
           VALUE '45592x'.
       78  XPC-FLD0759B
           VALUE '7622235272467824718001239148'.
       78  XPC-FLD0760B
           VALUE '9469886609778104836721013271017001'.
       78  XPC-FLD0761B
           VALUE '31926781976263429729812'.
       78  XPC-FLD0762B
           VALUE '884402939'.
       78  XPC-FLD0763B
           VALUE '283690925904618196362605387461'.
       78  XPC-FLD0764B
           VALUE '055560951487484800'.
       78  XPC-FLD0765B
           VALUE '1212'.
       78  XPC-FLD0766B
           VALUE '22949432'.
       78  XPC-FLD0767B
           VALUE 'q'.
       78  XPC-FLD0768B
           VALUE '9v'.
       78  XPC-FLD0769B
           VALUE '3586597857349'.
       78  XPC-FLD0770B
           VALUE '54829803888151060764504'.
       78  XPC-FLD0771B
           VALUE '75991198999121606361129010'.
       78  XPC-FLD0772B
           VALUE '090893446885686'.
       78  XPC-FLD0773B
           VALUE '76783997423560348547511011929600499'.
       78  XPC-FLD0774B
           VALUE '242589104'.
       78  XPC-FLD0775B
           VALUE '83006085498341006789723905967548489'.
       78  XPC-FLD0776B
           VALUE '65983936382796708763014976284467'.
       78  XPC-FLD0777B
           VALUE '563799910901816754889'.
       78  XPC-FLD0778B
           VALUE '6562465464730475300569878527312539'.
       78  XPC-FLD0779B
           VALUE '47408985532610322x'.
       78  XPC-FLD0780B
           VALUE '4184481254630997580198368268612'.
       78  XPC-FLD0781B
           VALUE '29720911669'.
       78  XPC-FLD0782B
           VALUE '974841984908992382763415207591606305'.
       78  XPC-FLD0783B
           VALUE '4236442572674454'.
       78  XPC-FLD0784B
           VALUE '1401654002801979714825902150218'.
       78  XPC-FLD0785B
           VALUE '393300524051'.
       78  XPC-FLD0786B
           VALUE '85407905679605532414111479511120'.
       78  XPC-FLD0787B
           VALUE '0464285'.
       78  XPC-FLD0788B
           VALUE '77898336505928358503125785716'.
       78  XPC-FLD0789B
           VALUE '6604278565132847496040994'.
       78  XPC-FLD0790B
           VALUE '3169436866r'.
       78  XPC-FLD0791B
           VALUE '7382741348868294886190710712'.
       78  XPC-FLD0792B
           VALUE '37982443954012'.
       78  XPC-FLD0793B
           VALUE '559177637820166807230'.
       78  XPC-FLD0794B
           VALUE 'p'.
       78  XPC-FLD0795B
           VALUE '334944006958'.
       78  XPC-FLD0796B
           VALUE '653841465915909014761098205'.
       78  XPC-FLD0797B
           VALUE '3487774860252'.
       78  XPC-FLD0798B
           VALUE '3415780672379371043808250'.
       78  XPC-FLD0799B
           VALUE '24239306208646738127'.
       78  XPC-FLD0800B
           VALUE '4337360023'.
       78  XPC-FLD0801B
           VALUE '9633203702397862694706986985693220049'.
       78  XPC-FLD0802B
           VALUE '059390909987167776897365456534317'.
       78  XPC-FLD0803B
           VALUE '555623043499399698487'.
       78  XPC-FLD0804B
           VALUE '2'.
       78  XPC-FLD0805B
           VALUE '479868190466873291'.
       78  XPC-FLD0806B
           VALUE '2580784568425466'.
       78  XPC-FLD0807B
           VALUE '592'.
       78  XPC-FLD0808B
           VALUE '45744550475690953'.
       78  XPC-FLD0809B
           VALUE '4404211618158996'.
       78  XPC-FLD0810B
           VALUE '21294550'.
       78  XPC-FLD0811B
           VALUE '5454913861947337423021251372119877487'.
       78  XPC-FLD0812B
           VALUE '5678497418'.
       78  XPC-FLD0813B
           VALUE '2911313640p'.
       78  XPC-FLD0814B
           VALUE '7525119595496631362479433846'.
       78  XPC-FLD0815B
           VALUE '714304561558653405839436344638434439'.
       78  XPC-FLD0816B
           VALUE '532563204313666438416366152096307'.
       78  XPC-FLD0817B
           VALUE '0322267276165150162'.
       78  XPC-FLD0818B
           VALUE '409797454111609544843745425'.
       78  XPC-FLD0819B
           VALUE '08r'.
       78  XPC-FLD0820B
           VALUE '956537139953218984445015848905313760'.
       78  XPC-FLD0821B
           VALUE '3836565363942r'.
       78  XPC-FLD0822B
           VALUE '2945'.
       78  XPC-FLD0823B
           VALUE '484310601769554'.
       78  XPC-FLD0824B
           VALUE '73189644908504480898002'.
       78  XPC-FLD0825B
           VALUE '17069r'.
       78  XPC-FLD0826B
           VALUE '48057855720973591v'.
       78  XPC-FLD0827B
           VALUE '46910500983725490'.
       78  XPC-FLD0828B
           VALUE '00993'.
       78  XPC-FLD0829B
           VALUE '944972866636283770347403930829'.
       78  XPC-FLD0830B
           VALUE '565534908381171491840'.
       78  XPC-FLD0831B
           VALUE '6602934475151655210356515'.
       78  XPC-FLD0832B
           VALUE '419047953539795'.
       78  XPC-FLD0833B
           VALUE '6657954482808921498060428'.
       78  XPC-FLD0834B
           VALUE '780178461140043863949386833'.
       78  XPC-FLD0835B
           VALUE '90696211292909090229130697187'.
       78  XPC-FLD0836B
           VALUE '1479247899592904941896'.
       78  XPC-FLD0837B
           VALUE '2914675851y'.
       78  XPC-FLD0838B
           VALUE '54394205787057270376334726969'.
       78  XPC-FLD0839B
           VALUE '5300514'.
       78  XPC-FLD0840B
           VALUE '1153'.
       78  XPC-FLD0841B
           VALUE '992981736583248397742806176703'.
       78  XPC-FLD0842B
           VALUE '54030708425366313836265591069241055'.
       78  XPC-FLD0843B
           VALUE '31166916723'.
       78  XPC-FLD0844B
           VALUE '44793585873382490'.
       78  XPC-FLD0845B
           VALUE '555020066479501195111220'.
       78  XPC-FLD0846B
           VALUE '45502277490866085'.
       78  XPC-FLD0847B
           VALUE '29702735772'.
       78  XPC-FLD0848B
           VALUE '631805001566330881601629698'.
       78  XPC-FLD0849B
           VALUE '3125884051750275061046194363'.
       78  XPC-FLD0850B
           VALUE '213070204849290532925563'.
       78  XPC-FLD0851B
           VALUE '22519773'.
       78  XPC-FLD0852B
           VALUE '1471732987'.
       78  XPC-FLD0853B
           VALUE '0'.
       78  XPC-FLD0854B
           VALUE '9'.
       78  XPC-FLD0855B
           VALUE '796064'.
       78  XPC-FLD0856B
           VALUE '3084r'.
       78  XPC-FLD0857B
           VALUE '11'.
       78  XPC-FLD0858B
           VALUE '29627833617'.
       78  XPC-FLD0859B
           VALUE '971628168143447767945986015547532588'.
       78  XPC-FLD0860B
           VALUE '310782983915'.
       78  XPC-FLD0861B
           VALUE '1091'.
       78  XPC-FLD0862B
           VALUE '568978369365978243754'.
       78  XPC-FLD0863B
           VALUE '5171345793694755750'.
       78  XPC-FLD0864B
           VALUE '409403590364872439594022918754491'.
       78  XPC-FLD0865B
           VALUE '328'.
       78  XPC-FLD0866B
           VALUE '0973651490201067931957936707476620'.
       78  XPC-FLD0867B
           VALUE '728938616966572774526298417'.
       78  XPC-FLD0868B
           VALUE '5841479951825634534535'.
       78  XPC-FLD0869B
           VALUE '6815782206919422936408636'.
       78  XPC-FLD0870B
           VALUE '657570531523696821807334'.
       78  XPC-FLD0871B
           VALUE '5744601464762396635'.
       78  XPC-FLD0872B
           VALUE '45914011344767276'.
       78  XPC-FLD0873B
           VALUE '76853'.
       78  XPC-FLD0874B
           VALUE '1881063'.
       78  XPC-FLD0875B
           VALUE '32'.
       78  XPC-FLD0876B
           VALUE '792823887607293276147402139031'.
       78  XPC-FLD0877B
           VALUE '651975862412979334514773'.
       78  XPC-FLD0878B
           VALUE '242827678838084315415812843661207'.
       78  XPC-FLD0879B
           VALUE '56764772794591269560129376259283'.
       78  XPC-FLD0880B
           VALUE '4839436714022342976684717541503'.
       78  XPC-FLD0881B
           VALUE '2105193947195'.
       78  XPC-FLD0882B
           VALUE '2108803940594616843638067'.
       78  XPC-FLD0883B
           VALUE '9754132777012324284626648395'.
       78  XPC-FLD0884B
           VALUE '6490392032439449247535630967'.
       78  XPC-FLD0885B
           VALUE '0207r'.
       78  XPC-FLD0886B
           VALUE '0059506907030w'.
       78  XPC-FLD0887B
           VALUE '9306168018675709582439026235078'.
       78  XPC-FLD0888B
           VALUE '118607301'.
       78  XPC-FLD0889B
           VALUE '286280324389502793813733205752214417'.
       78  XPC-FLD0890B
           VALUE '721613583480198661490589984'.
       78  XPC-FLD0891B
           VALUE '735270814161123614247195235'.
       78  XPC-FLD0892B
           VALUE '556'.
       78  XPC-FLD0893B
           VALUE '07'.
       78  XPC-FLD0894B
           VALUE '654309128000748152942379'.
       78  XPC-FLD0895B
           VALUE '2889386308'.
       78  XPC-FLD0896B
           VALUE 'p'.
       78  XPC-FLD0897B
           VALUE '4404922200833587'.
       78  XPC-FLD0898B
           VALUE '8343520'.
       78  XPC-FLD0899B
           VALUE '5130606210827636'.
       78  XPC-FLD0900B
           VALUE '1847104'.
       78  XPC-FLD0901B
           VALUE '1289396298369796609307513790554367005'.
       78  XPC-FLD0902B
           VALUE '5131049785081560397'.
       78  XPC-FLD0903B
           VALUE '46'.
       78  XPC-FLD0904B
           VALUE 'w'.
       78  XPC-FLD0905B
           VALUE '7075373564412'.
       78  XPC-FLD0906B
           VALUE '7'.
       78  XPC-FLD0907B
           VALUE '530207411746521324809'.
       78  XPC-FLD0908B
           VALUE '8642393083548316472445662839163561'.
       78  XPC-FLD0909B
           VALUE '0'.
       78  XPC-FLD0910B
           VALUE '2257333765600096867487422969134058'.
       78  XPC-FLD0911B
           VALUE '3765938103187097346508025840'.
       78  XPC-FLD0912B
           VALUE '0'.
       78  XPC-FLD0913B
           VALUE '325'.
       78  XPC-FLD0914B
           VALUE '7400121849171126253708052900037643855'.
       78  XPC-FLD0915B
           VALUE '2036'.
       78  XPC-FLD0916B
           VALUE '4372777685598984'.
       78  XPC-FLD0917B
           VALUE '1084'.
       78  XPC-FLD0918B
           VALUE '569310510294893204244'.
       78  XPC-FLD0919B
           VALUE 'v'.
       78  XPC-FLD0920B
           VALUE '6698607602658151664433262'.
       78  XPC-FLD0921B
           VALUE '0'.
       78  XPC-FLD0922B
           VALUE '18331x'.
       78  XPC-FLD0923B
           VALUE '0892'.
       78  XPC-FLD0924B
           VALUE '6753252278154044870414354451350'.
       78  XPC-FLD0925B
           VALUE '6'.
       78  XPC-FLD0926B
           VALUE '20687721r'.
       78  XPC-FLD0927B
           VALUE '5121865708750312359'.
       78  XPC-FLD0928B
           VALUE '255169492'.
       78  XPC-FLD0929B
           VALUE '713937683093887626162299398'.
       78  XPC-FLD0930B
           VALUE '5915948649192320925289'.
       78  XPC-FLD0931B
           VALUE '124377459'.
       78  XPC-FLD0932B
           VALUE '0116711468219923287'.
       78  XPC-FLD0933B
           VALUE '328435728864'.
       78  XPC-FLD0934B
           VALUE '237750091'.
       78  XPC-FLD0935B
           VALUE '485384635684275264'.
       78  XPC-FLD0936B
           VALUE '418311146814978578269972331327153370'.
       78  XPC-FLD0937B
           VALUE '5'.
       78  XPC-FLD0938B
           VALUE '07520562026683963451729041'.
       78  XPC-FLD0939B
           VALUE '7'.
       78  XPC-FLD0940B
           VALUE '420205546087499959'.
       78  XPC-FLD0941B
           VALUE '3450283323540'.
       78  XPC-FLD0942B
           VALUE '94510218123579575949541058434988373'.
       78  XPC-FLD0943B
           VALUE '9698175'.
       78  XPC-FLD0944B
           VALUE '26005609t'.
       78  XPC-FLD0945B
           VALUE '9639552190838519'.
       78  XPC-FLD0946B
           VALUE '285407519811451561686510558502050116'.
       78  XPC-FLD0947B
           VALUE '6720279273588082815549249'.
       78  XPC-FLD0948B
           VALUE '7581536805549627281493485497'.
       78  XPC-FLD0949B
           VALUE '89772746643169742'.
       78  XPC-FLD0950B
           VALUE '9466572989771413480277234393870459'.
       78  XPC-FLD0951B
           VALUE '0571609040492847894313968026'.
       78  XPC-FLD0952B
           VALUE '65'.
       78  XPC-FLD0953B
           VALUE '5187948954462912461'.
       78  XPC-FLD0954B
           VALUE '525409336908340408209862744115525857'.
       78  XPC-FLD0955B
           VALUE '5341017709695240897178791783518'.
       78  XPC-FLD0956B
           VALUE '97384559702281070479269828'.
       78  XPC-FLD0957B
           VALUE '1212'.
       78  XPC-FLD0958B
           VALUE '4387549590870288'.
       78  XPC-FLD0959B
           VALUE '1'.
       78  XPC-FLD0960B
           VALUE 'q'.
       78  XPC-FLD0961B
           VALUE '0056'.
       78  XPC-FLD0962B
           VALUE '6826560363239254262940347'.
       78  XPC-FLD0963B
           VALUE '6579508606108431242392875'.
       78  XPC-FLD0964B
           VALUE '0399362942016605604323'.
       78  XPC-FLD0965B
           VALUE '1'.
       78  XPC-FLD0966B
           VALUE '0005571'.
       78  XPC-FLD0967B
           VALUE '3560456473147'.
       78  XPC-FLD0968B
           VALUE '553q'.
       78  XPC-FLD0969B
           VALUE '5945236920989867723715'.
       78  XPC-FLD0970B
           VALUE '433217720233246760537693012156523765'.
       78  XPC-FLD0971B
           VALUE '402866616015322'.
       78  XPC-FLD0972B
           VALUE '96534'.
       78  XPC-FLD0973B
           VALUE '8420775282429751358819203232997'.
       78  XPC-FLD0974B
           VALUE '07v'.
       78  XPC-FLD0975B
           VALUE '329183574054'.
       78  XPC-FLD0976B
           VALUE '5189195631532426046'.
       78  XPC-FLD0977B
           VALUE '0657773350998w'.
       78  XPC-FLD0978B
           VALUE '26365113312583p'.
       78  XPC-FLD0979B
           VALUE '38851072771967'.
       78  XPC-FLD0980B
           VALUE '647159056743324437308229'.
       78  XPC-FLD0981B
           VALUE '360278478276r'.
       78  XPC-FLD0982B
           VALUE '30653235444'.
       78  XPC-FLD0983B
           VALUE '882516211995383510538363225350622087'.
       78  XPC-FLD0984B
           VALUE '4457843883822408592'.
       78  XPC-FLD0985B
           VALUE '496108848273749947698929645412135'.
       78  XPC-FLD0986B
           VALUE '8'.
       78  XPC-FLD0987B
           VALUE '84253493742279825972518736421080'.
       78  XPC-FLD0988B
           VALUE '18152p'.
       78  XPC-FLD0989B
           VALUE '5932140179792923634499'.
       78  XPC-FLD0990B
           VALUE '5970979'.
       78  XPC-FLD0991B
           VALUE '404273028987099'.
       78  XPC-FLD0992B
           VALUE '518805985017170789852514182650362'.
       78  XPC-FLD0993B
           VALUE '5599'.
       78  XPC-FLD0994B
           VALUE '48479340835318215t'.
       78  XPC-FLD0995B
           VALUE '1888258'.
       78  XPC-FLD0996B
           VALUE '0505105346267128441084558'.
       78  XPC-FLD0997B
           VALUE '0011799546758455291'.
       78  XPC-FLD0998B
           VALUE 's'.
       78  XPC-FLD0999B
           VALUE 'q'.


       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           SUBTRACT FLD0500A        FROM FLD0500B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0501A        TO FLD0501B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0502A        FROM FLD0502B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0503A        TO FLD0503B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0504A        FROM FLD0504B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0505A        TO FLD0505B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0506A        FROM FLD0506B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0507A        TO FLD0507B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0508A        FROM FLD0508B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0509A        TO FLD0509B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0510A        FROM FLD0510B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0511A        TO FLD0511B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0512A        FROM FLD0512B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0513A        TO FLD0513B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0514A        FROM FLD0514B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0515A        TO FLD0515B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0516A        FROM FLD0516B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0517A        TO FLD0517B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0518A        FROM FLD0518B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0519A        TO FLD0519B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0520A        FROM FLD0520B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0521A        TO FLD0521B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0522A        FROM FLD0522B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0523A        TO FLD0523B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0524A        FROM FLD0524B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0525A        TO FLD0525B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0526A        FROM FLD0526B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0527A        TO FLD0527B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0528A        FROM FLD0528B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0529A        TO FLD0529B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0530A        FROM FLD0530B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0531A        TO FLD0531B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0532A        FROM FLD0532B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0533A        TO FLD0533B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0534A        FROM FLD0534B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0535A        TO FLD0535B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0536A        FROM FLD0536B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0537A        TO FLD0537B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0538A        FROM FLD0538B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0539A        TO FLD0539B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0540A        FROM FLD0540B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0541A        TO FLD0541B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0542A        FROM FLD0542B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0543A        TO FLD0543B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0544A        FROM FLD0544B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0545A        TO FLD0545B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0546A        FROM FLD0546B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0547A        TO FLD0547B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0548A        FROM FLD0548B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0549A        TO FLD0549B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0550A        FROM FLD0550B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0551A        TO FLD0551B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0552A        FROM FLD0552B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0553A        TO FLD0553B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0554A        FROM FLD0554B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0555A        TO FLD0555B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0556A        FROM FLD0556B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0557A        TO FLD0557B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0558A        FROM FLD0558B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0559A        TO FLD0559B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0560A        FROM FLD0560B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0561A        TO FLD0561B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0562A        FROM FLD0562B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0563A        TO FLD0563B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0564A        FROM FLD0564B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0565A        TO FLD0565B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0566A        FROM FLD0566B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0567A        TO FLD0567B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0568A        FROM FLD0568B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0569A        TO FLD0569B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0570A        FROM FLD0570B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0571A        TO FLD0571B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0572A        FROM FLD0572B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0573A        TO FLD0573B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0574A        FROM FLD0574B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0575A        TO FLD0575B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0576A        FROM FLD0576B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0577A        TO FLD0577B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0578A        FROM FLD0578B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0579A        TO FLD0579B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0580A        FROM FLD0580B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0581A        TO FLD0581B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0582A        FROM FLD0582B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0583A        TO FLD0583B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0584A        FROM FLD0584B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0585A        TO FLD0585B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0586A        FROM FLD0586B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0587A        TO FLD0587B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0588A        FROM FLD0588B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0589A        TO FLD0589B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0590A        FROM FLD0590B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0591A        TO FLD0591B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0592A        FROM FLD0592B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0593A        TO FLD0593B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0594A        FROM FLD0594B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0595A        TO FLD0595B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0596A        FROM FLD0596B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0597A        TO FLD0597B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0598A        FROM FLD0598B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0599A        TO FLD0599B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0600A        FROM FLD0600B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0601A        TO FLD0601B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0602A        FROM FLD0602B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0603A        TO FLD0603B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0604A        FROM FLD0604B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0605A        TO FLD0605B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0606A        FROM FLD0606B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0607A        TO FLD0607B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0608A        FROM FLD0608B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0609A        TO FLD0609B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0610A        FROM FLD0610B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0611A        TO FLD0611B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0612A        FROM FLD0612B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0613A        TO FLD0613B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0614A        FROM FLD0614B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0615A        TO FLD0615B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0616A        FROM FLD0616B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0617A        TO FLD0617B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0618A        FROM FLD0618B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0619A        TO FLD0619B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0620A        FROM FLD0620B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0621A        TO FLD0621B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0622A        FROM FLD0622B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0623A        TO FLD0623B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0624A        FROM FLD0624B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0625A        TO FLD0625B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0626A        FROM FLD0626B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0627A        TO FLD0627B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0628A        FROM FLD0628B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0629A        TO FLD0629B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0630A        FROM FLD0630B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0631A        TO FLD0631B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0632A        FROM FLD0632B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0633A        TO FLD0633B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0634A        FROM FLD0634B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0635A        TO FLD0635B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0636A        FROM FLD0636B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0637A        TO FLD0637B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0638A        FROM FLD0638B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0639A        TO FLD0639B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0640A        FROM FLD0640B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0641A        TO FLD0641B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0642A        FROM FLD0642B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0643A        TO FLD0643B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0644A        FROM FLD0644B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0645A        TO FLD0645B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0646A        FROM FLD0646B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0647A        TO FLD0647B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0648A        FROM FLD0648B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0649A        TO FLD0649B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0650A        FROM FLD0650B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0651A        TO FLD0651B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0652A        FROM FLD0652B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0653A        TO FLD0653B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0654A        FROM FLD0654B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0655A        TO FLD0655B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0656A        FROM FLD0656B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0657A        TO FLD0657B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0658A        FROM FLD0658B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0659A        TO FLD0659B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0660A        FROM FLD0660B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0661A        TO FLD0661B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0662A        FROM FLD0662B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0663A        TO FLD0663B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0664A        FROM FLD0664B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0665A        TO FLD0665B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0666A        FROM FLD0666B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0667A        TO FLD0667B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0668A        FROM FLD0668B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0669A        TO FLD0669B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0670A        FROM FLD0670B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0671A        TO FLD0671B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0672A        FROM FLD0672B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0673A        TO FLD0673B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0674A        FROM FLD0674B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0675A        TO FLD0675B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0676A        FROM FLD0676B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0677A        TO FLD0677B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0678A        FROM FLD0678B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0679A        TO FLD0679B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0680A        FROM FLD0680B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0681A        TO FLD0681B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0682A        FROM FLD0682B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0683A        TO FLD0683B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0684A        FROM FLD0684B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0685A        TO FLD0685B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0686A        FROM FLD0686B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0687A        TO FLD0687B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0688A        FROM FLD0688B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0689A        TO FLD0689B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0690A        FROM FLD0690B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0691A        TO FLD0691B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0692A        FROM FLD0692B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0693A        TO FLD0693B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0694A        FROM FLD0694B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0695A        TO FLD0695B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0696A        FROM FLD0696B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0697A        TO FLD0697B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0698A        FROM FLD0698B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0699A        TO FLD0699B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0700A        FROM FLD0700B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0701A        TO FLD0701B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0702A        FROM FLD0702B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0703A        TO FLD0703B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0704A        FROM FLD0704B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0705A        TO FLD0705B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0706A        FROM FLD0706B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0707A        TO FLD0707B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0708A        FROM FLD0708B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0709A        TO FLD0709B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0710A        FROM FLD0710B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0711A        TO FLD0711B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0712A        FROM FLD0712B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0713A        TO FLD0713B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0714A        FROM FLD0714B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0715A        TO FLD0715B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0716A        FROM FLD0716B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0717A        TO FLD0717B
               ROUNDED MODE IS PROHIBITED
              ON SIZE ERROR CONTINUE
             NOT ON SIZE ERROR DISPLAY 'MISSING EC-SIZE FLD0717B'.
           SUBTRACT FLD0718A        FROM FLD0718B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0719A        TO FLD0719B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0720A        FROM FLD0720B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0721A        TO FLD0721B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0722A        FROM FLD0722B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0723A        TO FLD0723B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0724A        FROM FLD0724B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0725A        TO FLD0725B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0726A        FROM FLD0726B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0727A        TO FLD0727B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0728A        FROM FLD0728B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0729A        TO FLD0729B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0730A        FROM FLD0730B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0731A        TO FLD0731B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0732A        FROM FLD0732B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0733A        TO FLD0733B
               ROUNDED MODE IS PROHIBITED
                 ON SIZE ERROR DISPLAY 'UNEXPECTED EC-SIZE FLD0733B'.
           SUBTRACT FLD0734A        FROM FLD0734B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0735A        TO FLD0735B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0736A        FROM FLD0736B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0737A        TO FLD0737B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0738A        FROM FLD0738B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0739A        TO FLD0739B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0740A        FROM FLD0740B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0741A        TO FLD0741B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0742A        FROM FLD0742B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0743A        TO FLD0743B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0744A        FROM FLD0744B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0745A        TO FLD0745B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0746A        FROM FLD0746B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0747A        TO FLD0747B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0748A        FROM FLD0748B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0749A        TO FLD0749B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0750A        FROM FLD0750B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0751A        TO FLD0751B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0752A        FROM FLD0752B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0753A        TO FLD0753B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0754A        FROM FLD0754B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0755A        TO FLD0755B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0756A        FROM FLD0756B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0757A        TO FLD0757B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0758A        FROM FLD0758B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0759A        TO FLD0759B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0760A        FROM FLD0760B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0761A        TO FLD0761B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0762A        FROM FLD0762B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0763A        TO FLD0763B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0764A        FROM FLD0764B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0765A        TO FLD0765B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0766A        FROM FLD0766B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0767A        TO FLD0767B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0768A        FROM FLD0768B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0769A        TO FLD0769B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0770A        FROM FLD0770B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0771A        TO FLD0771B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0772A        FROM FLD0772B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0773A        TO FLD0773B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0774A        FROM FLD0774B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0775A        TO FLD0775B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0776A        FROM FLD0776B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0777A        TO FLD0777B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0778A        FROM FLD0778B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0779A        TO FLD0779B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0780A        FROM FLD0780B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0781A        TO FLD0781B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0782A        FROM FLD0782B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0783A        TO FLD0783B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0784A        FROM FLD0784B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0785A        TO FLD0785B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0786A        FROM FLD0786B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0787A        TO FLD0787B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0788A        FROM FLD0788B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0789A        TO FLD0789B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0790A        FROM FLD0790B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0791A        TO FLD0791B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0792A        FROM FLD0792B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0793A        TO FLD0793B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0794A        FROM FLD0794B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0795A        TO FLD0795B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0796A        FROM FLD0796B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0797A        TO FLD0797B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0798A        FROM FLD0798B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0799A        TO FLD0799B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0800A        FROM FLD0800B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0801A        TO FLD0801B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0802A        FROM FLD0802B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0803A        TO FLD0803B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0804A        FROM FLD0804B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0805A        TO FLD0805B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0806A        FROM FLD0806B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0807A        TO FLD0807B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0808A        FROM FLD0808B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0809A        TO FLD0809B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0810A        FROM FLD0810B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0811A        TO FLD0811B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0812A        FROM FLD0812B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0813A        TO FLD0813B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0814A        FROM FLD0814B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0815A        TO FLD0815B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0816A        FROM FLD0816B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0817A        TO FLD0817B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0818A        FROM FLD0818B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0819A        TO FLD0819B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0820A        FROM FLD0820B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0821A        TO FLD0821B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0822A        FROM FLD0822B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0823A        TO FLD0823B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0824A        FROM FLD0824B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0825A        TO FLD0825B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0826A        FROM FLD0826B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0827A        TO FLD0827B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0828A        FROM FLD0828B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0829A        TO FLD0829B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0830A        FROM FLD0830B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0831A        TO FLD0831B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0832A        FROM FLD0832B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0833A        TO FLD0833B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0834A        FROM FLD0834B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0835A        TO FLD0835B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0836A        FROM FLD0836B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0837A        TO FLD0837B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0838A        FROM FLD0838B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0839A        TO FLD0839B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0840A        FROM FLD0840B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0841A        TO FLD0841B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0842A        FROM FLD0842B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0843A        TO FLD0843B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0844A        FROM FLD0844B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0845A        TO FLD0845B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0846A        FROM FLD0846B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0847A        TO FLD0847B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0848A        FROM FLD0848B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0849A        TO FLD0849B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0850A        FROM FLD0850B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0851A        TO FLD0851B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0852A        FROM FLD0852B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0853A        TO FLD0853B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0854A        FROM FLD0854B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0855A        TO FLD0855B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0856A        FROM FLD0856B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0857A        TO FLD0857B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0858A        FROM FLD0858B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0859A        TO FLD0859B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0860A        FROM FLD0860B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0861A        TO FLD0861B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0862A        FROM FLD0862B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0863A        TO FLD0863B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0864A        FROM FLD0864B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0865A        TO FLD0865B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0866A        FROM FLD0866B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0867A        TO FLD0867B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0868A        FROM FLD0868B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0869A        TO FLD0869B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0870A        FROM FLD0870B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0871A        TO FLD0871B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0872A        FROM FLD0872B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0873A        TO FLD0873B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0874A        FROM FLD0874B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0875A        TO FLD0875B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0876A        FROM FLD0876B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0877A        TO FLD0877B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0878A        FROM FLD0878B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0879A        TO FLD0879B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0880A        FROM FLD0880B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0881A        TO FLD0881B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0882A        FROM FLD0882B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0883A        TO FLD0883B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0884A        FROM FLD0884B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0885A        TO FLD0885B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0886A        FROM FLD0886B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0887A        TO FLD0887B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0888A        FROM FLD0888B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0889A        TO FLD0889B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0890A        FROM FLD0890B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0891A        TO FLD0891B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0892A        FROM FLD0892B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0893A        TO FLD0893B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0894A        FROM FLD0894B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0895A        TO FLD0895B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0896A        FROM FLD0896B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0897A        TO FLD0897B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0898A        FROM FLD0898B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0899A        TO FLD0899B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0900A        FROM FLD0900B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0901A        TO FLD0901B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0902A        FROM FLD0902B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0903A        TO FLD0903B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0904A        FROM FLD0904B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0905A        TO FLD0905B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0906A        FROM FLD0906B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0907A        TO FLD0907B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0908A        FROM FLD0908B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0909A        TO FLD0909B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0910A        FROM FLD0910B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0911A        TO FLD0911B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0912A        FROM FLD0912B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0913A        TO FLD0913B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0914A        FROM FLD0914B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0915A        TO FLD0915B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0916A        FROM FLD0916B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0917A        TO FLD0917B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0918A        FROM FLD0918B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0919A        TO FLD0919B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0920A        FROM FLD0920B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0921A        TO FLD0921B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0922A        FROM FLD0922B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0923A        TO FLD0923B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0924A        FROM FLD0924B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0925A        TO FLD0925B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0926A        FROM FLD0926B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0927A        TO FLD0927B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0928A        FROM FLD0928B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0929A        TO FLD0929B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0930A        FROM FLD0930B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0931A        TO FLD0931B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0932A        FROM FLD0932B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0933A        TO FLD0933B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0934A        FROM FLD0934B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0935A        TO FLD0935B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0936A        FROM FLD0936B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0937A        TO FLD0937B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0938A        FROM FLD0938B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0939A        TO FLD0939B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0940A        FROM FLD0940B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0941A        TO FLD0941B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0942A        FROM FLD0942B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0943A        TO FLD0943B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0944A        FROM FLD0944B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0945A        TO FLD0945B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0946A        FROM FLD0946B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0947A        TO FLD0947B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0948A        FROM FLD0948B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0949A        TO FLD0949B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0950A        FROM FLD0950B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0951A        TO FLD0951B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0952A        FROM FLD0952B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0953A        TO FLD0953B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0954A        FROM FLD0954B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0955A        TO FLD0955B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0956A        FROM FLD0956B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0957A        TO FLD0957B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0958A        FROM FLD0958B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0959A        TO FLD0959B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0960A        FROM FLD0960B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0961A        TO FLD0961B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0962A        FROM FLD0962B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0963A        TO FLD0963B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0964A        FROM FLD0964B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0965A        TO FLD0965B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0966A        FROM FLD0966B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0967A        TO FLD0967B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0968A        FROM FLD0968B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0969A        TO FLD0969B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0970A        FROM FLD0970B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0971A        TO FLD0971B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0972A        FROM FLD0972B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0973A        TO FLD0973B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0974A        FROM FLD0974B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0975A        TO FLD0975B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0976A        FROM FLD0976B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0977A        TO FLD0977B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0978A        FROM FLD0978B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0979A        TO FLD0979B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0980A        FROM FLD0980B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0981A        TO FLD0981B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0982A        FROM FLD0982B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0983A        TO FLD0983B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0984A        FROM FLD0984B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0985A        TO FLD0985B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0986A        FROM FLD0986B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0987A        TO FLD0987B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0988A        FROM FLD0988B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0989A        TO FLD0989B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0990A        FROM FLD0990B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0991A        TO FLD0991B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0992A        FROM FLD0992B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0993A        TO FLD0993B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0994A        FROM FLD0994B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0995A        TO FLD0995B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0996A        FROM FLD0996B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0997A        TO FLD0997B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0998A        FROM FLD0998B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0999A        TO FLD0999B
               ROUNDED MODE IS TOWARD-LESSER         .

      *4000-COMPARE.

           IF FLD0500B (1:)    NOT EQUAL XPC-FLD0500B
              DISPLAY 'FLD0500B ==> ' FLD0500B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0500B.
           IF FLD0501B (1:)    NOT EQUAL XPC-FLD0501B
              DISPLAY 'FLD0501B ==> ' FLD0501B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0501B.
           IF FLD0502B (1:)    NOT EQUAL XPC-FLD0502B
              DISPLAY 'FLD0502B ==> ' FLD0502B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0502B.
           IF FLD0503B (1:)    NOT EQUAL XPC-FLD0503B
              DISPLAY 'FLD0503B ==> ' FLD0503B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0503B.
           IF FLD0504B (1:)    NOT EQUAL XPC-FLD0504B
              DISPLAY 'FLD0504B ==> ' FLD0504B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0504B.
           IF FLD0505B (1:)    NOT EQUAL XPC-FLD0505B
              DISPLAY 'FLD0505B ==> ' FLD0505B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0505B.
           IF FLD0506B (1:)    NOT EQUAL XPC-FLD0506B
              DISPLAY 'FLD0506B ==> ' FLD0506B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0506B.
           IF FLD0507B (1:)    NOT EQUAL XPC-FLD0507B
              DISPLAY 'FLD0507B ==> ' FLD0507B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0507B.
           IF FLD0508B (1:)    NOT EQUAL XPC-FLD0508B
              DISPLAY 'FLD0508B ==> ' FLD0508B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0508B.
           IF FLD0509B (1:)    NOT EQUAL XPC-FLD0509B
              DISPLAY 'FLD0509B ==> ' FLD0509B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0509B.
           IF FLD0510B (1:)    NOT EQUAL XPC-FLD0510B
              DISPLAY 'FLD0510B ==> ' FLD0510B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0510B.
           IF FLD0511B (1:)    NOT EQUAL XPC-FLD0511B
              DISPLAY 'FLD0511B ==> ' FLD0511B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0511B.
           IF FLD0512B (1:)    NOT EQUAL XPC-FLD0512B
              DISPLAY 'FLD0512B ==> ' FLD0512B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0512B.
           IF FLD0513B (1:)    NOT EQUAL XPC-FLD0513B
              DISPLAY 'FLD0513B ==> ' FLD0513B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0513B.
           IF FLD0514B (1:)    NOT EQUAL XPC-FLD0514B
              DISPLAY 'FLD0514B ==> ' FLD0514B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0514B.
           IF FLD0515B (1:)    NOT EQUAL XPC-FLD0515B
              DISPLAY 'FLD0515B ==> ' FLD0515B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0515B.
           IF FLD0516B (1:)    NOT EQUAL XPC-FLD0516B
              DISPLAY 'FLD0516B ==> ' FLD0516B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0516B.
           IF FLD0517B (1:)    NOT EQUAL XPC-FLD0517B
              DISPLAY 'FLD0517B ==> ' FLD0517B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0517B.
           IF FLD0518B (1:)    NOT EQUAL XPC-FLD0518B
              DISPLAY 'FLD0518B ==> ' FLD0518B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0518B.
           IF FLD0519B (1:)    NOT EQUAL XPC-FLD0519B
              DISPLAY 'FLD0519B ==> ' FLD0519B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0519B.
           IF FLD0520B (1:)    NOT EQUAL XPC-FLD0520B
              DISPLAY 'FLD0520B ==> ' FLD0520B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0520B.
           IF FLD0521B (1:)    NOT EQUAL XPC-FLD0521B
              DISPLAY 'FLD0521B ==> ' FLD0521B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0521B.
           IF FLD0522B (1:)    NOT EQUAL XPC-FLD0522B
              DISPLAY 'FLD0522B ==> ' FLD0522B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0522B.
           IF FLD0523B (1:)    NOT EQUAL XPC-FLD0523B
              DISPLAY 'FLD0523B ==> ' FLD0523B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0523B.
           IF FLD0524B (1:)    NOT EQUAL XPC-FLD0524B
              DISPLAY 'FLD0524B ==> ' FLD0524B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0524B.
           IF FLD0525B (1:)    NOT EQUAL XPC-FLD0525B
              DISPLAY 'FLD0525B ==> ' FLD0525B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0525B.
           IF FLD0526B (1:)    NOT EQUAL XPC-FLD0526B
              DISPLAY 'FLD0526B ==> ' FLD0526B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0526B.
           IF FLD0527B (1:)    NOT EQUAL XPC-FLD0527B
              DISPLAY 'FLD0527B ==> ' FLD0527B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0527B.
           IF FLD0528B (1:)    NOT EQUAL XPC-FLD0528B
              DISPLAY 'FLD0528B ==> ' FLD0528B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0528B.
           IF FLD0529B (1:)    NOT EQUAL XPC-FLD0529B
              DISPLAY 'FLD0529B ==> ' FLD0529B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0529B.
           IF FLD0530B (1:)    NOT EQUAL XPC-FLD0530B
              DISPLAY 'FLD0530B ==> ' FLD0530B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0530B.
           IF FLD0531B (1:)    NOT EQUAL XPC-FLD0531B
              DISPLAY 'FLD0531B ==> ' FLD0531B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0531B.
           IF FLD0532B (1:)    NOT EQUAL XPC-FLD0532B
              DISPLAY 'FLD0532B ==> ' FLD0532B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0532B.
           IF FLD0533B (1:)    NOT EQUAL XPC-FLD0533B
              DISPLAY 'FLD0533B ==> ' FLD0533B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0533B.
           IF FLD0534B (1:)    NOT EQUAL XPC-FLD0534B
              DISPLAY 'FLD0534B ==> ' FLD0534B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0534B.
           IF FLD0535B (1:)    NOT EQUAL XPC-FLD0535B
              DISPLAY 'FLD0535B ==> ' FLD0535B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0535B.
           IF FLD0536B (1:)    NOT EQUAL XPC-FLD0536B
              DISPLAY 'FLD0536B ==> ' FLD0536B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0536B.
           IF FLD0537B (1:)    NOT EQUAL XPC-FLD0537B
              DISPLAY 'FLD0537B ==> ' FLD0537B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0537B.
           IF FLD0538B (1:)    NOT EQUAL XPC-FLD0538B
              DISPLAY 'FLD0538B ==> ' FLD0538B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0538B.
           IF FLD0539B (1:)    NOT EQUAL XPC-FLD0539B
              DISPLAY 'FLD0539B ==> ' FLD0539B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0539B.
           IF FLD0540B (1:)    NOT EQUAL XPC-FLD0540B
              DISPLAY 'FLD0540B ==> ' FLD0540B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0540B.
           IF FLD0541B (1:)    NOT EQUAL XPC-FLD0541B
              DISPLAY 'FLD0541B ==> ' FLD0541B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0541B.
           IF FLD0542B (1:)    NOT EQUAL XPC-FLD0542B
              DISPLAY 'FLD0542B ==> ' FLD0542B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0542B.
           IF FLD0543B (1:)    NOT EQUAL XPC-FLD0543B
              DISPLAY 'FLD0543B ==> ' FLD0543B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0543B.
           IF FLD0544B (1:)    NOT EQUAL XPC-FLD0544B
              DISPLAY 'FLD0544B ==> ' FLD0544B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0544B.
           IF FLD0545B (1:)    NOT EQUAL XPC-FLD0545B
              DISPLAY 'FLD0545B ==> ' FLD0545B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0545B.
           IF FLD0546B (1:)    NOT EQUAL XPC-FLD0546B
              DISPLAY 'FLD0546B ==> ' FLD0546B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0546B.
           IF FLD0547B (1:)    NOT EQUAL XPC-FLD0547B
              DISPLAY 'FLD0547B ==> ' FLD0547B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0547B.
           IF FLD0548B (1:)    NOT EQUAL XPC-FLD0548B
              DISPLAY 'FLD0548B ==> ' FLD0548B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0548B.
           IF FLD0549B (1:)    NOT EQUAL XPC-FLD0549B
              DISPLAY 'FLD0549B ==> ' FLD0549B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0549B.
           IF FLD0550B (1:)    NOT EQUAL XPC-FLD0550B
              DISPLAY 'FLD0550B ==> ' FLD0550B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0550B.
           IF FLD0551B (1:)    NOT EQUAL XPC-FLD0551B
              DISPLAY 'FLD0551B ==> ' FLD0551B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0551B.
           IF FLD0552B (1:)    NOT EQUAL XPC-FLD0552B
              DISPLAY 'FLD0552B ==> ' FLD0552B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0552B.
           IF FLD0553B (1:)    NOT EQUAL XPC-FLD0553B
              DISPLAY 'FLD0553B ==> ' FLD0553B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0553B.
           IF FLD0554B (1:)    NOT EQUAL XPC-FLD0554B
              DISPLAY 'FLD0554B ==> ' FLD0554B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0554B.
           IF FLD0555B (1:)    NOT EQUAL XPC-FLD0555B
              DISPLAY 'FLD0555B ==> ' FLD0555B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0555B.
           IF FLD0556B (1:)    NOT EQUAL XPC-FLD0556B
              DISPLAY 'FLD0556B ==> ' FLD0556B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0556B.
           IF FLD0557B (1:)    NOT EQUAL XPC-FLD0557B
              DISPLAY 'FLD0557B ==> ' FLD0557B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0557B.
           IF FLD0558B (1:)    NOT EQUAL XPC-FLD0558B
              DISPLAY 'FLD0558B ==> ' FLD0558B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0558B.
           IF FLD0559B (1:)    NOT EQUAL XPC-FLD0559B
              DISPLAY 'FLD0559B ==> ' FLD0559B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0559B.
           IF FLD0560B (1:)    NOT EQUAL XPC-FLD0560B
              DISPLAY 'FLD0560B ==> ' FLD0560B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0560B.
           IF FLD0561B (1:)    NOT EQUAL XPC-FLD0561B
              DISPLAY 'FLD0561B ==> ' FLD0561B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0561B.
           IF FLD0562B (1:)    NOT EQUAL XPC-FLD0562B
              DISPLAY 'FLD0562B ==> ' FLD0562B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0562B.
           IF FLD0563B (1:)    NOT EQUAL XPC-FLD0563B
              DISPLAY 'FLD0563B ==> ' FLD0563B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0563B.
           IF FLD0564B (1:)    NOT EQUAL XPC-FLD0564B
              DISPLAY 'FLD0564B ==> ' FLD0564B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0564B.
           IF FLD0565B (1:)    NOT EQUAL XPC-FLD0565B
              DISPLAY 'FLD0565B ==> ' FLD0565B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0565B.
           IF FLD0566B (1:)    NOT EQUAL XPC-FLD0566B
              DISPLAY 'FLD0566B ==> ' FLD0566B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0566B.
           IF FLD0567B (1:)    NOT EQUAL XPC-FLD0567B
              DISPLAY 'FLD0567B ==> ' FLD0567B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0567B.
           IF FLD0568B (1:)    NOT EQUAL XPC-FLD0568B
              DISPLAY 'FLD0568B ==> ' FLD0568B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0568B.
           IF FLD0569B (1:)    NOT EQUAL XPC-FLD0569B
              DISPLAY 'FLD0569B ==> ' FLD0569B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0569B.
           IF FLD0570B (1:)    NOT EQUAL XPC-FLD0570B
              DISPLAY 'FLD0570B ==> ' FLD0570B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0570B.
           IF FLD0571B (1:)    NOT EQUAL XPC-FLD0571B
              DISPLAY 'FLD0571B ==> ' FLD0571B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0571B.
           IF FLD0572B (1:)    NOT EQUAL XPC-FLD0572B
              DISPLAY 'FLD0572B ==> ' FLD0572B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0572B.
           IF FLD0573B (1:)    NOT EQUAL XPC-FLD0573B
              DISPLAY 'FLD0573B ==> ' FLD0573B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0573B.
           IF FLD0574B (1:)    NOT EQUAL XPC-FLD0574B
              DISPLAY 'FLD0574B ==> ' FLD0574B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0574B.
           IF FLD0575B (1:)    NOT EQUAL XPC-FLD0575B
              DISPLAY 'FLD0575B ==> ' FLD0575B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0575B.
           IF FLD0576B (1:)    NOT EQUAL XPC-FLD0576B
              DISPLAY 'FLD0576B ==> ' FLD0576B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0576B.
           IF FLD0577B (1:)    NOT EQUAL XPC-FLD0577B
              DISPLAY 'FLD0577B ==> ' FLD0577B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0577B.
           IF FLD0578B (1:)    NOT EQUAL XPC-FLD0578B
              DISPLAY 'FLD0578B ==> ' FLD0578B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0578B.
           IF FLD0579B (1:)    NOT EQUAL XPC-FLD0579B
              DISPLAY 'FLD0579B ==> ' FLD0579B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0579B.
           IF FLD0580B (1:)    NOT EQUAL XPC-FLD0580B
              DISPLAY 'FLD0580B ==> ' FLD0580B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0580B.
           IF FLD0581B (1:)    NOT EQUAL XPC-FLD0581B
              DISPLAY 'FLD0581B ==> ' FLD0581B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0581B.
           IF FLD0582B (1:)    NOT EQUAL XPC-FLD0582B
              DISPLAY 'FLD0582B ==> ' FLD0582B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0582B.
           IF FLD0583B (1:)    NOT EQUAL XPC-FLD0583B
              DISPLAY 'FLD0583B ==> ' FLD0583B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0583B.
           IF FLD0584B (1:)    NOT EQUAL XPC-FLD0584B
              DISPLAY 'FLD0584B ==> ' FLD0584B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0584B.
           IF FLD0585B (1:)    NOT EQUAL XPC-FLD0585B
              DISPLAY 'FLD0585B ==> ' FLD0585B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0585B.
           IF FLD0586B (1:)    NOT EQUAL XPC-FLD0586B
              DISPLAY 'FLD0586B ==> ' FLD0586B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0586B.
           IF FLD0587B (1:)    NOT EQUAL XPC-FLD0587B
              DISPLAY 'FLD0587B ==> ' FLD0587B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0587B.
           IF FLD0588B (1:)    NOT EQUAL XPC-FLD0588B
              DISPLAY 'FLD0588B ==> ' FLD0588B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0588B.
           IF FLD0589B (1:)    NOT EQUAL XPC-FLD0589B
              DISPLAY 'FLD0589B ==> ' FLD0589B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0589B.
           IF FLD0590B (1:)    NOT EQUAL XPC-FLD0590B
              DISPLAY 'FLD0590B ==> ' FLD0590B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0590B.
           IF FLD0591B (1:)    NOT EQUAL XPC-FLD0591B
              DISPLAY 'FLD0591B ==> ' FLD0591B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0591B.
           IF FLD0592B (1:)    NOT EQUAL XPC-FLD0592B
              DISPLAY 'FLD0592B ==> ' FLD0592B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0592B.
           IF FLD0593B (1:)    NOT EQUAL XPC-FLD0593B
              DISPLAY 'FLD0593B ==> ' FLD0593B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0593B.
           IF FLD0594B (1:)    NOT EQUAL XPC-FLD0594B
              DISPLAY 'FLD0594B ==> ' FLD0594B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0594B.
           IF FLD0595B (1:)    NOT EQUAL XPC-FLD0595B
              DISPLAY 'FLD0595B ==> ' FLD0595B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0595B.
           IF FLD0596B (1:)    NOT EQUAL XPC-FLD0596B
              DISPLAY 'FLD0596B ==> ' FLD0596B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0596B.
           IF FLD0597B (1:)    NOT EQUAL XPC-FLD0597B
              DISPLAY 'FLD0597B ==> ' FLD0597B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0597B.
           IF FLD0598B (1:)    NOT EQUAL XPC-FLD0598B
              DISPLAY 'FLD0598B ==> ' FLD0598B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0598B.
           IF FLD0599B (1:)    NOT EQUAL XPC-FLD0599B
              DISPLAY 'FLD0599B ==> ' FLD0599B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0599B.
           IF FLD0600B (1:)    NOT EQUAL XPC-FLD0600B
              DISPLAY 'FLD0600B ==> ' FLD0600B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0600B.
           IF FLD0601B (1:)    NOT EQUAL XPC-FLD0601B
              DISPLAY 'FLD0601B ==> ' FLD0601B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0601B.
           IF FLD0602B (1:)    NOT EQUAL XPC-FLD0602B
              DISPLAY 'FLD0602B ==> ' FLD0602B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0602B.
           IF FLD0603B (1:)    NOT EQUAL XPC-FLD0603B
              DISPLAY 'FLD0603B ==> ' FLD0603B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0603B.
           IF FLD0604B (1:)    NOT EQUAL XPC-FLD0604B
              DISPLAY 'FLD0604B ==> ' FLD0604B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0604B.
           IF FLD0605B (1:)    NOT EQUAL XPC-FLD0605B
              DISPLAY 'FLD0605B ==> ' FLD0605B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0605B.
           IF FLD0606B (1:)    NOT EQUAL XPC-FLD0606B
              DISPLAY 'FLD0606B ==> ' FLD0606B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0606B.
           IF FLD0607B (1:)    NOT EQUAL XPC-FLD0607B
              DISPLAY 'FLD0607B ==> ' FLD0607B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0607B.
           IF FLD0608B (1:)    NOT EQUAL XPC-FLD0608B
              DISPLAY 'FLD0608B ==> ' FLD0608B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0608B.
           IF FLD0609B (1:)    NOT EQUAL XPC-FLD0609B
              DISPLAY 'FLD0609B ==> ' FLD0609B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0609B.
           IF FLD0610B (1:)    NOT EQUAL XPC-FLD0610B
              DISPLAY 'FLD0610B ==> ' FLD0610B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0610B.
           IF FLD0611B (1:)    NOT EQUAL XPC-FLD0611B
              DISPLAY 'FLD0611B ==> ' FLD0611B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0611B.
           IF FLD0612B (1:)    NOT EQUAL XPC-FLD0612B
              DISPLAY 'FLD0612B ==> ' FLD0612B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0612B.
           IF FLD0613B (1:)    NOT EQUAL XPC-FLD0613B
              DISPLAY 'FLD0613B ==> ' FLD0613B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0613B.
           IF FLD0614B (1:)    NOT EQUAL XPC-FLD0614B
              DISPLAY 'FLD0614B ==> ' FLD0614B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0614B.
           IF FLD0615B (1:)    NOT EQUAL XPC-FLD0615B
              DISPLAY 'FLD0615B ==> ' FLD0615B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0615B.
           IF FLD0616B (1:)    NOT EQUAL XPC-FLD0616B
              DISPLAY 'FLD0616B ==> ' FLD0616B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0616B.
           IF FLD0617B (1:)    NOT EQUAL XPC-FLD0617B
              DISPLAY 'FLD0617B ==> ' FLD0617B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0617B.
           IF FLD0618B (1:)    NOT EQUAL XPC-FLD0618B
              DISPLAY 'FLD0618B ==> ' FLD0618B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0618B.
           IF FLD0619B (1:)    NOT EQUAL XPC-FLD0619B
              DISPLAY 'FLD0619B ==> ' FLD0619B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0619B.
           IF FLD0620B (1:)    NOT EQUAL XPC-FLD0620B
              DISPLAY 'FLD0620B ==> ' FLD0620B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0620B.
           IF FLD0621B (1:)    NOT EQUAL XPC-FLD0621B
              DISPLAY 'FLD0621B ==> ' FLD0621B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0621B.
           IF FLD0622B (1:)    NOT EQUAL XPC-FLD0622B
              DISPLAY 'FLD0622B ==> ' FLD0622B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0622B.
           IF FLD0623B (1:)    NOT EQUAL XPC-FLD0623B
              DISPLAY 'FLD0623B ==> ' FLD0623B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0623B.
           IF FLD0624B (1:)    NOT EQUAL XPC-FLD0624B
              DISPLAY 'FLD0624B ==> ' FLD0624B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0624B.
           IF FLD0625B (1:)    NOT EQUAL XPC-FLD0625B
              DISPLAY 'FLD0625B ==> ' FLD0625B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0625B.
           IF FLD0626B (1:)    NOT EQUAL XPC-FLD0626B
              DISPLAY 'FLD0626B ==> ' FLD0626B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0626B.
           IF FLD0627B (1:)    NOT EQUAL XPC-FLD0627B
              DISPLAY 'FLD0627B ==> ' FLD0627B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0627B.
           IF FLD0628B (1:)    NOT EQUAL XPC-FLD0628B
              DISPLAY 'FLD0628B ==> ' FLD0628B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0628B.
           IF FLD0629B (1:)    NOT EQUAL XPC-FLD0629B
              DISPLAY 'FLD0629B ==> ' FLD0629B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0629B.
           IF FLD0630B (1:)    NOT EQUAL XPC-FLD0630B
              DISPLAY 'FLD0630B ==> ' FLD0630B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0630B.
           IF FLD0631B (1:)    NOT EQUAL XPC-FLD0631B
              DISPLAY 'FLD0631B ==> ' FLD0631B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0631B.
           IF FLD0632B (1:)    NOT EQUAL XPC-FLD0632B
              DISPLAY 'FLD0632B ==> ' FLD0632B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0632B.
           IF FLD0633B (1:)    NOT EQUAL XPC-FLD0633B
              DISPLAY 'FLD0633B ==> ' FLD0633B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0633B.
           IF FLD0634B (1:)    NOT EQUAL XPC-FLD0634B
              DISPLAY 'FLD0634B ==> ' FLD0634B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0634B.
           IF FLD0635B (1:)    NOT EQUAL XPC-FLD0635B
              DISPLAY 'FLD0635B ==> ' FLD0635B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0635B.
           IF FLD0636B (1:)    NOT EQUAL XPC-FLD0636B
              DISPLAY 'FLD0636B ==> ' FLD0636B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0636B.
           IF FLD0637B (1:)    NOT EQUAL XPC-FLD0637B
              DISPLAY 'FLD0637B ==> ' FLD0637B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0637B.
           IF FLD0638B (1:)    NOT EQUAL XPC-FLD0638B
              DISPLAY 'FLD0638B ==> ' FLD0638B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0638B.
           IF FLD0639B (1:)    NOT EQUAL XPC-FLD0639B
              DISPLAY 'FLD0639B ==> ' FLD0639B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0639B.
           IF FLD0640B (1:)    NOT EQUAL XPC-FLD0640B
              DISPLAY 'FLD0640B ==> ' FLD0640B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0640B.
           IF FLD0641B (1:)    NOT EQUAL XPC-FLD0641B
              DISPLAY 'FLD0641B ==> ' FLD0641B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0641B.
           IF FLD0642B (1:)    NOT EQUAL XPC-FLD0642B
              DISPLAY 'FLD0642B ==> ' FLD0642B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0642B.
           IF FLD0643B (1:)    NOT EQUAL XPC-FLD0643B
              DISPLAY 'FLD0643B ==> ' FLD0643B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0643B.
           IF FLD0644B (1:)    NOT EQUAL XPC-FLD0644B
              DISPLAY 'FLD0644B ==> ' FLD0644B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0644B.
           IF FLD0645B (1:)    NOT EQUAL XPC-FLD0645B
              DISPLAY 'FLD0645B ==> ' FLD0645B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0645B.
           IF FLD0646B (1:)    NOT EQUAL XPC-FLD0646B
              DISPLAY 'FLD0646B ==> ' FLD0646B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0646B.
           IF FLD0647B (1:)    NOT EQUAL XPC-FLD0647B
              DISPLAY 'FLD0647B ==> ' FLD0647B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0647B.
           IF FLD0648B (1:)    NOT EQUAL XPC-FLD0648B
              DISPLAY 'FLD0648B ==> ' FLD0648B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0648B.
           IF FLD0649B (1:)    NOT EQUAL XPC-FLD0649B
              DISPLAY 'FLD0649B ==> ' FLD0649B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0649B.
           IF FLD0650B (1:)    NOT EQUAL XPC-FLD0650B
              DISPLAY 'FLD0650B ==> ' FLD0650B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0650B.
           IF FLD0651B (1:)    NOT EQUAL XPC-FLD0651B
              DISPLAY 'FLD0651B ==> ' FLD0651B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0651B.
           IF FLD0652B (1:)    NOT EQUAL XPC-FLD0652B
              DISPLAY 'FLD0652B ==> ' FLD0652B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0652B.
           IF FLD0653B (1:)    NOT EQUAL XPC-FLD0653B
              DISPLAY 'FLD0653B ==> ' FLD0653B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0653B.
           IF FLD0654B (1:)    NOT EQUAL XPC-FLD0654B
              DISPLAY 'FLD0654B ==> ' FLD0654B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0654B.
           IF FLD0655B (1:)    NOT EQUAL XPC-FLD0655B
              DISPLAY 'FLD0655B ==> ' FLD0655B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0655B.
           IF FLD0656B (1:)    NOT EQUAL XPC-FLD0656B
              DISPLAY 'FLD0656B ==> ' FLD0656B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0656B.
           IF FLD0657B (1:)    NOT EQUAL XPC-FLD0657B
              DISPLAY 'FLD0657B ==> ' FLD0657B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0657B.
           IF FLD0658B (1:)    NOT EQUAL XPC-FLD0658B
              DISPLAY 'FLD0658B ==> ' FLD0658B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0658B.
           IF FLD0659B (1:)    NOT EQUAL XPC-FLD0659B
              DISPLAY 'FLD0659B ==> ' FLD0659B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0659B.
           IF FLD0660B (1:)    NOT EQUAL XPC-FLD0660B
              DISPLAY 'FLD0660B ==> ' FLD0660B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0660B.
           IF FLD0661B (1:)    NOT EQUAL XPC-FLD0661B
              DISPLAY 'FLD0661B ==> ' FLD0661B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0661B.
           IF FLD0662B (1:)    NOT EQUAL XPC-FLD0662B
              DISPLAY 'FLD0662B ==> ' FLD0662B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0662B.
           IF FLD0663B (1:)    NOT EQUAL XPC-FLD0663B
              DISPLAY 'FLD0663B ==> ' FLD0663B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0663B.
           IF FLD0664B (1:)    NOT EQUAL XPC-FLD0664B
              DISPLAY 'FLD0664B ==> ' FLD0664B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0664B.
           IF FLD0665B (1:)    NOT EQUAL XPC-FLD0665B
              DISPLAY 'FLD0665B ==> ' FLD0665B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0665B.
           IF FLD0666B (1:)    NOT EQUAL XPC-FLD0666B
              DISPLAY 'FLD0666B ==> ' FLD0666B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0666B.
           IF FLD0667B (1:)    NOT EQUAL XPC-FLD0667B
              DISPLAY 'FLD0667B ==> ' FLD0667B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0667B.
           IF FLD0668B (1:)    NOT EQUAL XPC-FLD0668B
              DISPLAY 'FLD0668B ==> ' FLD0668B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0668B.
           IF FLD0669B (1:)    NOT EQUAL XPC-FLD0669B
              DISPLAY 'FLD0669B ==> ' FLD0669B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0669B.
           IF FLD0670B (1:)    NOT EQUAL XPC-FLD0670B
              DISPLAY 'FLD0670B ==> ' FLD0670B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0670B.
           IF FLD0671B (1:)    NOT EQUAL XPC-FLD0671B
              DISPLAY 'FLD0671B ==> ' FLD0671B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0671B.
           IF FLD0672B (1:)    NOT EQUAL XPC-FLD0672B
              DISPLAY 'FLD0672B ==> ' FLD0672B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0672B.
           IF FLD0673B (1:)    NOT EQUAL XPC-FLD0673B
              DISPLAY 'FLD0673B ==> ' FLD0673B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0673B.
           IF FLD0674B (1:)    NOT EQUAL XPC-FLD0674B
              DISPLAY 'FLD0674B ==> ' FLD0674B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0674B.
           IF FLD0675B (1:)    NOT EQUAL XPC-FLD0675B
              DISPLAY 'FLD0675B ==> ' FLD0675B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0675B.
           IF FLD0676B (1:)    NOT EQUAL XPC-FLD0676B
              DISPLAY 'FLD0676B ==> ' FLD0676B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0676B.
           IF FLD0677B (1:)    NOT EQUAL XPC-FLD0677B
              DISPLAY 'FLD0677B ==> ' FLD0677B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0677B.
           IF FLD0678B (1:)    NOT EQUAL XPC-FLD0678B
              DISPLAY 'FLD0678B ==> ' FLD0678B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0678B.
           IF FLD0679B (1:)    NOT EQUAL XPC-FLD0679B
              DISPLAY 'FLD0679B ==> ' FLD0679B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0679B.
           IF FLD0680B (1:)    NOT EQUAL XPC-FLD0680B
              DISPLAY 'FLD0680B ==> ' FLD0680B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0680B.
           IF FLD0681B (1:)    NOT EQUAL XPC-FLD0681B
              DISPLAY 'FLD0681B ==> ' FLD0681B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0681B.
           IF FLD0682B (1:)    NOT EQUAL XPC-FLD0682B
              DISPLAY 'FLD0682B ==> ' FLD0682B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0682B.
           IF FLD0683B (1:)    NOT EQUAL XPC-FLD0683B
              DISPLAY 'FLD0683B ==> ' FLD0683B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0683B.
           IF FLD0684B (1:)    NOT EQUAL XPC-FLD0684B
              DISPLAY 'FLD0684B ==> ' FLD0684B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0684B.
           IF FLD0685B (1:)    NOT EQUAL XPC-FLD0685B
              DISPLAY 'FLD0685B ==> ' FLD0685B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0685B.
           IF FLD0686B (1:)    NOT EQUAL XPC-FLD0686B
              DISPLAY 'FLD0686B ==> ' FLD0686B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0686B.
           IF FLD0687B (1:)    NOT EQUAL XPC-FLD0687B
              DISPLAY 'FLD0687B ==> ' FLD0687B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0687B.
           IF FLD0688B (1:)    NOT EQUAL XPC-FLD0688B
              DISPLAY 'FLD0688B ==> ' FLD0688B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0688B.
           IF FLD0689B (1:)    NOT EQUAL XPC-FLD0689B
              DISPLAY 'FLD0689B ==> ' FLD0689B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0689B.
           IF FLD0690B (1:)    NOT EQUAL XPC-FLD0690B
              DISPLAY 'FLD0690B ==> ' FLD0690B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0690B.
           IF FLD0691B (1:)    NOT EQUAL XPC-FLD0691B
              DISPLAY 'FLD0691B ==> ' FLD0691B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0691B.
           IF FLD0692B (1:)    NOT EQUAL XPC-FLD0692B
              DISPLAY 'FLD0692B ==> ' FLD0692B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0692B.
           IF FLD0693B (1:)    NOT EQUAL XPC-FLD0693B
              DISPLAY 'FLD0693B ==> ' FLD0693B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0693B.
           IF FLD0694B (1:)    NOT EQUAL XPC-FLD0694B
              DISPLAY 'FLD0694B ==> ' FLD0694B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0694B.
           IF FLD0695B (1:)    NOT EQUAL XPC-FLD0695B
              DISPLAY 'FLD0695B ==> ' FLD0695B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0695B.
           IF FLD0696B (1:)    NOT EQUAL XPC-FLD0696B
              DISPLAY 'FLD0696B ==> ' FLD0696B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0696B.
           IF FLD0697B (1:)    NOT EQUAL XPC-FLD0697B
              DISPLAY 'FLD0697B ==> ' FLD0697B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0697B.
           IF FLD0698B (1:)    NOT EQUAL XPC-FLD0698B
              DISPLAY 'FLD0698B ==> ' FLD0698B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0698B.
           IF FLD0699B (1:)    NOT EQUAL XPC-FLD0699B
              DISPLAY 'FLD0699B ==> ' FLD0699B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0699B.
           IF FLD0700B (1:)    NOT EQUAL XPC-FLD0700B
              DISPLAY 'FLD0700B ==> ' FLD0700B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0700B.
           IF FLD0701B (1:)    NOT EQUAL XPC-FLD0701B
              DISPLAY 'FLD0701B ==> ' FLD0701B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0701B.
           IF FLD0702B (1:)    NOT EQUAL XPC-FLD0702B
              DISPLAY 'FLD0702B ==> ' FLD0702B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0702B.
           IF FLD0703B (1:)    NOT EQUAL XPC-FLD0703B
              DISPLAY 'FLD0703B ==> ' FLD0703B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0703B.
           IF FLD0704B (1:)    NOT EQUAL XPC-FLD0704B
              DISPLAY 'FLD0704B ==> ' FLD0704B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0704B.
           IF FLD0705B (1:)    NOT EQUAL XPC-FLD0705B
              DISPLAY 'FLD0705B ==> ' FLD0705B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0705B.
           IF FLD0706B (1:)    NOT EQUAL XPC-FLD0706B
              DISPLAY 'FLD0706B ==> ' FLD0706B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0706B.
           IF FLD0707B (1:)    NOT EQUAL XPC-FLD0707B
              DISPLAY 'FLD0707B ==> ' FLD0707B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0707B.
           IF FLD0708B (1:)    NOT EQUAL XPC-FLD0708B
              DISPLAY 'FLD0708B ==> ' FLD0708B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0708B.
           IF FLD0709B (1:)    NOT EQUAL XPC-FLD0709B
              DISPLAY 'FLD0709B ==> ' FLD0709B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0709B.
           IF FLD0710B (1:)    NOT EQUAL XPC-FLD0710B
              DISPLAY 'FLD0710B ==> ' FLD0710B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0710B.
           IF FLD0711B (1:)    NOT EQUAL XPC-FLD0711B
              DISPLAY 'FLD0711B ==> ' FLD0711B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0711B.
           IF FLD0712B (1:)    NOT EQUAL XPC-FLD0712B
              DISPLAY 'FLD0712B ==> ' FLD0712B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0712B.
           IF FLD0713B (1:)    NOT EQUAL XPC-FLD0713B
              DISPLAY 'FLD0713B ==> ' FLD0713B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0713B.
           IF FLD0714B (1:)    NOT EQUAL XPC-FLD0714B
              DISPLAY 'FLD0714B ==> ' FLD0714B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0714B.
           IF FLD0715B (1:)    NOT EQUAL XPC-FLD0715B
              DISPLAY 'FLD0715B ==> ' FLD0715B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0715B.
           IF FLD0716B (1:)    NOT EQUAL XPC-FLD0716B
              DISPLAY 'FLD0716B ==> ' FLD0716B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0716B.
           IF FLD0717B (1:)    NOT EQUAL XPC-FLD0717B
              DISPLAY 'FLD0717B ==> ' FLD0717B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0717B.
           IF FLD0718B (1:)    NOT EQUAL XPC-FLD0718B
              DISPLAY 'FLD0718B ==> ' FLD0718B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0718B.
           IF FLD0719B (1:)    NOT EQUAL XPC-FLD0719B
              DISPLAY 'FLD0719B ==> ' FLD0719B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0719B.
           IF FLD0720B (1:)    NOT EQUAL XPC-FLD0720B
              DISPLAY 'FLD0720B ==> ' FLD0720B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0720B.
           IF FLD0721B (1:)    NOT EQUAL XPC-FLD0721B
              DISPLAY 'FLD0721B ==> ' FLD0721B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0721B.
           IF FLD0722B (1:)    NOT EQUAL XPC-FLD0722B
              DISPLAY 'FLD0722B ==> ' FLD0722B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0722B.
           IF FLD0723B (1:)    NOT EQUAL XPC-FLD0723B
              DISPLAY 'FLD0723B ==> ' FLD0723B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0723B.
           IF FLD0724B (1:)    NOT EQUAL XPC-FLD0724B
              DISPLAY 'FLD0724B ==> ' FLD0724B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0724B.
           IF FLD0725B (1:)    NOT EQUAL XPC-FLD0725B
              DISPLAY 'FLD0725B ==> ' FLD0725B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0725B.
           IF FLD0726B (1:)    NOT EQUAL XPC-FLD0726B
              DISPLAY 'FLD0726B ==> ' FLD0726B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0726B.
           IF FLD0727B (1:)    NOT EQUAL XPC-FLD0727B
              DISPLAY 'FLD0727B ==> ' FLD0727B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0727B.
           IF FLD0728B (1:)    NOT EQUAL XPC-FLD0728B
              DISPLAY 'FLD0728B ==> ' FLD0728B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0728B.
           IF FLD0729B (1:)    NOT EQUAL XPC-FLD0729B
              DISPLAY 'FLD0729B ==> ' FLD0729B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0729B.
           IF FLD0730B (1:)    NOT EQUAL XPC-FLD0730B
              DISPLAY 'FLD0730B ==> ' FLD0730B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0730B.
           IF FLD0731B (1:)    NOT EQUAL XPC-FLD0731B
              DISPLAY 'FLD0731B ==> ' FLD0731B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0731B.
           IF FLD0732B (1:)    NOT EQUAL XPC-FLD0732B
              DISPLAY 'FLD0732B ==> ' FLD0732B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0732B.
           IF FLD0733B (1:)    NOT EQUAL XPC-FLD0733B
              DISPLAY 'FLD0733B ==> ' FLD0733B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0733B.
           IF FLD0734B (1:)    NOT EQUAL XPC-FLD0734B
              DISPLAY 'FLD0734B ==> ' FLD0734B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0734B.
           IF FLD0735B (1:)    NOT EQUAL XPC-FLD0735B
              DISPLAY 'FLD0735B ==> ' FLD0735B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0735B.
           IF FLD0736B (1:)    NOT EQUAL XPC-FLD0736B
              DISPLAY 'FLD0736B ==> ' FLD0736B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0736B.
           IF FLD0737B (1:)    NOT EQUAL XPC-FLD0737B
              DISPLAY 'FLD0737B ==> ' FLD0737B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0737B.
           IF FLD0738B (1:)    NOT EQUAL XPC-FLD0738B
              DISPLAY 'FLD0738B ==> ' FLD0738B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0738B.
           IF FLD0739B (1:)    NOT EQUAL XPC-FLD0739B
              DISPLAY 'FLD0739B ==> ' FLD0739B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0739B.
           IF FLD0740B (1:)    NOT EQUAL XPC-FLD0740B
              DISPLAY 'FLD0740B ==> ' FLD0740B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0740B.
           IF FLD0741B (1:)    NOT EQUAL XPC-FLD0741B
              DISPLAY 'FLD0741B ==> ' FLD0741B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0741B.
           IF FLD0742B (1:)    NOT EQUAL XPC-FLD0742B
              DISPLAY 'FLD0742B ==> ' FLD0742B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0742B.
           IF FLD0743B (1:)    NOT EQUAL XPC-FLD0743B
              DISPLAY 'FLD0743B ==> ' FLD0743B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0743B.
           IF FLD0744B (1:)    NOT EQUAL XPC-FLD0744B
              DISPLAY 'FLD0744B ==> ' FLD0744B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0744B.
           IF FLD0745B (1:)    NOT EQUAL XPC-FLD0745B
              DISPLAY 'FLD0745B ==> ' FLD0745B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0745B.
           IF FLD0746B (1:)    NOT EQUAL XPC-FLD0746B
              DISPLAY 'FLD0746B ==> ' FLD0746B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0746B.
           IF FLD0747B (1:)    NOT EQUAL XPC-FLD0747B
              DISPLAY 'FLD0747B ==> ' FLD0747B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0747B.
           IF FLD0748B (1:)    NOT EQUAL XPC-FLD0748B
              DISPLAY 'FLD0748B ==> ' FLD0748B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0748B.
           IF FLD0749B (1:)    NOT EQUAL XPC-FLD0749B
              DISPLAY 'FLD0749B ==> ' FLD0749B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0749B.
           IF FLD0750B (1:)    NOT EQUAL XPC-FLD0750B
              DISPLAY 'FLD0750B ==> ' FLD0750B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0750B.
           IF FLD0751B (1:)    NOT EQUAL XPC-FLD0751B
              DISPLAY 'FLD0751B ==> ' FLD0751B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0751B.
           IF FLD0752B (1:)    NOT EQUAL XPC-FLD0752B
              DISPLAY 'FLD0752B ==> ' FLD0752B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0752B.
           IF FLD0753B (1:)    NOT EQUAL XPC-FLD0753B
              DISPLAY 'FLD0753B ==> ' FLD0753B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0753B.
           IF FLD0754B (1:)    NOT EQUAL XPC-FLD0754B
              DISPLAY 'FLD0754B ==> ' FLD0754B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0754B.
           IF FLD0755B (1:)    NOT EQUAL XPC-FLD0755B
              DISPLAY 'FLD0755B ==> ' FLD0755B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0755B.
           IF FLD0756B (1:)    NOT EQUAL XPC-FLD0756B
              DISPLAY 'FLD0756B ==> ' FLD0756B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0756B.
           IF FLD0757B (1:)    NOT EQUAL XPC-FLD0757B
              DISPLAY 'FLD0757B ==> ' FLD0757B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0757B.
           IF FLD0758B (1:)    NOT EQUAL XPC-FLD0758B
              DISPLAY 'FLD0758B ==> ' FLD0758B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0758B.
           IF FLD0759B (1:)    NOT EQUAL XPC-FLD0759B
              DISPLAY 'FLD0759B ==> ' FLD0759B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0759B.
           IF FLD0760B (1:)    NOT EQUAL XPC-FLD0760B
              DISPLAY 'FLD0760B ==> ' FLD0760B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0760B.
           IF FLD0761B (1:)    NOT EQUAL XPC-FLD0761B
              DISPLAY 'FLD0761B ==> ' FLD0761B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0761B.
           IF FLD0762B (1:)    NOT EQUAL XPC-FLD0762B
              DISPLAY 'FLD0762B ==> ' FLD0762B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0762B.
           IF FLD0763B (1:)    NOT EQUAL XPC-FLD0763B
              DISPLAY 'FLD0763B ==> ' FLD0763B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0763B.
           IF FLD0764B (1:)    NOT EQUAL XPC-FLD0764B
              DISPLAY 'FLD0764B ==> ' FLD0764B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0764B.
           IF FLD0765B (1:)    NOT EQUAL XPC-FLD0765B
              DISPLAY 'FLD0765B ==> ' FLD0765B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0765B.
           IF FLD0766B (1:)    NOT EQUAL XPC-FLD0766B
              DISPLAY 'FLD0766B ==> ' FLD0766B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0766B.
           IF FLD0767B (1:)    NOT EQUAL XPC-FLD0767B
              DISPLAY 'FLD0767B ==> ' FLD0767B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0767B.
           IF FLD0768B (1:)    NOT EQUAL XPC-FLD0768B
              DISPLAY 'FLD0768B ==> ' FLD0768B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0768B.
           IF FLD0769B (1:)    NOT EQUAL XPC-FLD0769B
              DISPLAY 'FLD0769B ==> ' FLD0769B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0769B.
           IF FLD0770B (1:)    NOT EQUAL XPC-FLD0770B
              DISPLAY 'FLD0770B ==> ' FLD0770B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0770B.
           IF FLD0771B (1:)    NOT EQUAL XPC-FLD0771B
              DISPLAY 'FLD0771B ==> ' FLD0771B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0771B.
           IF FLD0772B (1:)    NOT EQUAL XPC-FLD0772B
              DISPLAY 'FLD0772B ==> ' FLD0772B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0772B.
           IF FLD0773B (1:)    NOT EQUAL XPC-FLD0773B
              DISPLAY 'FLD0773B ==> ' FLD0773B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0773B.
           IF FLD0774B (1:)    NOT EQUAL XPC-FLD0774B
              DISPLAY 'FLD0774B ==> ' FLD0774B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0774B.
           IF FLD0775B (1:)    NOT EQUAL XPC-FLD0775B
              DISPLAY 'FLD0775B ==> ' FLD0775B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0775B.
           IF FLD0776B (1:)    NOT EQUAL XPC-FLD0776B
              DISPLAY 'FLD0776B ==> ' FLD0776B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0776B.
           IF FLD0777B (1:)    NOT EQUAL XPC-FLD0777B
              DISPLAY 'FLD0777B ==> ' FLD0777B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0777B.
           IF FLD0778B (1:)    NOT EQUAL XPC-FLD0778B
              DISPLAY 'FLD0778B ==> ' FLD0778B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0778B.
           IF FLD0779B (1:)    NOT EQUAL XPC-FLD0779B
              DISPLAY 'FLD0779B ==> ' FLD0779B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0779B.
           IF FLD0780B (1:)    NOT EQUAL XPC-FLD0780B
              DISPLAY 'FLD0780B ==> ' FLD0780B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0780B.
           IF FLD0781B (1:)    NOT EQUAL XPC-FLD0781B
              DISPLAY 'FLD0781B ==> ' FLD0781B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0781B.
           IF FLD0782B (1:)    NOT EQUAL XPC-FLD0782B
              DISPLAY 'FLD0782B ==> ' FLD0782B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0782B.
           IF FLD0783B (1:)    NOT EQUAL XPC-FLD0783B
              DISPLAY 'FLD0783B ==> ' FLD0783B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0783B.
           IF FLD0784B (1:)    NOT EQUAL XPC-FLD0784B
              DISPLAY 'FLD0784B ==> ' FLD0784B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0784B.
           IF FLD0785B (1:)    NOT EQUAL XPC-FLD0785B
              DISPLAY 'FLD0785B ==> ' FLD0785B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0785B.
           IF FLD0786B (1:)    NOT EQUAL XPC-FLD0786B
              DISPLAY 'FLD0786B ==> ' FLD0786B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0786B.
           IF FLD0787B (1:)    NOT EQUAL XPC-FLD0787B
              DISPLAY 'FLD0787B ==> ' FLD0787B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0787B.
           IF FLD0788B (1:)    NOT EQUAL XPC-FLD0788B
              DISPLAY 'FLD0788B ==> ' FLD0788B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0788B.
           IF FLD0789B (1:)    NOT EQUAL XPC-FLD0789B
              DISPLAY 'FLD0789B ==> ' FLD0789B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0789B.
           IF FLD0790B (1:)    NOT EQUAL XPC-FLD0790B
              DISPLAY 'FLD0790B ==> ' FLD0790B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0790B.
           IF FLD0791B (1:)    NOT EQUAL XPC-FLD0791B
              DISPLAY 'FLD0791B ==> ' FLD0791B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0791B.
           IF FLD0792B (1:)    NOT EQUAL XPC-FLD0792B
              DISPLAY 'FLD0792B ==> ' FLD0792B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0792B.
           IF FLD0793B (1:)    NOT EQUAL XPC-FLD0793B
              DISPLAY 'FLD0793B ==> ' FLD0793B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0793B.
           IF FLD0794B (1:)    NOT EQUAL XPC-FLD0794B
              DISPLAY 'FLD0794B ==> ' FLD0794B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0794B.
           IF FLD0795B (1:)    NOT EQUAL XPC-FLD0795B
              DISPLAY 'FLD0795B ==> ' FLD0795B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0795B.
           IF FLD0796B (1:)    NOT EQUAL XPC-FLD0796B
              DISPLAY 'FLD0796B ==> ' FLD0796B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0796B.
           IF FLD0797B (1:)    NOT EQUAL XPC-FLD0797B
              DISPLAY 'FLD0797B ==> ' FLD0797B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0797B.
           IF FLD0798B (1:)    NOT EQUAL XPC-FLD0798B
              DISPLAY 'FLD0798B ==> ' FLD0798B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0798B.
           IF FLD0799B (1:)    NOT EQUAL XPC-FLD0799B
              DISPLAY 'FLD0799B ==> ' FLD0799B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0799B.
           IF FLD0800B (1:)    NOT EQUAL XPC-FLD0800B
              DISPLAY 'FLD0800B ==> ' FLD0800B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0800B.
           IF FLD0801B (1:)    NOT EQUAL XPC-FLD0801B
              DISPLAY 'FLD0801B ==> ' FLD0801B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0801B.
           IF FLD0802B (1:)    NOT EQUAL XPC-FLD0802B
              DISPLAY 'FLD0802B ==> ' FLD0802B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0802B.
           IF FLD0803B (1:)    NOT EQUAL XPC-FLD0803B
              DISPLAY 'FLD0803B ==> ' FLD0803B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0803B.
           IF FLD0804B (1:)    NOT EQUAL XPC-FLD0804B
              DISPLAY 'FLD0804B ==> ' FLD0804B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0804B.
           IF FLD0805B (1:)    NOT EQUAL XPC-FLD0805B
              DISPLAY 'FLD0805B ==> ' FLD0805B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0805B.
           IF FLD0806B (1:)    NOT EQUAL XPC-FLD0806B
              DISPLAY 'FLD0806B ==> ' FLD0806B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0806B.
           IF FLD0807B (1:)    NOT EQUAL XPC-FLD0807B
              DISPLAY 'FLD0807B ==> ' FLD0807B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0807B.
           IF FLD0808B (1:)    NOT EQUAL XPC-FLD0808B
              DISPLAY 'FLD0808B ==> ' FLD0808B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0808B.
           IF FLD0809B (1:)    NOT EQUAL XPC-FLD0809B
              DISPLAY 'FLD0809B ==> ' FLD0809B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0809B.
           IF FLD0810B (1:)    NOT EQUAL XPC-FLD0810B
              DISPLAY 'FLD0810B ==> ' FLD0810B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0810B.
           IF FLD0811B (1:)    NOT EQUAL XPC-FLD0811B
              DISPLAY 'FLD0811B ==> ' FLD0811B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0811B.
           IF FLD0812B (1:)    NOT EQUAL XPC-FLD0812B
              DISPLAY 'FLD0812B ==> ' FLD0812B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0812B.
           IF FLD0813B (1:)    NOT EQUAL XPC-FLD0813B
              DISPLAY 'FLD0813B ==> ' FLD0813B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0813B.
           IF FLD0814B (1:)    NOT EQUAL XPC-FLD0814B
              DISPLAY 'FLD0814B ==> ' FLD0814B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0814B.
           IF FLD0815B (1:)    NOT EQUAL XPC-FLD0815B
              DISPLAY 'FLD0815B ==> ' FLD0815B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0815B.
           IF FLD0816B (1:)    NOT EQUAL XPC-FLD0816B
              DISPLAY 'FLD0816B ==> ' FLD0816B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0816B.
           IF FLD0817B (1:)    NOT EQUAL XPC-FLD0817B
              DISPLAY 'FLD0817B ==> ' FLD0817B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0817B.
           IF FLD0818B (1:)    NOT EQUAL XPC-FLD0818B
              DISPLAY 'FLD0818B ==> ' FLD0818B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0818B.
           IF FLD0819B (1:)    NOT EQUAL XPC-FLD0819B
              DISPLAY 'FLD0819B ==> ' FLD0819B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0819B.
           IF FLD0820B (1:)    NOT EQUAL XPC-FLD0820B
              DISPLAY 'FLD0820B ==> ' FLD0820B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0820B.
           IF FLD0821B (1:)    NOT EQUAL XPC-FLD0821B
              DISPLAY 'FLD0821B ==> ' FLD0821B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0821B.
           IF FLD0822B (1:)    NOT EQUAL XPC-FLD0822B
              DISPLAY 'FLD0822B ==> ' FLD0822B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0822B.
           IF FLD0823B (1:)    NOT EQUAL XPC-FLD0823B
              DISPLAY 'FLD0823B ==> ' FLD0823B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0823B.
           IF FLD0824B (1:)    NOT EQUAL XPC-FLD0824B
              DISPLAY 'FLD0824B ==> ' FLD0824B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0824B.
           IF FLD0825B (1:)    NOT EQUAL XPC-FLD0825B
              DISPLAY 'FLD0825B ==> ' FLD0825B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0825B.
           IF FLD0826B (1:)    NOT EQUAL XPC-FLD0826B
              DISPLAY 'FLD0826B ==> ' FLD0826B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0826B.
           IF FLD0827B (1:)    NOT EQUAL XPC-FLD0827B
              DISPLAY 'FLD0827B ==> ' FLD0827B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0827B.
           IF FLD0828B (1:)    NOT EQUAL XPC-FLD0828B
              DISPLAY 'FLD0828B ==> ' FLD0828B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0828B.
           IF FLD0829B (1:)    NOT EQUAL XPC-FLD0829B
              DISPLAY 'FLD0829B ==> ' FLD0829B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0829B.
           IF FLD0830B (1:)    NOT EQUAL XPC-FLD0830B
              DISPLAY 'FLD0830B ==> ' FLD0830B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0830B.
           IF FLD0831B (1:)    NOT EQUAL XPC-FLD0831B
              DISPLAY 'FLD0831B ==> ' FLD0831B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0831B.
           IF FLD0832B (1:)    NOT EQUAL XPC-FLD0832B
              DISPLAY 'FLD0832B ==> ' FLD0832B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0832B.
           IF FLD0833B (1:)    NOT EQUAL XPC-FLD0833B
              DISPLAY 'FLD0833B ==> ' FLD0833B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0833B.
           IF FLD0834B (1:)    NOT EQUAL XPC-FLD0834B
              DISPLAY 'FLD0834B ==> ' FLD0834B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0834B.
           IF FLD0835B (1:)    NOT EQUAL XPC-FLD0835B
              DISPLAY 'FLD0835B ==> ' FLD0835B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0835B.
           IF FLD0836B (1:)    NOT EQUAL XPC-FLD0836B
              DISPLAY 'FLD0836B ==> ' FLD0836B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0836B.
           IF FLD0837B (1:)    NOT EQUAL XPC-FLD0837B
              DISPLAY 'FLD0837B ==> ' FLD0837B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0837B.
           IF FLD0838B (1:)    NOT EQUAL XPC-FLD0838B
              DISPLAY 'FLD0838B ==> ' FLD0838B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0838B.
           IF FLD0839B (1:)    NOT EQUAL XPC-FLD0839B
              DISPLAY 'FLD0839B ==> ' FLD0839B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0839B.
           IF FLD0840B (1:)    NOT EQUAL XPC-FLD0840B
              DISPLAY 'FLD0840B ==> ' FLD0840B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0840B.
           IF FLD0841B (1:)    NOT EQUAL XPC-FLD0841B
              DISPLAY 'FLD0841B ==> ' FLD0841B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0841B.
           IF FLD0842B (1:)    NOT EQUAL XPC-FLD0842B
              DISPLAY 'FLD0842B ==> ' FLD0842B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0842B.
           IF FLD0843B (1:)    NOT EQUAL XPC-FLD0843B
              DISPLAY 'FLD0843B ==> ' FLD0843B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0843B.
           IF FLD0844B (1:)    NOT EQUAL XPC-FLD0844B
              DISPLAY 'FLD0844B ==> ' FLD0844B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0844B.
           IF FLD0845B (1:)    NOT EQUAL XPC-FLD0845B
              DISPLAY 'FLD0845B ==> ' FLD0845B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0845B.
           IF FLD0846B (1:)    NOT EQUAL XPC-FLD0846B
              DISPLAY 'FLD0846B ==> ' FLD0846B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0846B.
           IF FLD0847B (1:)    NOT EQUAL XPC-FLD0847B
              DISPLAY 'FLD0847B ==> ' FLD0847B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0847B.
           IF FLD0848B (1:)    NOT EQUAL XPC-FLD0848B
              DISPLAY 'FLD0848B ==> ' FLD0848B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0848B.
           IF FLD0849B (1:)    NOT EQUAL XPC-FLD0849B
              DISPLAY 'FLD0849B ==> ' FLD0849B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0849B.
           IF FLD0850B (1:)    NOT EQUAL XPC-FLD0850B
              DISPLAY 'FLD0850B ==> ' FLD0850B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0850B.
           IF FLD0851B (1:)    NOT EQUAL XPC-FLD0851B
              DISPLAY 'FLD0851B ==> ' FLD0851B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0851B.
           IF FLD0852B (1:)    NOT EQUAL XPC-FLD0852B
              DISPLAY 'FLD0852B ==> ' FLD0852B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0852B.
           IF FLD0853B (1:)    NOT EQUAL XPC-FLD0853B
              DISPLAY 'FLD0853B ==> ' FLD0853B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0853B.
           IF FLD0854B (1:)    NOT EQUAL XPC-FLD0854B
              DISPLAY 'FLD0854B ==> ' FLD0854B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0854B.
           IF FLD0855B (1:)    NOT EQUAL XPC-FLD0855B
              DISPLAY 'FLD0855B ==> ' FLD0855B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0855B.
           IF FLD0856B (1:)    NOT EQUAL XPC-FLD0856B
              DISPLAY 'FLD0856B ==> ' FLD0856B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0856B.
           IF FLD0857B (1:)    NOT EQUAL XPC-FLD0857B
              DISPLAY 'FLD0857B ==> ' FLD0857B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0857B.
           IF FLD0858B (1:)    NOT EQUAL XPC-FLD0858B
              DISPLAY 'FLD0858B ==> ' FLD0858B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0858B.
           IF FLD0859B (1:)    NOT EQUAL XPC-FLD0859B
              DISPLAY 'FLD0859B ==> ' FLD0859B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0859B.
           IF FLD0860B (1:)    NOT EQUAL XPC-FLD0860B
              DISPLAY 'FLD0860B ==> ' FLD0860B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0860B.
           IF FLD0861B (1:)    NOT EQUAL XPC-FLD0861B
              DISPLAY 'FLD0861B ==> ' FLD0861B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0861B.
           IF FLD0862B (1:)    NOT EQUAL XPC-FLD0862B
              DISPLAY 'FLD0862B ==> ' FLD0862B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0862B.
           IF FLD0863B (1:)    NOT EQUAL XPC-FLD0863B
              DISPLAY 'FLD0863B ==> ' FLD0863B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0863B.
           IF FLD0864B (1:)    NOT EQUAL XPC-FLD0864B
              DISPLAY 'FLD0864B ==> ' FLD0864B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0864B.
           IF FLD0865B (1:)    NOT EQUAL XPC-FLD0865B
              DISPLAY 'FLD0865B ==> ' FLD0865B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0865B.
           IF FLD0866B (1:)    NOT EQUAL XPC-FLD0866B
              DISPLAY 'FLD0866B ==> ' FLD0866B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0866B.
           IF FLD0867B (1:)    NOT EQUAL XPC-FLD0867B
              DISPLAY 'FLD0867B ==> ' FLD0867B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0867B.
           IF FLD0868B (1:)    NOT EQUAL XPC-FLD0868B
              DISPLAY 'FLD0868B ==> ' FLD0868B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0868B.
           IF FLD0869B (1:)    NOT EQUAL XPC-FLD0869B
              DISPLAY 'FLD0869B ==> ' FLD0869B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0869B.
           IF FLD0870B (1:)    NOT EQUAL XPC-FLD0870B
              DISPLAY 'FLD0870B ==> ' FLD0870B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0870B.
           IF FLD0871B (1:)    NOT EQUAL XPC-FLD0871B
              DISPLAY 'FLD0871B ==> ' FLD0871B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0871B.
           IF FLD0872B (1:)    NOT EQUAL XPC-FLD0872B
              DISPLAY 'FLD0872B ==> ' FLD0872B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0872B.
           IF FLD0873B (1:)    NOT EQUAL XPC-FLD0873B
              DISPLAY 'FLD0873B ==> ' FLD0873B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0873B.
           IF FLD0874B (1:)    NOT EQUAL XPC-FLD0874B
              DISPLAY 'FLD0874B ==> ' FLD0874B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0874B.
           IF FLD0875B (1:)    NOT EQUAL XPC-FLD0875B
              DISPLAY 'FLD0875B ==> ' FLD0875B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0875B.
           IF FLD0876B (1:)    NOT EQUAL XPC-FLD0876B
              DISPLAY 'FLD0876B ==> ' FLD0876B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0876B.
           IF FLD0877B (1:)    NOT EQUAL XPC-FLD0877B
              DISPLAY 'FLD0877B ==> ' FLD0877B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0877B.
           IF FLD0878B (1:)    NOT EQUAL XPC-FLD0878B
              DISPLAY 'FLD0878B ==> ' FLD0878B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0878B.
           IF FLD0879B (1:)    NOT EQUAL XPC-FLD0879B
              DISPLAY 'FLD0879B ==> ' FLD0879B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0879B.
           IF FLD0880B (1:)    NOT EQUAL XPC-FLD0880B
              DISPLAY 'FLD0880B ==> ' FLD0880B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0880B.
           IF FLD0881B (1:)    NOT EQUAL XPC-FLD0881B
              DISPLAY 'FLD0881B ==> ' FLD0881B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0881B.
           IF FLD0882B (1:)    NOT EQUAL XPC-FLD0882B
              DISPLAY 'FLD0882B ==> ' FLD0882B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0882B.
           IF FLD0883B (1:)    NOT EQUAL XPC-FLD0883B
              DISPLAY 'FLD0883B ==> ' FLD0883B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0883B.
           IF FLD0884B (1:)    NOT EQUAL XPC-FLD0884B
              DISPLAY 'FLD0884B ==> ' FLD0884B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0884B.
           IF FLD0885B (1:)    NOT EQUAL XPC-FLD0885B
              DISPLAY 'FLD0885B ==> ' FLD0885B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0885B.
           IF FLD0886B (1:)    NOT EQUAL XPC-FLD0886B
              DISPLAY 'FLD0886B ==> ' FLD0886B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0886B.
           IF FLD0887B (1:)    NOT EQUAL XPC-FLD0887B
              DISPLAY 'FLD0887B ==> ' FLD0887B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0887B.
           IF FLD0888B (1:)    NOT EQUAL XPC-FLD0888B
              DISPLAY 'FLD0888B ==> ' FLD0888B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0888B.
           IF FLD0889B (1:)    NOT EQUAL XPC-FLD0889B
              DISPLAY 'FLD0889B ==> ' FLD0889B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0889B.
           IF FLD0890B (1:)    NOT EQUAL XPC-FLD0890B
              DISPLAY 'FLD0890B ==> ' FLD0890B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0890B.
           IF FLD0891B (1:)    NOT EQUAL XPC-FLD0891B
              DISPLAY 'FLD0891B ==> ' FLD0891B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0891B.
           IF FLD0892B (1:)    NOT EQUAL XPC-FLD0892B
              DISPLAY 'FLD0892B ==> ' FLD0892B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0892B.
           IF FLD0893B (1:)    NOT EQUAL XPC-FLD0893B
              DISPLAY 'FLD0893B ==> ' FLD0893B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0893B.
           IF FLD0894B (1:)    NOT EQUAL XPC-FLD0894B
              DISPLAY 'FLD0894B ==> ' FLD0894B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0894B.
           IF FLD0895B (1:)    NOT EQUAL XPC-FLD0895B
              DISPLAY 'FLD0895B ==> ' FLD0895B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0895B.
           IF FLD0896B (1:)    NOT EQUAL XPC-FLD0896B
              DISPLAY 'FLD0896B ==> ' FLD0896B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0896B.
           IF FLD0897B (1:)    NOT EQUAL XPC-FLD0897B
              DISPLAY 'FLD0897B ==> ' FLD0897B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0897B.
           IF FLD0898B (1:)    NOT EQUAL XPC-FLD0898B
              DISPLAY 'FLD0898B ==> ' FLD0898B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0898B.
           IF FLD0899B (1:)    NOT EQUAL XPC-FLD0899B
              DISPLAY 'FLD0899B ==> ' FLD0899B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0899B.
           IF FLD0900B (1:)    NOT EQUAL XPC-FLD0900B
              DISPLAY 'FLD0900B ==> ' FLD0900B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0900B.
           IF FLD0901B (1:)    NOT EQUAL XPC-FLD0901B
              DISPLAY 'FLD0901B ==> ' FLD0901B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0901B.
           IF FLD0902B (1:)    NOT EQUAL XPC-FLD0902B
              DISPLAY 'FLD0902B ==> ' FLD0902B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0902B.
           IF FLD0903B (1:)    NOT EQUAL XPC-FLD0903B
              DISPLAY 'FLD0903B ==> ' FLD0903B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0903B.
           IF FLD0904B (1:)    NOT EQUAL XPC-FLD0904B
              DISPLAY 'FLD0904B ==> ' FLD0904B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0904B.
           IF FLD0905B (1:)    NOT EQUAL XPC-FLD0905B
              DISPLAY 'FLD0905B ==> ' FLD0905B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0905B.
           IF FLD0906B (1:)    NOT EQUAL XPC-FLD0906B
              DISPLAY 'FLD0906B ==> ' FLD0906B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0906B.
           IF FLD0907B (1:)    NOT EQUAL XPC-FLD0907B
              DISPLAY 'FLD0907B ==> ' FLD0907B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0907B.
           IF FLD0908B (1:)    NOT EQUAL XPC-FLD0908B
              DISPLAY 'FLD0908B ==> ' FLD0908B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0908B.
           IF FLD0909B (1:)    NOT EQUAL XPC-FLD0909B
              DISPLAY 'FLD0909B ==> ' FLD0909B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0909B.
           IF FLD0910B (1:)    NOT EQUAL XPC-FLD0910B
              DISPLAY 'FLD0910B ==> ' FLD0910B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0910B.
           IF FLD0911B (1:)    NOT EQUAL XPC-FLD0911B
              DISPLAY 'FLD0911B ==> ' FLD0911B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0911B.
           IF FLD0912B (1:)    NOT EQUAL XPC-FLD0912B
              DISPLAY 'FLD0912B ==> ' FLD0912B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0912B.
           IF FLD0913B (1:)    NOT EQUAL XPC-FLD0913B
              DISPLAY 'FLD0913B ==> ' FLD0913B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0913B.
           IF FLD0914B (1:)    NOT EQUAL XPC-FLD0914B
              DISPLAY 'FLD0914B ==> ' FLD0914B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0914B.
           IF FLD0915B (1:)    NOT EQUAL XPC-FLD0915B
              DISPLAY 'FLD0915B ==> ' FLD0915B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0915B.
           IF FLD0916B (1:)    NOT EQUAL XPC-FLD0916B
              DISPLAY 'FLD0916B ==> ' FLD0916B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0916B.
           IF FLD0917B (1:)    NOT EQUAL XPC-FLD0917B
              DISPLAY 'FLD0917B ==> ' FLD0917B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0917B.
           IF FLD0918B (1:)    NOT EQUAL XPC-FLD0918B
              DISPLAY 'FLD0918B ==> ' FLD0918B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0918B.
           IF FLD0919B (1:)    NOT EQUAL XPC-FLD0919B
              DISPLAY 'FLD0919B ==> ' FLD0919B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0919B.
           IF FLD0920B (1:)    NOT EQUAL XPC-FLD0920B
              DISPLAY 'FLD0920B ==> ' FLD0920B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0920B.
           IF FLD0921B (1:)    NOT EQUAL XPC-FLD0921B
              DISPLAY 'FLD0921B ==> ' FLD0921B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0921B.
           IF FLD0922B (1:)    NOT EQUAL XPC-FLD0922B
              DISPLAY 'FLD0922B ==> ' FLD0922B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0922B.
           IF FLD0923B (1:)    NOT EQUAL XPC-FLD0923B
              DISPLAY 'FLD0923B ==> ' FLD0923B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0923B.
           IF FLD0924B (1:)    NOT EQUAL XPC-FLD0924B
              DISPLAY 'FLD0924B ==> ' FLD0924B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0924B.
           IF FLD0925B (1:)    NOT EQUAL XPC-FLD0925B
              DISPLAY 'FLD0925B ==> ' FLD0925B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0925B.
           IF FLD0926B (1:)    NOT EQUAL XPC-FLD0926B
              DISPLAY 'FLD0926B ==> ' FLD0926B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0926B.
           IF FLD0927B (1:)    NOT EQUAL XPC-FLD0927B
              DISPLAY 'FLD0927B ==> ' FLD0927B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0927B.
           IF FLD0928B (1:)    NOT EQUAL XPC-FLD0928B
              DISPLAY 'FLD0928B ==> ' FLD0928B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0928B.
           IF FLD0929B (1:)    NOT EQUAL XPC-FLD0929B
              DISPLAY 'FLD0929B ==> ' FLD0929B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0929B.
           IF FLD0930B (1:)    NOT EQUAL XPC-FLD0930B
              DISPLAY 'FLD0930B ==> ' FLD0930B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0930B.
           IF FLD0931B (1:)    NOT EQUAL XPC-FLD0931B
              DISPLAY 'FLD0931B ==> ' FLD0931B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0931B.
           IF FLD0932B (1:)    NOT EQUAL XPC-FLD0932B
              DISPLAY 'FLD0932B ==> ' FLD0932B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0932B.
           IF FLD0933B (1:)    NOT EQUAL XPC-FLD0933B
              DISPLAY 'FLD0933B ==> ' FLD0933B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0933B.
           IF FLD0934B (1:)    NOT EQUAL XPC-FLD0934B
              DISPLAY 'FLD0934B ==> ' FLD0934B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0934B.
           IF FLD0935B (1:)    NOT EQUAL XPC-FLD0935B
              DISPLAY 'FLD0935B ==> ' FLD0935B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0935B.
           IF FLD0936B (1:)    NOT EQUAL XPC-FLD0936B
              DISPLAY 'FLD0936B ==> ' FLD0936B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0936B.
           IF FLD0937B (1:)    NOT EQUAL XPC-FLD0937B
              DISPLAY 'FLD0937B ==> ' FLD0937B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0937B.
           IF FLD0938B (1:)    NOT EQUAL XPC-FLD0938B
              DISPLAY 'FLD0938B ==> ' FLD0938B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0938B.
           IF FLD0939B (1:)    NOT EQUAL XPC-FLD0939B
              DISPLAY 'FLD0939B ==> ' FLD0939B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0939B.
           IF FLD0940B (1:)    NOT EQUAL XPC-FLD0940B
              DISPLAY 'FLD0940B ==> ' FLD0940B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0940B.
           IF FLD0941B (1:)    NOT EQUAL XPC-FLD0941B
              DISPLAY 'FLD0941B ==> ' FLD0941B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0941B.
           IF FLD0942B (1:)    NOT EQUAL XPC-FLD0942B
              DISPLAY 'FLD0942B ==> ' FLD0942B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0942B.
           IF FLD0943B (1:)    NOT EQUAL XPC-FLD0943B
              DISPLAY 'FLD0943B ==> ' FLD0943B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0943B.
           IF FLD0944B (1:)    NOT EQUAL XPC-FLD0944B
              DISPLAY 'FLD0944B ==> ' FLD0944B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0944B.
           IF FLD0945B (1:)    NOT EQUAL XPC-FLD0945B
              DISPLAY 'FLD0945B ==> ' FLD0945B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0945B.
           IF FLD0946B (1:)    NOT EQUAL XPC-FLD0946B
              DISPLAY 'FLD0946B ==> ' FLD0946B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0946B.
           IF FLD0947B (1:)    NOT EQUAL XPC-FLD0947B
              DISPLAY 'FLD0947B ==> ' FLD0947B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0947B.
           IF FLD0948B (1:)    NOT EQUAL XPC-FLD0948B
              DISPLAY 'FLD0948B ==> ' FLD0948B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0948B.
           IF FLD0949B (1:)    NOT EQUAL XPC-FLD0949B
              DISPLAY 'FLD0949B ==> ' FLD0949B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0949B.
           IF FLD0950B (1:)    NOT EQUAL XPC-FLD0950B
              DISPLAY 'FLD0950B ==> ' FLD0950B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0950B.
           IF FLD0951B (1:)    NOT EQUAL XPC-FLD0951B
              DISPLAY 'FLD0951B ==> ' FLD0951B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0951B.
           IF FLD0952B (1:)    NOT EQUAL XPC-FLD0952B
              DISPLAY 'FLD0952B ==> ' FLD0952B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0952B.
           IF FLD0953B (1:)    NOT EQUAL XPC-FLD0953B
              DISPLAY 'FLD0953B ==> ' FLD0953B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0953B.
           IF FLD0954B (1:)    NOT EQUAL XPC-FLD0954B
              DISPLAY 'FLD0954B ==> ' FLD0954B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0954B.
           IF FLD0955B (1:)    NOT EQUAL XPC-FLD0955B
              DISPLAY 'FLD0955B ==> ' FLD0955B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0955B.
           IF FLD0956B (1:)    NOT EQUAL XPC-FLD0956B
              DISPLAY 'FLD0956B ==> ' FLD0956B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0956B.
           IF FLD0957B (1:)    NOT EQUAL XPC-FLD0957B
              DISPLAY 'FLD0957B ==> ' FLD0957B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0957B.
           IF FLD0958B (1:)    NOT EQUAL XPC-FLD0958B
              DISPLAY 'FLD0958B ==> ' FLD0958B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0958B.
           IF FLD0959B (1:)    NOT EQUAL XPC-FLD0959B
              DISPLAY 'FLD0959B ==> ' FLD0959B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0959B.
           IF FLD0960B (1:)    NOT EQUAL XPC-FLD0960B
              DISPLAY 'FLD0960B ==> ' FLD0960B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0960B.
           IF FLD0961B (1:)    NOT EQUAL XPC-FLD0961B
              DISPLAY 'FLD0961B ==> ' FLD0961B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0961B.
           IF FLD0962B (1:)    NOT EQUAL XPC-FLD0962B
              DISPLAY 'FLD0962B ==> ' FLD0962B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0962B.
           IF FLD0963B (1:)    NOT EQUAL XPC-FLD0963B
              DISPLAY 'FLD0963B ==> ' FLD0963B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0963B.
           IF FLD0964B (1:)    NOT EQUAL XPC-FLD0964B
              DISPLAY 'FLD0964B ==> ' FLD0964B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0964B.
           IF FLD0965B (1:)    NOT EQUAL XPC-FLD0965B
              DISPLAY 'FLD0965B ==> ' FLD0965B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0965B.
           IF FLD0966B (1:)    NOT EQUAL XPC-FLD0966B
              DISPLAY 'FLD0966B ==> ' FLD0966B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0966B.
           IF FLD0967B (1:)    NOT EQUAL XPC-FLD0967B
              DISPLAY 'FLD0967B ==> ' FLD0967B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0967B.
           IF FLD0968B (1:)    NOT EQUAL XPC-FLD0968B
              DISPLAY 'FLD0968B ==> ' FLD0968B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0968B.
           IF FLD0969B (1:)    NOT EQUAL XPC-FLD0969B
              DISPLAY 'FLD0969B ==> ' FLD0969B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0969B.
           IF FLD0970B (1:)    NOT EQUAL XPC-FLD0970B
              DISPLAY 'FLD0970B ==> ' FLD0970B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0970B.
           IF FLD0971B (1:)    NOT EQUAL XPC-FLD0971B
              DISPLAY 'FLD0971B ==> ' FLD0971B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0971B.
           IF FLD0972B (1:)    NOT EQUAL XPC-FLD0972B
              DISPLAY 'FLD0972B ==> ' FLD0972B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0972B.
           IF FLD0973B (1:)    NOT EQUAL XPC-FLD0973B
              DISPLAY 'FLD0973B ==> ' FLD0973B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0973B.
           IF FLD0974B (1:)    NOT EQUAL XPC-FLD0974B
              DISPLAY 'FLD0974B ==> ' FLD0974B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0974B.
           IF FLD0975B (1:)    NOT EQUAL XPC-FLD0975B
              DISPLAY 'FLD0975B ==> ' FLD0975B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0975B.
           IF FLD0976B (1:)    NOT EQUAL XPC-FLD0976B
              DISPLAY 'FLD0976B ==> ' FLD0976B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0976B.
           IF FLD0977B (1:)    NOT EQUAL XPC-FLD0977B
              DISPLAY 'FLD0977B ==> ' FLD0977B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0977B.
           IF FLD0978B (1:)    NOT EQUAL XPC-FLD0978B
              DISPLAY 'FLD0978B ==> ' FLD0978B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0978B.
           IF FLD0979B (1:)    NOT EQUAL XPC-FLD0979B
              DISPLAY 'FLD0979B ==> ' FLD0979B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0979B.
           IF FLD0980B (1:)    NOT EQUAL XPC-FLD0980B
              DISPLAY 'FLD0980B ==> ' FLD0980B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0980B.
           IF FLD0981B (1:)    NOT EQUAL XPC-FLD0981B
              DISPLAY 'FLD0981B ==> ' FLD0981B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0981B.
           IF FLD0982B (1:)    NOT EQUAL XPC-FLD0982B
              DISPLAY 'FLD0982B ==> ' FLD0982B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0982B.
           IF FLD0983B (1:)    NOT EQUAL XPC-FLD0983B
              DISPLAY 'FLD0983B ==> ' FLD0983B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0983B.
           IF FLD0984B (1:)    NOT EQUAL XPC-FLD0984B
              DISPLAY 'FLD0984B ==> ' FLD0984B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0984B.
           IF FLD0985B (1:)    NOT EQUAL XPC-FLD0985B
              DISPLAY 'FLD0985B ==> ' FLD0985B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0985B.
           IF FLD0986B (1:)    NOT EQUAL XPC-FLD0986B
              DISPLAY 'FLD0986B ==> ' FLD0986B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0986B.
           IF FLD0987B (1:)    NOT EQUAL XPC-FLD0987B
              DISPLAY 'FLD0987B ==> ' FLD0987B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0987B.
           IF FLD0988B (1:)    NOT EQUAL XPC-FLD0988B
              DISPLAY 'FLD0988B ==> ' FLD0988B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0988B.
           IF FLD0989B (1:)    NOT EQUAL XPC-FLD0989B
              DISPLAY 'FLD0989B ==> ' FLD0989B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0989B.
           IF FLD0990B (1:)    NOT EQUAL XPC-FLD0990B
              DISPLAY 'FLD0990B ==> ' FLD0990B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0990B.
           IF FLD0991B (1:)    NOT EQUAL XPC-FLD0991B
              DISPLAY 'FLD0991B ==> ' FLD0991B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0991B.
           IF FLD0992B (1:)    NOT EQUAL XPC-FLD0992B
              DISPLAY 'FLD0992B ==> ' FLD0992B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0992B.
           IF FLD0993B (1:)    NOT EQUAL XPC-FLD0993B
              DISPLAY 'FLD0993B ==> ' FLD0993B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0993B.
           IF FLD0994B (1:)    NOT EQUAL XPC-FLD0994B
              DISPLAY 'FLD0994B ==> ' FLD0994B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0994B.
           IF FLD0995B (1:)    NOT EQUAL XPC-FLD0995B
              DISPLAY 'FLD0995B ==> ' FLD0995B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0995B.
           IF FLD0996B (1:)    NOT EQUAL XPC-FLD0996B
              DISPLAY 'FLD0996B ==> ' FLD0996B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0996B.
           IF FLD0997B (1:)    NOT EQUAL XPC-FLD0997B
              DISPLAY 'FLD0997B ==> ' FLD0997B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0997B.
           IF FLD0998B (1:)    NOT EQUAL XPC-FLD0998B
              DISPLAY 'FLD0998B ==> ' FLD0998B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0998B.
           IF FLD0999B (1:)    NOT EQUAL XPC-FLD0999B
              DISPLAY 'FLD0999B ==> ' FLD0999B
              DISPLAY 'EXPECTED ==> ' XPC-FLD0999B.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_display.at:29024: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "data_display.at:29024"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:29024"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_display.at:29025: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_display.at:29025"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_display.at:29025"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1258
#AT_START_1259
at_fn_group_banner 1259 'data_packed.at:27' \
  "PACKED-DECIMAL dump" "                            " 5
at_xfail=no
(
  $as_echo "1259. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >dump.c <<'_ATEOF'

#include <stdio.h>
#include <libcob.h>

COB_EXT_EXPORT int
dump (unsigned char *data)
{
  int i;
  for (i = 0; i < 10; i++)
    printf ("%02x", data[i]);
  puts ("");
  return 0;
}
_ATEOF


sed -e 's/@USAGE@/PACKED-DECIMAL/' "${TEMPLATE}/numeric-dump.cob" > prog.cob

{ set +x
$as_echo "$at_srcdir/data_packed.at:47: \$COMPILE_MODULE dump.c"
at_fn_check_prepare_dynamic "$COMPILE_MODULE dump.c" "data_packed.at:47"
( $at_check_trace; $COMPILE_MODULE dump.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:47"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:48: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:48"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:48"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:49: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:49"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "1f202020202020202020
012f2020202020202020
123f2020202020202020
01234f20202020202020
12345f20202020202020
0123456f202020202020
1234567f202020202020
012345678f2020202020
123456789f2020202020
01234567890f20202020
12345678901f20202020
0123456789012f202020
1234567890123f202020
012345678901234f2020
123456789012345f2020
01234567890123456f20
12345678901234567f20
0123456789012345678f
1d202020202020202020
012d2020202020202020
123d2020202020202020
01234d20202020202020
12345d20202020202020
0123456d202020202020
1234567d202020202020
012345678d2020202020
123456789d2020202020
01234567890d20202020
12345678901d20202020
0123456789012d202020
1234567890123d202020
012345678901234d2020
123456789012345d2020
01234567890123456d20
12345678901234567d20
0123456789012345678d
0f202020202020202020
000f2020202020202020
000f2020202020202020
00000f20202020202020
00000f20202020202020
0000000f202020202020
0000000f202020202020
000000000f2020202020
000000000f2020202020
00000000000f20202020
00000000000f20202020
0000000000000f202020
0000000000000f202020
000000000000000f2020
000000000000000f2020
00000000000000000f20
00000000000000000f20
0000000000000000000f
0c202020202020202020
000c2020202020202020
000c2020202020202020
00000c20202020202020
00000c20202020202020
0000000c202020202020
0000000c202020202020
000000000c2020202020
000000000c2020202020
00000000000c20202020
00000000000c20202020
0000000000000c202020
0000000000000c202020
000000000000000c2020
000000000000000c2020
00000000000000000c20
00000000000000000c20
0000000000000000000c
0f202020202020202020
000f2020202020202020
000f2020202020202020
00000f20202020202020
00000f20202020202020
0000000f202020202020
0000000f202020202020
000000000f2020202020
000000000f2020202020
00000000000f20202020
00000000000f20202020
0000000000000f202020
0000000000000f202020
000000000000000f2020
000000000000000f2020
00000000000000000f20
00000000000000000f20
0000000000000000000f
0c202020202020202020
000c2020202020202020
000c2020202020202020
00000c20202020202020
00000c20202020202020
0000000c202020202020
0000000c202020202020
000000000c2020202020
000000000c2020202020
00000000000c20202020
00000000000c20202020
0000000000000c202020
0000000000000c202020
000000000000000c2020
000000000000000c2020
00000000000000000c20
00000000000000000c20
0000000000000000000c
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:49"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1259
#AT_START_1260
at_fn_group_banner 1260 'data_packed.at:163' \
  "PACKED-DECIMAL used with DISPLAY" "               " 5
at_xfail=no
(
  $as_echo "1260. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-99          PIC 99   USAGE PACKED-DECIMAL.
       01 X-S99         PIC S99  USAGE PACKED-DECIMAL.
       01 X-999         PIC 999  USAGE PACKED-DECIMAL.
       01 X-S999        PIC S999 USAGE PACKED-DECIMAL.
       01 B-P1234       USAGE BINARY-LONG VALUE 1234.
       01 B-N1234       USAGE BINARY-LONG VALUE -1234.
       PROCEDURE        DIVISION.
           MOVE    0 TO X-99
           DISPLAY X-99.
           MOVE   99 TO X-99
           DISPLAY X-99.
           MOVE    0 TO X-S99
           DISPLAY X-S99.
           MOVE   -1 TO X-S99
           DISPLAY X-S99.
           MOVE    0 TO X-999
           DISPLAY X-999.
           MOVE  123 TO X-999
           DISPLAY X-999.
           MOVE    0 TO X-S999
           DISPLAY X-S999.
           MOVE -123 TO X-S999
           DISPLAY X-S999.
           MOVE B-P1234 TO X-S999
           DISPLAY X-S999.
           MOVE B-N1234 TO X-S999
           DISPLAY X-S999.
           MOVE B-N1234 TO X-999
           DISPLAY X-999.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:203: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:203"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:203"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:204: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:204"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00
99
+00
-01
000
123
+000
-123
+234
-234
234
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:204"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1260
#AT_START_1261
at_fn_group_banner 1261 'data_packed.at:221' \
  "PACKED-DECIMAL used with MOVE" "                  " 5
at_xfail=no
(
  $as_echo "1261. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 FENCE         VALUE x'ABBAAB'.
       01 FILLER.
         05 FENCE-1     PIC XXX VALUE FENCE.
         05 X-99        PIC 99    USAGE PACKED-DECIMAL.
         05 FENCE-2     PIC XXX VALUE FENCE.
         05 X-S99       PIC S99   USAGE PACKED-DECIMAL.
         05 FENCE-3     PIC XXX VALUE FENCE.
         05 X-999       PIC 999   USAGE PACKED-DECIMAL.
         05 FENCE-4     PIC XXX VALUE FENCE.
         05 X-S999      PIC S999  USAGE PACKED-DECIMAL.
         05 FENCE-5     PIC XXX VALUE FENCE.
         05 X-CALC      PIC S9(09)V9(09) USAGE PACKED-DECIMAL.
         05 FENCE-6     PIC XXX VALUE FENCE.
       01 C-P234        PIC 999   VALUE 234.
       01 C-N234        PIC S999  VALUE -234.
       01 C-P1234       PIC 9999  VALUE 234.
       01 C-N1234       PIC S9999 VALUE -1234.
       01 B-P1234       USAGE BINARY-LONG VALUE 1234.
       01 B-N1234       USAGE BINARY-LONG VALUE -1234.
       PROCEDURE        DIVISION.
           MOVE C-P1234 TO X-99
           DISPLAY X-99.
           IF FENCE-1 NOT = FENCE
             MOVE FENCE TO FENCE-1
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.

           MOVE C-P1234 TO X-S99
           DISPLAY X-S99.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE C-P1234 TO X-999
           DISPLAY X-999.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE C-P1234 TO X-S999
           DISPLAY X-S999.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           MOVE C-N1234 TO X-99
           DISPLAY X-99.
           IF FENCE-1 NOT = FENCE
             MOVE FENCE TO FENCE-1
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.

           MOVE C-N1234 TO X-S99
           DISPLAY X-S99.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE C-N1234 TO X-999
           DISPLAY X-999.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE C-N1234 TO X-S999
           DISPLAY X-S999.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           MOVE B-N1234 TO X-999
           DISPLAY X-999.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE B-N1234 TO X-S999
           DISPLAY X-S999.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           MOVE C-P234  TO X-99
           DISPLAY X-99.
           IF FENCE-1 NOT = FENCE
             MOVE FENCE TO FENCE-1
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.

           MOVE C-P234  TO X-S99
           DISPLAY X-S99.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE C-P234  TO X-999
           DISPLAY X-999.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE C-P234  TO X-S999
           DISPLAY X-S999.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           MOVE C-N234  TO X-99
           DISPLAY X-99.
           IF FENCE-1 NOT = FENCE
             MOVE FENCE TO FENCE-1
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.

           MOVE C-N234  TO X-S99
           DISPLAY X-S99.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE C-N234  TO X-999
           DISPLAY X-999.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE C-N234  TO X-S999
           DISPLAY X-S999.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           MOVE ZERO  TO X-CALC
           DISPLAY X-CALC.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.
           IF FENCE-6 NOT = FENCE
             MOVE FENCE TO FENCE-6
             DISPLAY 'broken FENCE-6' UPON SYSERR.

           MOVE 1     TO X-CALC
           DISPLAY X-CALC.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.
           IF FENCE-6 NOT = FENCE
             MOVE FENCE TO FENCE-6
             DISPLAY 'broken FENCE-6' UPON SYSERR.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:432: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:432"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:432"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:433: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:433"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "34
+34
234
+234
34
-34
234
-234
234
-234
34
+34
234
+234
34
-34
234
-234
+000000000.000000000
+000000001.000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:433"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1261
#AT_START_1262
at_fn_group_banner 1262 'data_packed.at:459' \
  "MOVE PACKED-DECIMAL to PACKED-DECIMAL" "          " 5
at_xfail=no
(
  $as_echo "1262. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  P-S99V99     PIC S99V99 PACKED-DECIMAL VALUE  1.23.
       01  P-N99V99     PIC S99V99 PACKED-DECIMAL VALUE -1.32.
       01  P-9V99       PIC   9V99 PACKED-DECIMAL VALUE  1.1.
       01  P-S99        PIC S99    PACKED-DECIMAL VALUE  12.
       01  P-99         PIC  99    PACKED-DECIMAL VALUE  2.
       01  P-P99        PIC P99    PACKED-DECIMAL VALUE  0.02.
       01  P-9PP        PIC 9PP    PACKED-DECIMAL VALUE  200.
       01  B-S99V99     PIC S99V99 PACKED-DECIMAL.
       01  B-99V9       PIC  99V9  PACKED-DECIMAL.
       01  B-S999       PIC S999   PACKED-DECIMAL.
       01  B-99         PIC  99    PACKED-DECIMAL.
       01  B-P9         PIC  P9    PACKED-DECIMAL.
       01  B-9P         PIC  9P    PACKED-DECIMAL.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE P-S99V99 TO B-S99V99
           IF B-S99V99 NOT = 1.23
              DISPLAY "B-S99V99 1: " B-S99V99.
           MOVE P-N99V99 TO B-S99V99
           IF B-S99V99 NOT = -1.32
              DISPLAY "B-S99V99 2: " B-S99V99.
           MOVE P-9V99   TO B-S99V99
           IF B-S99V99 NOT = 1.1
              DISPLAY "B-S99V99 3: " B-S99V99.
           MOVE P-S99    TO B-S99V99
           IF B-S99V99 NOT = 12
              DISPLAY "B-S99V99 4: " B-S99V99.
           MOVE P-99     TO B-S99V99
           IF B-S99V99 NOT = 2
              DISPLAY "B-S99V99 5: " B-S99V99.
           MOVE P-P99    TO B-S99V99
           IF B-S99V99 NOT = 0.02
              DISPLAY "B-S99V99 6: " B-S99V99.
           MOVE P-9PP    TO B-S99V99
           IF B-S99V99 NOT = 0
              DISPLAY "B-S99V99 7: " B-S99V99.

           MOVE P-S99V99 TO B-99V9
           IF B-99V9  NOT = 1.2
              DISPLAY "B-99V99  1: " B-99V9  .
           MOVE P-N99V99 TO B-99V9
           IF B-99V9  NOT = 1.3
              DISPLAY "B-99V99  2: " B-99V9  .
           MOVE P-9V99   TO B-99V9
           IF B-99V9  NOT = 1.1
              DISPLAY "B-99V99  3: " B-99V9  .
           MOVE P-S99    TO B-99V9
           IF B-99V9  NOT = 12
              DISPLAY "B-99V99  4: " B-99V9  .
           MOVE P-99     TO B-99V9
           IF B-99V9  NOT = 2
              DISPLAY "B-99V99  5: " B-99V9  .
           MOVE P-P99    TO B-99V9
           IF B-99V9  NOT = 0
              DISPLAY "B-99V99  6: " B-99V9  .
           MOVE P-9PP    TO B-99V9
           IF B-99V9  NOT = 0
              DISPLAY "B-99V99  7: " B-99V9  .

           MOVE P-S99V99 TO B-S999
           IF B-S999   NOT = 1
              DISPLAY "B-S999   1: " B-S999  .
           MOVE P-N99V99 TO B-S999
           IF B-S999   NOT = -1
              DISPLAY "B-S999   2: " B-S999  .
           MOVE P-9V99   TO B-S999
           IF B-S999   NOT = 1
              DISPLAY "B-S999   3: " B-S999  .
           MOVE P-S99    TO B-S999
           IF B-S999   NOT = 12
              DISPLAY "B-S999   4: " B-S999  .
           MOVE P-99     TO B-S999
           IF B-S999   NOT = 2
              DISPLAY "B-S999   5: " B-S999  .
           MOVE P-P99    TO B-S999
           IF B-S999   NOT = 0
              DISPLAY "B-S999   6: " B-S999  .
           MOVE P-9PP    TO B-S999
           IF B-S999   NOT = 200
              DISPLAY "B-S999   7: " B-S999  .

           MOVE P-S99V99 TO B-99
           IF B-99     NOT = 1
              DISPLAY "B-99     1: " B-99    .
           MOVE P-N99V99 TO B-99
           IF B-99     NOT = 1
              DISPLAY "B-99     2: " B-99    .
           MOVE P-9V99   TO B-99
           IF B-99     NOT = 1
              DISPLAY "B-99     3: " B-99    .
           MOVE P-S99    TO B-99
           IF B-99     NOT = 12
              DISPLAY "B-99     4: " B-99    .
           MOVE P-99     TO B-99
           IF B-99     NOT = 2
              DISPLAY "B-99     5: " B-99    .
           MOVE P-P99    TO B-99
           IF B-99     NOT = 0
              DISPLAY "B-99     6: " B-99    .
           MOVE P-9PP    TO B-99
           IF B-99     NOT = 0
              DISPLAY "B-99     7: " B-99    .

           MOVE P-S99V99 TO B-P9
           IF B-P9     NOT = 0.03
              DISPLAY "B-P9     1: " B-P9    .
           MOVE P-N99V99 TO B-P9
           IF B-P9     NOT = 0.02
              DISPLAY "B-P9     2: " B-P9    .
           MOVE P-9V99   TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     3: " B-P9    .
           MOVE P-S99    TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     4: " B-P9    .
           MOVE P-99     TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     5: " B-P9    .
           MOVE P-P99    TO B-P9
           IF B-P9     NOT = 0.02
              DISPLAY "B-P9     6: " B-P9    .
           MOVE P-9PP    TO B-P9
           IF B-P9     NOT = 0
              DISPLAY "B-P9     7: " B-P9    .

           MOVE P-S99V99 TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     1: " B-9P    .
           MOVE P-N99V99 TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     2: " B-9P    .
           MOVE P-9V99   TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     3: " B-9P    .
           MOVE P-S99    TO B-9P
           IF B-9P     NOT = 10
              DISPLAY "B-9P     4: " B-9P    .
           MOVE P-99     TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     5: " B-9P    .
           MOVE P-P99    TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     6: " B-9P    .
           MOVE P-9PP    TO B-9P
           IF B-9P     NOT = 0
              DISPLAY "B-9P     7: " B-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:633: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:633"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:633"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:634: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:634"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:634"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1262
#AT_START_1263
at_fn_group_banner 1263 'data_packed.at:639' \
  "MOVE PACKED-DECIMAL to DISPLAY" "                 " 5
at_xfail=no
(
  $as_echo "1263. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  P-S99V99     PIC S99V99 PACKED-DECIMAL VALUE  1.23.
       01  P-N99V99     PIC S99V99 PACKED-DECIMAL VALUE -1.32.
       01  P-9V99       PIC   9V99 PACKED-DECIMAL VALUE  1.1.
       01  P-S99        PIC S99    PACKED-DECIMAL VALUE  12.
       01  P-99         PIC  99    PACKED-DECIMAL VALUE  2.
       01  P-P99        PIC P99    PACKED-DECIMAL VALUE  0.02.
       01  P-9PP        PIC 9PP    PACKED-DECIMAL VALUE  200.
       01  P-938        PIC 9(38)  PACKED-DECIMAL VALUE
           12345678901234567890123456789012345678.
       01  D-S99V99     PIC S99V99 DISPLAY.
       01  D-99V9       PIC  99V9  DISPLAY.
       01  D-S999       PIC S999   DISPLAY.
       01  D-99         PIC  99    DISPLAY.
       01  D-P9         PIC  P9    DISPLAY.
       01  D-9P         PIC  9P    DISPLAY.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE P-938 TO D-99
           IF D-99     NOT = 78
              DISPLAY "D-99: " D-99.

           MOVE P-S99V99 TO D-S99V99
           IF D-S99V99 NOT = 1.23
              DISPLAY "D-S99V99 1: " D-S99V99.
           MOVE P-N99V99 TO D-S99V99
           IF D-S99V99 NOT = -1.32
              DISPLAY "D-S99V99 2: " D-S99V99.
           MOVE P-9V99   TO D-S99V99
           IF D-S99V99 NOT = 1.1
              DISPLAY "D-S99V99 3: " D-S99V99.
           MOVE P-S99    TO D-S99V99
           IF D-S99V99 NOT = 12
              DISPLAY "D-S99V99 4: " D-S99V99.
           MOVE P-99     TO D-S99V99
           IF D-S99V99 NOT = 2
              DISPLAY "D-S99V99 5: " D-S99V99.
           MOVE P-P99    TO D-S99V99
           IF D-S99V99 NOT = 0.02
              DISPLAY "D-S99V99 6: " D-S99V99.
           MOVE P-9PP    TO D-S99V99
           IF D-S99V99 NOT = 0
              DISPLAY "D-S99V99 7: " D-S99V99.

           MOVE P-S99V99 TO D-99V9
           IF D-99V9  NOT = 1.2
              DISPLAY "D-99V99  1: " D-99V9  .
           MOVE P-N99V99 TO D-99V9
           IF D-99V9  NOT = 1.3
              DISPLAY "D-99V99  2: " D-99V9  .
           MOVE P-9V99   TO D-99V9
           IF D-99V9  NOT = 1.1
              DISPLAY "D-99V99  3: " D-99V9  .
           MOVE P-S99    TO D-99V9
           IF D-99V9  NOT = 12
              DISPLAY "D-99V99  4: " D-99V9  .
           MOVE P-99     TO D-99V9
           IF D-99V9  NOT = 2
              DISPLAY "D-99V99  5: " D-99V9  .
           MOVE P-P99    TO D-99V9
           IF D-99V9  NOT = 0
              DISPLAY "D-99V99  6: " D-99V9  .
           MOVE P-9PP    TO D-99V9
           IF D-99V9  NOT = 0
              DISPLAY "D-99V99  7: " D-99V9  .

           MOVE P-S99V99 TO D-S999
           IF D-S999   NOT = 1
              DISPLAY "D-S999   1: " D-S999  .
           MOVE P-N99V99 TO D-S999
           IF D-S999   NOT = -1
              DISPLAY "D-S999   2: " D-S999  .
           MOVE P-9V99   TO D-S999
           IF D-S999   NOT = 1
              DISPLAY "D-S999   3: " D-S999  .
           MOVE P-S99    TO D-S999
           IF D-S999   NOT = 12
              DISPLAY "D-S999   4: " D-S999  .
           MOVE P-99     TO D-S999
           IF D-S999   NOT = 2
              DISPLAY "D-S999   5: " D-S999  .
           MOVE P-P99    TO D-S999
           IF D-S999   NOT = 0
              DISPLAY "D-S999   6: " D-S999  .
           MOVE P-9PP    TO D-S999
           IF D-S999   NOT = 200
              DISPLAY "D-S999   7: " D-S999  .

           MOVE P-S99V99 TO D-99
           IF D-99     NOT = 1
              DISPLAY "D-99     1: " D-99    .
           MOVE P-N99V99 TO D-99
           IF D-99     NOT = 1
              DISPLAY "D-99     2: " D-99    .
           MOVE P-9V99   TO D-99
           IF D-99     NOT = 1
              DISPLAY "D-99     3: " D-99    .
           MOVE P-S99    TO D-99
           IF D-99     NOT = 12
              DISPLAY "D-99     4: " D-99    .
           MOVE P-99     TO D-99
           IF D-99     NOT = 2
              DISPLAY "D-99     5: " D-99    .
           MOVE P-P99    TO D-99
           IF D-99     NOT = 0
              DISPLAY "D-99     6: " D-99    .
           MOVE P-9PP    TO D-99
           IF D-99     NOT = 0
              DISPLAY "D-99     7: " D-99    .

           MOVE P-S99V99 TO D-P9
           IF D-P9     NOT = 0.03
              DISPLAY "D-P9     1: " D-P9    .
           MOVE P-N99V99 TO D-P9
           IF D-P9     NOT = 0.02
              DISPLAY "D-P9     2: " D-P9    .
           MOVE P-9V99   TO D-P9
           IF D-P9     NOT = 0
              DISPLAY "D-P9     3: " D-P9    .
           MOVE P-S99    TO D-P9
           IF D-P9     NOT = 0
              DISPLAY "D-P9     4: " D-P9    .
           MOVE P-99     TO D-P9
           IF D-P9     NOT = 0
              DISPLAY "D-P9     5: " D-P9    .
           MOVE P-P99    TO D-P9
           IF D-P9     NOT = 0.02
              DISPLAY "D-P9     6: " D-P9    .
           MOVE P-9PP    TO D-P9
           IF D-P9     NOT = 0
              DISPLAY "D-P9     7: " D-P9    .

           MOVE P-S99V99 TO D-9P
           IF D-9P     NOT = 0
              DISPLAY "D-9P     1: " D-9P    .
           MOVE P-N99V99 TO D-9P
           IF D-9P     NOT = 0
              DISPLAY "D-9P     2: " D-9P    .
           MOVE P-9V99   TO D-9P
           IF D-9P     NOT = 0
              DISPLAY "D-9P     3: " D-9P    .
           MOVE P-S99    TO D-9P
           IF D-9P     NOT = 10
              DISPLAY "D-9P     4: " D-9P    .
           MOVE P-99     TO D-9P
           IF D-9P     NOT = 0
              DISPLAY "D-9P     5: " D-9P    .
           MOVE P-P99    TO D-9P
           IF D-9P     NOT = 0
              DISPLAY "D-9P     6: " D-9P    .
           MOVE P-9PP    TO D-9P
           IF D-9P     NOT = 0
              DISPLAY "D-9P     7: " D-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:819: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:819"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:819"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:820: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:820"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:820"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1263
#AT_START_1264
at_fn_group_banner 1264 'data_packed.at:825' \
  "MOVE DISPLAY to PACKED-DECIMAL" "                 " 5
at_xfail=no
(
  $as_echo "1264. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-S99V99     PIC S99V99 DISPLAY VALUE  1.23.
        05 FILLER PIC XX VALUE '34'.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-N99V99     PIC S99V99 DISPLAY VALUE -1.32.
        05 FILLER PIC XX VALUE '34'.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-9V99       PIC   9V99 DISPLAY VALUE  1.1.
        05 FILLER PIC XX VALUE '34'.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-S99        PIC S99    DISPLAY VALUE  12.
        05 FILLER PIC XX VALUE '34'.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-99         PIC  99    DISPLAY VALUE  2.
        05 FILLER PIC XX VALUE '34'.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-P99        PIC P99    DISPLAY VALUE  0.02.
        05 FILLER PIC XX VALUE '34'.
       01  FILLER.
        05 FILLER PIC XX VALUE '12'.
        05 D-9PP        PIC 9PP    DISPLAY VALUE  200.
        05 FILLER PIC XX VALUE '34'.
       01  P-S99V99     PIC S99V99 PACKED-DECIMAL.
       01  P-99V9       PIC  99V9  PACKED-DECIMAL.
       01  P-S999       PIC S999   PACKED-DECIMAL.
       01  P-99         PIC  99    PACKED-DECIMAL.
       01  P-P9         PIC  P9    PACKED-DECIMAL.
       01  P-9P         PIC  9P    PACKED-DECIMAL.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.

       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 20000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE D-S99V99 TO P-S99V99
           IF P-S99V99 NOT = 1.23
              DISPLAY "P-S99V99 1: " P-S99V99.
           MOVE D-N99V99 TO P-S99V99
           IF P-S99V99 NOT = -1.32
              DISPLAY "P-S99V99 2: " P-S99V99.
           MOVE D-9V99   TO P-S99V99
           IF P-S99V99 NOT = 1.1
              DISPLAY "P-S99V99 3: " P-S99V99.
           MOVE D-S99    TO P-S99V99
           IF P-S99V99 NOT = 12
              DISPLAY "P-S99V99 4: " P-S99V99.
           MOVE D-99     TO P-S99V99
           IF P-S99V99 NOT = 2
              DISPLAY "P-S99V99 5: " P-S99V99.
           MOVE D-P99    TO P-S99V99
           IF P-S99V99 NOT = 0.02
              DISPLAY "P-S99V99 6: " P-S99V99.
           MOVE D-9PP    TO P-S99V99
           IF P-S99V99 NOT = 0
              DISPLAY "P-S99V99 7: " P-S99V99.

           MOVE D-S99V99 TO P-99V9
           IF P-99V9  NOT = 1.2
              DISPLAY "P-99V9   1: " P-99V9  .
           MOVE D-N99V99 TO P-99V9
           IF P-99V9  NOT = 1.3
              DISPLAY "P-99V9   2: " P-99V9  .
           MOVE D-9V99   TO P-99V9
           IF P-99V9  NOT = 1.1
              DISPLAY "P-99V9   3: " P-99V9  .
           MOVE D-S99    TO P-99V9
           IF P-99V9  NOT = 12
              DISPLAY "P-99V9   4: " P-99V9  .
           MOVE D-99     TO P-99V9
           IF P-99V9  NOT = 2
              DISPLAY "P-99V9   5: " P-99V9  .
           MOVE D-P99    TO P-99V9
           IF P-99V9  NOT = 0
              DISPLAY "P-99V9   6: " P-99V9  .
           MOVE D-9PP    TO P-99V9
           IF P-99V9  NOT = 0
              DISPLAY "P-99V9   7: " P-99V9  .

           MOVE D-S99V99 TO P-S999
           IF P-S999   NOT = 1
              DISPLAY "P-S999   1: " P-S999  .
           MOVE D-N99V99 TO P-S999
           IF P-S999   NOT = -1
              DISPLAY "P-S999   2: " P-S999  .
           MOVE D-9V99   TO P-S999
           IF P-S999   NOT = 1
              DISPLAY "P-S999   3: " P-S999  .
           MOVE D-S99    TO P-S999
           IF P-S999   NOT = 12
              DISPLAY "P-S999   4: " P-S999  .
           MOVE D-99     TO P-S999
           IF P-S999   NOT = 2
              DISPLAY "P-S999   5: " P-S999  .
           MOVE D-P99    TO P-S999
           IF P-S999   NOT = 0
              DISPLAY "P-S999   6: " P-S999  .
           MOVE D-9PP    TO P-S999
           IF P-S999   NOT = 200
              DISPLAY "P-S999   7: " P-S999  .

           MOVE D-S99V99 TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     1: " P-99    .
           MOVE D-N99V99 TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     2: " P-99    .
           MOVE D-9V99   TO P-99
           IF P-99     NOT = 1
              DISPLAY "P-99     3: " P-99    .
           MOVE D-S99    TO P-99
           IF P-99     NOT = 12
              DISPLAY "P-99     4: " P-99    .
           MOVE D-99     TO P-99
           IF P-99     NOT = 2
              DISPLAY "P-99     5: " P-99    .
           MOVE D-P99    TO P-99
           IF P-99     NOT = 0
              DISPLAY "P-99     6: " P-99    .
           MOVE D-9PP    TO P-99
           IF P-99     NOT = 0
              DISPLAY "P-99     7: " P-99    .

           MOVE D-S99V99 TO P-P9
           IF P-P9     NOT = 0.03
              DISPLAY "P-P9     1: " P-P9    .
           MOVE D-N99V99 TO P-P9
           IF P-P9     NOT = 0.02
              DISPLAY "P-P9     2: " P-P9    .
           MOVE D-9V99   TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     3: " P-P9    .
           MOVE D-S99    TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     4: " P-P9    .
           MOVE D-99     TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     5: " P-P9    .
           MOVE D-P99    TO P-P9
           IF P-P9     NOT = 0.02
              DISPLAY "P-P9     6: " P-P9    .
           MOVE D-9PP    TO P-P9
           IF P-P9     NOT = 0
              DISPLAY "P-P9     7: " P-P9    .

           MOVE D-S99V99 TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     1: " P-9P    .
           MOVE D-N99V99 TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     2: " P-9P    .
           MOVE D-9V99   TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     3: " P-9P    .
           MOVE D-S99    TO P-9P
           IF P-9P     NOT = 10
              DISPLAY "P-9P     4: " P-9P    .
           MOVE D-99     TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     5: " P-9P    .
           MOVE D-P99    TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     6: " P-9P    .
           MOVE D-9PP    TO P-9P
           IF P-9P     NOT = 0
              DISPLAY "P-9P     7: " P-9P    .

           CONTINUE.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1020: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1020"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1020"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1021: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1021"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1021"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1264
#AT_START_1265
at_fn_group_banner 1265 'data_packed.at:1026' \
  "PACKED-DECIMAL used with INITIALIZE" "            " 5
at_xfail=no
(
  $as_echo "1265. $at_setup_line: testing $at_desc ..."
  $at_traceon



# also verifying the zero displays with size and sign

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-99          PIC 99   USAGE PACKED-DECIMAL.
       01 X-S99         PIC S99  USAGE PACKED-DECIMAL.
       01 X-999         PIC 999  USAGE PACKED-DECIMAL.
       01 X-S999        PIC S999 USAGE PACKED-DECIMAL.
       PROCEDURE        DIVISION.
           INITIALIZE X-99
           DISPLAY X-99.
           INITIALIZE X-S99
           DISPLAY X-S99.
           INITIALIZE X-999
           DISPLAY X-999.
           INITIALIZE X-S999
           DISPLAY X-S999.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1052: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1052"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1052"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1053: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1053"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00
+00
000
+000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1053"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1265
#AT_START_1266
at_fn_group_banner 1266 'data_packed.at:1063' \
  "PACKED-DECIMAL arithmetic" "                      " 5
at_xfail=no
(
  $as_echo "1266. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 FENCE         VALUE x'ABBAAB'.
       01 FILLER.
         05 FENCE-A     PIC XXX VALUE FENCE.
         05 X           PIC  99    USAGE PACKED-DECIMAL VALUE 0.
         05 FENCE-B     PIC XXX VALUE FENCE.
         05 Y           PIC  99    USAGE PACKED-DECIMAL VALUE 9.
         05 Z           PIC s9(20) USAGE PACKED-DECIMAL VALUE -55.
       01 FILLER.
         05 FENCE-1     PIC XXX VALUE FENCE.
         05 X-9         PIC 9     USAGE COMP-6.
         05 FENCE-2     PIC XXX VALUE FENCE.
         05 X-99        PIC 99    USAGE COMP-6.
         05 FENCE-3     PIC XXX VALUE FENCE.
         05 X-920       PIC 9(20) USAGE COMP-6.
         05 FENCE-4     PIC XXX VALUE FENCE.
         05 X-921       PIC 9(21) USAGE COMP-6.
         05 FENCE-5     PIC XXX VALUE FENCE.
       01 B-99          USAGE BINARY-LONG UNSIGNED VALUE 99.
       01 B-999         USAGE BINARY-LONG UNSIGNED VALUE 123.
       PROCEDURE        DIVISION.
           COMPUTE X = 1
           IF X <>  1 DISPLAY "01 <" X ">".
           IF FENCE-A NOT = FENCE
             MOVE FENCE TO FENCE-A
             DISPLAY 'broken FENCE-A' UPON SYSERR.
           IF FENCE-B NOT = FENCE
             MOVE FENCE TO FENCE-B
             DISPLAY 'broken FENCE-B' UPON SYSERR.

           COMPUTE X = Y
           IF X <>  9 DISPLAY "09 <" X ">".
           IF FENCE-A NOT = FENCE
             MOVE FENCE TO FENCE-A
             DISPLAY 'broken FENCE-A' UPON SYSERR.
           IF FENCE-B NOT = FENCE
             MOVE FENCE TO FENCE-B
             DISPLAY 'broken FENCE-B' UPON SYSERR.

           COMPUTE X = X + Y
           IF Z < -56 DISPLAY "-55 >= " Z.
           IF FENCE-A NOT = FENCE
             MOVE FENCE TO FENCE-A
             DISPLAY 'broken FENCE-A' UPON SYSERR.
           IF FENCE-B NOT = FENCE
             MOVE FENCE TO FENCE-B
             DISPLAY 'broken FENCE-B' UPON SYSERR.

      *>

           MOVE B-999 TO X-99
           IF X-99  <> 23 DISPLAY 'trunk 123 -> 99: 'X-99.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE B-999 TO X-9
           IF X-9   <> 3  DISPLAY 'trunk 123 -> 9: ' X-9.
           IF FENCE-1 NOT = FENCE
             MOVE FENCE TO FENCE-1
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.

           MOVE B-99  TO X-99
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE B-999 TO X-920
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE X-99  TO X-921
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           ADD  X-99  X-920 GIVING B-99.
           IF B-99  <> 222 DISPLAY '!222: ' B-99.
           IF X-920  > 124 DISPLAY '> 124 ' X-920.
           IF X-921  < 98  DISPLAY '< 98 '  X-921.

           IF FENCE-1 NOT = FENCE
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1181: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1181"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1181"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1182: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1182"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1182"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1266
#AT_START_1267
at_fn_group_banner 1267 'data_packed.at:1187' \
  "PACKED-DECIMAL comparison" "                      " 5
at_xfail=no
(
  $as_echo "1267. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  U1           PIC   99   USAGE PACKED-DECIMAL VALUE 95.
       01  U2           PIC   99   USAGE PACKED-DECIMAL VALUE 95.
       01  U3           PIC  999   USAGE PACKED-DECIMAL VALUE 195.
       01  U4           PIC  999   USAGE PACKED-DECIMAL VALUE 195.
       01  U1-32        PIC  9(32) USAGE PACKED-DECIMAL VALUE 195.
       01  U2-32        PIC  9(32) USAGE PACKED-DECIMAL VALUE 195.
       01  U1-32D       PIC  9(18)V9(12) USAGE PACKED-DECIMAL
           VALUE 48894655646195.551388132.
       01  U2-32D       PIC  9(18)V9(12) USAGE PACKED-DECIMAL
           VALUE 48894655646195.551388132.
       01  U3-32D       PIC  9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE 48894655646195.551388132.
       01  U4-32D       PIC  9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE 48894655646195.551388131.
       01  S1           PIC  S99   USAGE PACKED-DECIMAL VALUE -95.
       01  S2           PIC  S99   USAGE PACKED-DECIMAL VALUE -95.
       01  S3           PIC S999   USAGE PACKED-DECIMAL VALUE -195.
       01  S4           PIC S999   USAGE PACKED-DECIMAL VALUE -195.
       01  S1-32        PIC S9(32) USAGE PACKED-DECIMAL VALUE -195.
       01  S2-32        PIC S9(32) USAGE PACKED-DECIMAL VALUE -195.
       01  S1-32D       PIC S9(18)V9(12) USAGE PACKED-DECIMAL
           VALUE -48894655646195.551388132.
       01  S2-32D       PIC S9(18)V9(12) USAGE PACKED-DECIMAL
           VALUE -48894655646195.551388132.
       01  S3-32D       PIC S9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE -48894655646195.551388132.
       01  S4-32D       PIC S9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE -48894655646195.551388131.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 30000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           IF U1 <>  U2 DISPLAY "U1 <> U2".
           IF U3 <>  U4 DISPLAY "U3 <> U4".
           IF U1 >=  U3 DISPLAY "U1 >= U3".
           IF S1 <>  S2 DISPLAY "S1 <> S2".
           IF S3 <>  S4 DISPLAY "S3 <> S4".
           IF S1 <=  S3 DISPLAY "S1 <= S3".
           IF U1-32  <>  U2-32  DISPLAY "U1-32 <> U2-32".
           IF U1-32  >=  U2-32D DISPLAY "U1-32 >= U1-32D".
           IF U1-32D <>  U2-32D DISPLAY "U1-32D <> U2-32D".
           IF U1-32D <=  U3     DISPLAY "U1-32 <= U3".
           IF U2-32D <=  U4-32D DISPLAY "U2-32D <= U4-32D".
           IF U4-32D >=  U2-32D DISPLAY "U4-32D >= U2-32D".
           IF S1-32  <>  S2-32  DISPLAY "S1-32 <> S2-32".
           IF S1-32D <>  S2-32D DISPLAY "S1-32D <> S2-32D".
           IF S2-32D >=  S4-32D DISPLAY "S2-32D >= S4-32D".
           IF S3-32D >=  S4-32D DISPLAY "S3-32D >= S4-32D".
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1257: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1257"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1257"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1258: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1258"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1258"
$at_failed && at_fn_log_failure
$at_traceon; }


# also check "not optimized during codegen",
# which leads to other code-paths
{ set +x
$as_echo "$at_srcdir/data_packed.at:1262: \$COMPILE -fno-fast-compare -C -o progalt.c prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare -C -o progalt.c prog.cob" "data_packed.at:1262"
( $at_check_trace; $COMPILE -fno-fast-compare -C -o progalt.c prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1262"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1263: \$COMPILE progalt.c"
at_fn_check_prepare_dynamic "$COMPILE progalt.c" "data_packed.at:1263"
( $at_check_trace; $COMPILE progalt.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1263"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1264: \$COBCRUN_DIRECT ./progalt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progalt" "data_packed.at:1264"
( $at_check_trace; $COBCRUN_DIRECT ./progalt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1264"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1267
#AT_START_1268
at_fn_group_banner 1268 'data_packed.at:1269' \
  "PACKED-DECIMAL numeric test (1)" "                " 5
at_xfail=no
(
  $as_echo "1268. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X-2         PIC X(2).
         02 N-2         REDEFINES X-2 PIC 999  USAGE PACKED-DECIMAL.
         02 N-S2        REDEFINES X-2 PIC S999 USAGE PACKED-DECIMAL.
       PROCEDURE        DIVISION.
           MOVE X"0000" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 0000 NG".
           IF N-S2 IS NUMERIC
              DISPLAY "S0000 NG".

           MOVE X"000c" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 000c NG".
           IF N-S2 IS NOT NUMERIC
              DISPLAY "S000c NG".

           MOVE X"000d" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 000d NG".
           IF N-S2 IS NOT NUMERIC
              DISPLAY "S000d NG".

           MOVE X"000f" TO X-2.
           IF N-2  IS NOT NUMERIC
              DISPLAY " 000f NG".
           IF N-S2 IS NUMERIC
              DISPLAY "S000f NG".

           MOVE X"1234" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 1234 NG".
           IF N-S2 IS NUMERIC
              DISPLAY "S1234 NG".

           MOVE X"999f" TO X-2.
           IF N-2  IS NOT NUMERIC
              DISPLAY " 999f NG".
           IF N-S2 IS NUMERIC
              DISPLAY "S999f NG".

           MOVE X"ffff" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " ffff NG".
           IF N-S2 IS NUMERIC
              DISPLAY "Sffff NG".

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1327: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1327"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1327"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1328: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1328"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1328"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1268
#AT_START_1269
at_fn_group_banner 1269 'data_packed.at:1333' \
  "PACKED-DECIMAL numeric test (2)" "                " 5
at_xfail=no
(
  $as_echo "1269. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
         02 X-2         PIC X(2).
         02 N-2         REDEFINES X-2 PIC 999  USAGE PACKED-DECIMAL.
         02 N-S2        REDEFINES X-2 PIC S999 USAGE PACKED-DECIMAL.
       PROCEDURE        DIVISION.
           MOVE X"0000" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 0000 NG".
           IF N-S2 IS NUMERIC
              DISPLAY "S0000 NG".

           MOVE X"000c" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 000c NG".
           IF N-S2 IS NOT NUMERIC
              DISPLAY "S000c NG".

           MOVE X"000d" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 000d NG".
           IF N-S2 IS NOT NUMERIC
              DISPLAY "S000d NG".

           MOVE X"000f" TO X-2.
           IF N-2  IS NOT NUMERIC
              DISPLAY " 000f NG".
           IF N-S2 IS NOT NUMERIC
              DISPLAY "S000f NG".

           MOVE X"1234" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " 1234 NG".
           IF N-S2 IS NUMERIC
              DISPLAY "S1234 NG".

           MOVE X"999f" TO X-2.
           IF N-2  IS NOT NUMERIC
              DISPLAY " 999f NG".
           IF N-S2 IS NOT NUMERIC
              DISPLAY "S999f NG".

           MOVE X"ffff" TO X-2.
           IF N-2  IS NUMERIC
              DISPLAY " ffff NG".
           IF N-S2 IS NUMERIC
              DISPLAY "Sffff NG".

           STOP RUN.
_ATEOF


# TODO: Check what actual option is tested here
#       and directly use it
{ set +x
$as_echo "$at_srcdir/data_packed.at:1393: \$COMPILE -std=ibm prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -std=ibm prog.cob" "data_packed.at:1393"
( $at_check_trace; $COMPILE -std=ibm prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1393"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1394: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1394"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1394"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1269
#AT_START_1270
at_fn_group_banner 1270 'data_packed.at:1399' \
  "COMP-6 used with DISPLAY" "                       " 5
at_xfail=no
(
  $as_echo "1270. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-99          PIC 99   USAGE COMP-6.
       01 X-999         PIC 999  USAGE COMP-6.
       PROCEDURE        DIVISION.
           MOVE    0 TO X-99
           DISPLAY X-99.
           MOVE   99 TO X-99
           DISPLAY X-99.
           MOVE    0 TO X-999
           DISPLAY X-999.
           MOVE  123 TO X-999
           DISPLAY X-999.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1421: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1421"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1421"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1422: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1422"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "00
99
000
123
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1422"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1270
#AT_START_1271
at_fn_group_banner 1271 'data_packed.at:1432' \
  "COMP-6 used with MOVE" "                          " 5
at_xfail=no
(
  $as_echo "1271. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 X-99          PIC 99   USAGE COMP-6.
       01 X-999         PIC 999  USAGE COMP-6.
       01 B-99          USAGE BINARY-LONG.
       01 B-999         USAGE BINARY-LONG.
       PROCEDURE        DIVISION.
           MOVE     0 TO B-99
           MOVE  B-99 TO X-99
           IF  X-99 NOT =   0 DISPLAY  "00 <" X-99  ">".
           MOVE    99 TO B-99
           MOVE  B-99 TO X-99
           IF  X-99 NOT =  99 DISPLAY  "99 <" X-99  ">".
           MOVE    0  TO B-999
           MOVE B-999 TO X-999
           IF X-999 NOT =   0 DISPLAY "000 <" X-999 ">".
           MOVE  123  TO B-999
           MOVE B-999 TO X-999
           IF X-999 NOT = 123 DISPLAY "123 <" X-999 ">".
           MOVE B-999 TO X-99
           IF  X-99 NOT =  23 DISPLAY  "23 <" X-99  ">".
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1462: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1462"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1462"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1463: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1463"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1463"
$at_failed && at_fn_log_failure
$at_traceon; }


# also check "not optimized during codegen",
# which leads to other code-paths
{ set +x
$as_echo "$at_srcdir/data_packed.at:1467: \$COMPILE -fno-fast-compare -C -o progalt.c prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare -C -o progalt.c prog.cob" "data_packed.at:1467"
( $at_check_trace; $COMPILE -fno-fast-compare -C -o progalt.c prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1467"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1468: \$COMPILE progalt.c"
at_fn_check_prepare_dynamic "$COMPILE progalt.c" "data_packed.at:1468"
( $at_check_trace; $COMPILE progalt.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1468"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1469: \$COBCRUN_DIRECT ./progalt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progalt" "data_packed.at:1469"
( $at_check_trace; $COBCRUN_DIRECT ./progalt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1469"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1271
#AT_START_1272
at_fn_group_banner 1272 'data_packed.at:1474' \
  "COMP-6 arithmetic" "                              " 5
at_xfail=no
(
  $as_echo "1272. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 FENCE         VALUE x'ABBAAB'.
       01 FILLER.
         05 FENCE-1     PIC XXX VALUE FENCE.
         05 X-9         PIC 9     USAGE COMP-6.
         05 FENCE-2     PIC XXX VALUE FENCE.
         05 X-99        PIC 99    USAGE COMP-6.
         05 FENCE-3     PIC XXX VALUE FENCE.
         05 X-920       PIC 9(20) USAGE COMP-6.
         05 FENCE-4     PIC XXX VALUE FENCE.
         05 X-921       PIC 9(21) USAGE COMP-6.
         05 FENCE-5     PIC XXX VALUE FENCE.
       01 B-99          USAGE BINARY-LONG UNSIGNED VALUE 99.
       01 B-999         USAGE BINARY-LONG UNSIGNED VALUE 123.
       PROCEDURE        DIVISION.
           MOVE B-999 TO X-99
           IF X-99  <> 23 DISPLAY 'trunk 123 -> 99: 'X-99.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE B-999 TO X-9
           IF X-9   <> 3  DISPLAY 'trunk 123 -> 9: ' X-9.
           IF FENCE-1 NOT = FENCE
             MOVE FENCE TO FENCE-1
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.

           MOVE B-99  TO X-99
           IF FENCE-2 NOT = FENCE
             MOVE FENCE TO FENCE-2
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.

           MOVE B-999 TO X-920
           IF FENCE-3 NOT = FENCE
             MOVE FENCE TO FENCE-3
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.

           MOVE X-99  TO X-921
           IF FENCE-4 NOT = FENCE
             MOVE FENCE TO FENCE-4
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             MOVE FENCE TO FENCE-5
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           ADD  X-99  X-920 GIVING B-99.
           IF B-99  <> 222 DISPLAY '!222: ' B-99.
           IF X-920  > 124 DISPLAY '> 124 ' X-920.
           IF X-921  < 98  DISPLAY '< 98 '  X-921.

           IF FENCE-1 NOT = FENCE
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-3 NOT = FENCE
             DISPLAY 'broken FENCE-3' UPON SYSERR.
           IF FENCE-4 NOT = FENCE
             DISPLAY 'broken FENCE-4' UPON SYSERR.
           IF FENCE-5 NOT = FENCE
             DISPLAY 'broken FENCE-5' UPON SYSERR.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1557: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1557"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1557"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1558: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1558"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1558"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1272
#AT_START_1273
at_fn_group_banner 1273 'data_packed.at:1563' \
  "COMP-6 numeric" "                                 " 5
at_xfail=no
(
  $as_echo "1273. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 G.
          02 X-2         PIC X(2).
          02 N-3         REDEFINES X-2 PIC 999  USAGE COMP-6.
          02 N-4         REDEFINES X-2 PIC 9999 USAGE COMP-6.
       PROCEDURE        DIVISION.
           MOVE X"0000" TO X-2.
           IF N-3  IS NOT NUMERIC
              DISPLAY "3 0000 NG".
           IF N-4  IS NOT NUMERIC
              DISPLAY "4 0000 NG".

           MOVE X"000c" TO X-2.
           IF N-3  IS NUMERIC
              DISPLAY "3 000c NG".
           IF N-4  IS NUMERIC
              DISPLAY "4 000c NG".

           MOVE X"1234" TO X-2.
           IF N-3  IS NOT NUMERIC
              DISPLAY "3 1234 NG".
           IF N-4  IS NOT NUMERIC
              DISPLAY "4 1234 NG".

           MOVE X"ffff" TO X-2.
           IF N-3  IS NUMERIC
              DISPLAY "3 ffff NG".
           IF N-4  IS NUMERIC
              DISPLAY "4 ffff NG".

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1603: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1603"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1603"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1604: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1604"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1604"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1273
#AT_START_1274
at_fn_group_banner 1274 'data_packed.at:1609' \
  "COMP-6 comparison" "                              " 5
at_xfail=no
(
  $as_echo "1274. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01  U1           PIC   99   USAGE COMP-6 VALUE 95.
       01  U2           PIC   99   USAGE COMP-6 VALUE 95.
       01  U3           PIC  999   USAGE COMP-6 VALUE 195.
       01  U4           PIC  999   USAGE COMP-6 VALUE 195.
       01  U1-32        PIC  9(32) USAGE COMP-6 VALUE 195.
       01  U2-32        PIC  9(32) USAGE COMP-6 VALUE 195.
       01  U1-32D       PIC  9(18)V9(12) USAGE COMP-6
           VALUE 48894655646195.551388132.
       01  U2-32D       PIC  9(18)V9(12) USAGE COMP-6
           VALUE 48894655646195.551388132.
       01  U3-32D       PIC  9(14)V9(13) USAGE COMP-6
           VALUE 48894655646195.551388132.
       01  U4-32D       PIC  9(14)V9(13) USAGE COMP-6
           VALUE 48894655646195.551388131.
       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.
       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 30000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           IF U1     <>  U2     DISPLAY "U1 <> U2".
           IF U3     <>  U4     DISPLAY "U3 <> U4".
           IF U1     >=  U3     DISPLAY "U1 >= U3".
           IF U1-32  <>  U2-32  DISPLAY "U1-32 <> U2-32".
           IF U1-32  >=  U2-32D DISPLAY "U1-32 >= U1-32D".
           IF U1-32D <>  U2-32D DISPLAY "U1-32D <> U2-32D".
           IF U1-32D <=  U3     DISPLAY "U1-32 <= U3".
           IF U2-32D <>  U3-32D DISPLAY "U2-32D <> U3-32D".
           IF U2-32D <=  U4-32D DISPLAY "U2-32D <= U4-32D".
           IF U4-32D >=  U2-32D DISPLAY "U4-32D >= U2-32D".
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1659: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1659"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1659"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1660: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1660"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1660"
$at_failed && at_fn_log_failure
$at_traceon; }


# also check "not optimized during codegen",
# which leads to other code-paths
{ set +x
$as_echo "$at_srcdir/data_packed.at:1664: \$COMPILE -fno-fast-compare -C -o progalt.c prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare -C -o progalt.c prog.cob" "data_packed.at:1664"
( $at_check_trace; $COMPILE -fno-fast-compare -C -o progalt.c prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1664"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1665: \$COMPILE progalt.c"
at_fn_check_prepare_dynamic "$COMPILE progalt.c" "data_packed.at:1665"
( $at_check_trace; $COMPILE progalt.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1665"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1666: \$COBCRUN_DIRECT ./progalt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progalt" "data_packed.at:1666"
( $at_check_trace; $COBCRUN_DIRECT ./progalt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1666"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1274
#AT_START_1275
at_fn_group_banner 1275 'data_packed.at:1671' \
  "COMP-3 vs. COMP-6 - BCD comparison" "             " 5
at_xfail=no
(
  $as_echo "1275. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       77  PD-03       PIC  S9(03)V99 COMP-3   VALUE 737.
       77  PD-04       PIC  S9(04)V99 COMP-3   VALUE 737.
       77  PD-05       PIC  S9(05)V99 COMP-3   VALUE 737.
       77  PD-06       PIC  S9(06)V99 COMP-3   VALUE 737.
       77  PD-07       PIC  S9(07)V99 COMP-3   VALUE 737.
       77  PD-08       PIC  S9(08)V99 COMP-3   VALUE 737.
       77  PD-09       PIC  S9(09)V99 COMP-3   VALUE 737.
       77  PD-10       PIC  S9(10)V99 COMP-3   VALUE 737.
       77  PD-11       PIC  S9(11)V99 COMP-3   VALUE 737.
       77  PD-12       PIC  S9(12)V99 COMP-3   VALUE 737.
       77  PD-13       PIC  S9(13)V99 COMP-3   VALUE 737.
       77  PD-14       PIC  S9(14)V99 COMP-3   VALUE 737.
       77  PD-15       PIC  S9(15)V99 COMP-3   VALUE 737.
       77  PD-16       PIC  S9(16)V99 COMP-3   VALUE 737.
       77  PD-17       PIC  S9(17)V99 COMP-3   VALUE 737.
       77  PD-18       PIC  S9(18)V99 COMP-3   VALUE 737.
       77  PD-19       PIC  S9(19)V99 COMP-3   VALUE 737.
       77  PD-20       PIC  S9(20)V99 COMP-3   VALUE 737.
       77  PD-21       PIC  S9(21)V99 COMP-3   VALUE 737.
       77  PD-22       PIC  S9(22)V99 COMP-3   VALUE 737.
       77  PD-23       PIC  S9(23)V99 COMP-3   VALUE 737.
       77  PD-24       PIC  S9(24)V99 COMP-3   VALUE 737.
       77  PD-25       PIC  S9(25)V99 COMP-3   VALUE 737.
       77  PD-26       PIC  S9(26)V99 COMP-3   VALUE 737.
       77  PD-27       PIC  S9(27)V99 COMP-3   VALUE 737.
       77  PD-28       PIC  S9(28)V99 COMP-3   VALUE 737.
       77  PD-29       PIC  S9(29)V99 COMP-3   VALUE 737.
       77  PD-30       PIC  S9(30)V99 COMP-3   VALUE 737.
       77  PD-31       PIC  S9(31)V99 COMP-3   VALUE 737.
       77  PD-32       PIC  S9(32)V99 COMP-3   VALUE 737.
       77  PD-33       PIC  S9(33)V99 COMP-3   VALUE 737.
       77  PD-34       PIC  S9(34)V99 COMP-3   VALUE 737.
       77  PD-35       PIC  S9(35)V99 COMP-3   VALUE 737.
       77  PD-36       PIC  S9(36)V99 COMP-3   VALUE 737.

       77  CD-03       PIC   9(03)V99 COMP-6   VALUE 737.
       77  CD-04       PIC   9(04)V99 COMP-6   VALUE 737.
       77  CD-05       PIC   9(05)V99 COMP-6   VALUE 737.
       77  CD-06       PIC   9(06)V99 COMP-6   VALUE 737.
       77  CD-07       PIC   9(07)V99 COMP-6   VALUE 737.
       77  CD-08       PIC   9(08)V99 COMP-6   VALUE 737.
       77  CD-09       PIC   9(09)V99 COMP-6   VALUE 737.
       77  CD-10       PIC   9(10)V99 COMP-6   VALUE 737.
       77  CD-11       PIC   9(11)V99 COMP-6   VALUE 737.
       77  CD-12       PIC   9(12)V99 COMP-6   VALUE 737.
       77  CD-13       PIC   9(13)V99 COMP-6   VALUE 737.
       77  CD-14       PIC   9(14)V99 COMP-6   VALUE 737.
       77  CD-15       PIC   9(15)V99 COMP-6   VALUE 737.
       77  CD-16       PIC   9(16)V99 COMP-6   VALUE 737.
       77  CD-17       PIC   9(17)V99 COMP-6   VALUE 737.
       77  CD-18       PIC   9(18)V99 COMP-6   VALUE 737.
       77  CD-19       PIC   9(19)V99 COMP-6   VALUE 737.
       77  CD-20       PIC   9(20)V99 COMP-6   VALUE 737.
       77  CD-21       PIC   9(21)V99 COMP-6   VALUE 737.
       77  CD-22       PIC   9(22)V99 COMP-6   VALUE 737.
       77  CD-23       PIC   9(23)V99 COMP-6   VALUE 737.
       77  CD-24       PIC   9(24)V99 COMP-6   VALUE 737.
       77  CD-25       PIC   9(25)V99 COMP-6   VALUE 737.
       77  CD-26       PIC   9(26)V99 COMP-6   VALUE 737.
       77  CD-27       PIC   9(27)V99 COMP-6   VALUE 737.
       77  CD-28       PIC   9(28)V99 COMP-6   VALUE 737.
       77  CD-29       PIC   9(29)V99 COMP-6   VALUE 737.
       77  CD-30       PIC   9(30)V99 COMP-6   VALUE 737.
       77  CD-31       PIC   9(31)V99 COMP-6   VALUE 737.
       77  CD-32       PIC   9(32)V99 COMP-6   VALUE 737.
       77  CD-33       PIC   9(33)V99 COMP-6   VALUE 737.
       77  CD-34       PIC   9(34)V99 COMP-6   VALUE 737.
       77  CD-35       PIC   9(35)V99 COMP-6   VALUE 737.
       77  CD-36       PIC   9(36)V99 COMP-6   VALUE 737.
      *
       01  U4-32D       PIC  9(14)V9(13) USAGE COMP-6
           VALUE 48894655646195.551388131.
       01  UP-32D       PIC  9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE 48894655646195.551388131.
       01  SP-32D       PIC S9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE 48894655646195.551388131.
       01  NP-32D       PIC S9(14)V9(13) USAGE PACKED-DECIMAL
           VALUE -48894655646195.551388131.

       01  PACKED-ZEROS.
           05  PZ-01-X.
               10  PZ-01               PIC 9(38)       COMP-6.
           05  PZ-02-X.
               10  PZ-02               PIC S9(38)      COMP-3.
           05  PZ-03-X.
               10  PZ-03               PIC S9(38)      COMP-3.
           05  PZ-04-X.
               10  PZ-04               PIC S9(38)      COMP-3.
           05  PZ-05-X.
               10  PZ-05               PIC S9(38)      COMP-3.
           05  PZ-06-X.
               10  PZ-06               PIC S9(38)      COMP-3.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
           IF PD-03 <> CD-03  DISPLAY "PD-03 <> CD-03".
           IF PD-04 <> CD-04  DISPLAY "PD-04 <> CD-04".
           IF PD-05 <> CD-05  DISPLAY "PD-05 <> CD-05".
           IF PD-06 <> CD-06  DISPLAY "PD-06 <> CD-06".
           IF PD-07 <> CD-07  DISPLAY "PD-07 <> CD-07".
           IF PD-08 <> CD-08  DISPLAY "PD-08 <> CD-08".
           IF PD-09 <> CD-09  DISPLAY "PD-09 <> CD-09".
           IF PD-10 <> CD-10  DISPLAY "PD-10 <> CD-10".
           IF PD-11 <> CD-11  DISPLAY "PD-11 <> CD-11".
           IF PD-12 <> CD-12  DISPLAY "PD-12 <> CD-12".
           IF PD-13 <> CD-13  DISPLAY "PD-13 <> CD-13".
           IF PD-14 <> CD-14  DISPLAY "PD-14 <> CD-14".
           IF PD-15 <> CD-15  DISPLAY "PD-15 <> CD-15".
           IF PD-16 <> CD-16  DISPLAY "PD-16 <> CD-16".
           IF PD-17 <> CD-17  DISPLAY "PD-17 <> CD-17".
           IF PD-18 <> CD-18  DISPLAY "PD-18 <> CD-18".
           IF PD-19 <> CD-19  DISPLAY "PD-19 <> CD-19".
           IF PD-20 <> CD-20  DISPLAY "PD-20 <> CD-20".
           IF PD-21 <> CD-21  DISPLAY "PD-21 <> CD-21".
           IF PD-22 <> CD-22  DISPLAY "PD-22 <> CD-22".
           IF PD-23 <> CD-23  DISPLAY "PD-23 <> CD-23".
           IF PD-24 <> CD-24  DISPLAY "PD-24 <> CD-24".
           IF PD-25 <> CD-25  DISPLAY "PD-25 <> CD-25".
           IF PD-26 <> CD-26  DISPLAY "PD-26 <> CD-26".
           IF PD-27 <> CD-27  DISPLAY "PD-27 <> CD-27".
           IF PD-28 <> CD-28  DISPLAY "PD-28 <> CD-28".
           IF PD-29 <> CD-29  DISPLAY "PD-29 <> CD-29".
           IF PD-30 <> CD-30  DISPLAY "PD-30 <> CD-30".
           IF PD-31 <> CD-31  DISPLAY "PD-31 <> CD-31".
           IF PD-32 <> CD-32  DISPLAY "PD-32 <> CD-32".
           IF PD-33 <> CD-33  DISPLAY "PD-33 <> CD-33".
           IF PD-34 <> CD-34  DISPLAY "PD-34 <> CD-34".
           IF PD-35 <> CD-35  DISPLAY "PD-35 <> CD-35".
           IF PD-36 <> CD-36  DISPLAY "PD-36 <> CD-36".

           IF PD-03 <> CD-36  DISPLAY "PD-03 <> CD-36".
           IF PD-04 <> CD-35  DISPLAY "PD-04 <> CD-35".
           IF PD-05 <> CD-34  DISPLAY "PD-05 <> CD-34".
           IF PD-06 <> CD-33  DISPLAY "PD-06 <> CD-33".
           IF PD-07 <> CD-32  DISPLAY "PD-07 <> CD-32".
           IF PD-08 <> CD-31  DISPLAY "PD-08 <> CD-31".
           IF PD-09 <> CD-30  DISPLAY "PD-09 <> CD-30".
           IF PD-10 <> CD-29  DISPLAY "PD-10 <> CD-29".
           IF PD-11 <> CD-28  DISPLAY "PD-11 <> CD-28".
           IF PD-12 <> CD-27  DISPLAY "PD-12 <> CD-27".
           IF PD-13 <> CD-26  DISPLAY "PD-13 <> CD-26".
           IF PD-14 <> CD-25  DISPLAY "PD-14 <> CD-25".
           IF PD-15 <> CD-24  DISPLAY "PD-15 <> CD-24".
           IF PD-16 <> CD-23  DISPLAY "PD-16 <> CD-23".
           IF PD-17 <> CD-22  DISPLAY "PD-17 <> CD-22".
           IF PD-18 <> CD-21  DISPLAY "PD-18 <> CD-21".
           IF PD-19 <> CD-20  DISPLAY "PD-19 <> CD-20".
           IF PD-20 <> CD-19  DISPLAY "PD-20 <> CD-19".
           IF PD-21 <> CD-18  DISPLAY "PD-21 <> CD-18".
           IF PD-22 <> CD-17  DISPLAY "PD-22 <> CD-17".
           IF PD-23 <> CD-16  DISPLAY "PD-23 <> CD-16".
           IF PD-24 <> CD-15  DISPLAY "PD-24 <> CD-15".
           IF PD-25 <> CD-14  DISPLAY "PD-25 <> CD-14".
           IF PD-26 <> CD-13  DISPLAY "PD-26 <> CD-13".
           IF PD-27 <> CD-12  DISPLAY "PD-27 <> CD-12".
           IF PD-28 <> CD-11  DISPLAY "PD-28 <> CD-11".
           IF PD-29 <> CD-10  DISPLAY "PD-29 <> CD-10".
           IF PD-30 <> CD-09  DISPLAY "PD-30 <> CD-09".
           IF PD-31 <> CD-08  DISPLAY "PD-31 <> CD-08".
           IF PD-32 <> CD-07  DISPLAY "PD-32 <> CD-07".
           IF PD-33 <> CD-06  DISPLAY "PD-33 <> CD-06".
           IF PD-34 <> CD-05  DISPLAY "PD-34 <> CD-05".
           IF PD-35 <> CD-04  DISPLAY "PD-35 <> CD-04".
           IF PD-36 <> CD-03  DISPLAY "PD-36 <> CD-03".

           IF PD-03 <> PD-36  DISPLAY "PD-03 <> PD-36".
           IF PD-04 <> PD-35  DISPLAY "PD-04 <> PD-35".
           IF PD-05 <> PD-34  DISPLAY "PD-05 <> PD-34".
           IF PD-06 <> PD-33  DISPLAY "PD-06 <> PD-33".
           IF PD-07 <> PD-32  DISPLAY "PD-07 <> PD-32".
           IF PD-08 <> PD-31  DISPLAY "PD-08 <> PD-31".
           IF PD-09 <> PD-30  DISPLAY "PD-09 <> PD-30".
           IF PD-10 <> PD-29  DISPLAY "PD-10 <> PD-29".
           IF PD-11 <> PD-28  DISPLAY "PD-11 <> PD-28".
           IF PD-12 <> PD-27  DISPLAY "PD-12 <> PD-27".
           IF PD-13 <> PD-26  DISPLAY "PD-13 <> PD-26".
           IF PD-14 <> PD-25  DISPLAY "PD-14 <> PD-25".
           IF PD-15 <> PD-24  DISPLAY "PD-15 <> PD-24".
           IF PD-16 <> PD-23  DISPLAY "PD-16 <> PD-23".
           IF PD-17 <> PD-22  DISPLAY "PD-17 <> PD-22".
           IF PD-18 <> PD-21  DISPLAY "PD-18 <> PD-21".
           IF PD-19 <> PD-20  DISPLAY "PD-19 <> PD-20".
           IF PD-20 <> PD-19  DISPLAY "PD-20 <> PD-19".
           IF PD-21 <> PD-18  DISPLAY "PD-21 <> PD-18".
           IF PD-22 <> PD-17  DISPLAY "PD-22 <> PD-17".
           IF PD-23 <> PD-16  DISPLAY "PD-23 <> PD-16".
           IF PD-24 <> PD-15  DISPLAY "PD-24 <> PD-15".
           IF PD-25 <> PD-14  DISPLAY "PD-25 <> PD-14".
           IF PD-26 <> PD-13  DISPLAY "PD-26 <> PD-13".
           IF PD-27 <> PD-12  DISPLAY "PD-27 <> PD-12".
           IF PD-28 <> PD-11  DISPLAY "PD-28 <> PD-11".
           IF PD-29 <> PD-10  DISPLAY "PD-29 <> PD-10".
           IF PD-30 <> PD-09  DISPLAY "PD-30 <> PD-09".
           IF PD-31 <> PD-08  DISPLAY "PD-31 <> PD-08".
           IF PD-32 <> PD-07  DISPLAY "PD-32 <> PD-07".
           IF PD-33 <> PD-06  DISPLAY "PD-33 <> PD-06".
           IF PD-34 <> PD-05  DISPLAY "PD-34 <> PD-05".
           IF PD-35 <> PD-04  DISPLAY "PD-35 <> PD-04".
           IF PD-36 <> PD-03  DISPLAY "PD-36 <> PD-03".

           IF CD-03 <> CD-36  DISPLAY "CD-03 <> CD-36".
           IF CD-04 <> CD-35  DISPLAY "CD-04 <> CD-35".
           IF CD-05 <> CD-34  DISPLAY "CD-05 <> CD-34".
           IF CD-06 <> CD-33  DISPLAY "CD-06 <> CD-33".
           IF CD-07 <> CD-32  DISPLAY "CD-07 <> CD-32".
           IF CD-08 <> CD-31  DISPLAY "CD-08 <> CD-31".
           IF CD-09 <> CD-30  DISPLAY "CD-09 <> CD-30".
           IF CD-10 <> CD-29  DISPLAY "CD-10 <> CD-29".
           IF CD-11 <> CD-28  DISPLAY "CD-11 <> CD-28".
           IF CD-12 <> CD-27  DISPLAY "CD-12 <> CD-27".
           IF CD-13 <> CD-26  DISPLAY "CD-13 <> CD-26".
           IF CD-14 <> CD-25  DISPLAY "CD-14 <> CD-25".
           IF CD-15 <> CD-24  DISPLAY "CD-15 <> CD-24".
           IF CD-16 <> CD-23  DISPLAY "CD-16 <> CD-23".
           IF CD-17 <> CD-22  DISPLAY "CD-17 <> CD-22".
           IF CD-18 <> CD-21  DISPLAY "CD-18 <> CD-21".
           IF CD-19 <> CD-20  DISPLAY "CD-19 <> CD-20".
           IF CD-20 <> CD-19  DISPLAY "CD-20 <> CD-19".
           IF CD-21 <> CD-18  DISPLAY "CD-21 <> CD-18".
           IF CD-22 <> CD-17  DISPLAY "CD-22 <> CD-17".
           IF CD-23 <> CD-16  DISPLAY "CD-23 <> CD-16".
           IF CD-24 <> CD-15  DISPLAY "CD-24 <> CD-15".
           IF CD-25 <> CD-14  DISPLAY "CD-25 <> CD-14".
           IF CD-26 <> CD-13  DISPLAY "CD-26 <> CD-13".
           IF CD-27 <> CD-12  DISPLAY "CD-27 <> CD-12".
           IF CD-28 <> CD-11  DISPLAY "CD-28 <> CD-11".
           IF CD-29 <> CD-10  DISPLAY "CD-29 <> CD-10".
           IF CD-30 <> CD-09  DISPLAY "CD-30 <> CD-09".
           IF CD-31 <> CD-08  DISPLAY "CD-31 <> CD-08".
           IF CD-32 <> CD-07  DISPLAY "CD-32 <> CD-07".
           IF CD-33 <> CD-06  DISPLAY "CD-33 <> CD-06".
           IF CD-34 <> CD-05  DISPLAY "CD-34 <> CD-05".
           IF CD-35 <> CD-04  DISPLAY "CD-35 <> CD-04".
           IF CD-36 <> CD-03  DISPLAY "CD-36 <> CD-03".

      *    SETTING UP DATA FOR COMPARE WITH NEGATIVE PACKED ZERO

           MOVE LOW-VALUES             TO PZ-01-X.
           MOVE LOW-VALUES             TO PZ-02-X
           MOVE X'0C'                  TO PZ-02-X(20:1).
           MOVE LOW-VALUES             TO PZ-03-X
           MOVE X'0D'                  TO PZ-03-X(20:1).
      *>   note: we previously checked x'10' here, which is "outside"
      *>         of the actual digits; behaviour is undefined there
      *>         and may very between dialects -> so only check actual digits
           MOVE LOW-VALUES             TO PZ-04-X
           MOVE X'01'                  TO PZ-04-X(1:1).
           MOVE X'0D'                  TO PZ-04-X(20:1).
           MOVE LOW-VALUES             TO PZ-05-X
           MOVE X'010D'                TO PZ-05-X(19:2).
           MOVE LOW-VALUES             TO PZ-06-X
           MOVE X'1D'                  TO PZ-06-X(20:1).

           IF PZ-01 <> PZ-02  DISPLAY "PZ-01 <> PZ-02".
           IF PZ-01 <> PZ-03  DISPLAY "PZ-01 <> PZ-03".
           IF PZ-02 <> PZ-03  DISPLAY "PZ-02 <> PZ-03".
           IF PZ-02 <= PZ-04  DISPLAY "PZ-02 <= PZ-04".
           IF PZ-02 <= PZ-05  DISPLAY "PZ-02 <= PZ-05".
           IF PZ-02 <= PZ-06  DISPLAY "PZ-02 <= PZ-05".
      *
           IF U4-32D <>  UP-32D DISPLAY "U4-32D <> UP-32D".
           IF U4-32D <>  SP-32D DISPLAY "U4-32D <> SP-32D".
           IF U4-32D <=  NP-32D DISPLAY "U4-32D <= NP-32D".
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:1959: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:1959"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1959"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1960: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:1960"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1960"
$at_failed && at_fn_log_failure
$at_traceon; }


# also check "not optimized during codegen",
# which leads to other code-paths
{ set +x
$as_echo "$at_srcdir/data_packed.at:1964: \$COMPILE -fno-fast-compare -C -o progalt.c prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -fno-fast-compare -C -o progalt.c prog.cob" "data_packed.at:1964"
( $at_check_trace; $COMPILE -fno-fast-compare -C -o progalt.c prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1964"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1965: \$COMPILE progalt.c"
at_fn_check_prepare_dynamic "$COMPILE progalt.c" "data_packed.at:1965"
( $at_check_trace; $COMPILE progalt.c
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1965"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:1966: \$COBCRUN_DIRECT ./progalt"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./progalt" "data_packed.at:1966"
( $at_check_trace; $COBCRUN_DIRECT ./progalt
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:1966"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1275
#AT_START_1276
at_fn_group_banner 1276 'data_packed.at:1971' \
  "PPP COMP-3" "                                     " 5
at_xfail=no
(
  $as_echo "1276. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 FENCE         VALUE x'ABBAAB'.
       01 FILLER.
         05 FENCE-A          PIC XXX VALUE FENCE.
         05 X-1  PIC 999PPP  COMP-6  VALUE 91000.
         05 FENCE-B          PIC XXX VALUE FENCE.
         05 X-2  PIC 999PPP  COMP-6  VALUE 92000.
         05 FENCE-C          PIC XXX VALUE FENCE.
         05 X-4  PIC VPPP999 COMP-6  VALUE 0.000128.
         05 FENCE-D          PIC XXX VALUE FENCE.
       01 FENCE-1            PIC XXX VALUE FENCE.
       01 D-1    PIC 999PPP  COMP-6  VALUE 95000.
       01 D-2    PIC 9999PP  COMP-6  VALUE 193000.
       01 FENCE-2            PIC XXX VALUE FENCE.
       01  WRK-DS-LS-1P17-1 PIC S9P(17) SIGN LEADING SEPARATE
           CHARACTER VALUE  -100000000000000000.
       01  WRK-AE-3  PIC XBXXX/XXX/XXX/XXX/XXXBXX.
       01  MOVE72    PICTURE 9(10) VALUE 3344556677.
       01  MOVE73    PICTURE X(5)BA(10)0X.
       01  GRP-AE-0002.
           05  AE-0002             PICTURE XX0XXBXXX.
       PROCEDURE        DIVISION.
           MOVE    3344556677 TO MOVE72.
           MOVE    MOVE72 TO MOVE73.
           IF MOVE73 NOT EQUAL TO "33445 56677     0 "
              DISPLAY "MOVE X-EDIT failed: " MOVE73 ".".
           MOVE 019823 TO AE-0002.
           IF GRP-AE-0002 NOT EQUAL TO "01098 23 "
              DISPLAY "MOVE AE-EDIT failed: " GRP-AE-0002 ".".
           MOVE WRK-DS-LS-1P17-1 TO WRK-AE-3.
           DISPLAY "MOVE 1P17: " WRK-DS-LS-1P17-1 " : "
                      LENGTH OF WRK-DS-LS-1P17-1 ".".
           DISPLAY "MOVE A-E : " WRK-AE-3 ".".
           IF WRK-AE-3 NOT EQUAL TO "1 000/000/000/000/000 00"
              DISPLAY "MOVE 1P17 TO A-E failed".
           DISPLAY "INIT X-1 : " X-1 " .".
           DISPLAY "INIT X-2 : " X-2 " .".
           DISPLAY "INIT X-4 : " X-4 " .".
           DISPLAY "INIT D-1 : " D-1 " .".
           MOVE D-1 TO X-2 X-1
           MOVE X-2 TO D-1.
           DISPLAY "MOVE X-1 : " X-1 " .".
           DISPLAY "MOVE X-2 : " X-2 " .".
           MOVE 0.000256 TO X-4
           DISPLAY "MOVE X-4 : " X-4 " .".
           DISPLAY "MOVE D-1 : " D-1 " .".
           MOVE D-2 TO X-2 X-1
           DISPLAY "MOVE X-1 : " X-1 ":" D-2 " .".
           DISPLAY "MOVE X-2 : " X-2 ":" D-2 " .".
           MOVE 98000   TO X-1.
           IF X-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " X-1.
           MOVE 98000   TO D-1
           IF D-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " D-1.
           ADD 1000 TO X-1
           IF X-1 NOT = 99000
             DISPLAY "+ 1000 failed: " X-1.
           SUBTRACT 4000 FROM X-1.
           IF X-1 NOT = 95000
             DISPLAY "- 4000 failed: " X-1.
           DIVIDE 3 INTO X-1.
           IF X-1 NOT = 31000
             DISPLAY "/ 3 failed: " X-1.
           MULTIPLY 2 BY X-1 GIVING X-1.
           IF X-1 NOT = 62000
             DISPLAY "* 2 failed: " X-1.

           IF FENCE-1 NOT = FENCE
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-A NOT = FENCE
             DISPLAY 'broken FENCE-A' UPON SYSERR.
           IF FENCE-B NOT = FENCE
             DISPLAY 'broken FENCE-B' UPON SYSERR.
           IF FENCE-C NOT = FENCE
             DISPLAY 'broken FENCE-C' UPON SYSERR.
           IF FENCE-D NOT = FENCE
             DISPLAY 'broken FENCE-D' UPON SYSERR.

           STOP RUN.
_ATEOF


# CHECKME: -Wno-typing because of MOVE warning
{ set +x
$as_echo "$at_srcdir/data_packed.at:2063: \$COMPILE -Wno-typing prog.cob"
at_fn_check_prepare_dynamic "$COMPILE -Wno-typing prog.cob" "data_packed.at:2063"
( $at_check_trace; $COMPILE -Wno-typing prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:2063"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_packed.at:2065: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:2065"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "MOVE 1P17: -100000000000000000 : 2.
MOVE A-E : 1 000/000/000/000/000 00.
INIT X-1 : 091000 .
INIT X-2 : 092000 .
INIT X-4 : .000128 .
INIT D-1 : 095000 .
MOVE X-1 : 095000 .
MOVE X-2 : 095000 .
MOVE X-4 : .000256 .
MOVE D-1 : 095000 .
MOVE X-1 : 193000:193000 .
MOVE X-2 : 193000:193000 .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:2065"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1276
#AT_START_1277
at_fn_group_banner 1277 'data_packed.at:2083' \
  "PPP COMP-6" "                                     " 5
at_xfail=no
(
  $as_echo "1277. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_display.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 FENCE         VALUE x'ABBAAB'.
       01 FILLER.
         05 FENCE-A          PIC XXX VALUE FENCE.
         05 X-1  PIC 999PPP  COMP-6  VALUE 91000.
         05 FENCE-B          PIC XXX VALUE FENCE.
         05 X-2  PIC 999PPP  COMP-6  VALUE 92000.
         05 FENCE-C          PIC XXX VALUE FENCE.
         05 X-4  PIC VPPP999 COMP-6  VALUE 0.000128.
         05 FENCE-D          PIC XXX VALUE FENCE.
       01 FENCE-1            PIC XXX VALUE FENCE.
       01 D-1    PIC 999PPP  COMP-6  VALUE 95000.
       01 D-2    PIC 9999PP  COMP-6  VALUE 193000.
       01 FENCE-2            PIC XXX VALUE FENCE.
       PROCEDURE        DIVISION.
           DISPLAY "INIT X-1 : " X-1 " .".
           DISPLAY "INIT X-2 : " X-2 " .".
           DISPLAY "INIT X-4 : " X-4 " .".
           DISPLAY "INIT D-1 : " D-1 " .".
           MOVE D-1 TO X-2 X-1
           MOVE X-2 TO D-1.
           DISPLAY "MOVE X-1 : " X-1 " .".
           DISPLAY "MOVE X-2 : " X-2 " .".
           MOVE 0.000256 TO X-4
           DISPLAY "MOVE X-4 : " X-4 " .".
           DISPLAY "MOVE D-1 : " D-1 " .".
           MOVE D-2 TO X-2 X-1
           DISPLAY "MOVE X-1 : " X-1 ":" D-2 " .".
           DISPLAY "MOVE X-2 : " X-2 ":" D-2 " .".
           MOVE 98000   TO X-1.
           IF X-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " X-1.
           MOVE 98000   TO D-1
           IF D-1 NOT = 98000
             DISPLAY "MOVE 98000 failed: " D-1.
           ADD 1000 TO X-1
           IF X-1 NOT = 99000
             DISPLAY "+ 1000 failed: " X-1.
           SUBTRACT 4000 FROM X-1.
           IF X-1 NOT = 95000
             DISPLAY "- 4000 failed: " X-1.
           DIVIDE 3 INTO X-1.
           IF X-1 NOT = 31000
             DISPLAY "/ 3 failed: " X-1.
           MULTIPLY 2 BY X-1 GIVING X-1.
           IF X-1 NOT = 62000
             DISPLAY "* 2 failed: " X-1.

           IF FENCE-1 NOT = FENCE
             DISPLAY 'broken FENCE-1' UPON SYSERR.
           IF FENCE-2 NOT = FENCE
             DISPLAY 'broken FENCE-2' UPON SYSERR.
           IF FENCE-A NOT = FENCE
             DISPLAY 'broken FENCE-A' UPON SYSERR.
           IF FENCE-B NOT = FENCE
             DISPLAY 'broken FENCE-B' UPON SYSERR.
           IF FENCE-C NOT = FENCE
             DISPLAY 'broken FENCE-C' UPON SYSERR.
           IF FENCE-D NOT = FENCE
             DISPLAY 'broken FENCE-D' UPON SYSERR.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:2156: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:2156"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:2156"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_packed.at:2158: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:2158"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "INIT X-1 : 091000 .
INIT X-2 : 092000 .
INIT X-4 : .000128 .
INIT D-1 : 095000 .
MOVE X-1 : 095000 .
MOVE X-2 : 095000 .
MOVE X-4 : .000256 .
MOVE D-1 : 095000 .
MOVE X-1 : 193000:193000 .
MOVE X-2 : 193000:193000 .
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:2158"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1277
#AT_START_1278
at_fn_group_banner 1278 'data_packed.at:2174' \
  "arithmetic truncation with USAGE PACKED-DECIMAL" "" 5
at_xfail=no
(
  $as_echo "1278. $at_setup_line: testing $at_desc ..."
  $at_traceon



# note: for changes mind the nearly identical test in data_display.at

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID. prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       78 FENCE         VALUE x'ABBAAB'.
       01 FILLER.
         05 FENCE-A     PIC XXX VALUE FENCE.
         05 RESULT      PIC 9(03) PACKED-DECIMAL.
         05 FENCE-B     PIC XXX VALUE FENCE.
       PROCEDURE        DIVISION.
       MAIN.
      * internal arithmetic to DISPLAY
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 2 / RESULT
           IF RESULT NOT = 14
              DISPLAY "NOT 14: " RESULT.

      * internal arithmetic to DISPLAY, with sign drop
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 20 / RESULT
           IF RESULT NOT = 4
              DISPLAY "NOT - 4: " RESULT.

      * internal arithmetic to DISPLAY with truncation of decimal-part
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT / 2
           IF RESULT NOT = 15
              DISPLAY "NOT 15: " RESULT.

      * internal arithmetic to DISPLAY with truncation of integer-part
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT - 2000 / RESULT
           IF RESULT NOT = 984
              DISPLAY "NOT -1 984: " RESULT.

      * internal arithmetic to DISPLAY with truncation of integer-part
      * with leading zeros after truncation
           MOVE 1 TO RESULT
           COMPUTE RESULT = 15 + RESULT + 2000 / RESULT
           IF RESULT NOT = 16
              DISPLAY "NOT +20 16: " RESULT.

           IF FENCE-A NOT = FENCE
             DISPLAY 'broken FENCE-A' UPON SYSERR.
           IF FENCE-B NOT = FENCE
             DISPLAY 'broken FENCE-B' UPON SYSERR.

           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:2230: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:2230"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:2230"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:2231: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:2231"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:2231"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1278
#AT_START_1279
at_fn_group_banner 1279 'data_packed.at:2236' \
  "MOVE between several BCD fields" "                " 5
at_xfail=no
(
  $as_echo "1279. $at_setup_line: testing $at_desc ..."
  $at_traceon



# This test was originally generated and contributed by Chuck Haatvedt.
# It tests a huge amount of MOVE between BCD fields with different
# attributes (size, decimal places, sign, sign nible) and
# checks for the expected hexadecimal value after the MOVE.
# The initial test was split later to be compilable without issues on
# "small tin" and also to make it easier for checking tools to insert
# additional debug code - without forcing the compiler to work too hard
# to compile / link that.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTEST-MOVE1.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77 FLD0001A                       PIC  9(08)V9(19) COMP-3
           VALUE  72210483.5706116943150334464.
       77 FLD0001C                       PIC  9(01)       COMP-6.

       77 FLD0002A                       PIC  9(05)V9(26) COMP-6
           VALUE  83954.98773698940597753903603006.
       77 FLD0002C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0003A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0003C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0004A                       PIC S9(08)V9(03) COMP-3
           VALUE +31348416.669.
       77 FLD0004C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0005A                       PIC S9(07)V9(01) COMP-3
           VALUE +2337334.8.
       77 FLD0005C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0006A                       PIC  9(04)       COMP-6
           VALUE  1169.
       77 FLD0006C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0007A                       PIC S9(04)       COMP-3
           VALUE +1123.
       77 FLD0007C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0008A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0008C                       PIC S9(03)       COMP-3.

       77 FLD0009A                       PIC  9(10)V9(07) COMP-6
           VALUE  4695987895.4491957.
       77 FLD0009C                       PIC  9(05)V9(28) COMP-3.

       77 FLD0010A                       PIC  9(03)V9(32) COMP-3
           VALUE  932.59120224122482589734772773226723.
       77 FLD0010C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0011A                       PIC  9(09)V9(04) COMP-6
           VALUE  356168291.4830.
       77 FLD0011C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0012A                       PIC  9(03)       COMP-6
           VALUE  087.
       77 FLD0012C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0013A                       PIC  9(06)V9(25) COMP-6
           VALUE  829630.0004717120923913853403064.
       77 FLD0013C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0014A                       PIC  9(09)V9(13) COMP-3
           VALUE  592943121.2490873237541.
       77 FLD0014C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0015A                       PIC  9(07)V9(23) COMP-6
           VALUE  7984732.71412134533164817185024.
       77 FLD0015C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0016A                       PIC  9(05)V9(28) COMP-3
           VALUE  87275.9557853607148558694461826235.
       77 FLD0016C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0017A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0017C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0018A                       PIC  9(07)V9(21) COMP-3
           VALUE  7619026.805277494540646898713.
       77 FLD0018C                       PIC S9(01)       COMP-3.

       77 FLD0019A                       PIC S9(10)V9(08) COMP-3
           VALUE -4930528885.68236813.
       77 FLD0019C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0020A                       PIC  9(09)V9(15) COMP-3
           VALUE  643887452.720044328735582.
       77 FLD0020C                       PIC  9(09)V9(11) COMP-3.

       77 FLD0021A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.880441680787707126043528660375159233.
       77 FLD0021C                       PIC S9(01)       COMP-3.

       77 FLD0022A                       PIC  9(06)V9(24) COMP-3
           VALUE  810040.192546636172998830716096.
       77 FLD0022C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0023A                       PIC  9(02)       COMP-6
           VALUE  06.
       77 FLD0023C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0024A                       PIC  9(09)V9(03) COMP-6
           VALUE  329406009.124.
       77 FLD0024C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0025A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0025C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0026A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0026C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0027A                       PIC  9(09)V9(13) COMP-3
           VALUE  601026867.0937520818498.
       77 FLD0027C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0028A                       PIC  9(04)V9(29) COMP-6
           VALUE  8794.72782911061568000832266989164.
       77 FLD0028C                       PIC S9(01)       COMP-3.

       77 FLD0029A                       PIC  9(05)       COMP-6
           VALUE  13697.
       77 FLD0029C                       PIC  9(09)V9(17) COMP-3.

       77 FLD0030A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0030C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0031A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0031C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0032A                       PIC  9(10)V9(10) COMP-6
           VALUE  5269599769.4606222516.
       77 FLD0032C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0033A                       PIC  9(09)V9(15) COMP-3
           VALUE  641903038.069859710468278.
       77 FLD0033C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0034A                       PIC S9(02)       COMP-3
           VALUE -05.
       77 FLD0034C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0035A                       PIC  9(06)V9(25) COMP-6
           VALUE  816285.5924199176049782522568420.
       77 FLD0035C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0036A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.789384107274801127829277902492322027.
       77 FLD0036C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0037A                       PIC  9(10)V9(11) COMP-6
           VALUE  5559560836.79804091701.
       77 FLD0037C                       PIC S9(05)       COMP-3.

       77 FLD0038A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5897506417712539139586169767426326.
       77 FLD0038C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0039A                       PIC  9(04)V9(29) COMP-3
           VALUE  8933.20399454893721014059337903745.
       77 FLD0039C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0040A                       PIC S9(06)       COMP-3
           VALUE -162227.
       77 FLD0040C                       PIC S9(03)       COMP-3.

       77 FLD0041A                       PIC  9(09)V9(17) COMP-6
           VALUE  687709210.19485042879892944.
       77 FLD0041C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0042A                       PIC  9(07)V9(22) COMP-6
           VALUE  7680734.5400734650109342283030.
       77 FLD0042C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0043A                       PIC S9(08)V9(02) COMP-3
           VALUE -28038049.48.
       77 FLD0043C                       PIC  9(04)V9(30) COMP-3.

       77 FLD0044A                       PIC  9(06)V9(01) COMP-6
           VALUE  206224.3.
       77 FLD0044C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0045A                       PIC  9(08)V9(02) COMP-6
           VALUE  28592495.81.
       77 FLD0045C                       PIC  9(09)V9(05) COMP-6.

       77 FLD0046A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0046C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0047A                       PIC  9(08)V9(02) COMP-6
           VALUE  26966592.97.
       77 FLD0047C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0048A                       PIC  9(05)V9(26) COMP-6
           VALUE  83962.84254838164429202151950448.
       77 FLD0048C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0049A                       PIC  9(09)V9(16) COMP-6
           VALUE  677621907.0336453320635428.
       77 FLD0049C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0050A                       PIC  9(09)V9(03) COMP-6
           VALUE  329667670.988.
       77 FLD0050C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0051A                       PIC  9(09)V9(15) COMP-3
           VALUE  643375703.689413991348544.
       77 FLD0051C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0052A                       PIC  9(09)V9(04) COMP-6
           VALUE  367200483.8576.
       77 FLD0052C                       PIC  9(09)V9(11) COMP-3.

       77 FLD0053A                       PIC  9(07)V9(01) COMP-6
           VALUE  2260324.6.
       77 FLD0053C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0054A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0054C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0055A                       PIC  9(09)V9(14) COMP-3
           VALUE  622232417.66982828604426.
       77 FLD0055C                       PIC  9(08)V9(17) COMP-3.

       77 FLD0056A                       PIC  9(07)V9(01) COMP-6
           VALUE  2161993.9.
       77 FLD0056C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0057A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.20878243011406638629523513372987.
       77 FLD0057C                       PIC S9(02)       COMP-3.

       77 FLD0058A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.6574119281082611010447180888149887.
       77 FLD0058C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0059A                       PIC  9(07)V9(02) COMP-6
           VALUE  2566438.61.
       77 FLD0059C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0060A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.888752946983269120906356874911580234.
       77 FLD0060C                       PIC  9(06)       COMP-6.

       77 FLD0061A                       PIC  9(03)       COMP-6
           VALUE  095.
       77 FLD0061C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0062A                       PIC  9(10)V9(11) COMP-6
           VALUE  5579259193.81647705819.
       77 FLD0062C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0063A                       PIC S9(07)V9(01) COMP-3
           VALUE +2106925.6.
       77 FLD0063C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0064A                       PIC  9(06)V9(25) COMP-6
           VALUE  828553.1635867423583263757791428.
       77 FLD0064C                       PIC S9(04)       COMP-3.

       77 FLD0065A                       PIC  9(08)V9(02) COMP-6
           VALUE  26934154.73.
       77 FLD0065C                       PIC S9(04)       COMP-3.

       77 FLD0066A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0066C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0067A                       PIC S9(03)       COMP-3
           VALUE -091.
       77 FLD0067C                       PIC S9(01)       COMP-3.

       77 FLD0068A                       PIC  9(06)V9(25) COMP-6
           VALUE  838055.6814082209537986045688739.
       77 FLD0068C                       PIC  9(01)       COMP-6.

       77 FLD0069A                       PIC  9(10)V9(08) COMP-6
           VALUE  4880885916.76487937.
       77 FLD0069C                       PIC  9(03)       COMP-6.

       77 FLD0070A                       PIC  9(08)V9(18) COMP-6
           VALUE  69654747.914044090606466852.
       77 FLD0070C                       PIC S9(06)V9(01) COMP-3.

       77 FLD0071A                       PIC  9(02)       COMP-6
           VALUE  05.
       77 FLD0071C                       PIC  9(04)       COMP-6.

       77 FLD0072A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.925387953744267965916492357791867107.
       77 FLD0072C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0073A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.812328554525302504174533169134519994.
       77 FLD0073C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0074A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.84903592679257400277492706663906.
       77 FLD0074C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0075A                       PIC  9(10)V9(10) COMP-3
           VALUE  5446083738.8683014381.
       77 FLD0075C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0076A                       PIC S9(07)V9(02) COMP-3
           VALUE +2412584.18.
       77 FLD0076C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0077A                       PIC  9(10)V9(08) COMP-6
           VALUE  4971042025.86989840.
       77 FLD0077C                       PIC  9(05)V9(28) COMP-6.

       77 FLD0078A                       PIC  9(06)V9(01) COMP-6
           VALUE  186044.2.
       77 FLD0078C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0079A                       PIC  9(09)V9(15) COMP-6
           VALUE  638119223.314542294289708.
       77 FLD0079C                       PIC S9(03)       COMP-3.

       77 FLD0080A                       PIC  9(07)V9(23) COMP-3
           VALUE  7905587.67133311302011122734256.
       77 FLD0080C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0081A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.951308658902108250643436804239172488.
       77 FLD0081C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0082A                       PIC S9(08)V9(02) COMP-3
           VALUE -26324419.10.
       77 FLD0082C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0083A                       PIC  9(09)V9(14) COMP-3
           VALUE  631384121.39469823891602.
       77 FLD0083C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0084A                       PIC  9(04)V9(29) COMP-3
           VALUE  8913.08379718931953483718189090723.
       77 FLD0084C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0085A                       PIC  9(05)       COMP-6
           VALUE  15779.
       77 FLD0085C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0086A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.766547774737049936177868403319735080.
       77 FLD0086C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0087A                       PIC  9(09)V9(14) COMP-6
           VALUE  617158605.01368802193411.
       77 FLD0087C                       PIC  9(04)       COMP-6.

       77 FLD0088A                       PIC  9(10)V9(12) COMP-3
           VALUE  5809468198.000283800652.
       77 FLD0088C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0089A                       PIC  9(06)V9(24) COMP-3
           VALUE  802942.222446262787727278009697.
       77 FLD0089C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0090A                       PIC S9(08)V9(02) COMP-3
           VALUE -28271627.31.
       77 FLD0090C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0091A                       PIC  9(09)V9(07) COMP-6
           VALUE  438808038.0901770.
       77 FLD0091C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0092A                       PIC S9(07)V9(01) COMP-3
           VALUE +2146587.0.
       77 FLD0092C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0093A                       PIC  9(06)V9(25) COMP-3
           VALUE  831848.6927757260396276706160278.
       77 FLD0093C                       PIC  9(07)V9(23) COMP-3.

       77 FLD0094A                       PIC  9(07)V9(01) COMP-6
           VALUE  2260698.5.
       77 FLD0094C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0095A                       PIC  9(07)V9(22) COMP-6
           VALUE  7681159.7607563408818265315858.
       77 FLD0095C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0096A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0096C                       PIC  9(05)V9(28) COMP-6.

       77 FLD0097A                       PIC  9(03)       COMP-6
           VALUE  085.
       77 FLD0097C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0098A                       PIC  9(05)V9(28) COMP-6
           VALUE  87637.1310136299430659789777564583.
       77 FLD0098C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0099A                       PIC S9(10)V9(08) COMP-3
           VALUE -4946809917.70565292.
       77 FLD0099C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0100A                       PIC  9(10)V9(09) COMP-3
           VALUE  5148281813.288457797.
       77 FLD0100C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0101A                       PIC S9(07)V9(02) COMP-3
           VALUE -2605358.58.
       77 FLD0101C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0102A                       PIC  9(05)       COMP-6
           VALUE  13880.
       77 FLD0102C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0103A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.51599988912647631877916865050792.
       77 FLD0103C                       PIC  9(01)       COMP-6.

       77 FLD0104A                       PIC  9(07)V9(01) COMP-6
           VALUE  2254306.3.
       77 FLD0104C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0105A                       PIC S9(08)V9(03) COMP-3
           VALUE -29081388.428.
       77 FLD0105C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0106A                       PIC S9(02)       COMP-3
           VALUE -07.
       77 FLD0106C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0107A                       PIC  9(09)V9(16) COMP-6
           VALUE  677462443.7557797973497031.
       77 FLD0107C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0108A                       PIC  9(09)V9(14) COMP-3
           VALUE  610210882.31341436003418.
       77 FLD0108C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0109A                       PIC S9(04)       COMP-3
           VALUE +1136.
       77 FLD0109C                       PIC  9(04)V9(30) COMP-3.

       77 FLD0110A                       PIC  9(07)V9(23) COMP-3
           VALUE  7940109.55673497886841971649118.
       77 FLD0110C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0111A                       PIC  9(09)V9(03) COMP-6
           VALUE  326472185.831.
       77 FLD0111C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0112A                       PIC  9(08)V9(19) COMP-3
           VALUE  71238052.4624002697819946661.
       77 FLD0112C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0113A                       PIC  9(04)V9(30) COMP-6
           VALUE  9092.566324157485002643852567416615.
       77 FLD0113C                       PIC  9(04)       COMP-6.

       77 FLD0114A                       PIC  9(09)V9(07) COMP-6
           VALUE  437805064.1539988.
       77 FLD0114C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0115A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.2362934933669089687668929400388151.
       77 FLD0115C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0116A                       PIC  9(07)V9(22) COMP-3
           VALUE  7646463.4359510952332783517704.
       77 FLD0116C                       PIC  9(01)       COMP-6.

       77 FLD0117A                       PIC  9(09)V9(14) COMP-6
           VALUE  617509561.34001855346582.
       77 FLD0117C                       PIC  9(05)       COMP-6.

       77 FLD0118A                       PIC  9(10)V9(10) COMP-3
           VALUE  5408402726.5490597358.
       77 FLD0118C                       PIC S9(03)       COMP-3.

       77 FLD0119A                       PIC S9(08)V9(03) COMP-3
           VALUE +30078875.458.
       77 FLD0119C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0120A                       PIC  9(06)V9(25) COMP-3
           VALUE  830160.1137616416714593015058198.
       77 FLD0120C                       PIC S9(02)       COMP-3.

       77 FLD0121A                       PIC S9(07)V9(01) COMP-3
           VALUE +2338292.2.
       77 FLD0121C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0122A                       PIC S9(06)V9(01) COMP-3
           VALUE -184951.8.
       77 FLD0122C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0123A                       PIC S9(02)       COMP-3
           VALUE -05.
       77 FLD0123C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0124A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0124C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0125A                       PIC  9(04)V9(29) COMP-3
           VALUE  8800.31826789913984576685379579430.
       77 FLD0125C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0126A                       PIC  9(06)V9(24) COMP-6
           VALUE  807990.071015203703552742808824.
       77 FLD0126C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0127A                       PIC  9(04)V9(30) COMP-6
           VALUE  8981.860178820127993404298649693373.
       77 FLD0127C                       PIC  9(05)V9(28) COMP-6.

       77 FLD0128A                       PIC  9(10)V9(06) COMP-6
           VALUE  4298489587.591516.
       77 FLD0128C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0129A                       PIC S9(08)V9(04) COMP-3
           VALUE +33460508.1048.
       77 FLD0129C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0130A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0130C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0131A                       PIC  9(08)V9(02) COMP-6
           VALUE  26916210.05.
       77 FLD0131C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0132A                       PIC  9(04)       COMP-6
           VALUE  1270.
       77 FLD0132C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0133A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.890353542063604619372085835493635386.
       77 FLD0133C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0134A                       PIC  9(08)V9(18) COMP-3
           VALUE  70385499.741438917187252855.
       77 FLD0134C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0135A                       PIC  9(10)V9(07) COMP-6
           VALUE  4678335500.0128495.
       77 FLD0135C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0136A                       PIC S9(05)       COMP-3
           VALUE -15169.
       77 FLD0136C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0137A                       PIC S9(08)V9(02) COMP-3
           VALUE -27190319.39.
       77 FLD0137C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0138A                       PIC S9(10)V9(08) COMP-3
           VALUE -4824223828.94490853.
       77 FLD0138C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0139A                       PIC  9(09)V9(03) COMP-6
           VALUE  319644653.394.
       77 FLD0139C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0140A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0140C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0141A                       PIC  9(09)V9(14) COMP-3
           VALUE  612266512.11346116987499.
       77 FLD0141C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0142A                       PIC  9(09)V9(04) COMP-6
           VALUE  356201246.7531.
       77 FLD0142C                       PIC S9(04)       COMP-3.

       77 FLD0143A                       PIC S9(07)V9(02) COMP-3
           VALUE -2608987.15.
       77 FLD0143C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0144A                       PIC  9(10)V9(11) COMP-6
           VALUE  5664625691.64754570216.
       77 FLD0144C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0145A                       PIC  9(09)V9(13) COMP-3
           VALUE  592809780.4295365813587.
       77 FLD0145C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0146A                       PIC S9(03)       COMP-3
           VALUE -091.
       77 FLD0146C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0147A                       PIC  9(03)       COMP-6
           VALUE  085.
       77 FLD0147C                       PIC  9(10)V9(05) COMP-6.

       77 FLD0148A                       PIC  9(04)       COMP-6
           VALUE  1189.
       77 FLD0148C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0149A                       PIC  9(05)V9(27) COMP-3
           VALUE  86469.811002464236349140946913394.
       77 FLD0149C                       PIC S9(02)       COMP-3.

       77 FLD0150A                       PIC S9(02)       COMP-3
           VALUE -06.
       77 FLD0150C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0151A                       PIC  9(09)V9(13) COMP-3
           VALUE  602633749.4884196344102.
       77 FLD0151C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0152A                       PIC S9(08)V9(02) COMP-3
           VALUE -28005400.65.
       77 FLD0152C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0153A                       PIC  9(08)V9(18) COMP-3
           VALUE  69246387.672994647033419823.
       77 FLD0153C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0154A                       PIC  9(09)V9(14) COMP-6
           VALUE  618531644.61004783714059.
       77 FLD0154C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0155A                       PIC  9(10)V9(12) COMP-3
           VALUE  5816028861.286740569980.
       77 FLD0155C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0156A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3830714078202746009083057288080453.
       77 FLD0156C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0157A                       PIC  9(09)V9(16) COMP-6
           VALUE  659745695.0483697735165833.
       77 FLD0157C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0158A                       PIC S9(09)V9(06) COMP-3
           VALUE +412656981.234114.
       77 FLD0158C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0159A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0159C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0160A                       PIC  9(08)V9(20) COMP-6
           VALUE  74656107.83998073429756914265.
       77 FLD0160C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0161A                       PIC  9(07)V9(22) COMP-6
           VALUE  7887170.9741627593626134284932.
       77 FLD0161C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0162A                       PIC S9(02)       COMP-3
           VALUE -07.
       77 FLD0162C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0163A                       PIC  9(09)V9(14) COMP-6
           VALUE  618392824.19829444403802.
       77 FLD0163C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0164A                       PIC S9(06)V9(01) COMP-3
           VALUE +204076.7.
       77 FLD0164C                       PIC  9(04)       COMP-6.

       77 FLD0165A                       PIC  9(09)V9(14) COMP-3
           VALUE  610409164.63927785695631.
       77 FLD0165C                       PIC  9(04)       COMP-6.

       77 FLD0166A                       PIC  9(07)V9(02) COMP-6
           VALUE  2460589.98.
       77 FLD0166C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0167A                       PIC S9(09)V9(03) COMP-3
           VALUE +323253458.962.
       77 FLD0167C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0168A                       PIC S9(04)       COMP-3
           VALUE +1200.
       77 FLD0168C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0169A                       PIC  9(06)V9(25) COMP-3
           VALUE  834885.7368063762329768451309064.
       77 FLD0169C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0170A                       PIC  9(08)V9(19) COMP-3
           VALUE  72325482.4666709539293663056.
       77 FLD0170C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0171A                       PIC  9(09)V9(16) COMP-6
           VALUE  675345293.4675296948086042.
       77 FLD0171C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0172A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.0216523360032936373897882731398567.
       77 FLD0172C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0173A                       PIC S9(09)V9(06) COMP-3
           VALUE +412472914.336663.
       77 FLD0173C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0174A                       PIC S9(04)       COMP-3
           VALUE +1244.
       77 FLD0174C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0175A                       PIC S9(05)       COMP-3
           VALUE +13456.
       77 FLD0175C                       PIC S9(02)       COMP-3.

       77 FLD0176A                       PIC  9(07)V9(23) COMP-3
           VALUE  7902178.74582138546379894705751.
       77 FLD0176C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0177A                       PIC  9(07)V9(21) COMP-3
           VALUE  7618839.577049143496623173632.
       77 FLD0177C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0178A                       PIC  9(09)V9(04) COMP-6
           VALUE  355502105.3348.
       77 FLD0178C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0179A                       PIC  9(09)V9(05) COMP-6
           VALUE  388560564.63472.
       77 FLD0179C                       PIC  9(03)       COMP-6.

       77 FLD0180A                       PIC  9(05)V9(27) COMP-6
           VALUE  85946.157652659294079455776227405.
       77 FLD0180C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0181A                       PIC  9(06)V9(01) COMP-6
           VALUE  188908.8.
       77 FLD0181C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0182A                       PIC  9(10)V9(13) COMP-6
           VALUE  6061401860.3468300394609.
       77 FLD0182C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0183A                       PIC  9(07)V9(23) COMP-3
           VALUE  7910108.10526126539876656806882.
       77 FLD0183C                       PIC S9(02)       COMP-3.

       77 FLD0184A                       PIC  9(09)V9(15) COMP-6
           VALUE  635945742.812533687526865.
       77 FLD0184C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0185A                       PIC  9(05)       COMP-6
           VALUE  15666.
       77 FLD0185C                       PIC  9(08)V9(20) COMP-6.

       77 FLD0186A                       PIC  9(02)       COMP-6
           VALUE  07.
       77 FLD0186C                       PIC  9(05)V9(26) COMP-3.

       77 FLD0187A                       PIC  9(09)V9(13) COMP-3
           VALUE  604672028.7423602568921.
       77 FLD0187C                       PIC  9(10)V9(12) COMP-6.

       77 FLD0188A                       PIC  9(08)V9(17) COMP-3
           VALUE  68008236.87569536035724127.
       77 FLD0188C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0189A                       PIC  9(10)V9(09) COMP-3
           VALUE  5115071016.238050827.
       77 FLD0189C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0190A                       PIC  9(07)V9(02) COMP-6
           VALUE  2382137.54.
       77 FLD0190C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0191A                       PIC  9(05)       COMP-6
           VALUE  13720.
       77 FLD0191C                       PIC  9(06)V9(24) COMP-3.

       77 FLD0192A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.894259454195439840162862310535274446.
       77 FLD0192C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0193A                       PIC  9(10)V9(06) COMP-6
           VALUE  4252943677.090519.
       77 FLD0193C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0194A                       PIC  9(09)V9(06) COMP-6
           VALUE  417168379.939779.
       77 FLD0194C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0195A                       PIC  9(08)V9(02) COMP-6
           VALUE  26645846.45.
       77 FLD0195C                       PIC  9(05)       COMP-6.

       77 FLD0196A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0196C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0197A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.847788375924405590566834689525421708.
       77 FLD0197C                       PIC  9(02)       COMP-6.

       77 FLD0198A                       PIC  9(09)V9(13) COMP-3
           VALUE  593293108.5591157671643.
       77 FLD0198C                       PIC S9(05)       COMP-3.

       77 FLD0199A                       PIC  9(07)V9(02) COMP-6
           VALUE  2483287.24.
       77 FLD0199C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0200A                       PIC S9(10)V9(08) COMP-3
           VALUE -4935972790.60619176.
       77 FLD0200C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0201A                       PIC  9(04)       COMP-6
           VALUE  1282.
       77 FLD0201C                       PIC  9(07)V9(23) COMP-3.

       77 FLD0202A                       PIC S9(09)V9(04) COMP-3
           VALUE -360603443.7503.
       77 FLD0202C                       PIC  9(03)V9(32) COMP-6.

       77 FLD0203A                       PIC  9(09)V9(14) COMP-6
           VALUE  628607663.38264040253847.
       77 FLD0203C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0204A                       PIC  9(01)V9(35) COMP-3
           VALUE  9.73054030732718233664968465745914727.
       77 FLD0204C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0205A                       PIC  9(09)V9(15) COMP-6
           VALUE  648926914.508991536933990.
       77 FLD0205C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0206A                       PIC  9(06)V9(01) COMP-6
           VALUE  186967.7.
       77 FLD0206C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0207A                       PIC  9(05)V9(26) COMP-6
           VALUE  83944.39242287422553445708217623.
       77 FLD0207C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0208A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7940040016311842308027735271025449.
       77 FLD0208C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0209A                       PIC  9(03)V9(32) COMP-6
           VALUE  926.61149050802726900855077474261634.
       77 FLD0209C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0210A                       PIC  9(08)V9(19) COMP-3
           VALUE  72323528.1456575562764044207.
       77 FLD0210C                       PIC  9(01)       COMP-6.

       77 FLD0211A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0211C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0212A                       PIC  9(10)V9(08) COMP-6
           VALUE  4892032792.55731038.
       77 FLD0212C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0213A                       PIC S9(03)       COMP-3
           VALUE -082.
       77 FLD0213C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0214A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0214C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0215A                       PIC  9(03)V9(32) COMP-6
           VALUE  926.34033699271633999217101518297567.
       77 FLD0215C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0216A                       PIC S9(08)V9(02) COMP-3
           VALUE -28095374.87.
       77 FLD0216C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0217A                       PIC  9(08)V9(20) COMP-6
           VALUE  74562962.48658396130792880285.
       77 FLD0217C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0218A                       PIC S9(05)V9(01) COMP-3
           VALUE -18094.6.
       77 FLD0218C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0219A                       PIC  9(09)V9(12) COMP-6
           VALUE  578788992.127507229135.
       77 FLD0219C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0220A                       PIC  9(09)V9(12) COMP-3
           VALUE  573343525.907533679841.
       77 FLD0220C                       PIC S9(05)       COMP-3.

       77 FLD0221A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0221C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0222A                       PIC  9(09)V9(14) COMP-6
           VALUE  628182805.25174396977661.
       77 FLD0222C                       PIC S9(05)       COMP-3.

       77 FLD0223A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0223C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0224A                       PIC  9(06)V9(25) COMP-6
           VALUE  838187.2267509891116787912324070.
       77 FLD0224C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0225A                       PIC  9(05)       COMP-6
           VALUE  13797.
       77 FLD0225C                       PIC  9(09)V9(12) COMP-3.

       77 FLD0226A                       PIC  9(05)       COMP-6
           VALUE  14900.
       77 FLD0226C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0227A                       PIC  9(09)V9(14) COMP-6
           VALUE  629583055.15940859997670.
       77 FLD0227C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0228A                       PIC S9(07)V9(01) COMP-3
           VALUE +2225916.3.
       77 FLD0228C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0229A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.870473603260505601753038718015886843.
       77 FLD0229C                       PIC  9(08)V9(20) COMP-6.

       77 FLD0230A                       PIC S9(06)V9(01) COMP-3
           VALUE +201492.2.
       77 FLD0230C                       PIC S9(02)       COMP-3.

       77 FLD0231A                       PIC  9(05)V9(28) COMP-6
           VALUE  87781.6812716511907233041256404248.
       77 FLD0231C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0232A                       PIC  9(09)V9(04) COMP-6
           VALUE  356308264.5328.
       77 FLD0232C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0233A                       PIC  9(07)V9(21) COMP-6
           VALUE  7552156.809035388551620826547.
       77 FLD0233C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0234A                       PIC  9(08)V9(04) COMP-6
           VALUE  33831052.6754.
       77 FLD0234C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0235A                       PIC S9(05)       COMP-3
           VALUE +14123.
       77 FLD0235C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0236A                       PIC  9(04)V9(29) COMP-3
           VALUE  8818.23528289915170574886360554955.
       77 FLD0236C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0237A                       PIC  9(08)V9(02) COMP-6
           VALUE  28742037.59.
       77 FLD0237C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0238A                       PIC  9(09)V9(15) COMP-3
           VALUE  634521096.430120334908053.
       77 FLD0238C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0239A                       PIC  9(09)V9(16) COMP-6
           VALUE  678585779.2924817610824561.
       77 FLD0239C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0240A                       PIC  9(10)V9(06) COMP-6
           VALUE  4289853576.446766.
       77 FLD0240C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0241A                       PIC S9(05)       COMP-3
           VALUE +14407.
       77 FLD0241C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0242A                       PIC  9(10)V9(12) COMP-6
           VALUE  5860383854.989427154791.
       77 FLD0242C                       PIC S9(06)V9(01) COMP-3.

       77 FLD0243A                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0409660969254295181940506154205650.
       77 FLD0243C                       PIC  9(05)V9(28) COMP-6.

       77 FLD0244A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0244C                       PIC  9(09)V9(13) COMP-6.

       77 FLD0245A                       PIC S9(09)V9(05) COMP-3
           VALUE -371716886.14542.
       77 FLD0245C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0246A                       PIC  9(05)V9(28) COMP-3
           VALUE  87216.9313623637143528810611314838.
       77 FLD0246C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0247A                       PIC  9(06)V9(25) COMP-3
           VALUE  834494.8214770686600871840710169.
       77 FLD0247C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0248A                       PIC  9(04)V9(29) COMP-6
           VALUE  8885.56418584546814365410227765096.
       77 FLD0248C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0249A                       PIC  9(09)V9(16) COMP-6
           VALUE  678470839.5950102000071524.
       77 FLD0249C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0250A                       PIC  9(09)V9(15) COMP-3
           VALUE  643468324.926731005675151.
       77 FLD0250C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0251A                       PIC S9(09)V9(06) COMP-3
           VALUE +402548910.007195.
       77 FLD0251C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0252A                       PIC S9(05)V9(01) COMP-3
           VALUE -18339.3.
       77 FLD0252C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0253A                       PIC  9(06)V9(25) COMP-3
           VALUE  822593.8518184680026124055984837.
       77 FLD0253C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0254A                       PIC  9(10)V9(10) COMP-3
           VALUE  5401895692.3872574193.
       77 FLD0254C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0255A                       PIC  9(02)V9(34) COMP-6
           VALUE  94.8299297085154591080424779647728428.
       77 FLD0255C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0256A                       PIC S9(09)V9(08) COMP-3
           VALUE -473179644.06591722.
       77 FLD0256C                       PIC  9(04)V9(30) COMP-3.

       77 FLD0257A                       PIC  9(09)V9(12) COMP-6
           VALUE  577029491.737192756772.
       77 FLD0257C                       PIC S9(03)       COMP-3.

       77 FLD0258A                       PIC  9(10)V9(12) COMP-3
           VALUE  5908893351.960881057394.
       77 FLD0258C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0259A                       PIC  9(03)V9(32) COMP-6
           VALUE  937.55337057593879368511124994256533.
       77 FLD0259C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0260A                       PIC  9(05)V9(27) COMP-6
           VALUE  86648.984966754782899300835197209.
       77 FLD0260C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0261A                       PIC S9(09)V9(05) COMP-3
           VALUE -374213925.47904.
       77 FLD0261C                       PIC  9(09)V9(05) COMP-6.

       77 FLD0262A                       PIC S9(05)V9(01) COMP-3
           VALUE -17015.9.
       77 FLD0262C                       PIC  9(09)V9(17) COMP-6.

       77 FLD0263A                       PIC  9(05)V9(26) COMP-3
           VALUE  84046.29767805690265802809335582.
       77 FLD0263C                       PIC S9(02)       COMP-3.

       77 FLD0264A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.78568596491340514376133796758949.
       77 FLD0264C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0265A                       PIC S9(09)V9(05) COMP-3
           VALUE -380334582.15301.
       77 FLD0265C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0266A                       PIC  9(05)V9(27) COMP-6
           VALUE  84707.693570856212872399737534578.
       77 FLD0266C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0267A                       PIC  9(03)       COMP-6
           VALUE  087.
       77 FLD0267C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0268A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0268C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0269A                       PIC  9(08)V9(18) COMP-6
           VALUE  69955495.182247551255727557.
       77 FLD0269C                       PIC  9(01)       COMP-6.

       77 FLD0270A                       PIC  9(08)V9(18) COMP-6
           VALUE  69584936.933990082508216801.
       77 FLD0270C                       PIC S9(04)       COMP-3.

       77 FLD0271A                       PIC  9(10)V9(07) COMP-6
           VALUE  4478155927.4435323.
       77 FLD0271C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0272A                       PIC S9(09)V9(06) COMP-3
           VALUE +411514667.070764.
       77 FLD0272C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0273A                       PIC  9(10)V9(07) COMP-6
           VALUE  4698099460.5024867.
       77 FLD0273C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0274A                       PIC  9(07)V9(01) COMP-6
           VALUE  2190249.4.
       77 FLD0274C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0275A                       PIC  9(04)       COMP-6
           VALUE  1157.
       77 FLD0275C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0276A                       PIC  9(04)V9(30) COMP-3
           VALUE  9021.044697283423507983002309629227.
       77 FLD0276C                       PIC  9(02)V9(33) COMP-6.

       77 FLD0277A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.749582162084949876756923003995325416.
       77 FLD0277C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0278A                       PIC  9(10)V9(06) COMP-6
           VALUE  4251062706.993476.
       77 FLD0278C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0279A                       PIC S9(08)V9(02) COMP-3
           VALUE -27159201.10.
       77 FLD0279C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0280A                       PIC  9(07)V9(02) COMP-6
           VALUE  2571968.92.
       77 FLD0280C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0281A                       PIC S9(09)V9(04) COMP-3
           VALUE +342861689.3811.
       77 FLD0281C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0282A                       PIC S9(10)V9(07) COMP-3
           VALUE -4600147325.4430291.
       77 FLD0282C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0283A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0283C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0284A                       PIC  9(09)V9(17) COMP-6
           VALUE  689733171.20512533939802324.
       77 FLD0284C                       PIC  9(01)       COMP-6.

       77 FLD0285A                       PIC  9(03)V9(32) COMP-6
           VALUE  928.78828230193799520009179104818031.
       77 FLD0285C                       PIC  9(08)V9(20) COMP-6.

       77 FLD0286A                       PIC  9(08)V9(18) COMP-3
           VALUE  70426964.322731444578806758.
       77 FLD0286C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0287A                       PIC S9(07)V9(02) COMP-3
           VALUE -2521413.84.
       77 FLD0287C                       PIC  9(06)       COMP-6.

       77 FLD0288A                       PIC  9(09)V9(17) COMP-6
           VALUE  688074525.02240640246355951.
       77 FLD0288C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0289A                       PIC S9(03)       COMP-3
           VALUE -092.
       77 FLD0289C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0290A                       PIC S9(09)V9(05) COMP-3
           VALUE -382951207.35442.
       77 FLD0290C                       PIC S9(03)       COMP-3.

       77 FLD0291A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.859384124391753490002088256005663424.
       77 FLD0291C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0292A                       PIC S9(08)V9(03) COMP-3
           VALUE +31020519.916.
       77 FLD0292C                       PIC  9(01)       COMP-6.

       77 FLD0293A                       PIC S9(03)       COMP-3
           VALUE -093.
       77 FLD0293C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0294A                       PIC S9(09)V9(06) COMP-3
           VALUE +412445339.504106.
       77 FLD0294C                       PIC  9(01)       COMP-6.

       77 FLD0295A                       PIC S9(07)V9(02) COMP-3
           VALUE -2502548.06.
       77 FLD0295C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0296A                       PIC S9(06)       COMP-3
           VALUE -160918.
       77 FLD0296C                       PIC  9(09)V9(12) COMP-3.

       77 FLD0297A                       PIC  9(08)V9(03) COMP-6
           VALUE  30843552.269.
       77 FLD0297C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0298A                       PIC S9(10)V9(08) COMP-3
           VALUE -4831587379.88150510.
       77 FLD0298C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0299A                       PIC  9(10)V9(13) COMP-6
           VALUE  6064872573.5835784522720.
       77 FLD0299C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0300A                       PIC  9(08)V9(20) COMP-6
           VALUE  73956142.30661028409841151187.
       77 FLD0300C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0301A                       PIC S9(10)V9(07) COMP-3
           VALUE -4524568495.0704084.
       77 FLD0301C                       PIC S9(01)       COMP-3.

       77 FLD0302A                       PIC  9(02)V9(34) COMP-6
           VALUE  94.9764690231816866017311440373305231.
       77 FLD0302C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0303A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.998247249142951931233369577967096120.
       77 FLD0303C                       PIC  9(01)       COMP-6.

       77 FLD0304A                       PIC S9(03)       COMP-3
           VALUE -083.
       77 FLD0304C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0305A                       PIC  9(09)V9(03) COMP-6
           VALUE  328435884.788.
       77 FLD0305C                       PIC S9(01)       COMP-3.

       77 FLD0306A                       PIC S9(03)       COMP-3
           VALUE -083.
       77 FLD0306C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0307A                       PIC  9(10)V9(10) COMP-3
           VALUE  5430567751.9659767416.
       77 FLD0307C                       PIC  9(03)V9(32) COMP-6.

       77 FLD0308A                       PIC  9(09)V9(05) COMP-6
           VALUE  377189267.62120.
       77 FLD0308C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0309A                       PIC  9(09)V9(03) COMP-6
           VALUE  325461096.612.
       77 FLD0309C                       PIC S9(03)       COMP-3.

       77 FLD0310A                       PIC  9(09)V9(05) COMP-6
           VALUE  377541451.37210.
       77 FLD0310C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0311A                       PIC S9(02)       COMP-3
           VALUE -06.
       77 FLD0311C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0312A                       PIC S9(10)V9(07) COMP-3
           VALUE -4631183834.9707568.
       77 FLD0312C                       PIC  9(01)       COMP-6.

       77 FLD0313A                       PIC  9(05)V9(27) COMP-3
           VALUE  86493.365621715367907995641871821.
       77 FLD0313C                       PIC  9(09)V9(05) COMP-6.

       77 FLD0314A                       PIC  9(03)       COMP-6
           VALUE  088.
       77 FLD0314C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0315A                       PIC  9(07)V9(23) COMP-3
           VALUE  7933336.74589681625555215305212.
       77 FLD0315C                       PIC  9(09)V9(17) COMP-6.

       77 FLD0316A                       PIC  9(06)V9(01) COMP-6
           VALUE  195827.4.
       77 FLD0316C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0317A                       PIC  9(10)V9(08) COMP-6
           VALUE  4983225307.65216153.
       77 FLD0317C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0318A                       PIC  9(08)V9(02) COMP-6
           VALUE  26926374.69.
       77 FLD0318C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0319A                       PIC  9(08)V9(18) COMP-6
           VALUE  69931441.978879860243978328.
       77 FLD0319C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0320A                       PIC  9(08)V9(19) COMP-6
           VALUE  71973495.8824565840274090078.
       77 FLD0320C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0321A                       PIC  9(10)V9(09) COMP-3
           VALUE  5005504874.853489161.
       77 FLD0321C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0322A                       PIC S9(09)V9(07) COMP-3
           VALUE +442005310.2249054.
       77 FLD0322C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0323A                       PIC S9(05)       COMP-3
           VALUE -15097.
       77 FLD0323C                       PIC  9(01)V9(35) COMP-3.

       77 FLD0324A                       PIC  9(10)V9(11) COMP-3
           VALUE  5601604504.75820970162.
       77 FLD0324C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0325A                       PIC  9(04)       COMP-6
           VALUE  1169.
       77 FLD0325C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0326A                       PIC S9(08)V9(03) COMP-3
           VALUE +31312044.720.
       77 FLD0326C                       PIC S9(02)       COMP-3.

       77 FLD0327A                       PIC S9(03)       COMP-3
           VALUE -090.
       77 FLD0327C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0328A                       PIC  9(08)V9(19) COMP-3
           VALUE  71147504.7716873310044150002.
       77 FLD0328C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0329A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0329C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0330A                       PIC  9(09)V9(07) COMP-6
           VALUE  445280746.1581723.
       77 FLD0330C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0331A                       PIC S9(07)V9(01) COMP-3
           VALUE +2232816.8.
       77 FLD0331C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0332A                       PIC  9(05)V9(27) COMP-6
           VALUE  86562.988696340348315771962006692.
       77 FLD0332C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0333A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6494138775326296908474432711955159.
       77 FLD0333C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0334A                       PIC  9(08)V9(03) COMP-6
           VALUE  28999492.466.
       77 FLD0334C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0335A                       PIC S9(08)V9(03) COMP-3
           VALUE +30334218.791.
       77 FLD0335C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0336A                       PIC  9(05)V9(27) COMP-6
           VALUE  85800.255545984371874368434873758.
       77 FLD0336C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0337A                       PIC  9(08)V9(19) COMP-3
           VALUE  72003996.5448931451597047725.
       77 FLD0337C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0338A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0338C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0339A                       PIC S9(06)       COMP-3
           VALUE -160552.
       77 FLD0339C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0340A                       PIC  9(10)V9(09) COMP-3
           VALUE  5028381651.473269320.
       77 FLD0340C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0341A                       PIC  9(10)V9(11) COMP-6
           VALUE  5676316159.01010966318.
       77 FLD0341C                       PIC  9(09)V9(12) COMP-3.

       77 FLD0342A                       PIC S9(07)V9(01) COMP-3
           VALUE +2347143.0.
       77 FLD0342C                       PIC S9(10)V9(07) COMP-3.

       77 FLD0343A                       PIC  9(08)V9(19) COMP-6
           VALUE  72866356.1504289902792663724.
       77 FLD0343C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0344A                       PIC  9(09)V9(07) COMP-6
           VALUE  439744878.9947105.
       77 FLD0344C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0345A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0345C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0346A                       PIC  9(07)V9(22) COMP-3
           VALUE  7807860.0333687642187641131386.
       77 FLD0346C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0347A                       PIC  9(08)V9(18) COMP-3
           VALUE  70165985.253748408556617732.
       77 FLD0347C                       PIC  9(06)       COMP-6.

       77 FLD0348A                       PIC  9(08)V9(04) COMP-6
           VALUE  33778742.7133.
       77 FLD0348C                       PIC  9(09)V9(12) COMP-6.

       77 FLD0349A                       PIC  9(10)V9(09) COMP-3
           VALUE  5122785066.779668161.
       77 FLD0349C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0350A                       PIC  9(02)       COMP-6
           VALUE  07.
       77 FLD0350C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0351A                       PIC  9(05)V9(27) COMP-6
           VALUE  84942.576912519174303639601930626.
       77 FLD0351C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0352A                       PIC  9(03)V9(32) COMP-6
           VALUE  937.88592938035042489985926295048557.
       77 FLD0352C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0353A                       PIC S9(07)V9(02) COMP-3
           VALUE -2544588.73.
       77 FLD0353C                       PIC  9(02)V9(33) COMP-3.

       77 FLD0354A                       PIC  9(07)V9(01) COMP-6
           VALUE  2152460.4.
       77 FLD0354C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0355A                       PIC  9(06)V9(01) COMP-6
           VALUE  208715.4.
       77 FLD0355C                       PIC S9(05)       COMP-3.

       77 FLD0356A                       PIC S9(09)V9(05) COMP-3
           VALUE -391398983.37050.
       77 FLD0356C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0357A                       PIC  9(10)V9(10) COMP-3
           VALUE  5323345989.0667944591.
       77 FLD0357C                       PIC  9(03)       COMP-6.

       77 FLD0358A                       PIC  9(08)V9(03) COMP-6
           VALUE  29848403.943.
       77 FLD0358C                       PIC  9(09)V9(17) COMP-6.

       77 FLD0359A                       PIC  9(07)V9(22) COMP-6
           VALUE  7654789.5985185210321333215688.
       77 FLD0359C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0360A                       PIC S9(09)V9(06) COMP-3
           VALUE +400277612.276280.
       77 FLD0360C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0361A                       PIC  9(06)V9(25) COMP-3
           VALUE  823089.8044061112361902132761315.
       77 FLD0361C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0362A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0362C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0363A                       PIC  9(09)V9(04) COMP-6
           VALUE  358575926.2078.
       77 FLD0363C                       PIC  9(04)V9(30) COMP-3.

       77 FLD0364A                       PIC S9(04)       COMP-3
           VALUE +1234.
       77 FLD0364C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0365A                       PIC  9(09)V9(11) COMP-3
           VALUE  551967009.62472056151.
       77 FLD0365C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0366A                       PIC  9(06)V9(25) COMP-3
           VALUE  822414.3642778768414913770357088.
       77 FLD0366C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0367A                       PIC  9(09)V9(13) COMP-6
           VALUE  595975436.9256639039420.
       77 FLD0367C                       PIC S9(06)V9(01) COMP-3.

       77 FLD0368A                       PIC  9(05)       COMP-6
           VALUE  15663.
       77 FLD0368C                       PIC  9(01)       COMP-6.

       77 FLD0369A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0369C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0370A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0370C                       PIC S9(01)       COMP-3.

       77 FLD0371A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0371C                       PIC S9(03)       COMP-3.

       77 FLD0372A                       PIC  9(10)V9(09) COMP-6
           VALUE  5067586024.551302692.
       77 FLD0372C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0373A                       PIC  9(09)V9(16) COMP-3
           VALUE  660730415.8912360447786227.
       77 FLD0373C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0374A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0374C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0375A                       PIC  9(07)V9(22) COMP-3
           VALUE  7816763.9605777072819847717255.
       77 FLD0375C                       PIC  9(01)       COMP-6.

       77 FLD0376A                       PIC  9(05)V9(27) COMP-6
           VALUE  84980.958923270843996533585595898.
       77 FLD0376C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0377A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7759547981370871205797357106348499.
       77 FLD0377C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0378A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0378C                       PIC S9(06)       COMP-3.

       77 FLD0379A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351160784.1302399890.
       77 FLD0379C                       PIC  9(01)       COMP-6.

       77 FLD0380A                       PIC  9(09)V9(03) COMP-6
           VALUE  318886259.138.
       77 FLD0380C                       PIC S9(01)       COMP-3.

       77 FLD0381A                       PIC  9(10)V9(09) COMP-6
           VALUE  5188977124.912377281.
       77 FLD0381C                       PIC  9(03)       COMP-6.

       77 FLD0382A                       PIC  9(10)V9(10) COMP-6
           VALUE  5469463185.9002762475.
       77 FLD0382C                       PIC  9(04)       COMP-6.

       77 FLD0383A                       PIC  9(04)V9(29) COMP-3
           VALUE  8846.28028341020278269013488170458.
       77 FLD0383C                       PIC  9(06)V9(24) COMP-3.

       77 FLD0384A                       PIC S9(07)V9(02) COMP-3
           VALUE +2410021.83.
       77 FLD0384C                       PIC  9(01)       COMP-6.

       77 FLD0385A                       PIC  9(09)V9(14) COMP-6
           VALUE  616198826.41569234671408.
       77 FLD0385C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0386A                       PIC  9(10)V9(11) COMP-6
           VALUE  5671006446.22052230126.
       77 FLD0386C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0387A                       PIC  9(08)V9(03) COMP-6
           VALUE  30516405.931.
       77 FLD0387C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0388A                       PIC  9(10)V9(11) COMP-6
           VALUE  5691303425.20841603359.
       77 FLD0388C                       PIC  9(03)       COMP-6.

       77 FLD0389A                       PIC S9(10)V9(06) COMP-3
           VALUE +4300560615.719126.
       77 FLD0389C                       PIC  9(10)V9(12) COMP-6.

       77 FLD0390A                       PIC S9(02)       COMP-3
           VALUE -07.
       77 FLD0390C                       PIC  9(03)       COMP-6.

       77 FLD0391A                       PIC S9(08)V9(03) COMP-3
           VALUE +30066642.536.
       77 FLD0391C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0392A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7627258628673261320329856971511617.
       77 FLD0392C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0393A                       PIC  9(02)       COMP-6
           VALUE  05.
       77 FLD0393C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0394A                       PIC  9(05)V9(01) COMP-6
           VALUE  16807.8.
       77 FLD0394C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0395A                       PIC  9(10)V9(09) COMP-3
           VALUE  5206691882.901124390.
       77 FLD0395C                       PIC S9(01)       COMP-3.

       77 FLD0396A                       PIC  9(09)V9(06) COMP-6
           VALUE  419939827.280791.
       77 FLD0396C                       PIC  9(09)V9(07) COMP-6.

       77 FLD0397A                       PIC  9(05)V9(27) COMP-6
           VALUE  85569.982924983467587054519754019.
       77 FLD0397C                       PIC S9(02)       COMP-3.

       77 FLD0398A                       PIC  9(05)V9(26) COMP-3
           VALUE  84110.85692078776876456913669244.
       77 FLD0398C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0399A                       PIC  9(05)V9(27) COMP-3
           VALUE  86215.377080746946614198122915695.
       77 FLD0399C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0400A                       PIC  9(10)V9(08) COMP-6
           VALUE  4880703034.67910082.
       77 FLD0400C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0401A                       PIC  9(08)V9(03) COMP-6
           VALUE  30757829.425.
       77 FLD0401C                       PIC  9(01)       COMP-6.

       77 FLD0402A                       PIC  9(04)V9(29) COMP-3
           VALUE  8843.41306989221531686951038864208.
       77 FLD0402C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0403A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351391185.2119278034.
       77 FLD0403C                       PIC  9(03)V9(32) COMP-6.

       77 FLD0404A                       PIC S9(10)V9(08) COMP-3
           VALUE -4810592903.51378177.
       77 FLD0404C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0405A                       PIC S9(09)V9(04) COMP-3
           VALUE -360620744.0007.
       77 FLD0405C                       PIC S9(05)       COMP-3.

       77 FLD0406A                       PIC S9(07)V9(02) COMP-3
           VALUE -2503018.94.
       77 FLD0406C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0407A                       PIC  9(09)V9(13) COMP-3
           VALUE  592634898.8738083800598.
       77 FLD0407C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0408A                       PIC  9(09)V9(07) COMP-6
           VALUE  438100099.1119252.
       77 FLD0408C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0409A                       PIC  9(08)V9(02) COMP-6
           VALUE  28575188.65.
       77 FLD0409C                       PIC  9(09)V9(12) COMP-6.

       77 FLD0410A                       PIC  9(09)V9(14) COMP-6
           VALUE  615937928.60877261130525.
       77 FLD0410C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0411A                       PIC  9(09)V9(17) COMP-6
           VALUE  688573322.26995748847286904.
       77 FLD0411C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0412A                       PIC  9(09)V9(12) COMP-3
           VALUE  572677017.522024045526.
       77 FLD0412C                       PIC S9(01)       COMP-3.

       77 FLD0413A                       PIC  9(06)V9(25) COMP-6
           VALUE  828822.6462986850728853482905833.
       77 FLD0413C                       PIC S9(01)       COMP-3.

       77 FLD0414A                       PIC  9(05)V9(27) COMP-3
           VALUE  84413.303017262042438062508153961.
       77 FLD0414C                       PIC S9(05)       COMP-3.

       77 FLD0415A                       PIC  9(09)V9(15) COMP-3
           VALUE  650722988.227690701812377.
       77 FLD0415C                       PIC  9(03)V9(31) COMP-6.

       77 FLD0416A                       PIC  9(09)V9(16) COMP-6
           VALUE  675584038.8269652718733482.
       77 FLD0416C                       PIC S9(01)       COMP-3.

       77 FLD0417A                       PIC  9(03)V9(32) COMP-3
           VALUE  942.59186417160190085695603556814603.
       77 FLD0417C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0418A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0418C                       PIC  9(01)       COMP-6.

       77 FLD0419A                       PIC  9(09)V9(06) COMP-6
           VALUE  415695619.544491.
       77 FLD0419C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0420A                       PIC  9(08)V9(02) COMP-6
           VALUE  26881191.37.
       77 FLD0420C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0421A                       PIC  9(08)V9(19) COMP-3
           VALUE  71124707.9077118260492795798.
       77 FLD0421C                       PIC S9(06)V9(01) COMP-3.

       77 FLD0422A                       PIC  9(08)V9(18) COMP-3
           VALUE  69276472.004700051510184266.
       77 FLD0422C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0423A                       PIC  9(09)V9(13) COMP-6
           VALUE  595417774.2919815052857.
       77 FLD0423C                       PIC  9(09)V9(17) COMP-6.

       77 FLD0424A                       PIC  9(09)V9(11) COMP-3
           VALUE  551151541.59885582085.
       77 FLD0424C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0425A                       PIC S9(10)V9(08) COMP-3
           VALUE -4741628720.81754727.
       77 FLD0425C                       PIC  9(10)V9(12) COMP-3.

       77 FLD0426A                       PIC  9(10)V9(11) COMP-3
           VALUE  5601456695.80725313885.
       77 FLD0426C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0427A                       PIC  9(09)V9(04) COMP-6
           VALUE  365284621.5641.
       77 FLD0427C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0428A                       PIC  9(05)V9(27) COMP-6
           VALUE  85913.234918316627730661139139556.
       77 FLD0428C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0429A                       PIC  9(07)V9(22) COMP-3
           VALUE  7833347.6062909002113343603923.
       77 FLD0429C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0430A                       PIC  9(08)V9(03) COMP-6
           VALUE  30820998.502.
       77 FLD0430C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0431A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0431C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0432A                       PIC  9(10)V9(11) COMP-3
           VALUE  5612307034.00538710745.
       77 FLD0432C                       PIC S9(06)       COMP-3.

       77 FLD0433A                       PIC  9(08)V9(19) COMP-3
           VALUE  72012955.8244768763763943297.
       77 FLD0433C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0434A                       PIC S9(10)V9(07) COMP-3
           VALUE -4547054675.3415619.
       77 FLD0434C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0435A                       PIC  9(03)       COMP-6
           VALUE  087.
       77 FLD0435C                       PIC  9(10)V9(12) COMP-3.

       77 FLD0436A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0436C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0437A                       PIC  9(09)V9(15) COMP-3
           VALUE  632897272.198471361193128.
       77 FLD0437C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0438A                       PIC  9(09)V9(16) COMP-3
           VALUE  664694021.6365745390802999.
       77 FLD0438C                       PIC  9(05)V9(28) COMP-3.

       77 FLD0439A                       PIC  9(10)V9(08) COMP-6
           VALUE  4961134805.43429519.
       77 FLD0439C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0440A                       PIC  9(04)V9(29) COMP-6
           VALUE  8899.07507055040514210020319296745.
       77 FLD0440C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0441A                       PIC  9(08)V9(19) COMP-3
           VALUE  71126905.4406556744396539215.
       77 FLD0441C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0442A                       PIC  9(05)V9(01) COMP-6
           VALUE  16995.1.
       77 FLD0442C                       PIC  9(03)V9(31) COMP-6.

       77 FLD0443A                       PIC S9(10)V9(08) COMP-3
           VALUE -4744984255.46487689.
       77 FLD0443C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0444A                       PIC  9(02)V9(33) COMP-6
           VALUE  94.673816662087151296844922399031929.
       77 FLD0444C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0445A                       PIC  9(10)V9(10) COMP-3
           VALUE  5416554544.5299512206.
       77 FLD0445C                       PIC S9(10)V9(07) COMP-3.

       77 FLD0446A                       PIC  9(10)V9(09) COMP-3
           VALUE  5044897846.697211640.
       77 FLD0446C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0447A                       PIC  9(02)       COMP-6
           VALUE  06.
       77 FLD0447C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0448A                       PIC  9(06)V9(01) COMP-6
           VALUE  186565.4.
       77 FLD0448C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0449A                       PIC S9(09)V9(05) COMP-3
           VALUE -384988094.18704.
       77 FLD0449C                       PIC S9(08)V9(04) COMP-3.

       77 FLD0450A                       PIC  9(09)V9(14) COMP-6
           VALUE  625578375.50228334588808.
       77 FLD0450C                       PIC  9(09)V9(13) COMP-6.

       77 FLD0451A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0451C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0452A                       PIC  9(08)V9(02) COMP-6
           VALUE  26826484.18.
       77 FLD0452C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0453A                       PIC  9(10)V9(10) COMP-6
           VALUE  5383526546.5392911909.
       77 FLD0453C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0454A                       PIC S9(03)       COMP-3
           VALUE -090.
       77 FLD0454C                       PIC S9(01)       COMP-3.

       77 FLD0455A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0455C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0456A                       PIC S9(03)       COMP-3
           VALUE -093.
       77 FLD0456C                       PIC  9(05)       COMP-6.

       77 FLD0457A                       PIC  9(04)V9(30) COMP-6
           VALUE  9063.641671624598217249513254500925.
       77 FLD0457C                       PIC  9(01)       COMP-6.

       77 FLD0458A                       PIC  9(02)       COMP-6
           VALUE  06.
       77 FLD0458C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0459A                       PIC  9(06)V9(01) COMP-6
           VALUE  198479.9.
       77 FLD0459C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0460A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0460C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0461A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0461C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0462A                       PIC  9(08)V9(02) COMP-6
           VALUE  26776595.69.
       77 FLD0462C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0463A                       PIC  9(05)V9(27) COMP-3
           VALUE  85490.666934027292889197724434779.
       77 FLD0463C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0464A                       PIC  9(10)V9(07) COMP-6
           VALUE  4587031190.3834293.
       77 FLD0464C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0465A                       PIC  9(10)V9(12) COMP-3
           VALUE  5816563985.597106301028.
       77 FLD0465C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0466A                       PIC  9(09)V9(15) COMP-3
           VALUE  654381306.333900236715805.
       77 FLD0466C                       PIC  9(05)       COMP-6.

       77 FLD0467A                       PIC S9(07)V9(01) COMP-3
           VALUE +2343287.0.
       77 FLD0467C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0468A                       PIC S9(10)V9(06) COMP-3
           VALUE +4344132145.767680.
       77 FLD0468C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0469A                       PIC  9(08)V9(18) COMP-6
           VALUE  70961503.876956555370014712.
       77 FLD0469C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0470A                       PIC  9(03)V9(31) COMP-3
           VALUE  913.6810028966669827710234130790922.
       77 FLD0470C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0471A                       PIC S9(07)V9(02) COMP-3
           VALUE -2507103.69.
       77 FLD0471C                       PIC  9(01)       COMP-6.

       77 FLD0472A                       PIC  9(10)V9(09) COMP-3
           VALUE  5103990869.050332168.
       77 FLD0472C                       PIC  9(06)V9(26) COMP-3.

       77 FLD0473A                       PIC  9(08)V9(20) COMP-3
           VALUE  74367162.06805468187823748849.
       77 FLD0473C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0474A                       PIC  9(08)V9(19) COMP-6
           VALUE  72625744.5118117406224200749.
       77 FLD0474C                       PIC S9(05)       COMP-3.

       77 FLD0475A                       PIC  9(10)V9(07) COMP-6
           VALUE  4588724634.2999971.
       77 FLD0475C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0476A                       PIC  9(08)V9(02) COMP-6
           VALUE  28869933.49.
       77 FLD0476C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0477A                       PIC  9(08)V9(20) COMP-3
           VALUE  74492482.99155191155307420558.
       77 FLD0477C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0478A                       PIC  9(08)V9(19) COMP-6
           VALUE  72616162.5751895356550846827.
       77 FLD0478C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0479A                       PIC S9(09)V9(06) COMP-3
           VALUE +413502052.896697.
       77 FLD0479C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0480A                       PIC S9(06)V9(01) COMP-3
           VALUE +203017.8.
       77 FLD0480C                       PIC  9(08)V9(20) COMP-6.

       77 FLD0481A                       PIC  9(05)       COMP-6
           VALUE  15658.
       77 FLD0481C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0482A                       PIC  9(08)V9(18) COMP-6
           VALUE  70905037.950447225014727337.
       77 FLD0482C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0483A                       PIC  9(03)       COMP-6
           VALUE  079.
       77 FLD0483C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0484A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0484C                       PIC  9(09)V9(12) COMP-6.

       77 FLD0485A                       PIC  9(07)V9(02) COMP-6
           VALUE  2567572.97.
       77 FLD0485C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0486A                       PIC  9(05)       COMP-6
           VALUE  13937.
       77 FLD0486C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0487A                       PIC  9(06)V9(01) COMP-6
           VALUE  209384.2.
       77 FLD0487C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0488A                       PIC S9(10)V9(07) COMP-3
           VALUE -4519198906.7966076.
       77 FLD0488C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0489A                       PIC S9(05)V9(01) COMP-3
           VALUE -17360.6.
       77 FLD0489C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0490A                       PIC  9(10)V9(10) COMP-6
           VALUE  5352566580.2623056954.
       77 FLD0490C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0491A                       PIC  9(03)V9(31) COMP-6
           VALUE  918.2459205467069507378141679510008.
       77 FLD0491C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0492A                       PIC  9(06)V9(25) COMP-6
           VALUE  819266.4570447540928199714471702.
       77 FLD0492C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0493A                       PIC S9(05)V9(01) COMP-3
           VALUE -18038.5.
       77 FLD0493C                       PIC  9(06)V9(24) COMP-6.

       77 FLD0494A                       PIC  9(05)V9(28) COMP-6
           VALUE  87574.5417791477964719604187848744.
       77 FLD0494C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0495A                       PIC S9(02)       COMP-3
           VALUE -05.
       77 FLD0495C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0496A                       PIC  9(06)V9(25) COMP-6
           VALUE  816763.6415427422802437718019064.
       77 FLD0496C                       PIC S9(04)       COMP-3.

       77 FLD0497A                       PIC  9(06)V9(25) COMP-6
           VALUE  836230.6435874340415637107071233.
       77 FLD0497C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0498A                       PIC  9(10)V9(08) COMP-6
           VALUE  4792455293.49441590.
       77 FLD0498C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0499A                       PIC  9(02)       COMP-6
           VALUE  05.
       77 FLD0499C                       PIC  9(09)V9(15) COMP-3.

      * RESULTS-AREA
       78 XPC-FLD0001C
          VALUE X'03'.
       78 XPC-FLD0002C
          VALUE X'83954987736989405977539036030060'.
       78 XPC-FLD0003C
          VALUE X'000000000000000000'.
       78 XPC-FLD0004C
          VALUE X'484166'.
       78 XPC-FLD0005C
          VALUE X'0002337334800C'.
       78 XPC-FLD0006C
          VALUE X'01690000000000000000000000000000000F'.
       78 XPC-FLD0007C
          VALUE X'00000112300C'.
       78 XPC-FLD0008C
          VALUE X'000C'.
       78 XPC-FLD0009C
          VALUE X'878954491957000000000000000000000F'.
       78 XPC-FLD0010C
          VALUE X'000000932591202C'.
       78 XPC-FLD0011C
          VALUE X'0829148300000000000000000000000000'.
       78 XPC-FLD0012C
          VALUE X'000000870000000000000000000F'.
       78 XPC-FLD0013C
          VALUE X'0082963000'.
       78 XPC-FLD0014C
          VALUE X'09431212'.
       78 XPC-FLD0015C
          VALUE X'000798473271412134'.
       78 XPC-FLD0016C
          VALUE X'00000087275955785C'.
       78 XPC-FLD0017C
          VALUE X'0000000000000000000000000000000000'.
       78 XPC-FLD0018C
          VALUE X'6C'.
       78 XPC-FLD0019C
          VALUE X'930528885682368D'.
       78 XPC-FLD0020C
          VALUE X'064388745272004432873F'.
       78 XPC-FLD0021C
          VALUE X'9C'.
       78 XPC-FLD0022C
          VALUE X'00810040192546636172998830716F'.
       78 XPC-FLD0023C
          VALUE X'0060000000000000000000000000000000000F'.
       78 XPC-FLD0024C
          VALUE X'329406009124000C'.
       78 XPC-FLD0025C
          VALUE X'0000000000'.
       78 XPC-FLD0026C
          VALUE X'000000000000000C'.
       78 XPC-FLD0027C
          VALUE X'00268670937520818498000000000000'.
       78 XPC-FLD0028C
          VALUE X'4C'.
       78 XPC-FLD0029C
          VALUE X'000001369700000000000000000F'.
       78 XPC-FLD0030C
          VALUE X'000000000000000000000000000F'.
       78 XPC-FLD0031C
          VALUE X'000000000000000000000000000F'.
       78 XPC-FLD0032C
          VALUE X'0269599769460C'.
       78 XPC-FLD0033C
          VALUE X'641903038069'.
       78 XPC-FLD0034C
          VALUE X'000000050D'.
       78 XPC-FLD0035C
          VALUE X'08162855'.
       78 XPC-FLD0036C
          VALUE X'00009789384107274801127829277902'.
       78 XPC-FLD0037C
          VALUE X'60836C'.
       78 XPC-FLD0038C
          VALUE X'00000955897506417712539139586169'.
       78 XPC-FLD0039C
          VALUE X'00089332'.
       78 XPC-FLD0040C
          VALUE X'227D'.
       78 XPC-FLD0041C
          VALUE X'0687709210194850428F'.
       78 XPC-FLD0042C
          VALUE X'00076807345400734650'.
       78 XPC-FLD0043C
          VALUE X'08049480000000000000000000000000000F'.
       78 XPC-FLD0044C
          VALUE X'00002062243000'.
       78 XPC-FLD0045C
          VALUE X'02859249581000'.
       78 XPC-FLD0046C
          VALUE X'000000000000000000000000000000000F'.
       78 XPC-FLD0047C
          VALUE X'002696659297000000'.
       78 XPC-FLD0048C
          VALUE X'0839628C'.
       78 XPC-FLD0049C
          VALUE X'07033645332063542800000000000000000000'.
       78 XPC-FLD0050C
          VALUE X'0329667670988000'.
       78 XPC-FLD0051C
          VALUE X'5703689413991348544000000000000000'.
       78 XPC-FLD0052C
          VALUE X'036720048385760000000F'.
       78 XPC-FLD0053C
          VALUE X'0022603246000C'.
       78 XPC-FLD0054C
          VALUE X'000000000000'.
       78 XPC-FLD0055C
          VALUE X'2223241766982828604426000F'.
       78 XPC-FLD0056C
          VALUE X'0216199390'.
       78 XPC-FLD0057C
          VALUE X'029C'.
       78 XPC-FLD0058C
          VALUE X'0000000966574C'.
       78 XPC-FLD0059C
          VALUE X'000256643861000000000000'.
       78 XPC-FLD0060C
          VALUE X'000009'.
       78 XPC-FLD0061C
          VALUE X'00000950000000000000000000000000'.
       78 XPC-FLD0062C
          VALUE X'05792591938164770581900F'.
       78 XPC-FLD0063C
          VALUE X'021069256000000000000000000F'.
       78 XPC-FLD0064C
          VALUE X'08553C'.
       78 XPC-FLD0065C
          VALUE X'04154C'.
       78 XPC-FLD0066C
          VALUE X'000000000000000000000000000000000F'.
       78 XPC-FLD0067C
          VALUE X'1D'.
       78 XPC-FLD0068C
          VALUE X'05'.
       78 XPC-FLD0069C
          VALUE X'0916'.
       78 XPC-FLD0070C
          VALUE X'6547479C'.
       78 XPC-FLD0071C
          VALUE X'0005'.
       78 XPC-FLD0072C
          VALUE X'000000009925387953744267'.
       78 XPC-FLD0073C
          VALUE X'00000009812328554525302504'.
       78 XPC-FLD0074C
          VALUE X'5849035926792574002774927066639060000F'.
       78 XPC-FLD0075C
          VALUE X'060837388C'.
       78 XPC-FLD0076C
          VALUE X'0841800000000000000000000000000000000F'.
       78 XPC-FLD0077C
          VALUE X'0420258698984000000000000000000000'.
       78 XPC-FLD0078C
          VALUE X'00001860442000000000'.
       78 XPC-FLD0079C
          VALUE X'223C'.
       78 XPC-FLD0080C
          VALUE X'0079055876713C'.
       78 XPC-FLD0081C
          VALUE X'00000000099513'.
       78 XPC-FLD0082C
          VALUE X'063244191000000000000000000000'.
       78 XPC-FLD0083C
          VALUE X'138412139C'.
       78 XPC-FLD0084C
          VALUE X'0000008913083797'.
       78 XPC-FLD0085C
          VALUE X'0000015779000000'.
       78 XPC-FLD0086C
          VALUE X'000000000976654777473F'.
       78 XPC-FLD0087C
          VALUE X'8605'.
       78 XPC-FLD0088C
          VALUE X'809468198000'.
       78 XPC-FLD0089C
          VALUE X'09422224462627877272780096970000000F'.
       78 XPC-FLD0090C
          VALUE X'28271627310D'.
       78 XPC-FLD0091C
          VALUE X'38808038090177000000000000'.
       78 XPC-FLD0092C
          VALUE X'01465870000000000000000000000000'.
       78 XPC-FLD0093C
          VALUE X'0083184869277572603962767061602F'.
       78 XPC-FLD0094C
          VALUE X'000022606985000000000F'.
       78 XPC-FLD0095C
          VALUE X'06811597607563408818265315858000'.
       78 XPC-FLD0096C
          VALUE X'0000000000000000000000000000000000'.
       78 XPC-FLD0097C
          VALUE X'000000850000000000000000000000'.
       78 XPC-FLD0098C
          VALUE X'000876371310'.
       78 XPC-FLD0099C
          VALUE X'46809917705D'.
       78 XPC-FLD0100C
          VALUE X'014828181328845779700000'.
       78 XPC-FLD0101C
          VALUE X'260535858D'.
       78 XPC-FLD0102C
          VALUE X'000001388000000000000000'.
       78 XPC-FLD0103C
          VALUE X'09'.
       78 XPC-FLD0104C
          VALUE X'0000225430630000000C'.
       78 XPC-FLD0105C
          VALUE X'2908138842'.
       78 XPC-FLD0106C
          VALUE X'00000000700D'.
       78 XPC-FLD0107C
          VALUE X'0774624437557797973497031000'.
       78 XPC-FLD0108C
          VALUE X'01021088231C'.
       78 XPC-FLD0109C
          VALUE X'01136000000000000000000000000000000F'.
       78 XPC-FLD0110C
          VALUE X'07940109556734978868419716'.
       78 XPC-FLD0111C
          VALUE X'00326472185831000000'.
       78 XPC-FLD0112C
          VALUE X'07123805246C'.
       78 XPC-FLD0113C
          VALUE X'9092'.
       78 XPC-FLD0114C
          VALUE X'050641'.
       78 XPC-FLD0115C
          VALUE X'00000096236C'.
       78 XPC-FLD0116C
          VALUE X'03'.
       78 XPC-FLD0117C
          VALUE X'009561'.
       78 XPC-FLD0118C
          VALUE X'726C'.
       78 XPC-FLD0119C
          VALUE X'0007887545'.
       78 XPC-FLD0120C
          VALUE X'060C'.
       78 XPC-FLD0121C
          VALUE X'0002338292200C'.
       78 XPC-FLD0122C
          VALUE X'0018495180'.
       78 XPC-FLD0123C
          VALUE X'00000005000000000000000000000F'.
       78 XPC-FLD0124C
          VALUE X'00000000000000000C'.
       78 XPC-FLD0125C
          VALUE X'000008800318267899139845'.
       78 XPC-FLD0126C
          VALUE X'08079900'.
       78 XPC-FLD0127C
          VALUE X'0089818601788201279934042986496933'.
       78 XPC-FLD0128C
          VALUE X'9848958759'.
       78 XPC-FLD0129C
          VALUE X'003346050810480000000000'.
       78 XPC-FLD0130C
          VALUE X'000000000000'.
       78 XPC-FLD0131C
          VALUE X'26916210050000000000000000'.
       78 XPC-FLD0132C
          VALUE X'00012700'.
       78 XPC-FLD0133C
          VALUE X'000000989C'.
       78 XPC-FLD0134C
          VALUE X'0703854997414389171872528F'.
       78 XPC-FLD0135C
          VALUE X'0833550001'.
       78 XPC-FLD0136C
          VALUE X'000151690000000000000000000F'.
       78 XPC-FLD0137C
          VALUE X'31939000000000000000000000000000000F'.
       78 XPC-FLD0138C
          VALUE X'3828944908530000000000000000000000'.
       78 XPC-FLD0139C
          VALUE X'06446533940000000000000000000000'.
       78 XPC-FLD0140C
          VALUE X'00000000000000000000000000000000000F'.
       78 XPC-FLD0141C
          VALUE X'02665121'.
       78 XPC-FLD0142C
          VALUE X'01246C'.
       78 XPC-FLD0143C
          VALUE X'06089871'.
       78 XPC-FLD0144C
          VALUE X'46256916'.
       78 XPC-FLD0145C
          VALUE X'0592809780429536'.
       78 XPC-FLD0146C
          VALUE X'00000000910000000000000F'.
       78 XPC-FLD0147C
          VALUE X'0000000008500000'.
       78 XPC-FLD0148C
          VALUE X'000011890000'.
       78 XPC-FLD0149C
          VALUE X'069C'.
       78 XPC-FLD0150C
          VALUE X'06000000000000000000000000000000000000'.
       78 XPC-FLD0151C
          VALUE X'26337494884196344102000000000F'.
       78 XPC-FLD0152C
          VALUE X'006500000000000000000000000000000000'.
       78 XPC-FLD0153C
          VALUE X'92463876729946470334198230000F'.
       78 XPC-FLD0154C
          VALUE X'006185316446100478'.
       78 XPC-FLD0155C
          VALUE X'08612867405699800000000000000000000F'.
       78 XPC-FLD0156C
          VALUE X'0095383071407820274600908305728808'.
       78 XPC-FLD0157C
          VALUE X'0659745695048369'.
       78 XPC-FLD0158C
          VALUE X'41265698123411400000000F'.
       78 XPC-FLD0159C
          VALUE X'0000000000000000000000000F'.
       78 XPC-FLD0160C
          VALUE X'06561078'.
       78 XPC-FLD0161C
          VALUE X'0078871709741627593626134284'.
       78 XPC-FLD0162C
          VALUE X'0000000000700000000000'.
       78 XPC-FLD0163C
          VALUE X'0618392824198294444038020F'.
       78 XPC-FLD0164C
          VALUE X'4076'.
       78 XPC-FLD0165C
          VALUE X'9164'.
       78 XPC-FLD0166C
          VALUE X'605899'.
       78 XPC-FLD0167C
          VALUE X'02534589620000000000000000000000'.
       78 XPC-FLD0168C
          VALUE X'00000001200000000C'.
       78 XPC-FLD0169C
          VALUE X'00834885736806376232976845'.
       78 XPC-FLD0170C
          VALUE X'02466670953929366305600000000000000000'.
       78 XPC-FLD0171C
          VALUE X'0675345293467529'.
       78 XPC-FLD0172C
          VALUE X'0096021652336003293637389788273139'.
       78 XPC-FLD0173C
          VALUE X'041247291433666300'.
       78 XPC-FLD0174C
          VALUE X'00000001244000000000'.
       78 XPC-FLD0175C
          VALUE X'056C'.
       78 XPC-FLD0176C
          VALUE X'007902178745'.
       78 XPC-FLD0177C
          VALUE X'0761883957'.
       78 XPC-FLD0178C
          VALUE X'55502105334C'.
       78 XPC-FLD0179C
          VALUE X'0564'.
       78 XPC-FLD0180C
          VALUE X'000000859461576526592F'.
       78 XPC-FLD0181C
          VALUE X'0000018890880000000C'.
       78 XPC-FLD0182C
          VALUE X'0061401860346830039460900F'.
       78 XPC-FLD0183C
          VALUE X'008C'.
       78 XPC-FLD0184C
          VALUE X'059457428C'.
       78 XPC-FLD0185C
          VALUE X'0001566600000000000000000000'.
       78 XPC-FLD0186C
          VALUE X'0000700000000000000000000000000F'.
       78 XPC-FLD0187C
          VALUE X'0604672028742360256892'.
       78 XPC-FLD0188C
          VALUE X'08008236875695360357241270000F'.
       78 XPC-FLD0189C
          VALUE X'0511507101623805082700'.
       78 XPC-FLD0190C
          VALUE X'000238213754000000000000'.
       78 XPC-FLD0191C
          VALUE X'0013720000000000000000000000000F'.
       78 XPC-FLD0192C
          VALUE X'00000000098942'.
       78 XPC-FLD0193C
          VALUE X'25294367709051900000000F'.
       78 XPC-FLD0194C
          VALUE X'0417168379939779000000000F'.
       78 XPC-FLD0195C
          VALUE X'045846'.
       78 XPC-FLD0196C
          VALUE X'0000000C'.
       78 XPC-FLD0197C
          VALUE X'09'.
       78 XPC-FLD0198C
          VALUE X'93108C'.
       78 XPC-FLD0199C
          VALUE X'248328724000000000000000000000'.
       78 XPC-FLD0200C
          VALUE X'049359727906061917'.
       78 XPC-FLD0201C
          VALUE X'0000128200000000000000000000000F'.
       78 XPC-FLD0202C
          VALUE X'044375030000000000000000000000000000'.
       78 XPC-FLD0203C
          VALUE X'06633826404025384700000000000000000F'.
       78 XPC-FLD0204C
          VALUE X'00000097'.
       78 XPC-FLD0205C
          VALUE X'648926914508991536933990'.
       78 XPC-FLD0206C
          VALUE X'00186967700000000000000000'.
       78 XPC-FLD0207C
          VALUE X'00083944392422874225534457082F'.
       78 XPC-FLD0208C
          VALUE X'00000967'.
       78 XPC-FLD0209C
          VALUE X'000092661149050802726900855077'.
       78 XPC-FLD0210C
          VALUE X'08'.
       78 XPC-FLD0211C
          VALUE X'00000000000000000C'.
       78 XPC-FLD0212C
          VALUE X'089203279255731C'.
       78 XPC-FLD0213C
          VALUE X'00000082000000000000000000000F'.
       78 XPC-FLD0214C
          VALUE X'00000000000000000000000000'.
       78 XPC-FLD0215C
          VALUE X'0009263C'.
       78 XPC-FLD0216C
          VALUE X'2809537487'.
       78 XPC-FLD0217C
          VALUE X'00745629624865839C'.
       78 XPC-FLD0218C
          VALUE X'04600000000000000000000000000000000000'.
       78 XPC-FLD0219C
          VALUE X'05787889921275072291'.
       78 XPC-FLD0220C
          VALUE X'43525C'.
       78 XPC-FLD0221C
          VALUE X'0000000000000000000000000000000000'.
       78 XPC-FLD0222C
          VALUE X'82805C'.
       78 XPC-FLD0223C
          VALUE X'00000000000000000000000000'.
       78 XPC-FLD0224C
          VALUE X'000083818722675C'.
       78 XPC-FLD0225C
          VALUE X'000013797000000000000F'.
       78 XPC-FLD0226C
          VALUE X'000149000C'.
       78 XPC-FLD0227C
          VALUE X'3055159408599976700000000000000000'.
       78 XPC-FLD0228C
          VALUE X'6300000000000000000000000000000000000F'.
       78 XPC-FLD0229C
          VALUE X'0000000987047360326050560175'.
       78 XPC-FLD0230C
          VALUE X'092C'.
       78 XPC-FLD0231C
          VALUE X'00008778168C'.
       78 XPC-FLD0232C
          VALUE X'3082645328000000000000000000000F'.
       78 XPC-FLD0233C
          VALUE X'075521568090'.
       78 XPC-FLD0234C
          VALUE X'00338310526754000000000F'.
       78 XPC-FLD0235C
          VALUE X'0000001412300000000C'.
       78 XPC-FLD0236C
          VALUE X'000008818235282899151705748F'.
       78 XPC-FLD0237C
          VALUE X'0203759000000000000000000000000000'.
       78 XPC-FLD0238C
          VALUE X'05210964'.
       78 XPC-FLD0239C
          VALUE X'67858577929248176108245F'.
       78 XPC-FLD0240C
          VALUE X'8535764467660000000000000000000F'.
       78 XPC-FLD0241C
          VALUE X'000001440700000000000000'.
       78 XPC-FLD0242C
          VALUE X'3838549C'.
       78 XPC-FLD0243C
          VALUE X'0000970409660969254295181940506154'.
       78 XPC-FLD0244C
          VALUE X'0000000000000000000000'.
       78 XPC-FLD0245C
          VALUE X'371716886145420000000000'.
       78 XPC-FLD0246C
          VALUE X'00872169'.
       78 XPC-FLD0247C
          VALUE X'008344948214770686600871840F'.
       78 XPC-FLD0248C
          VALUE X'0000000888556418584546'.
       78 XPC-FLD0249C
          VALUE X'6784708395950102000071524F'.
       78 XPC-FLD0250C
          VALUE X'8324926731005675151000000000000000'.
       78 XPC-FLD0251C
          VALUE X'5489100071950000000000000000000F'.
       78 XPC-FLD0252C
          VALUE X'000183393D'.
       78 XPC-FLD0253C
          VALUE X'08225938'.
       78 XPC-FLD0254C
          VALUE X'189569238C'.
       78 XPC-FLD0255C
          VALUE X'000000000948299297085F'.
       78 XPC-FLD0256C
          VALUE X'09644065917220000000000000000000000F'.
       78 XPC-FLD0257C
          VALUE X'491C'.
       78 XPC-FLD0258C
          VALUE X'93351960881057394000000000000000'.
       78 XPC-FLD0259C
          VALUE X'000000093755337C'.
       78 XPC-FLD0260C
          VALUE X'00000866489849667547828F'.
       78 XPC-FLD0261C
          VALUE X'37421392547904'.
       78 XPC-FLD0262C
          VALUE X'00001701590000000000000000'.
       78 XPC-FLD0263C
          VALUE X'046C'.
       78 XPC-FLD0264C
          VALUE X'009357'.
       78 XPC-FLD0265C
          VALUE X'02153010000000000000000000000000000000'.
       78 XPC-FLD0266C
          VALUE X'0076935708562128723997375345780000000F'.
       78 XPC-FLD0267C
          VALUE X'000000870C'.
       78 XPC-FLD0268C
          VALUE X'0000000000000000000000000000000F'.
       78 XPC-FLD0269C
          VALUE X'05'.
       78 XPC-FLD0270C
          VALUE X'04936C'.
       78 XPC-FLD0271C
          VALUE X'0815592744'.
       78 XPC-FLD0272C
          VALUE X'0041151466707076400C'.
       78 XPC-FLD0273C
          VALUE X'04698099460502486C'.
       78 XPC-FLD0274C
          VALUE X'00021902494000000000'.
       78 XPC-FLD0275C
          VALUE X'000115700C'.
       78 XPC-FLD0276C
          VALUE X'021044697283423507983002309629227000'.
       78 XPC-FLD0277C
          VALUE X'000000000974958216'.
       78 XPC-FLD0278C
          VALUE X'07069934760000000000000000000000000F'.
       78 XPC-FLD0279C
          VALUE X'20110000000000000000000000000000000F'.
       78 XPC-FLD0280C
          VALUE X'025719689200000000000000000F'.
       78 XPC-FLD0281C
          VALUE X'003428616893811000'.
       78 XPC-FLD0282C
          VALUE X'001473254430291000000000000000'.
       78 XPC-FLD0283C
          VALUE X'0000000C'.
       78 XPC-FLD0284C
          VALUE X'01'.
       78 XPC-FLD0285C
          VALUE X'0000092878828230193799520009'.
       78 XPC-FLD0286C
          VALUE X'04269643'.
       78 XPC-FLD0287C
          VALUE X'521413'.
       78 XPC-FLD0288C
          VALUE X'452502240640246355951000000000000F'.
       78 XPC-FLD0289C
          VALUE X'0000000009200000000000'.
       78 XPC-FLD0290C
          VALUE X'207D'.
       78 XPC-FLD0291C
          VALUE X'0000098593841243917534900020882F'.
       78 XPC-FLD0292C
          VALUE X'09'.
       78 XPC-FLD0293C
          VALUE X'000000093000'.
       78 XPC-FLD0294C
          VALUE X'09'.
       78 XPC-FLD0295C
          VALUE X'025025480D'.
       78 XPC-FLD0296C
          VALUE X'000160918000000000000F'.
       78 XPC-FLD0297C
          VALUE X'00030843552269000000'.
       78 XPC-FLD0298C
          VALUE X'09881505100000000000000000000000000000'.
       78 XPC-FLD0299C
          VALUE X'00648725735835784522720000'.
       78 XPC-FLD0300C
          VALUE X'07395614230661028409841F'.
       78 XPC-FLD0301C
          VALUE X'5D'.
       78 XPC-FLD0302C
          VALUE X'0000000094976469'.
       78 XPC-FLD0303C
          VALUE X'09'.
       78 XPC-FLD0304C
          VALUE X'0000000008300000000000'.
       78 XPC-FLD0305C
          VALUE X'4C'.
       78 XPC-FLD0306C
          VALUE X'0000000008300000000D'.
       78 XPC-FLD0307C
          VALUE X'075196597674160000000000000000000000'.
       78 XPC-FLD0308C
          VALUE X'0676212000000000000000000000000000000F'.
       78 XPC-FLD0309C
          VALUE X'096C'.
       78 XPC-FLD0310C
          VALUE X'0377541451372100'.
       78 XPC-FLD0311C
          VALUE X'6000000000000000000000000000000000000F'.
       78 XPC-FLD0312C
          VALUE X'04'.
       78 XPC-FLD0313C
          VALUE X'00008649336562'.
       78 XPC-FLD0314C
          VALUE X'00000088000000000000000000'.
       78 XPC-FLD0315C
          VALUE X'00793333674589681625555215'.
       78 XPC-FLD0316C
          VALUE X'000019582740000000000F'.
       78 XPC-FLD0317C
          VALUE X'0983225307652C'.
       78 XPC-FLD0318C
          VALUE X'637469000000000000000000000000000F'.
       78 XPC-FLD0319C
          VALUE X'0069931441978879860243978F'.
       78 XPC-FLD0320C
          VALUE X'007197349588245658402F'.
       78 XPC-FLD0321C
          VALUE X'0055048748534891610000000F'.
       78 XPC-FLD0322C
          VALUE X'044200531022490540000000'.
       78 XPC-FLD0323C
          VALUE X'0700000000000000000000000000000000000F'.
       78 XPC-FLD0324C
          VALUE X'056016045047582097016F'.
       78 XPC-FLD0325C
          VALUE X'000011690000000000000000000F'.
       78 XPC-FLD0326C
          VALUE X'044C'.
       78 XPC-FLD0327C
          VALUE X'000000900D'.
       78 XPC-FLD0328C
          VALUE X'007114750477168C'.
       78 XPC-FLD0329C
          VALUE X'0000000000000000000000000000000000000F'.
       78 XPC-FLD0330C
          VALUE X'528074615817230000000000000000'.
       78 XPC-FLD0331C
          VALUE X'0223281680'.
       78 XPC-FLD0332C
          VALUE X'00000865629886'.
       78 XPC-FLD0333C
          VALUE X'000009564C'.
       78 XPC-FLD0334C
          VALUE X'028999492466'.
       78 XPC-FLD0335C
          VALUE X'00030334218791000000'.
       78 XPC-FLD0336C
          VALUE X'00085800255C'.
       78 XPC-FLD0337C
          VALUE X'720039965448931451597047725F'.
       78 XPC-FLD0338C
          VALUE X'000000000000000000000F'.
       78 XPC-FLD0339C
          VALUE X'00001605520000000000000F'.
       78 XPC-FLD0340C
          VALUE X'0283816514732C'.
       78 XPC-FLD0341C
          VALUE X'676316159010109663180F'.
       78 XPC-FLD0342C
          VALUE X'00023471430000000C'.
       78 XPC-FLD0343C
          VALUE X'08663561'.
       78 XPC-FLD0344C
          VALUE X'487899471050000000000000000000000F'.
       78 XPC-FLD0345C
          VALUE X'0000000000000000'.
       78 XPC-FLD0346C
          VALUE X'0078078600333687642187641F'.
       78 XPC-FLD0347C
          VALUE X'165985'.
       78 XPC-FLD0348C
          VALUE X'0033778742713300000000'.
       78 XPC-FLD0349C
          VALUE X'06677966816100000000000000000000000F'.
       78 XPC-FLD0350C
          VALUE X'00000070000000000000000000000000'.
       78 XPC-FLD0351C
          VALUE X'00000849425769125191'.
       78 XPC-FLD0352C
          VALUE X'00009378'.
       78 XPC-FLD0353C
          VALUE X'88730000000000000000000000000000000F'.
       78 XPC-FLD0354C
          VALUE X'02152460400C'.
       78 XPC-FLD0355C
          VALUE X'08715C'.
       78 XPC-FLD0356C
          VALUE X'98983370500000000000000000000000'.
       78 XPC-FLD0357C
          VALUE X'0989'.
       78 XPC-FLD0358C
          VALUE X'02984840394300000000000000'.
       78 XPC-FLD0359C
          VALUE X'9598518521032133321568800000000000000F'.
       78 XPC-FLD0360C
          VALUE X'0027761227'.
       78 XPC-FLD0361C
          VALUE X'23089804406111236190213276131500'.
       78 XPC-FLD0362C
          VALUE X'0000000000000000000000000000000000'.
       78 XPC-FLD0363C
          VALUE X'05926207800000000000000000000000000F'.
       78 XPC-FLD0364C
          VALUE X'0012340000000000000000000000000F'.
       78 XPC-FLD0365C
          VALUE X'05519670096247205615100000'.
       78 XPC-FLD0366C
          VALUE X'08224143642778768414913770357088'.
       78 XPC-FLD0367C
          VALUE X'9754369C'.
       78 XPC-FLD0368C
          VALUE X'03'.
       78 XPC-FLD0369C
          VALUE X'00000000000C'.
       78 XPC-FLD0370C
          VALUE X'0C'.
       78 XPC-FLD0371C
          VALUE X'000C'.
       78 XPC-FLD0372C
          VALUE X'5067586024551302692F'.
       78 XPC-FLD0373C
          VALUE X'6607304158912C'.
       78 XPC-FLD0374C
          VALUE X'000000000000000000000000000F'.
       78 XPC-FLD0375C
          VALUE X'03'.
       78 XPC-FLD0376C
          VALUE X'0000084980958923270F'.
       78 XPC-FLD0377C
          VALUE X'00000967759547981370871205797F'.
       78 XPC-FLD0378C
          VALUE X'0000000C'.
       78 XPC-FLD0379C
          VALUE X'04'.
       78 XPC-FLD0380C
          VALUE X'9C'.
       78 XPC-FLD0381C
          VALUE X'0124'.
       78 XPC-FLD0382C
          VALUE X'3185'.
       78 XPC-FLD0383C
          VALUE X'0008846280283410202782690134881F'.
       78 XPC-FLD0384C
          VALUE X'01'.
       78 XPC-FLD0385C
          VALUE X'882641569234671408000000000000000F'.
       78 XPC-FLD0386C
          VALUE X'01006446220522301260000000000F'.
       78 XPC-FLD0387C
          VALUE X'0305164059310000000000000F'.
       78 XPC-FLD0388C
          VALUE X'0425'.
       78 XPC-FLD0389C
          VALUE X'4300560615719126000000'.
       78 XPC-FLD0390C
          VALUE X'0007'.
       78 XPC-FLD0391C
          VALUE X'03006664253C'.
       78 XPC-FLD0392C
          VALUE X'000000000957627258'.
       78 XPC-FLD0393C
          VALUE X'0005000000000000000000000000000000'.
       78 XPC-FLD0394C
          VALUE X'0000001680780000000C'.
       78 XPC-FLD0395C
          VALUE X'2C'.
       78 XPC-FLD0396C
          VALUE X'4199398272807910'.
       78 XPC-FLD0397C
          VALUE X'069C'.
       78 XPC-FLD0398C
          VALUE X'00008411085C'.
       78 XPC-FLD0399C
          VALUE X'0008621537'.
       78 XPC-FLD0400C
          VALUE X'07030346791008200000000000000000'.
       78 XPC-FLD0401C
          VALUE X'09'.
       78 XPC-FLD0402C
          VALUE X'00008843413069892215316869'.
       78 XPC-FLD0403C
          VALUE X'018521192780340000000000000000000000'.
       78 XPC-FLD0404C
          VALUE X'8105929035137817700000000F'.
       78 XPC-FLD0405C
          VALUE X'20744D'.
       78 XPC-FLD0406C
          VALUE X'250301894000000000000000000000'.
       78 XPC-FLD0407C
          VALUE X'08873808380059800000000000000000000000'.
       78 XPC-FLD0408C
          VALUE X'3810009911'.
       78 XPC-FLD0409C
          VALUE X'0028575188650000000000'.
       78 XPC-FLD0410C
          VALUE X'8608772611305250000000000000000000000F'.
       78 XPC-FLD0411C
          VALUE X'085733222699574884728690400000'.
       78 XPC-FLD0412C
          VALUE X'7C'.
       78 XPC-FLD0413C
          VALUE X'2C'.
       78 XPC-FLD0414C
          VALUE X'84413C'.
       78 XPC-FLD0415C
          VALUE X'9882276907018123770000000000000000'.
       78 XPC-FLD0416C
          VALUE X'8C'.
       78 XPC-FLD0417C
          VALUE X'094259186417160190085695603556814F'.
       78 XPC-FLD0418C
          VALUE X'00'.
       78 XPC-FLD0419C
          VALUE X'004156956195444910000F'.
       78 XPC-FLD0420C
          VALUE X'1191370000000000000000000000000000'.
       78 XPC-FLD0421C
          VALUE X'1247079C'.
       78 XPC-FLD0422C
          VALUE X'720047000515101842660000000000000000'.
       78 XPC-FLD0423C
          VALUE X'59541777429198150528570000'.
       78 XPC-FLD0424C
          VALUE X'0511515415988558208500000000'.
       78 XPC-FLD0425C
          VALUE X'04741628720817547270000F'.
       78 XPC-FLD0426C
          VALUE X'0560145669580725313885'.
       78 XPC-FLD0427C
          VALUE X'052846215641000000000000000000'.
       78 XPC-FLD0428C
          VALUE X'03234918316627730661139139556000000000'.
       78 XPC-FLD0429C
          VALUE X'0007833347606290'.
       78 XPC-FLD0430C
          VALUE X'00308209985020'.
       78 XPC-FLD0431C
          VALUE X'00000000000000000000000000000000000F'.
       78 XPC-FLD0432C
          VALUE X'0307034C'.
       78 XPC-FLD0433C
          VALUE X'00129558'.
       78 XPC-FLD0434C
          VALUE X'67534156190000000000000000000000000F'.
       78 XPC-FLD0435C
          VALUE X'00000000087000000000000F'.
       78 XPC-FLD0436C
          VALUE X'0000000000000000000000000000000F'.
       78 XPC-FLD0437C
          VALUE X'0632897272198471361193128F'.
       78 XPC-FLD0438C
          VALUE X'940216365745390802999000000000000F'.
       78 XPC-FLD0439C
          VALUE X'496113480543429519000F'.
       78 XPC-FLD0440C
          VALUE X'000000088990750705'.
       78 XPC-FLD0441C
          VALUE X'00071126905440655C'.
       78 XPC-FLD0442C
          VALUE X'9951000000000000000000000000000000'.
       78 XPC-FLD0443C
          VALUE X'74498425546487689000000F'.
       78 XPC-FLD0444C
          VALUE X'0000000094673816662F'.
       78 XPC-FLD0445C
          VALUE X'54165545445299512C'.
       78 XPC-FLD0446C
          VALUE X'00448978466972116400000000'.
       78 XPC-FLD0447C
          VALUE X'0000000600'.
       78 XPC-FLD0448C
          VALUE X'00001865654000000000'.
       78 XPC-FLD0449C
          VALUE X'0849880941870D'.
       78 XPC-FLD0450C
          VALUE X'6255783755022833458880'.
       78 XPC-FLD0451C
          VALUE X'000000000C'.
       78 XPC-FLD0452C
          VALUE X'0002682648418000000000'.
       78 XPC-FLD0453C
          VALUE X'465392911909000000000000000000000000'.
       78 XPC-FLD0454C
          VALUE X'0D'.
       78 XPC-FLD0455C
          VALUE X'000000000000000000000000000000000F'.
       78 XPC-FLD0456C
          VALUE X'000093'.
       78 XPC-FLD0457C
          VALUE X'03'.
       78 XPC-FLD0458C
          VALUE X'000000006000'.
       78 XPC-FLD0459C
          VALUE X'000019847990000000000F'.
       78 XPC-FLD0460C
          VALUE X'00000000000000000000000000000F'.
       78 XPC-FLD0461C
          VALUE X'000000000C'.
       78 XPC-FLD0462C
          VALUE X'0956900000000000000000000000000000000F'.
       78 XPC-FLD0463C
          VALUE X'0000085490666934'.
       78 XPC-FLD0464C
          VALUE X'0870311903834293000000000000'.
       78 XPC-FLD0465C
          VALUE X'05639855971063010280000000000000'.
       78 XPC-FLD0466C
          VALUE X'081306'.
       78 XPC-FLD0467C
          VALUE X'328700000000000000000000000000000F'.
       78 XPC-FLD0468C
          VALUE X'044132145767'.
       78 XPC-FLD0469C
          VALUE X'0070961503876956555F'.
       78 XPC-FLD0470C
          VALUE X'000000091368100C'.
       78 XPC-FLD0471C
          VALUE X'03'.
       78 XPC-FLD0472C
          VALUE X'099086905033216800000000000000000F'.
       78 XPC-FLD0473C
          VALUE X'074367162068054681878237488F'.
       78 XPC-FLD0474C
          VALUE X'25744C'.
       78 XPC-FLD0475C
          VALUE X'588724634299997C'.
       78 XPC-FLD0476C
          VALUE X'08699334'.
       78 XPC-FLD0477C
          VALUE X'007449248299155C'.
       78 XPC-FLD0478C
          VALUE X'00726161625751'.
       78 XPC-FLD0479C
          VALUE X'5020528966970000000000000000000F'.
       78 XPC-FLD0480C
          VALUE X'0020301780000000000000000000'.
       78 XPC-FLD0481C
          VALUE X'8000000000000000000000000000000000000F'.
       78 XPC-FLD0482C
          VALUE X'0007090503795044722C'.
       78 XPC-FLD0483C
          VALUE X'0000000079000C'.
       78 XPC-FLD0484C
          VALUE X'0000000000000000000000'.
       78 XPC-FLD0485C
          VALUE X'675729'.
       78 XPC-FLD0486C
          VALUE X'000000139370000000'.
       78 XPC-FLD0487C
          VALUE X'000209384200000000000000000F'.
       78 XPC-FLD0488C
          VALUE X'05191989067966076000000000'.
       78 XPC-FLD0489C
          VALUE X'00600000000000000000000000000000000000'.
       78 XPC-FLD0490C
          VALUE X'5256658026'.
       78 XPC-FLD0491C
          VALUE X'0000009182459205467069507F'.
       78 XPC-FLD0492C
          VALUE X'0008192664570C'.
       78 XPC-FLD0493C
          VALUE X'018038500000000000000000000000'.
       78 XPC-FLD0494C
          VALUE X'0000087574541779147F'.
       78 XPC-FLD0495C
          VALUE X'000000005000000000000000'.
       78 XPC-FLD0496C
          VALUE X'06763C'.
       78 XPC-FLD0497C
          VALUE X'00008362306435874340415637'.
       78 XPC-FLD0498C
          VALUE X'04552934'.
       78 XPC-FLD0499C
          VALUE X'0000000005000000000000000F'.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE FLD0001A        TO FLD0001C.
           MOVE FLD0002A        TO FLD0002C.
           MOVE FLD0003A        TO FLD0003C.
           MOVE FLD0004A        TO FLD0004C.
           MOVE FLD0005A        TO FLD0005C.
           MOVE FLD0006A        TO FLD0006C.
           MOVE FLD0007A        TO FLD0007C.
           MOVE FLD0008A        TO FLD0008C.
           MOVE FLD0009A        TO FLD0009C.
           MOVE FLD0010A        TO FLD0010C.
           MOVE FLD0011A        TO FLD0011C.
           MOVE FLD0012A        TO FLD0012C.
           MOVE FLD0013A        TO FLD0013C.
           MOVE FLD0014A        TO FLD0014C.
           MOVE FLD0015A        TO FLD0015C.
           MOVE FLD0016A        TO FLD0016C.
           MOVE FLD0017A        TO FLD0017C.
           MOVE FLD0018A        TO FLD0018C.
           MOVE FLD0019A        TO FLD0019C.
           MOVE FLD0020A        TO FLD0020C.
           MOVE FLD0021A        TO FLD0021C.
           MOVE FLD0022A        TO FLD0022C.
           MOVE FLD0023A        TO FLD0023C.
           MOVE FLD0024A        TO FLD0024C.
           MOVE FLD0025A        TO FLD0025C.
           MOVE FLD0026A        TO FLD0026C.
           MOVE FLD0027A        TO FLD0027C.
           MOVE FLD0028A        TO FLD0028C.
           MOVE FLD0029A        TO FLD0029C.
           MOVE FLD0030A        TO FLD0030C.
           MOVE FLD0031A        TO FLD0031C.
           MOVE FLD0032A        TO FLD0032C.
           MOVE FLD0033A        TO FLD0033C.
           MOVE FLD0034A        TO FLD0034C.
           MOVE FLD0035A        TO FLD0035C.
           MOVE FLD0036A        TO FLD0036C.
           MOVE FLD0037A        TO FLD0037C.
           MOVE FLD0038A        TO FLD0038C.
           MOVE FLD0039A        TO FLD0039C.
           MOVE FLD0040A        TO FLD0040C.
           MOVE FLD0041A        TO FLD0041C.
           MOVE FLD0042A        TO FLD0042C.
           MOVE FLD0043A        TO FLD0043C.
           MOVE FLD0044A        TO FLD0044C.
           MOVE FLD0045A        TO FLD0045C.
           MOVE FLD0046A        TO FLD0046C.
           MOVE FLD0047A        TO FLD0047C.
           MOVE FLD0048A        TO FLD0048C.
           MOVE FLD0049A        TO FLD0049C.
           MOVE FLD0050A        TO FLD0050C.
           MOVE FLD0051A        TO FLD0051C.
           MOVE FLD0052A        TO FLD0052C.
           MOVE FLD0053A        TO FLD0053C.
           MOVE FLD0054A        TO FLD0054C.
           MOVE FLD0055A        TO FLD0055C.
           MOVE FLD0056A        TO FLD0056C.
           MOVE FLD0057A        TO FLD0057C.
           MOVE FLD0058A        TO FLD0058C.
           MOVE FLD0059A        TO FLD0059C.
           MOVE FLD0060A        TO FLD0060C.
           MOVE FLD0061A        TO FLD0061C.
           MOVE FLD0062A        TO FLD0062C.
           MOVE FLD0063A        TO FLD0063C.
           MOVE FLD0064A        TO FLD0064C.
           MOVE FLD0065A        TO FLD0065C.
           MOVE FLD0066A        TO FLD0066C.
           MOVE FLD0067A        TO FLD0067C.
           MOVE FLD0068A        TO FLD0068C.
           MOVE FLD0069A        TO FLD0069C.
           MOVE FLD0070A        TO FLD0070C.
           MOVE FLD0071A        TO FLD0071C.
           MOVE FLD0072A        TO FLD0072C.
           MOVE FLD0073A        TO FLD0073C.
           MOVE FLD0074A        TO FLD0074C.
           MOVE FLD0075A        TO FLD0075C.
           MOVE FLD0076A        TO FLD0076C.
           MOVE FLD0077A        TO FLD0077C.
           MOVE FLD0078A        TO FLD0078C.
           MOVE FLD0079A        TO FLD0079C.
           MOVE FLD0080A        TO FLD0080C.
           MOVE FLD0081A        TO FLD0081C.
           MOVE FLD0082A        TO FLD0082C.
           MOVE FLD0083A        TO FLD0083C.
           MOVE FLD0084A        TO FLD0084C.
           MOVE FLD0085A        TO FLD0085C.
           MOVE FLD0086A        TO FLD0086C.
           MOVE FLD0087A        TO FLD0087C.
           MOVE FLD0088A        TO FLD0088C.
           MOVE FLD0089A        TO FLD0089C.
           MOVE FLD0090A        TO FLD0090C.
           MOVE FLD0091A        TO FLD0091C.
           MOVE FLD0092A        TO FLD0092C.
           MOVE FLD0093A        TO FLD0093C.
           MOVE FLD0094A        TO FLD0094C.
           MOVE FLD0095A        TO FLD0095C.
           MOVE FLD0096A        TO FLD0096C.
           MOVE FLD0097A        TO FLD0097C.
           MOVE FLD0098A        TO FLD0098C.
           MOVE FLD0099A        TO FLD0099C.
           MOVE FLD0100A        TO FLD0100C.
           MOVE FLD0101A        TO FLD0101C.
           MOVE FLD0102A        TO FLD0102C.
           MOVE FLD0103A        TO FLD0103C.
           MOVE FLD0104A        TO FLD0104C.
           MOVE FLD0105A        TO FLD0105C.
           MOVE FLD0106A        TO FLD0106C.
           MOVE FLD0107A        TO FLD0107C.
           MOVE FLD0108A        TO FLD0108C.
           MOVE FLD0109A        TO FLD0109C.
           MOVE FLD0110A        TO FLD0110C.
           MOVE FLD0111A        TO FLD0111C.
           MOVE FLD0112A        TO FLD0112C.
           MOVE FLD0113A        TO FLD0113C.
           MOVE FLD0114A        TO FLD0114C.
           MOVE FLD0115A        TO FLD0115C.
           MOVE FLD0116A        TO FLD0116C.
           MOVE FLD0117A        TO FLD0117C.
           MOVE FLD0118A        TO FLD0118C.
           MOVE FLD0119A        TO FLD0119C.
           MOVE FLD0120A        TO FLD0120C.
           MOVE FLD0121A        TO FLD0121C.
           MOVE FLD0122A        TO FLD0122C.
           MOVE FLD0123A        TO FLD0123C.
           MOVE FLD0124A        TO FLD0124C.
           MOVE FLD0125A        TO FLD0125C.
           MOVE FLD0126A        TO FLD0126C.
           MOVE FLD0127A        TO FLD0127C.
           MOVE FLD0128A        TO FLD0128C.
           MOVE FLD0129A        TO FLD0129C.
           MOVE FLD0130A        TO FLD0130C.
           MOVE FLD0131A        TO FLD0131C.
           MOVE FLD0132A        TO FLD0132C.
           MOVE FLD0133A        TO FLD0133C.
           MOVE FLD0134A        TO FLD0134C.
           MOVE FLD0135A        TO FLD0135C.
           MOVE FLD0136A        TO FLD0136C.
           MOVE FLD0137A        TO FLD0137C.
           MOVE FLD0138A        TO FLD0138C.
           MOVE FLD0139A        TO FLD0139C.
           MOVE FLD0140A        TO FLD0140C.
           MOVE FLD0141A        TO FLD0141C.
           MOVE FLD0142A        TO FLD0142C.
           MOVE FLD0143A        TO FLD0143C.
           MOVE FLD0144A        TO FLD0144C.
           MOVE FLD0145A        TO FLD0145C.
           MOVE FLD0146A        TO FLD0146C.
           MOVE FLD0147A        TO FLD0147C.
           MOVE FLD0148A        TO FLD0148C.
           MOVE FLD0149A        TO FLD0149C.
           MOVE FLD0150A        TO FLD0150C.
           MOVE FLD0151A        TO FLD0151C.
           MOVE FLD0152A        TO FLD0152C.
           MOVE FLD0153A        TO FLD0153C.
           MOVE FLD0154A        TO FLD0154C.
           MOVE FLD0155A        TO FLD0155C.
           MOVE FLD0156A        TO FLD0156C.
           MOVE FLD0157A        TO FLD0157C.
           MOVE FLD0158A        TO FLD0158C.
           MOVE FLD0159A        TO FLD0159C.
           MOVE FLD0160A        TO FLD0160C.
           MOVE FLD0161A        TO FLD0161C.
           MOVE FLD0162A        TO FLD0162C.
           MOVE FLD0163A        TO FLD0163C.
           MOVE FLD0164A        TO FLD0164C.
           MOVE FLD0165A        TO FLD0165C.
           MOVE FLD0166A        TO FLD0166C.
           MOVE FLD0167A        TO FLD0167C.
           MOVE FLD0168A        TO FLD0168C.
           MOVE FLD0169A        TO FLD0169C.
           MOVE FLD0170A        TO FLD0170C.
           MOVE FLD0171A        TO FLD0171C.
           MOVE FLD0172A        TO FLD0172C.
           MOVE FLD0173A        TO FLD0173C.
           MOVE FLD0174A        TO FLD0174C.
           MOVE FLD0175A        TO FLD0175C.
           MOVE FLD0176A        TO FLD0176C.
           MOVE FLD0177A        TO FLD0177C.
           MOVE FLD0178A        TO FLD0178C.
           MOVE FLD0179A        TO FLD0179C.
           MOVE FLD0180A        TO FLD0180C.
           MOVE FLD0181A        TO FLD0181C.
           MOVE FLD0182A        TO FLD0182C.
           MOVE FLD0183A        TO FLD0183C.
           MOVE FLD0184A        TO FLD0184C.
           MOVE FLD0185A        TO FLD0185C.
           MOVE FLD0186A        TO FLD0186C.
           MOVE FLD0187A        TO FLD0187C.
           MOVE FLD0188A        TO FLD0188C.
           MOVE FLD0189A        TO FLD0189C.
           MOVE FLD0190A        TO FLD0190C.
           MOVE FLD0191A        TO FLD0191C.
           MOVE FLD0192A        TO FLD0192C.
           MOVE FLD0193A        TO FLD0193C.
           MOVE FLD0194A        TO FLD0194C.
           MOVE FLD0195A        TO FLD0195C.
           MOVE FLD0196A        TO FLD0196C.
           MOVE FLD0197A        TO FLD0197C.
           MOVE FLD0198A        TO FLD0198C.
           MOVE FLD0199A        TO FLD0199C.
           MOVE FLD0200A        TO FLD0200C.
           MOVE FLD0201A        TO FLD0201C.
           MOVE FLD0202A        TO FLD0202C.
           MOVE FLD0203A        TO FLD0203C.
           MOVE FLD0204A        TO FLD0204C.
           MOVE FLD0205A        TO FLD0205C.
           MOVE FLD0206A        TO FLD0206C.
           MOVE FLD0207A        TO FLD0207C.
           MOVE FLD0208A        TO FLD0208C.
           MOVE FLD0209A        TO FLD0209C.
           MOVE FLD0210A        TO FLD0210C.
           MOVE FLD0211A        TO FLD0211C.
           MOVE FLD0212A        TO FLD0212C.
           MOVE FLD0213A        TO FLD0213C.
           MOVE FLD0214A        TO FLD0214C.
           MOVE FLD0215A        TO FLD0215C.
           MOVE FLD0216A        TO FLD0216C.
           MOVE FLD0217A        TO FLD0217C.
           MOVE FLD0218A        TO FLD0218C.
           MOVE FLD0219A        TO FLD0219C.
           MOVE FLD0220A        TO FLD0220C.
           MOVE FLD0221A        TO FLD0221C.
           MOVE FLD0222A        TO FLD0222C.
           MOVE FLD0223A        TO FLD0223C.
           MOVE FLD0224A        TO FLD0224C.
           MOVE FLD0225A        TO FLD0225C.
           MOVE FLD0226A        TO FLD0226C.
           MOVE FLD0227A        TO FLD0227C.
           MOVE FLD0228A        TO FLD0228C.
           MOVE FLD0229A        TO FLD0229C.
           MOVE FLD0230A        TO FLD0230C.
           MOVE FLD0231A        TO FLD0231C.
           MOVE FLD0232A        TO FLD0232C.
           MOVE FLD0233A        TO FLD0233C.
           MOVE FLD0234A        TO FLD0234C.
           MOVE FLD0235A        TO FLD0235C.
           MOVE FLD0236A        TO FLD0236C.
           MOVE FLD0237A        TO FLD0237C.
           MOVE FLD0238A        TO FLD0238C.
           MOVE FLD0239A        TO FLD0239C.
           MOVE FLD0240A        TO FLD0240C.
           MOVE FLD0241A        TO FLD0241C.
           MOVE FLD0242A        TO FLD0242C.
           MOVE FLD0243A        TO FLD0243C.
           MOVE FLD0244A        TO FLD0244C.
           MOVE FLD0245A        TO FLD0245C.
           MOVE FLD0246A        TO FLD0246C.
           MOVE FLD0247A        TO FLD0247C.
           MOVE FLD0248A        TO FLD0248C.
           MOVE FLD0249A        TO FLD0249C.
           MOVE FLD0250A        TO FLD0250C.
           MOVE FLD0251A        TO FLD0251C.
           MOVE FLD0252A        TO FLD0252C.
           MOVE FLD0253A        TO FLD0253C.
           MOVE FLD0254A        TO FLD0254C.
           MOVE FLD0255A        TO FLD0255C.
           MOVE FLD0256A        TO FLD0256C.
           MOVE FLD0257A        TO FLD0257C.
           MOVE FLD0258A        TO FLD0258C.
           MOVE FLD0259A        TO FLD0259C.
           MOVE FLD0260A        TO FLD0260C.
           MOVE FLD0261A        TO FLD0261C.
           MOVE FLD0262A        TO FLD0262C.
           MOVE FLD0263A        TO FLD0263C.
           MOVE FLD0264A        TO FLD0264C.
           MOVE FLD0265A        TO FLD0265C.
           MOVE FLD0266A        TO FLD0266C.
           MOVE FLD0267A        TO FLD0267C.
           MOVE FLD0268A        TO FLD0268C.
           MOVE FLD0269A        TO FLD0269C.
           MOVE FLD0270A        TO FLD0270C.
           MOVE FLD0271A        TO FLD0271C.
           MOVE FLD0272A        TO FLD0272C.
           MOVE FLD0273A        TO FLD0273C.
           MOVE FLD0274A        TO FLD0274C.
           MOVE FLD0275A        TO FLD0275C.
           MOVE FLD0276A        TO FLD0276C.
           MOVE FLD0277A        TO FLD0277C.
           MOVE FLD0278A        TO FLD0278C.
           MOVE FLD0279A        TO FLD0279C.
           MOVE FLD0280A        TO FLD0280C.
           MOVE FLD0281A        TO FLD0281C.
           MOVE FLD0282A        TO FLD0282C.
           MOVE FLD0283A        TO FLD0283C.
           MOVE FLD0284A        TO FLD0284C.
           MOVE FLD0285A        TO FLD0285C.
           MOVE FLD0286A        TO FLD0286C.
           MOVE FLD0287A        TO FLD0287C.
           MOVE FLD0288A        TO FLD0288C.
           MOVE FLD0289A        TO FLD0289C.
           MOVE FLD0290A        TO FLD0290C.
           MOVE FLD0291A        TO FLD0291C.
           MOVE FLD0292A        TO FLD0292C.
           MOVE FLD0293A        TO FLD0293C.
           MOVE FLD0294A        TO FLD0294C.
           MOVE FLD0295A        TO FLD0295C.
           MOVE FLD0296A        TO FLD0296C.
           MOVE FLD0297A        TO FLD0297C.
           MOVE FLD0298A        TO FLD0298C.
           MOVE FLD0299A        TO FLD0299C.
           MOVE FLD0300A        TO FLD0300C.
           MOVE FLD0301A        TO FLD0301C.
           MOVE FLD0302A        TO FLD0302C.
           MOVE FLD0303A        TO FLD0303C.
           MOVE FLD0304A        TO FLD0304C.
           MOVE FLD0305A        TO FLD0305C.
           MOVE FLD0306A        TO FLD0306C.
           MOVE FLD0307A        TO FLD0307C.
           MOVE FLD0308A        TO FLD0308C.
           MOVE FLD0309A        TO FLD0309C.
           MOVE FLD0310A        TO FLD0310C.
           MOVE FLD0311A        TO FLD0311C.
           MOVE FLD0312A        TO FLD0312C.
           MOVE FLD0313A        TO FLD0313C.
           MOVE FLD0314A        TO FLD0314C.
           MOVE FLD0315A        TO FLD0315C.
           MOVE FLD0316A        TO FLD0316C.
           MOVE FLD0317A        TO FLD0317C.
           MOVE FLD0318A        TO FLD0318C.
           MOVE FLD0319A        TO FLD0319C.
           MOVE FLD0320A        TO FLD0320C.
           MOVE FLD0321A        TO FLD0321C.
           MOVE FLD0322A        TO FLD0322C.
           MOVE FLD0323A        TO FLD0323C.
           MOVE FLD0324A        TO FLD0324C.
           MOVE FLD0325A        TO FLD0325C.
           MOVE FLD0326A        TO FLD0326C.
           MOVE FLD0327A        TO FLD0327C.
           MOVE FLD0328A        TO FLD0328C.
           MOVE FLD0329A        TO FLD0329C.
           MOVE FLD0330A        TO FLD0330C.
           MOVE FLD0331A        TO FLD0331C.
           MOVE FLD0332A        TO FLD0332C.
           MOVE FLD0333A        TO FLD0333C.
           MOVE FLD0334A        TO FLD0334C.
           MOVE FLD0335A        TO FLD0335C.
           MOVE FLD0336A        TO FLD0336C.
           MOVE FLD0337A        TO FLD0337C.
           MOVE FLD0338A        TO FLD0338C.
           MOVE FLD0339A        TO FLD0339C.
           MOVE FLD0340A        TO FLD0340C.
           MOVE FLD0341A        TO FLD0341C.
           MOVE FLD0342A        TO FLD0342C.
           MOVE FLD0343A        TO FLD0343C.
           MOVE FLD0344A        TO FLD0344C.
           MOVE FLD0345A        TO FLD0345C.
           MOVE FLD0346A        TO FLD0346C.
           MOVE FLD0347A        TO FLD0347C.
           MOVE FLD0348A        TO FLD0348C.
           MOVE FLD0349A        TO FLD0349C.
           MOVE FLD0350A        TO FLD0350C.
           MOVE FLD0351A        TO FLD0351C.
           MOVE FLD0352A        TO FLD0352C.
           MOVE FLD0353A        TO FLD0353C.
           MOVE FLD0354A        TO FLD0354C.
           MOVE FLD0355A        TO FLD0355C.
           MOVE FLD0356A        TO FLD0356C.
           MOVE FLD0357A        TO FLD0357C.
           MOVE FLD0358A        TO FLD0358C.
           MOVE FLD0359A        TO FLD0359C.
           MOVE FLD0360A        TO FLD0360C.
           MOVE FLD0361A        TO FLD0361C.
           MOVE FLD0362A        TO FLD0362C.
           MOVE FLD0363A        TO FLD0363C.
           MOVE FLD0364A        TO FLD0364C.
           MOVE FLD0365A        TO FLD0365C.
           MOVE FLD0366A        TO FLD0366C.
           MOVE FLD0367A        TO FLD0367C.
           MOVE FLD0368A        TO FLD0368C.
           MOVE FLD0369A        TO FLD0369C.
           MOVE FLD0370A        TO FLD0370C.
           MOVE FLD0371A        TO FLD0371C.
           MOVE FLD0372A        TO FLD0372C.
           MOVE FLD0373A        TO FLD0373C.
           MOVE FLD0374A        TO FLD0374C.
           MOVE FLD0375A        TO FLD0375C.
           MOVE FLD0376A        TO FLD0376C.
           MOVE FLD0377A        TO FLD0377C.
           MOVE FLD0378A        TO FLD0378C.
           MOVE FLD0379A        TO FLD0379C.
           MOVE FLD0380A        TO FLD0380C.
           MOVE FLD0381A        TO FLD0381C.
           MOVE FLD0382A        TO FLD0382C.
           MOVE FLD0383A        TO FLD0383C.
           MOVE FLD0384A        TO FLD0384C.
           MOVE FLD0385A        TO FLD0385C.
           MOVE FLD0386A        TO FLD0386C.
           MOVE FLD0387A        TO FLD0387C.
           MOVE FLD0388A        TO FLD0388C.
           MOVE FLD0389A        TO FLD0389C.
           MOVE FLD0390A        TO FLD0390C.
           MOVE FLD0391A        TO FLD0391C.
           MOVE FLD0392A        TO FLD0392C.
           MOVE FLD0393A        TO FLD0393C.
           MOVE FLD0394A        TO FLD0394C.
           MOVE FLD0395A        TO FLD0395C.
           MOVE FLD0396A        TO FLD0396C.
           MOVE FLD0397A        TO FLD0397C.
           MOVE FLD0398A        TO FLD0398C.
           MOVE FLD0399A        TO FLD0399C.
           MOVE FLD0400A        TO FLD0400C.
           MOVE FLD0401A        TO FLD0401C.
           MOVE FLD0402A        TO FLD0402C.
           MOVE FLD0403A        TO FLD0403C.
           MOVE FLD0404A        TO FLD0404C.
           MOVE FLD0405A        TO FLD0405C.
           MOVE FLD0406A        TO FLD0406C.
           MOVE FLD0407A        TO FLD0407C.
           MOVE FLD0408A        TO FLD0408C.
           MOVE FLD0409A        TO FLD0409C.
           MOVE FLD0410A        TO FLD0410C.
           MOVE FLD0411A        TO FLD0411C.
           MOVE FLD0412A        TO FLD0412C.
           MOVE FLD0413A        TO FLD0413C.
           MOVE FLD0414A        TO FLD0414C.
           MOVE FLD0415A        TO FLD0415C.
           MOVE FLD0416A        TO FLD0416C.
           MOVE FLD0417A        TO FLD0417C.
           MOVE FLD0418A        TO FLD0418C.
           MOVE FLD0419A        TO FLD0419C.
           MOVE FLD0420A        TO FLD0420C.
           MOVE FLD0421A        TO FLD0421C.
           MOVE FLD0422A        TO FLD0422C.
           MOVE FLD0423A        TO FLD0423C.
           MOVE FLD0424A        TO FLD0424C.
           MOVE FLD0425A        TO FLD0425C.
           MOVE FLD0426A        TO FLD0426C.
           MOVE FLD0427A        TO FLD0427C.
           MOVE FLD0428A        TO FLD0428C.
           MOVE FLD0429A        TO FLD0429C.
           MOVE FLD0430A        TO FLD0430C.
           MOVE FLD0431A        TO FLD0431C.
           MOVE FLD0432A        TO FLD0432C.
           MOVE FLD0433A        TO FLD0433C.
           MOVE FLD0434A        TO FLD0434C.
           MOVE FLD0435A        TO FLD0435C.
           MOVE FLD0436A        TO FLD0436C.
           MOVE FLD0437A        TO FLD0437C.
           MOVE FLD0438A        TO FLD0438C.
           MOVE FLD0439A        TO FLD0439C.
           MOVE FLD0440A        TO FLD0440C.
           MOVE FLD0441A        TO FLD0441C.
           MOVE FLD0442A        TO FLD0442C.
           MOVE FLD0443A        TO FLD0443C.
           MOVE FLD0444A        TO FLD0444C.
           MOVE FLD0445A        TO FLD0445C.
           MOVE FLD0446A        TO FLD0446C.
           MOVE FLD0447A        TO FLD0447C.
           MOVE FLD0448A        TO FLD0448C.
           MOVE FLD0449A        TO FLD0449C.
           MOVE FLD0450A        TO FLD0450C.
           MOVE FLD0451A        TO FLD0451C.
           MOVE FLD0452A        TO FLD0452C.
           MOVE FLD0453A        TO FLD0453C.
           MOVE FLD0454A        TO FLD0454C.
           MOVE FLD0455A        TO FLD0455C.
           MOVE FLD0456A        TO FLD0456C.
           MOVE FLD0457A        TO FLD0457C.
           MOVE FLD0458A        TO FLD0458C.
           MOVE FLD0459A        TO FLD0459C.
           MOVE FLD0460A        TO FLD0460C.
           MOVE FLD0461A        TO FLD0461C.
           MOVE FLD0462A        TO FLD0462C.
           MOVE FLD0463A        TO FLD0463C.
           MOVE FLD0464A        TO FLD0464C.
           MOVE FLD0465A        TO FLD0465C.
           MOVE FLD0466A        TO FLD0466C.
           MOVE FLD0467A        TO FLD0467C.
           MOVE FLD0468A        TO FLD0468C.
           MOVE FLD0469A        TO FLD0469C.
           MOVE FLD0470A        TO FLD0470C.
           MOVE FLD0471A        TO FLD0471C.
           MOVE FLD0472A        TO FLD0472C.
           MOVE FLD0473A        TO FLD0473C.
           MOVE FLD0474A        TO FLD0474C.
           MOVE FLD0475A        TO FLD0475C.
           MOVE FLD0476A        TO FLD0476C.
           MOVE FLD0477A        TO FLD0477C.
           MOVE FLD0478A        TO FLD0478C.
           MOVE FLD0479A        TO FLD0479C.
           MOVE FLD0480A        TO FLD0480C.
           MOVE FLD0481A        TO FLD0481C.
           MOVE FLD0482A        TO FLD0482C.
           MOVE FLD0483A        TO FLD0483C.
           MOVE FLD0484A        TO FLD0484C.
           MOVE FLD0485A        TO FLD0485C.
           MOVE FLD0486A        TO FLD0486C.
           MOVE FLD0487A        TO FLD0487C.
           MOVE FLD0488A        TO FLD0488C.
           MOVE FLD0489A        TO FLD0489C.
           MOVE FLD0490A        TO FLD0490C.
           MOVE FLD0491A        TO FLD0491C.
           MOVE FLD0492A        TO FLD0492C.
           MOVE FLD0493A        TO FLD0493C.
           MOVE FLD0494A        TO FLD0494C.
           MOVE FLD0495A        TO FLD0495C.
           MOVE FLD0496A        TO FLD0496C.
           MOVE FLD0497A        TO FLD0497C.
           MOVE FLD0498A        TO FLD0498C.
           MOVE FLD0499A        TO FLD0499C.

       4000-COMPARE.

           IF FLD0001C (1:)    NOT EQUAL XPC-FLD0001C
              DISPLAY 'FLD0001C ==> ' HEX-OF (FLD0001C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0001C).
           IF FLD0002C (1:)    NOT EQUAL XPC-FLD0002C
              DISPLAY 'FLD0002C ==> ' HEX-OF (FLD0002C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0002C).
           IF FLD0003C (1:)    NOT EQUAL XPC-FLD0003C
              DISPLAY 'FLD0003C ==> ' HEX-OF (FLD0003C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0003C).
           IF FLD0004C (1:)    NOT EQUAL XPC-FLD0004C
              DISPLAY 'FLD0004C ==> ' HEX-OF (FLD0004C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0004C).
           IF FLD0005C (1:)    NOT EQUAL XPC-FLD0005C
              DISPLAY 'FLD0005C ==> ' HEX-OF (FLD0005C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0005C).
           IF FLD0006C (1:)    NOT EQUAL XPC-FLD0006C
              DISPLAY 'FLD0006C ==> ' HEX-OF (FLD0006C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0006C).
           IF FLD0007C (1:)    NOT EQUAL XPC-FLD0007C
              DISPLAY 'FLD0007C ==> ' HEX-OF (FLD0007C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0007C).
           IF FLD0008C (1:)    NOT EQUAL XPC-FLD0008C
              DISPLAY 'FLD0008C ==> ' HEX-OF (FLD0008C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0008C).
           IF FLD0009C (1:)    NOT EQUAL XPC-FLD0009C
              DISPLAY 'FLD0009C ==> ' HEX-OF (FLD0009C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0009C).
           IF FLD0010C (1:)    NOT EQUAL XPC-FLD0010C
              DISPLAY 'FLD0010C ==> ' HEX-OF (FLD0010C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0010C).
           IF FLD0011C (1:)    NOT EQUAL XPC-FLD0011C
              DISPLAY 'FLD0011C ==> ' HEX-OF (FLD0011C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0011C).
           IF FLD0012C (1:)    NOT EQUAL XPC-FLD0012C
              DISPLAY 'FLD0012C ==> ' HEX-OF (FLD0012C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0012C).
           IF FLD0013C (1:)    NOT EQUAL XPC-FLD0013C
              DISPLAY 'FLD0013C ==> ' HEX-OF (FLD0013C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0013C).
           IF FLD0014C (1:)    NOT EQUAL XPC-FLD0014C
              DISPLAY 'FLD0014C ==> ' HEX-OF (FLD0014C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0014C).
           IF FLD0015C (1:)    NOT EQUAL XPC-FLD0015C
              DISPLAY 'FLD0015C ==> ' HEX-OF (FLD0015C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0015C).
           IF FLD0016C (1:)    NOT EQUAL XPC-FLD0016C
              DISPLAY 'FLD0016C ==> ' HEX-OF (FLD0016C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0016C).
           IF FLD0017C (1:)    NOT EQUAL XPC-FLD0017C
              DISPLAY 'FLD0017C ==> ' HEX-OF (FLD0017C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0017C).
           IF FLD0018C (1:)    NOT EQUAL XPC-FLD0018C
              DISPLAY 'FLD0018C ==> ' HEX-OF (FLD0018C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0018C).
           IF FLD0019C (1:)    NOT EQUAL XPC-FLD0019C
              DISPLAY 'FLD0019C ==> ' HEX-OF (FLD0019C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0019C).
           IF FLD0020C (1:)    NOT EQUAL XPC-FLD0020C
              DISPLAY 'FLD0020C ==> ' HEX-OF (FLD0020C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0020C).
           IF FLD0021C (1:)    NOT EQUAL XPC-FLD0021C
              DISPLAY 'FLD0021C ==> ' HEX-OF (FLD0021C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0021C).
           IF FLD0022C (1:)    NOT EQUAL XPC-FLD0022C
              DISPLAY 'FLD0022C ==> ' HEX-OF (FLD0022C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0022C).
           IF FLD0023C (1:)    NOT EQUAL XPC-FLD0023C
              DISPLAY 'FLD0023C ==> ' HEX-OF (FLD0023C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0023C).
           IF FLD0024C (1:)    NOT EQUAL XPC-FLD0024C
              DISPLAY 'FLD0024C ==> ' HEX-OF (FLD0024C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0024C).
           IF FLD0025C (1:)    NOT EQUAL XPC-FLD0025C
              DISPLAY 'FLD0025C ==> ' HEX-OF (FLD0025C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0025C).
           IF FLD0026C (1:)    NOT EQUAL XPC-FLD0026C
              DISPLAY 'FLD0026C ==> ' HEX-OF (FLD0026C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0026C).
           IF FLD0027C (1:)    NOT EQUAL XPC-FLD0027C
              DISPLAY 'FLD0027C ==> ' HEX-OF (FLD0027C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0027C).
           IF FLD0028C (1:)    NOT EQUAL XPC-FLD0028C
              DISPLAY 'FLD0028C ==> ' HEX-OF (FLD0028C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0028C).
           IF FLD0029C (1:)    NOT EQUAL XPC-FLD0029C
              DISPLAY 'FLD0029C ==> ' HEX-OF (FLD0029C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0029C).
           IF FLD0030C (1:)    NOT EQUAL XPC-FLD0030C
              DISPLAY 'FLD0030C ==> ' HEX-OF (FLD0030C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0030C).
           IF FLD0031C (1:)    NOT EQUAL XPC-FLD0031C
              DISPLAY 'FLD0031C ==> ' HEX-OF (FLD0031C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0031C).
           IF FLD0032C (1:)    NOT EQUAL XPC-FLD0032C
              DISPLAY 'FLD0032C ==> ' HEX-OF (FLD0032C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0032C).
           IF FLD0033C (1:)    NOT EQUAL XPC-FLD0033C
              DISPLAY 'FLD0033C ==> ' HEX-OF (FLD0033C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0033C).
           IF FLD0034C (1:)    NOT EQUAL XPC-FLD0034C
              DISPLAY 'FLD0034C ==> ' HEX-OF (FLD0034C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0034C).
           IF FLD0035C (1:)    NOT EQUAL XPC-FLD0035C
              DISPLAY 'FLD0035C ==> ' HEX-OF (FLD0035C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0035C).
           IF FLD0036C (1:)    NOT EQUAL XPC-FLD0036C
              DISPLAY 'FLD0036C ==> ' HEX-OF (FLD0036C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0036C).
           IF FLD0037C (1:)    NOT EQUAL XPC-FLD0037C
              DISPLAY 'FLD0037C ==> ' HEX-OF (FLD0037C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0037C).
           IF FLD0038C (1:)    NOT EQUAL XPC-FLD0038C
              DISPLAY 'FLD0038C ==> ' HEX-OF (FLD0038C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0038C).
           IF FLD0039C (1:)    NOT EQUAL XPC-FLD0039C
              DISPLAY 'FLD0039C ==> ' HEX-OF (FLD0039C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0039C).
           IF FLD0040C (1:)    NOT EQUAL XPC-FLD0040C
              DISPLAY 'FLD0040C ==> ' HEX-OF (FLD0040C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0040C).
           IF FLD0041C (1:)    NOT EQUAL XPC-FLD0041C
              DISPLAY 'FLD0041C ==> ' HEX-OF (FLD0041C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0041C).
           IF FLD0042C (1:)    NOT EQUAL XPC-FLD0042C
              DISPLAY 'FLD0042C ==> ' HEX-OF (FLD0042C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0042C).
           IF FLD0043C (1:)    NOT EQUAL XPC-FLD0043C
              DISPLAY 'FLD0043C ==> ' HEX-OF (FLD0043C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0043C).
           IF FLD0044C (1:)    NOT EQUAL XPC-FLD0044C
              DISPLAY 'FLD0044C ==> ' HEX-OF (FLD0044C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0044C).
           IF FLD0045C (1:)    NOT EQUAL XPC-FLD0045C
              DISPLAY 'FLD0045C ==> ' HEX-OF (FLD0045C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0045C).
           IF FLD0046C (1:)    NOT EQUAL XPC-FLD0046C
              DISPLAY 'FLD0046C ==> ' HEX-OF (FLD0046C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0046C).
           IF FLD0047C (1:)    NOT EQUAL XPC-FLD0047C
              DISPLAY 'FLD0047C ==> ' HEX-OF (FLD0047C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0047C).
           IF FLD0048C (1:)    NOT EQUAL XPC-FLD0048C
              DISPLAY 'FLD0048C ==> ' HEX-OF (FLD0048C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0048C).
           IF FLD0049C (1:)    NOT EQUAL XPC-FLD0049C
              DISPLAY 'FLD0049C ==> ' HEX-OF (FLD0049C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0049C).
           IF FLD0050C (1:)    NOT EQUAL XPC-FLD0050C
              DISPLAY 'FLD0050C ==> ' HEX-OF (FLD0050C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0050C).
           IF FLD0051C (1:)    NOT EQUAL XPC-FLD0051C
              DISPLAY 'FLD0051C ==> ' HEX-OF (FLD0051C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0051C).
           IF FLD0052C (1:)    NOT EQUAL XPC-FLD0052C
              DISPLAY 'FLD0052C ==> ' HEX-OF (FLD0052C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0052C).
           IF FLD0053C (1:)    NOT EQUAL XPC-FLD0053C
              DISPLAY 'FLD0053C ==> ' HEX-OF (FLD0053C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0053C).
           IF FLD0054C (1:)    NOT EQUAL XPC-FLD0054C
              DISPLAY 'FLD0054C ==> ' HEX-OF (FLD0054C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0054C).
           IF FLD0055C (1:)    NOT EQUAL XPC-FLD0055C
              DISPLAY 'FLD0055C ==> ' HEX-OF (FLD0055C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0055C).
           IF FLD0056C (1:)    NOT EQUAL XPC-FLD0056C
              DISPLAY 'FLD0056C ==> ' HEX-OF (FLD0056C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0056C).
           IF FLD0057C (1:)    NOT EQUAL XPC-FLD0057C
              DISPLAY 'FLD0057C ==> ' HEX-OF (FLD0057C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0057C).
           IF FLD0058C (1:)    NOT EQUAL XPC-FLD0058C
              DISPLAY 'FLD0058C ==> ' HEX-OF (FLD0058C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0058C).
           IF FLD0059C (1:)    NOT EQUAL XPC-FLD0059C
              DISPLAY 'FLD0059C ==> ' HEX-OF (FLD0059C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0059C).
           IF FLD0060C (1:)    NOT EQUAL XPC-FLD0060C
              DISPLAY 'FLD0060C ==> ' HEX-OF (FLD0060C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0060C).
           IF FLD0061C (1:)    NOT EQUAL XPC-FLD0061C
              DISPLAY 'FLD0061C ==> ' HEX-OF (FLD0061C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0061C).
           IF FLD0062C (1:)    NOT EQUAL XPC-FLD0062C
              DISPLAY 'FLD0062C ==> ' HEX-OF (FLD0062C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0062C).
           IF FLD0063C (1:)    NOT EQUAL XPC-FLD0063C
              DISPLAY 'FLD0063C ==> ' HEX-OF (FLD0063C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0063C).
           IF FLD0064C (1:)    NOT EQUAL XPC-FLD0064C
              DISPLAY 'FLD0064C ==> ' HEX-OF (FLD0064C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0064C).
           IF FLD0065C (1:)    NOT EQUAL XPC-FLD0065C
              DISPLAY 'FLD0065C ==> ' HEX-OF (FLD0065C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0065C).
           IF FLD0066C (1:)    NOT EQUAL XPC-FLD0066C
              DISPLAY 'FLD0066C ==> ' HEX-OF (FLD0066C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0066C).
           IF FLD0067C (1:)    NOT EQUAL XPC-FLD0067C
              DISPLAY 'FLD0067C ==> ' HEX-OF (FLD0067C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0067C).
           IF FLD0068C (1:)    NOT EQUAL XPC-FLD0068C
              DISPLAY 'FLD0068C ==> ' HEX-OF (FLD0068C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0068C).
           IF FLD0069C (1:)    NOT EQUAL XPC-FLD0069C
              DISPLAY 'FLD0069C ==> ' HEX-OF (FLD0069C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0069C).
           IF FLD0070C (1:)    NOT EQUAL XPC-FLD0070C
              DISPLAY 'FLD0070C ==> ' HEX-OF (FLD0070C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0070C).
           IF FLD0071C (1:)    NOT EQUAL XPC-FLD0071C
              DISPLAY 'FLD0071C ==> ' HEX-OF (FLD0071C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0071C).
           IF FLD0072C (1:)    NOT EQUAL XPC-FLD0072C
              DISPLAY 'FLD0072C ==> ' HEX-OF (FLD0072C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0072C).
           IF FLD0073C (1:)    NOT EQUAL XPC-FLD0073C
              DISPLAY 'FLD0073C ==> ' HEX-OF (FLD0073C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0073C).
           IF FLD0074C (1:)    NOT EQUAL XPC-FLD0074C
              DISPLAY 'FLD0074C ==> ' HEX-OF (FLD0074C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0074C).
           IF FLD0075C (1:)    NOT EQUAL XPC-FLD0075C
              DISPLAY 'FLD0075C ==> ' HEX-OF (FLD0075C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0075C).
           IF FLD0076C (1:)    NOT EQUAL XPC-FLD0076C
              DISPLAY 'FLD0076C ==> ' HEX-OF (FLD0076C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0076C).
           IF FLD0077C (1:)    NOT EQUAL XPC-FLD0077C
              DISPLAY 'FLD0077C ==> ' HEX-OF (FLD0077C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0077C).
           IF FLD0078C (1:)    NOT EQUAL XPC-FLD0078C
              DISPLAY 'FLD0078C ==> ' HEX-OF (FLD0078C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0078C).
           IF FLD0079C (1:)    NOT EQUAL XPC-FLD0079C
              DISPLAY 'FLD0079C ==> ' HEX-OF (FLD0079C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0079C).
           IF FLD0080C (1:)    NOT EQUAL XPC-FLD0080C
              DISPLAY 'FLD0080C ==> ' HEX-OF (FLD0080C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0080C).
           IF FLD0081C (1:)    NOT EQUAL XPC-FLD0081C
              DISPLAY 'FLD0081C ==> ' HEX-OF (FLD0081C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0081C).
           IF FLD0082C (1:)    NOT EQUAL XPC-FLD0082C
              DISPLAY 'FLD0082C ==> ' HEX-OF (FLD0082C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0082C).
           IF FLD0083C (1:)    NOT EQUAL XPC-FLD0083C
              DISPLAY 'FLD0083C ==> ' HEX-OF (FLD0083C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0083C).
           IF FLD0084C (1:)    NOT EQUAL XPC-FLD0084C
              DISPLAY 'FLD0084C ==> ' HEX-OF (FLD0084C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0084C).
           IF FLD0085C (1:)    NOT EQUAL XPC-FLD0085C
              DISPLAY 'FLD0085C ==> ' HEX-OF (FLD0085C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0085C).
           IF FLD0086C (1:)    NOT EQUAL XPC-FLD0086C
              DISPLAY 'FLD0086C ==> ' HEX-OF (FLD0086C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0086C).
           IF FLD0087C (1:)    NOT EQUAL XPC-FLD0087C
              DISPLAY 'FLD0087C ==> ' HEX-OF (FLD0087C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0087C).
           IF FLD0088C (1:)    NOT EQUAL XPC-FLD0088C
              DISPLAY 'FLD0088C ==> ' HEX-OF (FLD0088C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0088C).
           IF FLD0089C (1:)    NOT EQUAL XPC-FLD0089C
              DISPLAY 'FLD0089C ==> ' HEX-OF (FLD0089C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0089C).
           IF FLD0090C (1:)    NOT EQUAL XPC-FLD0090C
              DISPLAY 'FLD0090C ==> ' HEX-OF (FLD0090C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0090C).
           IF FLD0091C (1:)    NOT EQUAL XPC-FLD0091C
              DISPLAY 'FLD0091C ==> ' HEX-OF (FLD0091C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0091C).
           IF FLD0092C (1:)    NOT EQUAL XPC-FLD0092C
              DISPLAY 'FLD0092C ==> ' HEX-OF (FLD0092C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0092C).
           IF FLD0093C (1:)    NOT EQUAL XPC-FLD0093C
              DISPLAY 'FLD0093C ==> ' HEX-OF (FLD0093C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0093C).
           IF FLD0094C (1:)    NOT EQUAL XPC-FLD0094C
              DISPLAY 'FLD0094C ==> ' HEX-OF (FLD0094C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0094C).
           IF FLD0095C (1:)    NOT EQUAL XPC-FLD0095C
              DISPLAY 'FLD0095C ==> ' HEX-OF (FLD0095C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0095C).
           IF FLD0096C (1:)    NOT EQUAL XPC-FLD0096C
              DISPLAY 'FLD0096C ==> ' HEX-OF (FLD0096C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0096C).
           IF FLD0097C (1:)    NOT EQUAL XPC-FLD0097C
              DISPLAY 'FLD0097C ==> ' HEX-OF (FLD0097C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0097C).
           IF FLD0098C (1:)    NOT EQUAL XPC-FLD0098C
              DISPLAY 'FLD0098C ==> ' HEX-OF (FLD0098C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0098C).
           IF FLD0099C (1:)    NOT EQUAL XPC-FLD0099C
              DISPLAY 'FLD0099C ==> ' HEX-OF (FLD0099C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0099C).
           IF FLD0100C (1:)    NOT EQUAL XPC-FLD0100C
              DISPLAY 'FLD0100C ==> ' HEX-OF (FLD0100C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0100C).
           IF FLD0101C (1:)    NOT EQUAL XPC-FLD0101C
              DISPLAY 'FLD0101C ==> ' HEX-OF (FLD0101C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0101C).
           IF FLD0102C (1:)    NOT EQUAL XPC-FLD0102C
              DISPLAY 'FLD0102C ==> ' HEX-OF (FLD0102C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0102C).
           IF FLD0103C (1:)    NOT EQUAL XPC-FLD0103C
              DISPLAY 'FLD0103C ==> ' HEX-OF (FLD0103C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0103C).
           IF FLD0104C (1:)    NOT EQUAL XPC-FLD0104C
              DISPLAY 'FLD0104C ==> ' HEX-OF (FLD0104C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0104C).
           IF FLD0105C (1:)    NOT EQUAL XPC-FLD0105C
              DISPLAY 'FLD0105C ==> ' HEX-OF (FLD0105C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0105C).
           IF FLD0106C (1:)    NOT EQUAL XPC-FLD0106C
              DISPLAY 'FLD0106C ==> ' HEX-OF (FLD0106C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0106C).
           IF FLD0107C (1:)    NOT EQUAL XPC-FLD0107C
              DISPLAY 'FLD0107C ==> ' HEX-OF (FLD0107C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0107C).
           IF FLD0108C (1:)    NOT EQUAL XPC-FLD0108C
              DISPLAY 'FLD0108C ==> ' HEX-OF (FLD0108C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0108C).
           IF FLD0109C (1:)    NOT EQUAL XPC-FLD0109C
              DISPLAY 'FLD0109C ==> ' HEX-OF (FLD0109C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0109C).
           IF FLD0110C (1:)    NOT EQUAL XPC-FLD0110C
              DISPLAY 'FLD0110C ==> ' HEX-OF (FLD0110C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0110C).
           IF FLD0111C (1:)    NOT EQUAL XPC-FLD0111C
              DISPLAY 'FLD0111C ==> ' HEX-OF (FLD0111C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0111C).
           IF FLD0112C (1:)    NOT EQUAL XPC-FLD0112C
              DISPLAY 'FLD0112C ==> ' HEX-OF (FLD0112C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0112C).
           IF FLD0113C (1:)    NOT EQUAL XPC-FLD0113C
              DISPLAY 'FLD0113C ==> ' HEX-OF (FLD0113C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0113C).
           IF FLD0114C (1:)    NOT EQUAL XPC-FLD0114C
              DISPLAY 'FLD0114C ==> ' HEX-OF (FLD0114C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0114C).
           IF FLD0115C (1:)    NOT EQUAL XPC-FLD0115C
              DISPLAY 'FLD0115C ==> ' HEX-OF (FLD0115C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0115C).
           IF FLD0116C (1:)    NOT EQUAL XPC-FLD0116C
              DISPLAY 'FLD0116C ==> ' HEX-OF (FLD0116C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0116C).
           IF FLD0117C (1:)    NOT EQUAL XPC-FLD0117C
              DISPLAY 'FLD0117C ==> ' HEX-OF (FLD0117C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0117C).
           IF FLD0118C (1:)    NOT EQUAL XPC-FLD0118C
              DISPLAY 'FLD0118C ==> ' HEX-OF (FLD0118C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0118C).
           IF FLD0119C (1:)    NOT EQUAL XPC-FLD0119C
              DISPLAY 'FLD0119C ==> ' HEX-OF (FLD0119C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0119C).
           IF FLD0120C (1:)    NOT EQUAL XPC-FLD0120C
              DISPLAY 'FLD0120C ==> ' HEX-OF (FLD0120C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0120C).
           IF FLD0121C (1:)    NOT EQUAL XPC-FLD0121C
              DISPLAY 'FLD0121C ==> ' HEX-OF (FLD0121C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0121C).
           IF FLD0122C (1:)    NOT EQUAL XPC-FLD0122C
              DISPLAY 'FLD0122C ==> ' HEX-OF (FLD0122C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0122C).
           IF FLD0123C (1:)    NOT EQUAL XPC-FLD0123C
              DISPLAY 'FLD0123C ==> ' HEX-OF (FLD0123C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0123C).
           IF FLD0124C (1:)    NOT EQUAL XPC-FLD0124C
              DISPLAY 'FLD0124C ==> ' HEX-OF (FLD0124C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0124C).
           IF FLD0125C (1:)    NOT EQUAL XPC-FLD0125C
              DISPLAY 'FLD0125C ==> ' HEX-OF (FLD0125C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0125C).
           IF FLD0126C (1:)    NOT EQUAL XPC-FLD0126C
              DISPLAY 'FLD0126C ==> ' HEX-OF (FLD0126C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0126C).
           IF FLD0127C (1:)    NOT EQUAL XPC-FLD0127C
              DISPLAY 'FLD0127C ==> ' HEX-OF (FLD0127C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0127C).
           IF FLD0128C (1:)    NOT EQUAL XPC-FLD0128C
              DISPLAY 'FLD0128C ==> ' HEX-OF (FLD0128C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0128C).
           IF FLD0129C (1:)    NOT EQUAL XPC-FLD0129C
              DISPLAY 'FLD0129C ==> ' HEX-OF (FLD0129C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0129C).
           IF FLD0130C (1:)    NOT EQUAL XPC-FLD0130C
              DISPLAY 'FLD0130C ==> ' HEX-OF (FLD0130C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0130C).
           IF FLD0131C (1:)    NOT EQUAL XPC-FLD0131C
              DISPLAY 'FLD0131C ==> ' HEX-OF (FLD0131C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0131C).
           IF FLD0132C (1:)    NOT EQUAL XPC-FLD0132C
              DISPLAY 'FLD0132C ==> ' HEX-OF (FLD0132C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0132C).
           IF FLD0133C (1:)    NOT EQUAL XPC-FLD0133C
              DISPLAY 'FLD0133C ==> ' HEX-OF (FLD0133C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0133C).
           IF FLD0134C (1:)    NOT EQUAL XPC-FLD0134C
              DISPLAY 'FLD0134C ==> ' HEX-OF (FLD0134C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0134C).
           IF FLD0135C (1:)    NOT EQUAL XPC-FLD0135C
              DISPLAY 'FLD0135C ==> ' HEX-OF (FLD0135C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0135C).
           IF FLD0136C (1:)    NOT EQUAL XPC-FLD0136C
              DISPLAY 'FLD0136C ==> ' HEX-OF (FLD0136C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0136C).
           IF FLD0137C (1:)    NOT EQUAL XPC-FLD0137C
              DISPLAY 'FLD0137C ==> ' HEX-OF (FLD0137C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0137C).
           IF FLD0138C (1:)    NOT EQUAL XPC-FLD0138C
              DISPLAY 'FLD0138C ==> ' HEX-OF (FLD0138C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0138C).
           IF FLD0139C (1:)    NOT EQUAL XPC-FLD0139C
              DISPLAY 'FLD0139C ==> ' HEX-OF (FLD0139C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0139C).
           IF FLD0140C (1:)    NOT EQUAL XPC-FLD0140C
              DISPLAY 'FLD0140C ==> ' HEX-OF (FLD0140C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0140C).
           IF FLD0141C (1:)    NOT EQUAL XPC-FLD0141C
              DISPLAY 'FLD0141C ==> ' HEX-OF (FLD0141C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0141C).
           IF FLD0142C (1:)    NOT EQUAL XPC-FLD0142C
              DISPLAY 'FLD0142C ==> ' HEX-OF (FLD0142C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0142C).
           IF FLD0143C (1:)    NOT EQUAL XPC-FLD0143C
              DISPLAY 'FLD0143C ==> ' HEX-OF (FLD0143C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0143C).
           IF FLD0144C (1:)    NOT EQUAL XPC-FLD0144C
              DISPLAY 'FLD0144C ==> ' HEX-OF (FLD0144C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0144C).
           IF FLD0145C (1:)    NOT EQUAL XPC-FLD0145C
              DISPLAY 'FLD0145C ==> ' HEX-OF (FLD0145C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0145C).
           IF FLD0146C (1:)    NOT EQUAL XPC-FLD0146C
              DISPLAY 'FLD0146C ==> ' HEX-OF (FLD0146C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0146C).
           IF FLD0147C (1:)    NOT EQUAL XPC-FLD0147C
              DISPLAY 'FLD0147C ==> ' HEX-OF (FLD0147C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0147C).
           IF FLD0148C (1:)    NOT EQUAL XPC-FLD0148C
              DISPLAY 'FLD0148C ==> ' HEX-OF (FLD0148C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0148C).
           IF FLD0149C (1:)    NOT EQUAL XPC-FLD0149C
              DISPLAY 'FLD0149C ==> ' HEX-OF (FLD0149C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0149C).
           IF FLD0150C (1:)    NOT EQUAL XPC-FLD0150C
              DISPLAY 'FLD0150C ==> ' HEX-OF (FLD0150C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0150C).
           IF FLD0151C (1:)    NOT EQUAL XPC-FLD0151C
              DISPLAY 'FLD0151C ==> ' HEX-OF (FLD0151C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0151C).
           IF FLD0152C (1:)    NOT EQUAL XPC-FLD0152C
              DISPLAY 'FLD0152C ==> ' HEX-OF (FLD0152C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0152C).
           IF FLD0153C (1:)    NOT EQUAL XPC-FLD0153C
              DISPLAY 'FLD0153C ==> ' HEX-OF (FLD0153C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0153C).
           IF FLD0154C (1:)    NOT EQUAL XPC-FLD0154C
              DISPLAY 'FLD0154C ==> ' HEX-OF (FLD0154C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0154C).
           IF FLD0155C (1:)    NOT EQUAL XPC-FLD0155C
              DISPLAY 'FLD0155C ==> ' HEX-OF (FLD0155C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0155C).
           IF FLD0156C (1:)    NOT EQUAL XPC-FLD0156C
              DISPLAY 'FLD0156C ==> ' HEX-OF (FLD0156C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0156C).
           IF FLD0157C (1:)    NOT EQUAL XPC-FLD0157C
              DISPLAY 'FLD0157C ==> ' HEX-OF (FLD0157C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0157C).
           IF FLD0158C (1:)    NOT EQUAL XPC-FLD0158C
              DISPLAY 'FLD0158C ==> ' HEX-OF (FLD0158C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0158C).
           IF FLD0159C (1:)    NOT EQUAL XPC-FLD0159C
              DISPLAY 'FLD0159C ==> ' HEX-OF (FLD0159C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0159C).
           IF FLD0160C (1:)    NOT EQUAL XPC-FLD0160C
              DISPLAY 'FLD0160C ==> ' HEX-OF (FLD0160C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0160C).
           IF FLD0161C (1:)    NOT EQUAL XPC-FLD0161C
              DISPLAY 'FLD0161C ==> ' HEX-OF (FLD0161C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0161C).
           IF FLD0162C (1:)    NOT EQUAL XPC-FLD0162C
              DISPLAY 'FLD0162C ==> ' HEX-OF (FLD0162C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0162C).
           IF FLD0163C (1:)    NOT EQUAL XPC-FLD0163C
              DISPLAY 'FLD0163C ==> ' HEX-OF (FLD0163C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0163C).
           IF FLD0164C (1:)    NOT EQUAL XPC-FLD0164C
              DISPLAY 'FLD0164C ==> ' HEX-OF (FLD0164C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0164C).
           IF FLD0165C (1:)    NOT EQUAL XPC-FLD0165C
              DISPLAY 'FLD0165C ==> ' HEX-OF (FLD0165C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0165C).
           IF FLD0166C (1:)    NOT EQUAL XPC-FLD0166C
              DISPLAY 'FLD0166C ==> ' HEX-OF (FLD0166C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0166C).
           IF FLD0167C (1:)    NOT EQUAL XPC-FLD0167C
              DISPLAY 'FLD0167C ==> ' HEX-OF (FLD0167C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0167C).
           IF FLD0168C (1:)    NOT EQUAL XPC-FLD0168C
              DISPLAY 'FLD0168C ==> ' HEX-OF (FLD0168C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0168C).
           IF FLD0169C (1:)    NOT EQUAL XPC-FLD0169C
              DISPLAY 'FLD0169C ==> ' HEX-OF (FLD0169C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0169C).
           IF FLD0170C (1:)    NOT EQUAL XPC-FLD0170C
              DISPLAY 'FLD0170C ==> ' HEX-OF (FLD0170C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0170C).
           IF FLD0171C (1:)    NOT EQUAL XPC-FLD0171C
              DISPLAY 'FLD0171C ==> ' HEX-OF (FLD0171C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0171C).
           IF FLD0172C (1:)    NOT EQUAL XPC-FLD0172C
              DISPLAY 'FLD0172C ==> ' HEX-OF (FLD0172C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0172C).
           IF FLD0173C (1:)    NOT EQUAL XPC-FLD0173C
              DISPLAY 'FLD0173C ==> ' HEX-OF (FLD0173C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0173C).
           IF FLD0174C (1:)    NOT EQUAL XPC-FLD0174C
              DISPLAY 'FLD0174C ==> ' HEX-OF (FLD0174C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0174C).
           IF FLD0175C (1:)    NOT EQUAL XPC-FLD0175C
              DISPLAY 'FLD0175C ==> ' HEX-OF (FLD0175C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0175C).
           IF FLD0176C (1:)    NOT EQUAL XPC-FLD0176C
              DISPLAY 'FLD0176C ==> ' HEX-OF (FLD0176C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0176C).
           IF FLD0177C (1:)    NOT EQUAL XPC-FLD0177C
              DISPLAY 'FLD0177C ==> ' HEX-OF (FLD0177C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0177C).
           IF FLD0178C (1:)    NOT EQUAL XPC-FLD0178C
              DISPLAY 'FLD0178C ==> ' HEX-OF (FLD0178C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0178C).
           IF FLD0179C (1:)    NOT EQUAL XPC-FLD0179C
              DISPLAY 'FLD0179C ==> ' HEX-OF (FLD0179C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0179C).
           IF FLD0180C (1:)    NOT EQUAL XPC-FLD0180C
              DISPLAY 'FLD0180C ==> ' HEX-OF (FLD0180C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0180C).
           IF FLD0181C (1:)    NOT EQUAL XPC-FLD0181C
              DISPLAY 'FLD0181C ==> ' HEX-OF (FLD0181C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0181C).
           IF FLD0182C (1:)    NOT EQUAL XPC-FLD0182C
              DISPLAY 'FLD0182C ==> ' HEX-OF (FLD0182C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0182C).
           IF FLD0183C (1:)    NOT EQUAL XPC-FLD0183C
              DISPLAY 'FLD0183C ==> ' HEX-OF (FLD0183C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0183C).
           IF FLD0184C (1:)    NOT EQUAL XPC-FLD0184C
              DISPLAY 'FLD0184C ==> ' HEX-OF (FLD0184C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0184C).
           IF FLD0185C (1:)    NOT EQUAL XPC-FLD0185C
              DISPLAY 'FLD0185C ==> ' HEX-OF (FLD0185C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0185C).
           IF FLD0186C (1:)    NOT EQUAL XPC-FLD0186C
              DISPLAY 'FLD0186C ==> ' HEX-OF (FLD0186C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0186C).
           IF FLD0187C (1:)    NOT EQUAL XPC-FLD0187C
              DISPLAY 'FLD0187C ==> ' HEX-OF (FLD0187C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0187C).
           IF FLD0188C (1:)    NOT EQUAL XPC-FLD0188C
              DISPLAY 'FLD0188C ==> ' HEX-OF (FLD0188C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0188C).
           IF FLD0189C (1:)    NOT EQUAL XPC-FLD0189C
              DISPLAY 'FLD0189C ==> ' HEX-OF (FLD0189C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0189C).
           IF FLD0190C (1:)    NOT EQUAL XPC-FLD0190C
              DISPLAY 'FLD0190C ==> ' HEX-OF (FLD0190C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0190C).
           IF FLD0191C (1:)    NOT EQUAL XPC-FLD0191C
              DISPLAY 'FLD0191C ==> ' HEX-OF (FLD0191C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0191C).
           IF FLD0192C (1:)    NOT EQUAL XPC-FLD0192C
              DISPLAY 'FLD0192C ==> ' HEX-OF (FLD0192C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0192C).
           IF FLD0193C (1:)    NOT EQUAL XPC-FLD0193C
              DISPLAY 'FLD0193C ==> ' HEX-OF (FLD0193C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0193C).
           IF FLD0194C (1:)    NOT EQUAL XPC-FLD0194C
              DISPLAY 'FLD0194C ==> ' HEX-OF (FLD0194C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0194C).
           IF FLD0195C (1:)    NOT EQUAL XPC-FLD0195C
              DISPLAY 'FLD0195C ==> ' HEX-OF (FLD0195C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0195C).
           IF FLD0196C (1:)    NOT EQUAL XPC-FLD0196C
              DISPLAY 'FLD0196C ==> ' HEX-OF (FLD0196C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0196C).
           IF FLD0197C (1:)    NOT EQUAL XPC-FLD0197C
              DISPLAY 'FLD0197C ==> ' HEX-OF (FLD0197C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0197C).
           IF FLD0198C (1:)    NOT EQUAL XPC-FLD0198C
              DISPLAY 'FLD0198C ==> ' HEX-OF (FLD0198C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0198C).
           IF FLD0199C (1:)    NOT EQUAL XPC-FLD0199C
              DISPLAY 'FLD0199C ==> ' HEX-OF (FLD0199C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0199C).
           IF FLD0200C (1:)    NOT EQUAL XPC-FLD0200C
              DISPLAY 'FLD0200C ==> ' HEX-OF (FLD0200C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0200C).
           IF FLD0201C (1:)    NOT EQUAL XPC-FLD0201C
              DISPLAY 'FLD0201C ==> ' HEX-OF (FLD0201C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0201C).
           IF FLD0202C (1:)    NOT EQUAL XPC-FLD0202C
              DISPLAY 'FLD0202C ==> ' HEX-OF (FLD0202C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0202C).
           IF FLD0203C (1:)    NOT EQUAL XPC-FLD0203C
              DISPLAY 'FLD0203C ==> ' HEX-OF (FLD0203C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0203C).
           IF FLD0204C (1:)    NOT EQUAL XPC-FLD0204C
              DISPLAY 'FLD0204C ==> ' HEX-OF (FLD0204C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0204C).
           IF FLD0205C (1:)    NOT EQUAL XPC-FLD0205C
              DISPLAY 'FLD0205C ==> ' HEX-OF (FLD0205C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0205C).
           IF FLD0206C (1:)    NOT EQUAL XPC-FLD0206C
              DISPLAY 'FLD0206C ==> ' HEX-OF (FLD0206C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0206C).
           IF FLD0207C (1:)    NOT EQUAL XPC-FLD0207C
              DISPLAY 'FLD0207C ==> ' HEX-OF (FLD0207C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0207C).
           IF FLD0208C (1:)    NOT EQUAL XPC-FLD0208C
              DISPLAY 'FLD0208C ==> ' HEX-OF (FLD0208C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0208C).
           IF FLD0209C (1:)    NOT EQUAL XPC-FLD0209C
              DISPLAY 'FLD0209C ==> ' HEX-OF (FLD0209C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0209C).
           IF FLD0210C (1:)    NOT EQUAL XPC-FLD0210C
              DISPLAY 'FLD0210C ==> ' HEX-OF (FLD0210C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0210C).
           IF FLD0211C (1:)    NOT EQUAL XPC-FLD0211C
              DISPLAY 'FLD0211C ==> ' HEX-OF (FLD0211C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0211C).
           IF FLD0212C (1:)    NOT EQUAL XPC-FLD0212C
              DISPLAY 'FLD0212C ==> ' HEX-OF (FLD0212C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0212C).
           IF FLD0213C (1:)    NOT EQUAL XPC-FLD0213C
              DISPLAY 'FLD0213C ==> ' HEX-OF (FLD0213C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0213C).
           IF FLD0214C (1:)    NOT EQUAL XPC-FLD0214C
              DISPLAY 'FLD0214C ==> ' HEX-OF (FLD0214C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0214C).
           IF FLD0215C (1:)    NOT EQUAL XPC-FLD0215C
              DISPLAY 'FLD0215C ==> ' HEX-OF (FLD0215C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0215C).
           IF FLD0216C (1:)    NOT EQUAL XPC-FLD0216C
              DISPLAY 'FLD0216C ==> ' HEX-OF (FLD0216C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0216C).
           IF FLD0217C (1:)    NOT EQUAL XPC-FLD0217C
              DISPLAY 'FLD0217C ==> ' HEX-OF (FLD0217C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0217C).
           IF FLD0218C (1:)    NOT EQUAL XPC-FLD0218C
              DISPLAY 'FLD0218C ==> ' HEX-OF (FLD0218C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0218C).
           IF FLD0219C (1:)    NOT EQUAL XPC-FLD0219C
              DISPLAY 'FLD0219C ==> ' HEX-OF (FLD0219C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0219C).
           IF FLD0220C (1:)    NOT EQUAL XPC-FLD0220C
              DISPLAY 'FLD0220C ==> ' HEX-OF (FLD0220C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0220C).
           IF FLD0221C (1:)    NOT EQUAL XPC-FLD0221C
              DISPLAY 'FLD0221C ==> ' HEX-OF (FLD0221C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0221C).
           IF FLD0222C (1:)    NOT EQUAL XPC-FLD0222C
              DISPLAY 'FLD0222C ==> ' HEX-OF (FLD0222C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0222C).
           IF FLD0223C (1:)    NOT EQUAL XPC-FLD0223C
              DISPLAY 'FLD0223C ==> ' HEX-OF (FLD0223C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0223C).
           IF FLD0224C (1:)    NOT EQUAL XPC-FLD0224C
              DISPLAY 'FLD0224C ==> ' HEX-OF (FLD0224C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0224C).
           IF FLD0225C (1:)    NOT EQUAL XPC-FLD0225C
              DISPLAY 'FLD0225C ==> ' HEX-OF (FLD0225C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0225C).
           IF FLD0226C (1:)    NOT EQUAL XPC-FLD0226C
              DISPLAY 'FLD0226C ==> ' HEX-OF (FLD0226C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0226C).
           IF FLD0227C (1:)    NOT EQUAL XPC-FLD0227C
              DISPLAY 'FLD0227C ==> ' HEX-OF (FLD0227C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0227C).
           IF FLD0228C (1:)    NOT EQUAL XPC-FLD0228C
              DISPLAY 'FLD0228C ==> ' HEX-OF (FLD0228C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0228C).
           IF FLD0229C (1:)    NOT EQUAL XPC-FLD0229C
              DISPLAY 'FLD0229C ==> ' HEX-OF (FLD0229C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0229C).
           IF FLD0230C (1:)    NOT EQUAL XPC-FLD0230C
              DISPLAY 'FLD0230C ==> ' HEX-OF (FLD0230C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0230C).
           IF FLD0231C (1:)    NOT EQUAL XPC-FLD0231C
              DISPLAY 'FLD0231C ==> ' HEX-OF (FLD0231C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0231C).
           IF FLD0232C (1:)    NOT EQUAL XPC-FLD0232C
              DISPLAY 'FLD0232C ==> ' HEX-OF (FLD0232C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0232C).
           IF FLD0233C (1:)    NOT EQUAL XPC-FLD0233C
              DISPLAY 'FLD0233C ==> ' HEX-OF (FLD0233C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0233C).
           IF FLD0234C (1:)    NOT EQUAL XPC-FLD0234C
              DISPLAY 'FLD0234C ==> ' HEX-OF (FLD0234C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0234C).
           IF FLD0235C (1:)    NOT EQUAL XPC-FLD0235C
              DISPLAY 'FLD0235C ==> ' HEX-OF (FLD0235C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0235C).
           IF FLD0236C (1:)    NOT EQUAL XPC-FLD0236C
              DISPLAY 'FLD0236C ==> ' HEX-OF (FLD0236C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0236C).
           IF FLD0237C (1:)    NOT EQUAL XPC-FLD0237C
              DISPLAY 'FLD0237C ==> ' HEX-OF (FLD0237C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0237C).
           IF FLD0238C (1:)    NOT EQUAL XPC-FLD0238C
              DISPLAY 'FLD0238C ==> ' HEX-OF (FLD0238C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0238C).
           IF FLD0239C (1:)    NOT EQUAL XPC-FLD0239C
              DISPLAY 'FLD0239C ==> ' HEX-OF (FLD0239C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0239C).
           IF FLD0240C (1:)    NOT EQUAL XPC-FLD0240C
              DISPLAY 'FLD0240C ==> ' HEX-OF (FLD0240C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0240C).
           IF FLD0241C (1:)    NOT EQUAL XPC-FLD0241C
              DISPLAY 'FLD0241C ==> ' HEX-OF (FLD0241C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0241C).
           IF FLD0242C (1:)    NOT EQUAL XPC-FLD0242C
              DISPLAY 'FLD0242C ==> ' HEX-OF (FLD0242C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0242C).
           IF FLD0243C (1:)    NOT EQUAL XPC-FLD0243C
              DISPLAY 'FLD0243C ==> ' HEX-OF (FLD0243C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0243C).
           IF FLD0244C (1:)    NOT EQUAL XPC-FLD0244C
              DISPLAY 'FLD0244C ==> ' HEX-OF (FLD0244C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0244C).
           IF FLD0245C (1:)    NOT EQUAL XPC-FLD0245C
              DISPLAY 'FLD0245C ==> ' HEX-OF (FLD0245C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0245C).
           IF FLD0246C (1:)    NOT EQUAL XPC-FLD0246C
              DISPLAY 'FLD0246C ==> ' HEX-OF (FLD0246C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0246C).
           IF FLD0247C (1:)    NOT EQUAL XPC-FLD0247C
              DISPLAY 'FLD0247C ==> ' HEX-OF (FLD0247C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0247C).
           IF FLD0248C (1:)    NOT EQUAL XPC-FLD0248C
              DISPLAY 'FLD0248C ==> ' HEX-OF (FLD0248C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0248C).
           IF FLD0249C (1:)    NOT EQUAL XPC-FLD0249C
              DISPLAY 'FLD0249C ==> ' HEX-OF (FLD0249C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0249C).
           IF FLD0250C (1:)    NOT EQUAL XPC-FLD0250C
              DISPLAY 'FLD0250C ==> ' HEX-OF (FLD0250C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0250C).
           IF FLD0251C (1:)    NOT EQUAL XPC-FLD0251C
              DISPLAY 'FLD0251C ==> ' HEX-OF (FLD0251C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0251C).
           IF FLD0252C (1:)    NOT EQUAL XPC-FLD0252C
              DISPLAY 'FLD0252C ==> ' HEX-OF (FLD0252C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0252C).
           IF FLD0253C (1:)    NOT EQUAL XPC-FLD0253C
              DISPLAY 'FLD0253C ==> ' HEX-OF (FLD0253C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0253C).
           IF FLD0254C (1:)    NOT EQUAL XPC-FLD0254C
              DISPLAY 'FLD0254C ==> ' HEX-OF (FLD0254C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0254C).
           IF FLD0255C (1:)    NOT EQUAL XPC-FLD0255C
              DISPLAY 'FLD0255C ==> ' HEX-OF (FLD0255C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0255C).
           IF FLD0256C (1:)    NOT EQUAL XPC-FLD0256C
              DISPLAY 'FLD0256C ==> ' HEX-OF (FLD0256C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0256C).
           IF FLD0257C (1:)    NOT EQUAL XPC-FLD0257C
              DISPLAY 'FLD0257C ==> ' HEX-OF (FLD0257C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0257C).
           IF FLD0258C (1:)    NOT EQUAL XPC-FLD0258C
              DISPLAY 'FLD0258C ==> ' HEX-OF (FLD0258C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0258C).
           IF FLD0259C (1:)    NOT EQUAL XPC-FLD0259C
              DISPLAY 'FLD0259C ==> ' HEX-OF (FLD0259C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0259C).
           IF FLD0260C (1:)    NOT EQUAL XPC-FLD0260C
              DISPLAY 'FLD0260C ==> ' HEX-OF (FLD0260C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0260C).
           IF FLD0261C (1:)    NOT EQUAL XPC-FLD0261C
              DISPLAY 'FLD0261C ==> ' HEX-OF (FLD0261C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0261C).
           IF FLD0262C (1:)    NOT EQUAL XPC-FLD0262C
              DISPLAY 'FLD0262C ==> ' HEX-OF (FLD0262C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0262C).
           IF FLD0263C (1:)    NOT EQUAL XPC-FLD0263C
              DISPLAY 'FLD0263C ==> ' HEX-OF (FLD0263C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0263C).
           IF FLD0264C (1:)    NOT EQUAL XPC-FLD0264C
              DISPLAY 'FLD0264C ==> ' HEX-OF (FLD0264C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0264C).
           IF FLD0265C (1:)    NOT EQUAL XPC-FLD0265C
              DISPLAY 'FLD0265C ==> ' HEX-OF (FLD0265C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0265C).
           IF FLD0266C (1:)    NOT EQUAL XPC-FLD0266C
              DISPLAY 'FLD0266C ==> ' HEX-OF (FLD0266C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0266C).
           IF FLD0267C (1:)    NOT EQUAL XPC-FLD0267C
              DISPLAY 'FLD0267C ==> ' HEX-OF (FLD0267C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0267C).
           IF FLD0268C (1:)    NOT EQUAL XPC-FLD0268C
              DISPLAY 'FLD0268C ==> ' HEX-OF (FLD0268C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0268C).
           IF FLD0269C (1:)    NOT EQUAL XPC-FLD0269C
              DISPLAY 'FLD0269C ==> ' HEX-OF (FLD0269C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0269C).
           IF FLD0270C (1:)    NOT EQUAL XPC-FLD0270C
              DISPLAY 'FLD0270C ==> ' HEX-OF (FLD0270C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0270C).
           IF FLD0271C (1:)    NOT EQUAL XPC-FLD0271C
              DISPLAY 'FLD0271C ==> ' HEX-OF (FLD0271C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0271C).
           IF FLD0272C (1:)    NOT EQUAL XPC-FLD0272C
              DISPLAY 'FLD0272C ==> ' HEX-OF (FLD0272C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0272C).
           IF FLD0273C (1:)    NOT EQUAL XPC-FLD0273C
              DISPLAY 'FLD0273C ==> ' HEX-OF (FLD0273C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0273C).
           IF FLD0274C (1:)    NOT EQUAL XPC-FLD0274C
              DISPLAY 'FLD0274C ==> ' HEX-OF (FLD0274C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0274C).
           IF FLD0275C (1:)    NOT EQUAL XPC-FLD0275C
              DISPLAY 'FLD0275C ==> ' HEX-OF (FLD0275C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0275C).
           IF FLD0276C (1:)    NOT EQUAL XPC-FLD0276C
              DISPLAY 'FLD0276C ==> ' HEX-OF (FLD0276C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0276C).
           IF FLD0277C (1:)    NOT EQUAL XPC-FLD0277C
              DISPLAY 'FLD0277C ==> ' HEX-OF (FLD0277C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0277C).
           IF FLD0278C (1:)    NOT EQUAL XPC-FLD0278C
              DISPLAY 'FLD0278C ==> ' HEX-OF (FLD0278C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0278C).
           IF FLD0279C (1:)    NOT EQUAL XPC-FLD0279C
              DISPLAY 'FLD0279C ==> ' HEX-OF (FLD0279C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0279C).
           IF FLD0280C (1:)    NOT EQUAL XPC-FLD0280C
              DISPLAY 'FLD0280C ==> ' HEX-OF (FLD0280C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0280C).
           IF FLD0281C (1:)    NOT EQUAL XPC-FLD0281C
              DISPLAY 'FLD0281C ==> ' HEX-OF (FLD0281C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0281C).
           IF FLD0282C (1:)    NOT EQUAL XPC-FLD0282C
              DISPLAY 'FLD0282C ==> ' HEX-OF (FLD0282C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0282C).
           IF FLD0283C (1:)    NOT EQUAL XPC-FLD0283C
              DISPLAY 'FLD0283C ==> ' HEX-OF (FLD0283C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0283C).
           IF FLD0284C (1:)    NOT EQUAL XPC-FLD0284C
              DISPLAY 'FLD0284C ==> ' HEX-OF (FLD0284C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0284C).
           IF FLD0285C (1:)    NOT EQUAL XPC-FLD0285C
              DISPLAY 'FLD0285C ==> ' HEX-OF (FLD0285C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0285C).
           IF FLD0286C (1:)    NOT EQUAL XPC-FLD0286C
              DISPLAY 'FLD0286C ==> ' HEX-OF (FLD0286C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0286C).
           IF FLD0287C (1:)    NOT EQUAL XPC-FLD0287C
              DISPLAY 'FLD0287C ==> ' HEX-OF (FLD0287C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0287C).
           IF FLD0288C (1:)    NOT EQUAL XPC-FLD0288C
              DISPLAY 'FLD0288C ==> ' HEX-OF (FLD0288C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0288C).
           IF FLD0289C (1:)    NOT EQUAL XPC-FLD0289C
              DISPLAY 'FLD0289C ==> ' HEX-OF (FLD0289C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0289C).
           IF FLD0290C (1:)    NOT EQUAL XPC-FLD0290C
              DISPLAY 'FLD0290C ==> ' HEX-OF (FLD0290C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0290C).
           IF FLD0291C (1:)    NOT EQUAL XPC-FLD0291C
              DISPLAY 'FLD0291C ==> ' HEX-OF (FLD0291C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0291C).
           IF FLD0292C (1:)    NOT EQUAL XPC-FLD0292C
              DISPLAY 'FLD0292C ==> ' HEX-OF (FLD0292C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0292C).
           IF FLD0293C (1:)    NOT EQUAL XPC-FLD0293C
              DISPLAY 'FLD0293C ==> ' HEX-OF (FLD0293C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0293C).
           IF FLD0294C (1:)    NOT EQUAL XPC-FLD0294C
              DISPLAY 'FLD0294C ==> ' HEX-OF (FLD0294C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0294C).
           IF FLD0295C (1:)    NOT EQUAL XPC-FLD0295C
              DISPLAY 'FLD0295C ==> ' HEX-OF (FLD0295C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0295C).
           IF FLD0296C (1:)    NOT EQUAL XPC-FLD0296C
              DISPLAY 'FLD0296C ==> ' HEX-OF (FLD0296C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0296C).
           IF FLD0297C (1:)    NOT EQUAL XPC-FLD0297C
              DISPLAY 'FLD0297C ==> ' HEX-OF (FLD0297C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0297C).
           IF FLD0298C (1:)    NOT EQUAL XPC-FLD0298C
              DISPLAY 'FLD0298C ==> ' HEX-OF (FLD0298C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0298C).
           IF FLD0299C (1:)    NOT EQUAL XPC-FLD0299C
              DISPLAY 'FLD0299C ==> ' HEX-OF (FLD0299C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0299C).
           IF FLD0300C (1:)    NOT EQUAL XPC-FLD0300C
              DISPLAY 'FLD0300C ==> ' HEX-OF (FLD0300C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0300C).
           IF FLD0301C (1:)    NOT EQUAL XPC-FLD0301C
              DISPLAY 'FLD0301C ==> ' HEX-OF (FLD0301C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0301C).
           IF FLD0302C (1:)    NOT EQUAL XPC-FLD0302C
              DISPLAY 'FLD0302C ==> ' HEX-OF (FLD0302C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0302C).
           IF FLD0303C (1:)    NOT EQUAL XPC-FLD0303C
              DISPLAY 'FLD0303C ==> ' HEX-OF (FLD0303C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0303C).
           IF FLD0304C (1:)    NOT EQUAL XPC-FLD0304C
              DISPLAY 'FLD0304C ==> ' HEX-OF (FLD0304C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0304C).
           IF FLD0305C (1:)    NOT EQUAL XPC-FLD0305C
              DISPLAY 'FLD0305C ==> ' HEX-OF (FLD0305C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0305C).
           IF FLD0306C (1:)    NOT EQUAL XPC-FLD0306C
              DISPLAY 'FLD0306C ==> ' HEX-OF (FLD0306C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0306C).
           IF FLD0307C (1:)    NOT EQUAL XPC-FLD0307C
              DISPLAY 'FLD0307C ==> ' HEX-OF (FLD0307C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0307C).
           IF FLD0308C (1:)    NOT EQUAL XPC-FLD0308C
              DISPLAY 'FLD0308C ==> ' HEX-OF (FLD0308C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0308C).
           IF FLD0309C (1:)    NOT EQUAL XPC-FLD0309C
              DISPLAY 'FLD0309C ==> ' HEX-OF (FLD0309C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0309C).
           IF FLD0310C (1:)    NOT EQUAL XPC-FLD0310C
              DISPLAY 'FLD0310C ==> ' HEX-OF (FLD0310C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0310C).
           IF FLD0311C (1:)    NOT EQUAL XPC-FLD0311C
              DISPLAY 'FLD0311C ==> ' HEX-OF (FLD0311C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0311C).
           IF FLD0312C (1:)    NOT EQUAL XPC-FLD0312C
              DISPLAY 'FLD0312C ==> ' HEX-OF (FLD0312C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0312C).
           IF FLD0313C (1:)    NOT EQUAL XPC-FLD0313C
              DISPLAY 'FLD0313C ==> ' HEX-OF (FLD0313C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0313C).
           IF FLD0314C (1:)    NOT EQUAL XPC-FLD0314C
              DISPLAY 'FLD0314C ==> ' HEX-OF (FLD0314C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0314C).
           IF FLD0315C (1:)    NOT EQUAL XPC-FLD0315C
              DISPLAY 'FLD0315C ==> ' HEX-OF (FLD0315C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0315C).
           IF FLD0316C (1:)    NOT EQUAL XPC-FLD0316C
              DISPLAY 'FLD0316C ==> ' HEX-OF (FLD0316C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0316C).
           IF FLD0317C (1:)    NOT EQUAL XPC-FLD0317C
              DISPLAY 'FLD0317C ==> ' HEX-OF (FLD0317C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0317C).
           IF FLD0318C (1:)    NOT EQUAL XPC-FLD0318C
              DISPLAY 'FLD0318C ==> ' HEX-OF (FLD0318C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0318C).
           IF FLD0319C (1:)    NOT EQUAL XPC-FLD0319C
              DISPLAY 'FLD0319C ==> ' HEX-OF (FLD0319C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0319C).
           IF FLD0320C (1:)    NOT EQUAL XPC-FLD0320C
              DISPLAY 'FLD0320C ==> ' HEX-OF (FLD0320C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0320C).
           IF FLD0321C (1:)    NOT EQUAL XPC-FLD0321C
              DISPLAY 'FLD0321C ==> ' HEX-OF (FLD0321C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0321C).
           IF FLD0322C (1:)    NOT EQUAL XPC-FLD0322C
              DISPLAY 'FLD0322C ==> ' HEX-OF (FLD0322C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0322C).
           IF FLD0323C (1:)    NOT EQUAL XPC-FLD0323C
              DISPLAY 'FLD0323C ==> ' HEX-OF (FLD0323C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0323C).
           IF FLD0324C (1:)    NOT EQUAL XPC-FLD0324C
              DISPLAY 'FLD0324C ==> ' HEX-OF (FLD0324C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0324C).
           IF FLD0325C (1:)    NOT EQUAL XPC-FLD0325C
              DISPLAY 'FLD0325C ==> ' HEX-OF (FLD0325C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0325C).
           IF FLD0326C (1:)    NOT EQUAL XPC-FLD0326C
              DISPLAY 'FLD0326C ==> ' HEX-OF (FLD0326C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0326C).
           IF FLD0327C (1:)    NOT EQUAL XPC-FLD0327C
              DISPLAY 'FLD0327C ==> ' HEX-OF (FLD0327C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0327C).
           IF FLD0328C (1:)    NOT EQUAL XPC-FLD0328C
              DISPLAY 'FLD0328C ==> ' HEX-OF (FLD0328C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0328C).
           IF FLD0329C (1:)    NOT EQUAL XPC-FLD0329C
              DISPLAY 'FLD0329C ==> ' HEX-OF (FLD0329C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0329C).
           IF FLD0330C (1:)    NOT EQUAL XPC-FLD0330C
              DISPLAY 'FLD0330C ==> ' HEX-OF (FLD0330C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0330C).
           IF FLD0331C (1:)    NOT EQUAL XPC-FLD0331C
              DISPLAY 'FLD0331C ==> ' HEX-OF (FLD0331C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0331C).
           IF FLD0332C (1:)    NOT EQUAL XPC-FLD0332C
              DISPLAY 'FLD0332C ==> ' HEX-OF (FLD0332C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0332C).
           IF FLD0333C (1:)    NOT EQUAL XPC-FLD0333C
              DISPLAY 'FLD0333C ==> ' HEX-OF (FLD0333C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0333C).
           IF FLD0334C (1:)    NOT EQUAL XPC-FLD0334C
              DISPLAY 'FLD0334C ==> ' HEX-OF (FLD0334C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0334C).
           IF FLD0335C (1:)    NOT EQUAL XPC-FLD0335C
              DISPLAY 'FLD0335C ==> ' HEX-OF (FLD0335C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0335C).
           IF FLD0336C (1:)    NOT EQUAL XPC-FLD0336C
              DISPLAY 'FLD0336C ==> ' HEX-OF (FLD0336C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0336C).
           IF FLD0337C (1:)    NOT EQUAL XPC-FLD0337C
              DISPLAY 'FLD0337C ==> ' HEX-OF (FLD0337C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0337C).
           IF FLD0338C (1:)    NOT EQUAL XPC-FLD0338C
              DISPLAY 'FLD0338C ==> ' HEX-OF (FLD0338C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0338C).
           IF FLD0339C (1:)    NOT EQUAL XPC-FLD0339C
              DISPLAY 'FLD0339C ==> ' HEX-OF (FLD0339C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0339C).
           IF FLD0340C (1:)    NOT EQUAL XPC-FLD0340C
              DISPLAY 'FLD0340C ==> ' HEX-OF (FLD0340C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0340C).
           IF FLD0341C (1:)    NOT EQUAL XPC-FLD0341C
              DISPLAY 'FLD0341C ==> ' HEX-OF (FLD0341C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0341C).
           IF FLD0342C (1:)    NOT EQUAL XPC-FLD0342C
              DISPLAY 'FLD0342C ==> ' HEX-OF (FLD0342C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0342C).
           IF FLD0343C (1:)    NOT EQUAL XPC-FLD0343C
              DISPLAY 'FLD0343C ==> ' HEX-OF (FLD0343C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0343C).
           IF FLD0344C (1:)    NOT EQUAL XPC-FLD0344C
              DISPLAY 'FLD0344C ==> ' HEX-OF (FLD0344C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0344C).
           IF FLD0345C (1:)    NOT EQUAL XPC-FLD0345C
              DISPLAY 'FLD0345C ==> ' HEX-OF (FLD0345C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0345C).
           IF FLD0346C (1:)    NOT EQUAL XPC-FLD0346C
              DISPLAY 'FLD0346C ==> ' HEX-OF (FLD0346C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0346C).
           IF FLD0347C (1:)    NOT EQUAL XPC-FLD0347C
              DISPLAY 'FLD0347C ==> ' HEX-OF (FLD0347C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0347C).
           IF FLD0348C (1:)    NOT EQUAL XPC-FLD0348C
              DISPLAY 'FLD0348C ==> ' HEX-OF (FLD0348C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0348C).
           IF FLD0349C (1:)    NOT EQUAL XPC-FLD0349C
              DISPLAY 'FLD0349C ==> ' HEX-OF (FLD0349C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0349C).
           IF FLD0350C (1:)    NOT EQUAL XPC-FLD0350C
              DISPLAY 'FLD0350C ==> ' HEX-OF (FLD0350C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0350C).
           IF FLD0351C (1:)    NOT EQUAL XPC-FLD0351C
              DISPLAY 'FLD0351C ==> ' HEX-OF (FLD0351C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0351C).
           IF FLD0352C (1:)    NOT EQUAL XPC-FLD0352C
              DISPLAY 'FLD0352C ==> ' HEX-OF (FLD0352C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0352C).
           IF FLD0353C (1:)    NOT EQUAL XPC-FLD0353C
              DISPLAY 'FLD0353C ==> ' HEX-OF (FLD0353C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0353C).
           IF FLD0354C (1:)    NOT EQUAL XPC-FLD0354C
              DISPLAY 'FLD0354C ==> ' HEX-OF (FLD0354C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0354C).
           IF FLD0355C (1:)    NOT EQUAL XPC-FLD0355C
              DISPLAY 'FLD0355C ==> ' HEX-OF (FLD0355C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0355C).
           IF FLD0356C (1:)    NOT EQUAL XPC-FLD0356C
              DISPLAY 'FLD0356C ==> ' HEX-OF (FLD0356C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0356C).
           IF FLD0357C (1:)    NOT EQUAL XPC-FLD0357C
              DISPLAY 'FLD0357C ==> ' HEX-OF (FLD0357C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0357C).
           IF FLD0358C (1:)    NOT EQUAL XPC-FLD0358C
              DISPLAY 'FLD0358C ==> ' HEX-OF (FLD0358C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0358C).
           IF FLD0359C (1:)    NOT EQUAL XPC-FLD0359C
              DISPLAY 'FLD0359C ==> ' HEX-OF (FLD0359C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0359C).
           IF FLD0360C (1:)    NOT EQUAL XPC-FLD0360C
              DISPLAY 'FLD0360C ==> ' HEX-OF (FLD0360C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0360C).
           IF FLD0361C (1:)    NOT EQUAL XPC-FLD0361C
              DISPLAY 'FLD0361C ==> ' HEX-OF (FLD0361C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0361C).
           IF FLD0362C (1:)    NOT EQUAL XPC-FLD0362C
              DISPLAY 'FLD0362C ==> ' HEX-OF (FLD0362C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0362C).
           IF FLD0363C (1:)    NOT EQUAL XPC-FLD0363C
              DISPLAY 'FLD0363C ==> ' HEX-OF (FLD0363C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0363C).
           IF FLD0364C (1:)    NOT EQUAL XPC-FLD0364C
              DISPLAY 'FLD0364C ==> ' HEX-OF (FLD0364C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0364C).
           IF FLD0365C (1:)    NOT EQUAL XPC-FLD0365C
              DISPLAY 'FLD0365C ==> ' HEX-OF (FLD0365C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0365C).
           IF FLD0366C (1:)    NOT EQUAL XPC-FLD0366C
              DISPLAY 'FLD0366C ==> ' HEX-OF (FLD0366C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0366C).
           IF FLD0367C (1:)    NOT EQUAL XPC-FLD0367C
              DISPLAY 'FLD0367C ==> ' HEX-OF (FLD0367C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0367C).
           IF FLD0368C (1:)    NOT EQUAL XPC-FLD0368C
              DISPLAY 'FLD0368C ==> ' HEX-OF (FLD0368C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0368C).
           IF FLD0369C (1:)    NOT EQUAL XPC-FLD0369C
              DISPLAY 'FLD0369C ==> ' HEX-OF (FLD0369C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0369C).
           IF FLD0370C (1:)    NOT EQUAL XPC-FLD0370C
              DISPLAY 'FLD0370C ==> ' HEX-OF (FLD0370C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0370C).
           IF FLD0371C (1:)    NOT EQUAL XPC-FLD0371C
              DISPLAY 'FLD0371C ==> ' HEX-OF (FLD0371C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0371C).
           IF FLD0372C (1:)    NOT EQUAL XPC-FLD0372C
              DISPLAY 'FLD0372C ==> ' HEX-OF (FLD0372C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0372C).
           IF FLD0373C (1:)    NOT EQUAL XPC-FLD0373C
              DISPLAY 'FLD0373C ==> ' HEX-OF (FLD0373C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0373C).
           IF FLD0374C (1:)    NOT EQUAL XPC-FLD0374C
              DISPLAY 'FLD0374C ==> ' HEX-OF (FLD0374C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0374C).
           IF FLD0375C (1:)    NOT EQUAL XPC-FLD0375C
              DISPLAY 'FLD0375C ==> ' HEX-OF (FLD0375C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0375C).
           IF FLD0376C (1:)    NOT EQUAL XPC-FLD0376C
              DISPLAY 'FLD0376C ==> ' HEX-OF (FLD0376C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0376C).
           IF FLD0377C (1:)    NOT EQUAL XPC-FLD0377C
              DISPLAY 'FLD0377C ==> ' HEX-OF (FLD0377C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0377C).
           IF FLD0378C (1:)    NOT EQUAL XPC-FLD0378C
              DISPLAY 'FLD0378C ==> ' HEX-OF (FLD0378C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0378C).
           IF FLD0379C (1:)    NOT EQUAL XPC-FLD0379C
              DISPLAY 'FLD0379C ==> ' HEX-OF (FLD0379C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0379C).
           IF FLD0380C (1:)    NOT EQUAL XPC-FLD0380C
              DISPLAY 'FLD0380C ==> ' HEX-OF (FLD0380C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0380C).
           IF FLD0381C (1:)    NOT EQUAL XPC-FLD0381C
              DISPLAY 'FLD0381C ==> ' HEX-OF (FLD0381C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0381C).
           IF FLD0382C (1:)    NOT EQUAL XPC-FLD0382C
              DISPLAY 'FLD0382C ==> ' HEX-OF (FLD0382C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0382C).
           IF FLD0383C (1:)    NOT EQUAL XPC-FLD0383C
              DISPLAY 'FLD0383C ==> ' HEX-OF (FLD0383C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0383C).
           IF FLD0384C (1:)    NOT EQUAL XPC-FLD0384C
              DISPLAY 'FLD0384C ==> ' HEX-OF (FLD0384C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0384C).
           IF FLD0385C (1:)    NOT EQUAL XPC-FLD0385C
              DISPLAY 'FLD0385C ==> ' HEX-OF (FLD0385C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0385C).
           IF FLD0386C (1:)    NOT EQUAL XPC-FLD0386C
              DISPLAY 'FLD0386C ==> ' HEX-OF (FLD0386C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0386C).
           IF FLD0387C (1:)    NOT EQUAL XPC-FLD0387C
              DISPLAY 'FLD0387C ==> ' HEX-OF (FLD0387C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0387C).
           IF FLD0388C (1:)    NOT EQUAL XPC-FLD0388C
              DISPLAY 'FLD0388C ==> ' HEX-OF (FLD0388C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0388C).
           IF FLD0389C (1:)    NOT EQUAL XPC-FLD0389C
              DISPLAY 'FLD0389C ==> ' HEX-OF (FLD0389C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0389C).
           IF FLD0390C (1:)    NOT EQUAL XPC-FLD0390C
              DISPLAY 'FLD0390C ==> ' HEX-OF (FLD0390C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0390C).
           IF FLD0391C (1:)    NOT EQUAL XPC-FLD0391C
              DISPLAY 'FLD0391C ==> ' HEX-OF (FLD0391C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0391C).
           IF FLD0392C (1:)    NOT EQUAL XPC-FLD0392C
              DISPLAY 'FLD0392C ==> ' HEX-OF (FLD0392C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0392C).
           IF FLD0393C (1:)    NOT EQUAL XPC-FLD0393C
              DISPLAY 'FLD0393C ==> ' HEX-OF (FLD0393C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0393C).
           IF FLD0394C (1:)    NOT EQUAL XPC-FLD0394C
              DISPLAY 'FLD0394C ==> ' HEX-OF (FLD0394C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0394C).
           IF FLD0395C (1:)    NOT EQUAL XPC-FLD0395C
              DISPLAY 'FLD0395C ==> ' HEX-OF (FLD0395C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0395C).
           IF FLD0396C (1:)    NOT EQUAL XPC-FLD0396C
              DISPLAY 'FLD0396C ==> ' HEX-OF (FLD0396C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0396C).
           IF FLD0397C (1:)    NOT EQUAL XPC-FLD0397C
              DISPLAY 'FLD0397C ==> ' HEX-OF (FLD0397C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0397C).
           IF FLD0398C (1:)    NOT EQUAL XPC-FLD0398C
              DISPLAY 'FLD0398C ==> ' HEX-OF (FLD0398C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0398C).
           IF FLD0399C (1:)    NOT EQUAL XPC-FLD0399C
              DISPLAY 'FLD0399C ==> ' HEX-OF (FLD0399C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0399C).
           IF FLD0400C (1:)    NOT EQUAL XPC-FLD0400C
              DISPLAY 'FLD0400C ==> ' HEX-OF (FLD0400C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0400C).
           IF FLD0401C (1:)    NOT EQUAL XPC-FLD0401C
              DISPLAY 'FLD0401C ==> ' HEX-OF (FLD0401C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0401C).
           IF FLD0402C (1:)    NOT EQUAL XPC-FLD0402C
              DISPLAY 'FLD0402C ==> ' HEX-OF (FLD0402C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0402C).
           IF FLD0403C (1:)    NOT EQUAL XPC-FLD0403C
              DISPLAY 'FLD0403C ==> ' HEX-OF (FLD0403C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0403C).
           IF FLD0404C (1:)    NOT EQUAL XPC-FLD0404C
              DISPLAY 'FLD0404C ==> ' HEX-OF (FLD0404C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0404C).
           IF FLD0405C (1:)    NOT EQUAL XPC-FLD0405C
              DISPLAY 'FLD0405C ==> ' HEX-OF (FLD0405C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0405C).
           IF FLD0406C (1:)    NOT EQUAL XPC-FLD0406C
              DISPLAY 'FLD0406C ==> ' HEX-OF (FLD0406C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0406C).
           IF FLD0407C (1:)    NOT EQUAL XPC-FLD0407C
              DISPLAY 'FLD0407C ==> ' HEX-OF (FLD0407C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0407C).
           IF FLD0408C (1:)    NOT EQUAL XPC-FLD0408C
              DISPLAY 'FLD0408C ==> ' HEX-OF (FLD0408C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0408C).
           IF FLD0409C (1:)    NOT EQUAL XPC-FLD0409C
              DISPLAY 'FLD0409C ==> ' HEX-OF (FLD0409C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0409C).
           IF FLD0410C (1:)    NOT EQUAL XPC-FLD0410C
              DISPLAY 'FLD0410C ==> ' HEX-OF (FLD0410C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0410C).
           IF FLD0411C (1:)    NOT EQUAL XPC-FLD0411C
              DISPLAY 'FLD0411C ==> ' HEX-OF (FLD0411C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0411C).
           IF FLD0412C (1:)    NOT EQUAL XPC-FLD0412C
              DISPLAY 'FLD0412C ==> ' HEX-OF (FLD0412C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0412C).
           IF FLD0413C (1:)    NOT EQUAL XPC-FLD0413C
              DISPLAY 'FLD0413C ==> ' HEX-OF (FLD0413C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0413C).
           IF FLD0414C (1:)    NOT EQUAL XPC-FLD0414C
              DISPLAY 'FLD0414C ==> ' HEX-OF (FLD0414C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0414C).
           IF FLD0415C (1:)    NOT EQUAL XPC-FLD0415C
              DISPLAY 'FLD0415C ==> ' HEX-OF (FLD0415C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0415C).
           IF FLD0416C (1:)    NOT EQUAL XPC-FLD0416C
              DISPLAY 'FLD0416C ==> ' HEX-OF (FLD0416C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0416C).
           IF FLD0417C (1:)    NOT EQUAL XPC-FLD0417C
              DISPLAY 'FLD0417C ==> ' HEX-OF (FLD0417C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0417C).
           IF FLD0418C (1:)    NOT EQUAL XPC-FLD0418C
              DISPLAY 'FLD0418C ==> ' HEX-OF (FLD0418C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0418C).
           IF FLD0419C (1:)    NOT EQUAL XPC-FLD0419C
              DISPLAY 'FLD0419C ==> ' HEX-OF (FLD0419C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0419C).
           IF FLD0420C (1:)    NOT EQUAL XPC-FLD0420C
              DISPLAY 'FLD0420C ==> ' HEX-OF (FLD0420C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0420C).
           IF FLD0421C (1:)    NOT EQUAL XPC-FLD0421C
              DISPLAY 'FLD0421C ==> ' HEX-OF (FLD0421C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0421C).
           IF FLD0422C (1:)    NOT EQUAL XPC-FLD0422C
              DISPLAY 'FLD0422C ==> ' HEX-OF (FLD0422C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0422C).
           IF FLD0423C (1:)    NOT EQUAL XPC-FLD0423C
              DISPLAY 'FLD0423C ==> ' HEX-OF (FLD0423C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0423C).
           IF FLD0424C (1:)    NOT EQUAL XPC-FLD0424C
              DISPLAY 'FLD0424C ==> ' HEX-OF (FLD0424C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0424C).
           IF FLD0425C (1:)    NOT EQUAL XPC-FLD0425C
              DISPLAY 'FLD0425C ==> ' HEX-OF (FLD0425C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0425C).
           IF FLD0426C (1:)    NOT EQUAL XPC-FLD0426C
              DISPLAY 'FLD0426C ==> ' HEX-OF (FLD0426C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0426C).
           IF FLD0427C (1:)    NOT EQUAL XPC-FLD0427C
              DISPLAY 'FLD0427C ==> ' HEX-OF (FLD0427C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0427C).
           IF FLD0428C (1:)    NOT EQUAL XPC-FLD0428C
              DISPLAY 'FLD0428C ==> ' HEX-OF (FLD0428C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0428C).
           IF FLD0429C (1:)    NOT EQUAL XPC-FLD0429C
              DISPLAY 'FLD0429C ==> ' HEX-OF (FLD0429C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0429C).
           IF FLD0430C (1:)    NOT EQUAL XPC-FLD0430C
              DISPLAY 'FLD0430C ==> ' HEX-OF (FLD0430C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0430C).
           IF FLD0431C (1:)    NOT EQUAL XPC-FLD0431C
              DISPLAY 'FLD0431C ==> ' HEX-OF (FLD0431C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0431C).
           IF FLD0432C (1:)    NOT EQUAL XPC-FLD0432C
              DISPLAY 'FLD0432C ==> ' HEX-OF (FLD0432C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0432C).
           IF FLD0433C (1:)    NOT EQUAL XPC-FLD0433C
              DISPLAY 'FLD0433C ==> ' HEX-OF (FLD0433C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0433C).
           IF FLD0434C (1:)    NOT EQUAL XPC-FLD0434C
              DISPLAY 'FLD0434C ==> ' HEX-OF (FLD0434C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0434C).
           IF FLD0435C (1:)    NOT EQUAL XPC-FLD0435C
              DISPLAY 'FLD0435C ==> ' HEX-OF (FLD0435C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0435C).
           IF FLD0436C (1:)    NOT EQUAL XPC-FLD0436C
              DISPLAY 'FLD0436C ==> ' HEX-OF (FLD0436C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0436C).
           IF FLD0437C (1:)    NOT EQUAL XPC-FLD0437C
              DISPLAY 'FLD0437C ==> ' HEX-OF (FLD0437C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0437C).
           IF FLD0438C (1:)    NOT EQUAL XPC-FLD0438C
              DISPLAY 'FLD0438C ==> ' HEX-OF (FLD0438C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0438C).
           IF FLD0439C (1:)    NOT EQUAL XPC-FLD0439C
              DISPLAY 'FLD0439C ==> ' HEX-OF (FLD0439C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0439C).
           IF FLD0440C (1:)    NOT EQUAL XPC-FLD0440C
              DISPLAY 'FLD0440C ==> ' HEX-OF (FLD0440C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0440C).
           IF FLD0441C (1:)    NOT EQUAL XPC-FLD0441C
              DISPLAY 'FLD0441C ==> ' HEX-OF (FLD0441C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0441C).
           IF FLD0442C (1:)    NOT EQUAL XPC-FLD0442C
              DISPLAY 'FLD0442C ==> ' HEX-OF (FLD0442C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0442C).
           IF FLD0443C (1:)    NOT EQUAL XPC-FLD0443C
              DISPLAY 'FLD0443C ==> ' HEX-OF (FLD0443C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0443C).
           IF FLD0444C (1:)    NOT EQUAL XPC-FLD0444C
              DISPLAY 'FLD0444C ==> ' HEX-OF (FLD0444C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0444C).
           IF FLD0445C (1:)    NOT EQUAL XPC-FLD0445C
              DISPLAY 'FLD0445C ==> ' HEX-OF (FLD0445C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0445C).
           IF FLD0446C (1:)    NOT EQUAL XPC-FLD0446C
              DISPLAY 'FLD0446C ==> ' HEX-OF (FLD0446C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0446C).
           IF FLD0447C (1:)    NOT EQUAL XPC-FLD0447C
              DISPLAY 'FLD0447C ==> ' HEX-OF (FLD0447C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0447C).
           IF FLD0448C (1:)    NOT EQUAL XPC-FLD0448C
              DISPLAY 'FLD0448C ==> ' HEX-OF (FLD0448C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0448C).
           IF FLD0449C (1:)    NOT EQUAL XPC-FLD0449C
              DISPLAY 'FLD0449C ==> ' HEX-OF (FLD0449C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0449C).
           IF FLD0450C (1:)    NOT EQUAL XPC-FLD0450C
              DISPLAY 'FLD0450C ==> ' HEX-OF (FLD0450C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0450C).
           IF FLD0451C (1:)    NOT EQUAL XPC-FLD0451C
              DISPLAY 'FLD0451C ==> ' HEX-OF (FLD0451C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0451C).
           IF FLD0452C (1:)    NOT EQUAL XPC-FLD0452C
              DISPLAY 'FLD0452C ==> ' HEX-OF (FLD0452C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0452C).
           IF FLD0453C (1:)    NOT EQUAL XPC-FLD0453C
              DISPLAY 'FLD0453C ==> ' HEX-OF (FLD0453C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0453C).
           IF FLD0454C (1:)    NOT EQUAL XPC-FLD0454C
              DISPLAY 'FLD0454C ==> ' HEX-OF (FLD0454C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0454C).
           IF FLD0455C (1:)    NOT EQUAL XPC-FLD0455C
              DISPLAY 'FLD0455C ==> ' HEX-OF (FLD0455C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0455C).
           IF FLD0456C (1:)    NOT EQUAL XPC-FLD0456C
              DISPLAY 'FLD0456C ==> ' HEX-OF (FLD0456C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0456C).
           IF FLD0457C (1:)    NOT EQUAL XPC-FLD0457C
              DISPLAY 'FLD0457C ==> ' HEX-OF (FLD0457C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0457C).
           IF FLD0458C (1:)    NOT EQUAL XPC-FLD0458C
              DISPLAY 'FLD0458C ==> ' HEX-OF (FLD0458C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0458C).
           IF FLD0459C (1:)    NOT EQUAL XPC-FLD0459C
              DISPLAY 'FLD0459C ==> ' HEX-OF (FLD0459C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0459C).
           IF FLD0460C (1:)    NOT EQUAL XPC-FLD0460C
              DISPLAY 'FLD0460C ==> ' HEX-OF (FLD0460C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0460C).
           IF FLD0461C (1:)    NOT EQUAL XPC-FLD0461C
              DISPLAY 'FLD0461C ==> ' HEX-OF (FLD0461C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0461C).
           IF FLD0462C (1:)    NOT EQUAL XPC-FLD0462C
              DISPLAY 'FLD0462C ==> ' HEX-OF (FLD0462C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0462C).
           IF FLD0463C (1:)    NOT EQUAL XPC-FLD0463C
              DISPLAY 'FLD0463C ==> ' HEX-OF (FLD0463C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0463C).
           IF FLD0464C (1:)    NOT EQUAL XPC-FLD0464C
              DISPLAY 'FLD0464C ==> ' HEX-OF (FLD0464C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0464C).
           IF FLD0465C (1:)    NOT EQUAL XPC-FLD0465C
              DISPLAY 'FLD0465C ==> ' HEX-OF (FLD0465C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0465C).
           IF FLD0466C (1:)    NOT EQUAL XPC-FLD0466C
              DISPLAY 'FLD0466C ==> ' HEX-OF (FLD0466C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0466C).
           IF FLD0467C (1:)    NOT EQUAL XPC-FLD0467C
              DISPLAY 'FLD0467C ==> ' HEX-OF (FLD0467C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0467C).
           IF FLD0468C (1:)    NOT EQUAL XPC-FLD0468C
              DISPLAY 'FLD0468C ==> ' HEX-OF (FLD0468C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0468C).
           IF FLD0469C (1:)    NOT EQUAL XPC-FLD0469C
              DISPLAY 'FLD0469C ==> ' HEX-OF (FLD0469C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0469C).
           IF FLD0470C (1:)    NOT EQUAL XPC-FLD0470C
              DISPLAY 'FLD0470C ==> ' HEX-OF (FLD0470C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0470C).
           IF FLD0471C (1:)    NOT EQUAL XPC-FLD0471C
              DISPLAY 'FLD0471C ==> ' HEX-OF (FLD0471C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0471C).
           IF FLD0472C (1:)    NOT EQUAL XPC-FLD0472C
              DISPLAY 'FLD0472C ==> ' HEX-OF (FLD0472C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0472C).
           IF FLD0473C (1:)    NOT EQUAL XPC-FLD0473C
              DISPLAY 'FLD0473C ==> ' HEX-OF (FLD0473C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0473C).
           IF FLD0474C (1:)    NOT EQUAL XPC-FLD0474C
              DISPLAY 'FLD0474C ==> ' HEX-OF (FLD0474C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0474C).
           IF FLD0475C (1:)    NOT EQUAL XPC-FLD0475C
              DISPLAY 'FLD0475C ==> ' HEX-OF (FLD0475C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0475C).
           IF FLD0476C (1:)    NOT EQUAL XPC-FLD0476C
              DISPLAY 'FLD0476C ==> ' HEX-OF (FLD0476C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0476C).
           IF FLD0477C (1:)    NOT EQUAL XPC-FLD0477C
              DISPLAY 'FLD0477C ==> ' HEX-OF (FLD0477C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0477C).
           IF FLD0478C (1:)    NOT EQUAL XPC-FLD0478C
              DISPLAY 'FLD0478C ==> ' HEX-OF (FLD0478C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0478C).
           IF FLD0479C (1:)    NOT EQUAL XPC-FLD0479C
              DISPLAY 'FLD0479C ==> ' HEX-OF (FLD0479C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0479C).
           IF FLD0480C (1:)    NOT EQUAL XPC-FLD0480C
              DISPLAY 'FLD0480C ==> ' HEX-OF (FLD0480C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0480C).
           IF FLD0481C (1:)    NOT EQUAL XPC-FLD0481C
              DISPLAY 'FLD0481C ==> ' HEX-OF (FLD0481C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0481C).
           IF FLD0482C (1:)    NOT EQUAL XPC-FLD0482C
              DISPLAY 'FLD0482C ==> ' HEX-OF (FLD0482C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0482C).
           IF FLD0483C (1:)    NOT EQUAL XPC-FLD0483C
              DISPLAY 'FLD0483C ==> ' HEX-OF (FLD0483C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0483C).
           IF FLD0484C (1:)    NOT EQUAL XPC-FLD0484C
              DISPLAY 'FLD0484C ==> ' HEX-OF (FLD0484C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0484C).
           IF FLD0485C (1:)    NOT EQUAL XPC-FLD0485C
              DISPLAY 'FLD0485C ==> ' HEX-OF (FLD0485C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0485C).
           IF FLD0486C (1:)    NOT EQUAL XPC-FLD0486C
              DISPLAY 'FLD0486C ==> ' HEX-OF (FLD0486C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0486C).
           IF FLD0487C (1:)    NOT EQUAL XPC-FLD0487C
              DISPLAY 'FLD0487C ==> ' HEX-OF (FLD0487C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0487C).
           IF FLD0488C (1:)    NOT EQUAL XPC-FLD0488C
              DISPLAY 'FLD0488C ==> ' HEX-OF (FLD0488C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0488C).
           IF FLD0489C (1:)    NOT EQUAL XPC-FLD0489C
              DISPLAY 'FLD0489C ==> ' HEX-OF (FLD0489C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0489C).
           IF FLD0490C (1:)    NOT EQUAL XPC-FLD0490C
              DISPLAY 'FLD0490C ==> ' HEX-OF (FLD0490C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0490C).
           IF FLD0491C (1:)    NOT EQUAL XPC-FLD0491C
              DISPLAY 'FLD0491C ==> ' HEX-OF (FLD0491C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0491C).
           IF FLD0492C (1:)    NOT EQUAL XPC-FLD0492C
              DISPLAY 'FLD0492C ==> ' HEX-OF (FLD0492C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0492C).
           IF FLD0493C (1:)    NOT EQUAL XPC-FLD0493C
              DISPLAY 'FLD0493C ==> ' HEX-OF (FLD0493C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0493C).
           IF FLD0494C (1:)    NOT EQUAL XPC-FLD0494C
              DISPLAY 'FLD0494C ==> ' HEX-OF (FLD0494C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0494C).
           IF FLD0495C (1:)    NOT EQUAL XPC-FLD0495C
              DISPLAY 'FLD0495C ==> ' HEX-OF (FLD0495C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0495C).
           IF FLD0496C (1:)    NOT EQUAL XPC-FLD0496C
              DISPLAY 'FLD0496C ==> ' HEX-OF (FLD0496C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0496C).
           IF FLD0497C (1:)    NOT EQUAL XPC-FLD0497C
              DISPLAY 'FLD0497C ==> ' HEX-OF (FLD0497C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0497C).
           IF FLD0498C (1:)    NOT EQUAL XPC-FLD0498C
              DISPLAY 'FLD0498C ==> ' HEX-OF (FLD0498C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0498C).
           IF FLD0499C (1:)    NOT EQUAL XPC-FLD0499C
              DISPLAY 'FLD0499C ==> ' HEX-OF (FLD0499C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0499C).
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:7277: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:7277"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:7277"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:7278: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:7278"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:7278"
$at_failed && at_fn_log_failure
$at_traceon; }



cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTEST-MOVE2.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77 FLD0500A                       PIC S9(10)V9(08) COMP-3
           VALUE -4830218621.81680639.
       77 FLD0500C                       PIC  9(03)       COMP-6.

       77 FLD0501A                       PIC  9(09)V9(15) COMP-3
           VALUE  652910855.370784748430423.
       77 FLD0501C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0502A                       PIC  9(03)       COMP-6
           VALUE  079.
       77 FLD0502C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0503A                       PIC  9(10)V9(11) COMP-6
           VALUE  5662523582.77427925159.
       77 FLD0503C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0504A                       PIC S9(08)V9(02) COMP-3
           VALUE -28360864.01.
       77 FLD0504C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0505A                       PIC  9(04)V9(30) COMP-3
           VALUE  9110.332843503369248949752545740921.
       77 FLD0505C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0506A                       PIC  9(10)V9(11) COMP-3
           VALUE  5546838940.35467472960.
       77 FLD0506C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0507A                       PIC  9(08)V9(18) COMP-6
           VALUE  70736506.262277043521891073.
       77 FLD0507C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0508A                       PIC  9(09)V9(16) COMP-6
           VALUE  658855971.9467786957025623.
       77 FLD0508C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0509A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0509C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0510A                       PIC  9(04)       COMP-6
           VALUE  1295.
       77 FLD0510C                       PIC S9(03)       COMP-3.

       77 FLD0511A                       PIC  9(06)V9(25) COMP-6
           VALUE  815863.7850571600624860479911149.
       77 FLD0511C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0512A                       PIC  9(05)       COMP-6
           VALUE  13945.
       77 FLD0512C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0513A                       PIC  9(09)V9(15) COMP-3
           VALUE  653773832.246937192103075.
       77 FLD0513C                       PIC  9(08)V9(20) COMP-3.

       77 FLD0514A                       PIC  9(08)V9(18) COMP-3
           VALUE  70109343.593910689040882289.
       77 FLD0514C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0515A                       PIC  9(09)V9(16) COMP-6
           VALUE  658210435.7548693718271692.
       77 FLD0515C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0516A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.884403805479323734672902901365887373.
       77 FLD0516C                       PIC  9(01)       COMP-6.

       77 FLD0517A                       PIC  9(10)V9(07) COMP-6
           VALUE  4497620438.0577999.
       77 FLD0517C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0518A                       PIC  9(09)V9(16) COMP-3
           VALUE  664556684.1155496895510168.
       77 FLD0518C                       PIC S9(02)       COMP-3.

       77 FLD0519A                       PIC  9(09)V9(14) COMP-3
           VALUE  630097608.79846921088898.
       77 FLD0519C                       PIC  9(08)V9(17) COMP-3.

       77 FLD0520A                       PIC  9(04)V9(30) COMP-6
           VALUE  9052.329380117529744609328190563246.
       77 FLD0520C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0521A                       PIC  9(05)       COMP-6
           VALUE  13956.
       77 FLD0521C                       PIC S9(05)       COMP-3.

       77 FLD0522A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0522C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0523A                       PIC  9(08)V9(18) COMP-6
           VALUE  70807149.512639711019801325.
       77 FLD0523C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0524A                       PIC S9(06)V9(01) COMP-3
           VALUE +201515.3.
       77 FLD0524C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0525A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0525C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0526A                       PIC  9(07)V9(22) COMP-3
           VALUE  7812896.0072540409864672028561.
       77 FLD0526C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0527A                       PIC  9(10)V9(12) COMP-6
           VALUE  5853770318.384275972434.
       77 FLD0527C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0528A                       PIC  9(10)V9(08) COMP-6
           VALUE  4856797949.89136714.
       77 FLD0528C                       PIC S9(04)       COMP-3.

       77 FLD0529A                       PIC  9(10)V9(10) COMP-6
           VALUE  5298570971.4885653731.
       77 FLD0529C                       PIC S9(10)V9(07) COMP-3.

       77 FLD0530A                       PIC  9(05)V9(28) COMP-6
           VALUE  87536.5484141958027919372398173436.
       77 FLD0530C                       PIC S9(02)       COMP-3.

       77 FLD0531A                       PIC  9(09)V9(03) COMP-6
           VALUE  317487049.751.
       77 FLD0531C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0532A                       PIC  9(09)V9(15) COMP-3
           VALUE  653250626.044252880042506.
       77 FLD0532C                       PIC S9(01)       COMP-3.

       77 FLD0533A                       PIC  9(07)V9(02) COMP-6
           VALUE  2559928.55.
       77 FLD0533C                       PIC  9(03)       COMP-6.

       77 FLD0534A                       PIC  9(09)V9(06) COMP-6
           VALUE  408226706.354108.
       77 FLD0534C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0535A                       PIC  9(10)V9(11) COMP-6
           VALUE  5556101599.27967472981.
       77 FLD0535C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0536A                       PIC S9(08)V9(03) COMP-3
           VALUE -29061270.882.
       77 FLD0536C                       PIC S9(01)       COMP-3.

       77 FLD0537A                       PIC  9(08)V9(03) COMP-6
           VALUE  29943354.242.
       77 FLD0537C                       PIC  9(04)       COMP-6.

       77 FLD0538A                       PIC  9(03)V9(32) COMP-3
           VALUE  922.29859860523566439383102988358587.
       77 FLD0538C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0539A                       PIC  9(05)V9(27) COMP-6
           VALUE  85666.721070025741990860979058197.
       77 FLD0539C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0540A                       PIC S9(04)       COMP-3
           VALUE +1227.
       77 FLD0540C                       PIC  9(01)       COMP-6.

       77 FLD0541A                       PIC  9(09)V9(05) COMP-6
           VALUE  387240740.80744.
       77 FLD0541C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0542A                       PIC  9(06)V9(25) COMP-3
           VALUE  831706.5789473143677668076634290.
       77 FLD0542C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0543A                       PIC  9(06)V9(01) COMP-6
           VALUE  188772.9.
       77 FLD0543C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0544A                       PIC  9(10)V9(09) COMP-3
           VALUE  5241766194.366106468.
       77 FLD0544C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0545A                       PIC  9(09)V9(14) COMP-3
           VALUE  622229285.46684597161942.
       77 FLD0545C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0546A                       PIC  9(06)V9(25) COMP-3
           VALUE  820358.8689269564193651262939965.
       77 FLD0546C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0547A                       PIC  9(06)V9(25) COMP-3
           VALUE  821925.7242001770658035297856258.
       77 FLD0547C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0548A                       PIC  9(07)V9(23) COMP-6
           VALUE  7955385.78445739497091437897324.
       77 FLD0548C                       PIC  9(09)V9(17) COMP-6.

       77 FLD0549A                       PIC  9(07)V9(01) COMP-6
           VALUE  2367856.7.
       77 FLD0549C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0550A                       PIC  9(09)V9(15) COMP-6
           VALUE  656651700.520587522369453.
       77 FLD0550C                       PIC  9(02)       COMP-6.

       77 FLD0551A                       PIC  9(07)V9(02) COMP-6
           VALUE  2589973.73.
       77 FLD0551C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0552A                       PIC  9(10)V9(07) COMP-6
           VALUE  4579590761.6898545.
       77 FLD0552C                       PIC  9(05)       COMP-6.

       77 FLD0553A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0553C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0554A                       PIC  9(07)V9(02) COMP-6
           VALUE  2568219.15.
       77 FLD0554C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0555A                       PIC  9(09)V9(05) COMP-6
           VALUE  388184875.66560.
       77 FLD0555C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0556A                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.209260005348140154524116951506.
       77 FLD0556C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0557A                       PIC  9(09)V9(15) COMP-3
           VALUE  650877011.601572519339242.
       77 FLD0557C                       PIC S9(05)       COMP-3.

       77 FLD0558A                       PIC  9(09)V9(13) COMP-6
           VALUE  595830550.3266489999703.
       77 FLD0558C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0559A                       PIC  9(10)V9(09) COMP-3
           VALUE  5242032248.235551916.
       77 FLD0559C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0560A                       PIC S9(09)V9(06) COMP-3
           VALUE +403640603.914505.
       77 FLD0560C                       PIC  9(09)V9(07) COMP-6.

       77 FLD0561A                       PIC  9(05)       COMP-6
           VALUE  14931.
       77 FLD0561C                       PIC  9(01)       COMP-6.

       77 FLD0562A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0562C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0563A                       PIC  9(10)V9(09) COMP-3
           VALUE  5040974749.501065943.
       77 FLD0563C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0564A                       PIC  9(09)V9(16) COMP-6
           VALUE  666123633.8391588462926051.
       77 FLD0564C                       PIC  9(03)V9(32) COMP-6.

       77 FLD0565A                       PIC  9(04)V9(30) COMP-6
           VALUE  8999.472704059103822515908177592791.
       77 FLD0565C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0566A                       PIC  9(10)V9(10) COMP-6
           VALUE  5451645287.6426646501.
       77 FLD0566C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0567A                       PIC S9(07)V9(02) COMP-3
           VALUE -2621767.34.
       77 FLD0567C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0568A                       PIC S9(08)V9(02) COMP-3
           VALUE -28119737.76.
       77 FLD0568C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0569A                       PIC  9(10)V9(10) COMP-3
           VALUE  5301098669.5201622875.
       77 FLD0569C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0570A                       PIC  9(05)       COMP-6
           VALUE  13775.
       77 FLD0570C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0571A                       PIC  9(10)V9(08) COMP-6
           VALUE  4995844884.12155025.
       77 FLD0571C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0572A                       PIC  9(06)V9(01) COMP-6
           VALUE  199648.9.
       77 FLD0572C                       PIC S9(06)       COMP-3.

       77 FLD0573A                       PIC  9(10)V9(11) COMP-6
           VALUE  5579051586.61930800079.
       77 FLD0573C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0574A                       PIC  9(10)V9(09) COMP-3
           VALUE  5021035726.447702352.
       77 FLD0574C                       PIC S9(01)       COMP-3.

       77 FLD0575A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.0495649054037059499933093320578336.
       77 FLD0575C                       PIC S9(01)       COMP-3.

       77 FLD0576A                       PIC  9(09)V9(11) COMP-3
           VALUE  551289746.02273483895.
       77 FLD0576C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0577A                       PIC S9(10)V9(06) COMP-3
           VALUE +4245433083.607936.
       77 FLD0577C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0578A                       PIC S9(07)V9(02) COMP-3
           VALUE +2444375.29.
       77 FLD0578C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0579A                       PIC  9(09)V9(17) COMP-6
           VALUE  688719854.55414208576740975.
       77 FLD0579C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0580A                       PIC S9(08)V9(04) COMP-3
           VALUE +33455460.0291.
       77 FLD0580C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0581A                       PIC S9(08)V9(02) COMP-3
           VALUE -28271118.43.
       77 FLD0581C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0582A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.0957041455027018983514608407858759.
       77 FLD0582C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0583A                       PIC  9(04)V9(30) COMP-3
           VALUE  9004.015213488590907431330379040446.
       77 FLD0583C                       PIC S9(01)       COMP-3.

       77 FLD0584A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0584C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0585A                       PIC S9(10)V9(06) COMP-3
           VALUE +4326355872.600766.
       77 FLD0585C                       PIC  9(03)V9(32) COMP-6.

       77 FLD0586A                       PIC  9(05)V9(27) COMP-6
           VALUE  85722.001340062370378092282408033.
       77 FLD0586C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0587A                       PIC S9(09)V9(05) COMP-3
           VALUE -381433349.51035.
       77 FLD0587C                       PIC S9(04)       COMP-3.

       77 FLD0588A                       PIC  9(10)V9(09) COMP-6
           VALUE  5181115773.570048599.
       77 FLD0588C                       PIC  9(04)V9(30) COMP-3.

       77 FLD0589A                       PIC S9(09)V9(06) COMP-3
           VALUE +401102073.275349.
       77 FLD0589C                       PIC S9(04)       COMP-3.

       77 FLD0590A                       PIC  9(08)V9(18) COMP-3
           VALUE  70309799.830174168899787900.
       77 FLD0590C                       PIC S9(06)V9(01) COMP-3.

       77 FLD0591A                       PIC  9(09)V9(12) COMP-6
           VALUE  576933255.371857245386.
       77 FLD0591C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0592A                       PIC  9(09)V9(15) COMP-3
           VALUE  644514829.253344467829833.
       77 FLD0592C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0593A                       PIC  9(08)V9(19) COMP-3
           VALUE  72063942.4137167527995018190.
       77 FLD0593C                       PIC S9(02)       COMP-3.

       77 FLD0594A                       PIC S9(08)V9(02) COMP-3
           VALUE -27405154.91.
       77 FLD0594C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0595A                       PIC  9(08)V9(18) COMP-3
           VALUE  70489201.749069052560514592.
       77 FLD0595C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0596A                       PIC  9(04)V9(30) COMP-6
           VALUE  9050.358418523600789740157779306173.
       77 FLD0596C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0597A                       PIC S9(10)V9(07) COMP-3
           VALUE -4611492066.1642122.
       77 FLD0597C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0598A                       PIC  9(10)V9(12) COMP-6
           VALUE  5888650589.753158248740.
       77 FLD0598C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0599A                       PIC  9(05)V9(27) COMP-6
           VALUE  85689.140306102984379066356268594.
       77 FLD0599C                       PIC  9(01)       COMP-6.

       77 FLD0600A                       PIC S9(09)V9(06) COMP-3
           VALUE +401694362.049109.
       77 FLD0600C                       PIC  9(06)V9(24) COMP-3.

       77 FLD0601A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.763793413809590537866256454435642808.
       77 FLD0601C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0602A                       PIC  9(09)V9(17) COMP-6
           VALUE  685435627.00727922454291274.
       77 FLD0602C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0603A                       PIC  9(09)V9(16) COMP-6
           VALUE  679265807.5584466770280300.
       77 FLD0603C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0604A                       PIC  9(08)V9(19) COMP-6
           VALUE  72862711.3591577502127449861.
       77 FLD0604C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0605A                       PIC  9(04)       COMP-6
           VALUE  1194.
       77 FLD0605C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0606A                       PIC  9(07)V9(23) COMP-6
           VALUE  7955557.56926823565144957228767.
       77 FLD0606C                       PIC S9(08)V9(04) COMP-3.

       77 FLD0607A                       PIC  9(10)V9(08) COMP-6
           VALUE  4950511846.00309279.
       77 FLD0607C                       PIC  9(05)       COMP-6.

       77 FLD0608A                       PIC  9(09)V9(03) COMP-6
           VALUE  328182518.441.
       77 FLD0608C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0609A                       PIC  9(08)V9(04) COMP-6
           VALUE  33948712.4475.
       77 FLD0609C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0610A                       PIC  9(06)V9(24) COMP-6
           VALUE  807988.537497822956190418608457.
       77 FLD0610C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0611A                       PIC  9(07)V9(22) COMP-3
           VALUE  7747853.4043620861382350994972.
       77 FLD0611C                       PIC  9(01)       COMP-6.

       77 FLD0612A                       PIC  9(10)V9(11) COMP-3
           VALUE  5644161799.14422944108.
       77 FLD0612C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0613A                       PIC  9(05)       COMP-6
           VALUE  15551.
       77 FLD0613C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0614A                       PIC  9(10)V9(09) COMP-3
           VALUE  5201647014.630440546.
       77 FLD0614C                       PIC  9(09)V9(13) COMP-6.

       77 FLD0615A                       PIC S9(03)       COMP-3
           VALUE +101.
       77 FLD0615C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0616A                       PIC  9(07)V9(22) COMP-3
           VALUE  7639230.3574527464782306651613.
       77 FLD0616C                       PIC  9(02)       COMP-6.

       77 FLD0617A                       PIC S9(01)       COMP-3
           VALUE -0.
       77 FLD0617C                       PIC  9(01)       COMP-6.

       77 FLD0618A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.817148549708982763206677191192284226.
       77 FLD0618C                       PIC  9(03)       COMP-6.

       77 FLD0619A                       PIC  9(06)V9(24) COMP-3
           VALUE  801850.998363624500875346257089.
       77 FLD0619C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0620A                       PIC  9(08)V9(19) COMP-6
           VALUE  71717267.3810957062023874186.
       77 FLD0620C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0621A                       PIC  9(04)V9(30) COMP-3
           VALUE  9035.013690395441443570234696380794.
       77 FLD0621C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0622A                       PIC  9(09)V9(13) COMP-3
           VALUE  592420192.5737704321761.
       77 FLD0622C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0623A                       PIC S9(03)       COMP-3
           VALUE +104.
       77 FLD0623C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0624A                       PIC S9(06)       COMP-3
           VALUE -162056.
       77 FLD0624C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0625A                       PIC  9(04)       COMP-6
           VALUE  1296.
       77 FLD0625C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0626A                       PIC  9(04)V9(29) COMP-3
           VALUE  8839.60373056715265072114107169909.
       77 FLD0626C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0627A                       PIC  9(04)       COMP-6
           VALUE  1093.
       77 FLD0627C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0628A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.943034041886028573387079632084351032.
       77 FLD0628C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0629A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.54391942612090904418664649710990.
       77 FLD0629C                       PIC  9(05)V9(28) COMP-3.

       77 FLD0630A                       PIC S9(09)V9(06) COMP-3
           VALUE +400669561.119235.
       77 FLD0630C                       PIC  9(09)V9(12) COMP-6.

       77 FLD0631A                       PIC  9(09)V9(15) COMP-3
           VALUE  644864894.904831453814608.
       77 FLD0631C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0632A                       PIC  9(08)V9(18) COMP-6
           VALUE  69998401.036213298009869276.
       77 FLD0632C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0633A                       PIC  9(08)V9(19) COMP-3
           VALUE  72186800.0789349095747127194.
       77 FLD0633C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0634A                       PIC S9(10)V9(06) COMP-3
           VALUE +4236607402.255205.
       77 FLD0634C                       PIC  9(07)V9(23) COMP-3.

       77 FLD0635A                       PIC S9(06)V9(01) COMP-3
           VALUE -190863.2.
       77 FLD0635C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0636A                       PIC S9(07)V9(01) COMP-3
           VALUE +2326055.8.
       77 FLD0636C                       PIC  9(05)       COMP-6.

       77 FLD0637A                       PIC  9(08)V9(19) COMP-3
           VALUE  73470187.3111827330475875896.
       77 FLD0637C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0638A                       PIC  9(07)V9(22) COMP-6
           VALUE  7752451.2041246673721417437263.
       77 FLD0638C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0639A                       PIC S9(09)V9(03) COMP-3
           VALUE +320313574.327.
       77 FLD0639C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0640A                       PIC  9(04)V9(29) COMP-3
           VALUE  8818.61493829378950692898797569796.
       77 FLD0640C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0641A                       PIC  9(07)V9(22) COMP-6
           VALUE  7672056.2697199168322725881807.
       77 FLD0641C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0642A                       PIC  9(08)V9(18) COMP-6
           VALUE  70806494.663622721041917884.
       77 FLD0642C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0643A                       PIC  9(07)V9(01) COMP-6
           VALUE  2194714.9.
       77 FLD0643C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0644A                       PIC  9(02)       COMP-6
           VALUE  07.
       77 FLD0644C                       PIC  9(03)V9(32) COMP-6.

       77 FLD0645A                       PIC  9(03)V9(31) COMP-3
           VALUE  913.1000502995376688630813077907077.
       77 FLD0645C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0646A                       PIC  9(07)V9(21) COMP-3
           VALUE  7520596.805608434909373727350.
       77 FLD0646C                       PIC  9(09)V9(13) COMP-6.

       77 FLD0647A                       PIC S9(02)       COMP-3
           VALUE -07.
       77 FLD0647C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0648A                       PIC S9(04)       COMP-3
           VALUE +1149.
       77 FLD0648C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0649A                       PIC  9(07)V9(23) COMP-3
           VALUE  7912687.10466688007798552462190.
       77 FLD0649C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0650A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.878734262172308433491707546636462211.
       77 FLD0650C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0651A                       PIC  9(08)V9(18) COMP-6
           VALUE  69993795.648145529231243244.
       77 FLD0651C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0652A                       PIC  9(05)V9(01) COMP-6
           VALUE  16676.6.
       77 FLD0652C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0653A                       PIC  9(09)V9(14) COMP-3
           VALUE  620233215.83922497168828.
       77 FLD0653C                       PIC  9(06)       COMP-6.

       77 FLD0654A                       PIC  9(09)V9(15) COMP-6
           VALUE  639337130.284049814932245.
       77 FLD0654C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0655A                       PIC  9(06)V9(25) COMP-6
           VALUE  818013.3890362937254536745967925.
       77 FLD0655C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0656A                       PIC S9(06)V9(01) COMP-3
           VALUE +200859.7.
       77 FLD0656C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0657A                       PIC  9(03)V9(32) COMP-6
           VALUE  936.17194619070143168926279031438753.
       77 FLD0657C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0658A                       PIC  9(08)V9(18) COMP-3
           VALUE  70069365.832955088357891781.
       77 FLD0658C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0659A                       PIC  9(04)V9(30) COMP-3
           VALUE  9044.337793801533464943531726021319.
       77 FLD0659C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0660A                       PIC  9(10)V9(09) COMP-3
           VALUE  5240012407.843260833.
       77 FLD0660C                       PIC S9(05)       COMP-3.

       77 FLD0661A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.5581569624071600621562083688331767.
       77 FLD0661C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0662A                       PIC S9(07)V9(01) COMP-3
           VALUE +2131985.0.
       77 FLD0662C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0663A                       PIC  9(05)       COMP-6
           VALUE  15788.
       77 FLD0663C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0664A                       PIC S9(05)       COMP-3
           VALUE +14371.
       77 FLD0664C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0665A                       PIC  9(07)V9(02) COMP-6
           VALUE  2455875.37.
       77 FLD0665C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0666A                       PIC  9(05)V9(27) COMP-3
           VALUE  86015.549175288641414738322055200.
       77 FLD0666C                       PIC  9(02)       COMP-6.

       77 FLD0667A                       PIC  9(02)V9(33) COMP-3
           VALUE  94.482499794694274619644147605868056.
       77 FLD0667C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0668A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.15331845029669999291854765033349.
       77 FLD0668C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0669A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.937328225295053441001869032334070652.
       77 FLD0669C                       PIC  9(10)V9(05) COMP-6.

       77 FLD0670A                       PIC  9(07)V9(02) COMP-6
           VALUE  2567113.54.
       77 FLD0670C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0671A                       PIC  9(09)V9(03) COMP-6
           VALUE  326622169.718.
       77 FLD0671C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0672A                       PIC  9(10)V9(07) COMP-6
           VALUE  4564917934.3294549.
       77 FLD0672C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0673A                       PIC  9(10)V9(06) COMP-6
           VALUE  4285002333.462958.
       77 FLD0673C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0674A                       PIC  9(10)V9(10) COMP-6
           VALUE  5491650640.0821929467.
       77 FLD0674C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0675A                       PIC  9(05)V9(27) COMP-6
           VALUE  84609.285471017914304070473008323.
       77 FLD0675C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0676A                       PIC  9(03)       COMP-6
           VALUE  096.
       77 FLD0676C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0677A                       PIC S9(07)V9(01) COMP-3
           VALUE +2248183.1.
       77 FLD0677C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0678A                       PIC S9(03)       COMP-3
           VALUE -092.
       77 FLD0678C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0679A                       PIC S9(03)       COMP-3
           VALUE -080.
       77 FLD0679C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0680A                       PIC S9(08)V9(02) COMP-3
           VALUE -28119381.66.
       77 FLD0680C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0681A                       PIC  9(08)V9(17) COMP-3
           VALUE  68244115.95644890304868113.
       77 FLD0681C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0682A                       PIC S9(10)V9(08) COMP-3
           VALUE -4949729784.45772315.
       77 FLD0682C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0683A                       PIC  9(05)V9(28) COMP-6
           VALUE  86894.3068817851549390240961656672.
       77 FLD0683C                       PIC  9(10)V9(12) COMP-3.

       77 FLD0684A                       PIC  9(10)V9(13) COMP-6
           VALUE  6059233373.6406744915115.
       77 FLD0684C                       PIC  9(09)V9(07) COMP-6.

       77 FLD0685A                       PIC S9(07)V9(02) COMP-3
           VALUE -2545714.99.
       77 FLD0685C                       PIC  9(07)V9(23) COMP-3.

       77 FLD0686A                       PIC  9(09)V9(14) COMP-3
           VALUE  621044693.11257093355749.
       77 FLD0686C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0687A                       PIC S9(09)V9(05) COMP-3
           VALUE -394005874.76898.
       77 FLD0687C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0688A                       PIC  9(03)V9(32) COMP-3
           VALUE  932.26844955554755145499257196206599.
       77 FLD0688C                       PIC  9(04)       COMP-6.

       77 FLD0689A                       PIC  9(10)V9(07) COMP-6
           VALUE  4559306991.4341932.
       77 FLD0689C                       PIC S9(08)V9(04) COMP-3.

       77 FLD0690A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.793660005922469879990899244148749858.
       77 FLD0690C                       PIC S9(08)V9(02) COMP-3.

       77 FLD0691A                       PIC  9(09)V9(07) COMP-6
           VALUE  439500550.5938089.
       77 FLD0691C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0692A                       PIC  9(09)V9(04) COMP-6
           VALUE  358382577.7464.
       77 FLD0692C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0693A                       PIC S9(07)V9(01) COMP-3
           VALUE +2127399.6.
       77 FLD0693C                       PIC S9(01)       COMP-3.

       77 FLD0694A                       PIC  9(09)V9(05) COMP-6
           VALUE  378019656.01658.
       77 FLD0694C                       PIC  9(01)       COMP-6.

       77 FLD0695A                       PIC S9(09)V9(04) COMP-3
           VALUE -354304867.1111.
       77 FLD0695C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0696A                       PIC  9(04)V9(30) COMP-6
           VALUE  9067.945209731629319094281527213752.
       77 FLD0696C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0697A                       PIC S9(09)V9(06) COMP-3
           VALUE +414586353.841170.
       77 FLD0697C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0698A                       PIC  9(08)V9(18) COMP-3
           VALUE  69447533.832122987362822641.
       77 FLD0698C                       PIC S9(03)       COMP-3.

       77 FLD0699A                       PIC  9(09)V9(13) COMP-6
           VALUE  597064952.5204202445749.
       77 FLD0699C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0700A                       PIC  9(06)V9(25) COMP-3
           VALUE  820234.3139012789885455845251271.
       77 FLD0700C                       PIC S9(01)       COMP-3.

       77 FLD0701A                       PIC  9(06)V9(24) COMP-6
           VALUE  809485.363390515577641792788199.
       77 FLD0701C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0702A                       PIC  9(04)V9(30) COMP-3
           VALUE  9021.848589518318695112952809722628.
       77 FLD0702C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0703A                       PIC S9(04)       COMP-3
           VALUE +1126.
       77 FLD0703C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0704A                       PIC  9(10)V9(07) COMP-6
           VALUE  4696322933.5995404.
       77 FLD0704C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0705A                       PIC  9(10)V9(10) COMP-6
           VALUE  5381864238.0664638569.
       77 FLD0705C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0706A                       PIC  9(07)V9(22) COMP-3
           VALUE  7815442.4104873465584120140192.
       77 FLD0706C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0707A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0707C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0708A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1225570140109555339336111501324921.
       77 FLD0708C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0709A                       PIC S9(04)       COMP-3
           VALUE +1124.
       77 FLD0709C                       PIC  9(09)V9(05) COMP-6.

       77 FLD0710A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.946833086486408515014545628218911588.
       77 FLD0710C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0711A                       PIC  9(09)V9(16) COMP-6
           VALUE  677754067.1912668512888444.
       77 FLD0711C                       PIC  9(02)       COMP-6.

       77 FLD0712A                       PIC  9(09)V9(14) COMP-3
           VALUE  610433230.32745544498567.
       77 FLD0712C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0713A                       PIC S9(08)V9(03) COMP-3
           VALUE -29280564.557.
       77 FLD0713C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0714A                       PIC  9(10)V9(07) COMP-6
           VALUE  4593980567.3719869.
       77 FLD0714C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0715A                       PIC  9(09)V9(06) COMP-6
           VALUE  406643755.503527.
       77 FLD0715C                       PIC  9(10)V9(10) COMP-6.

       77 FLD0716A                       PIC S9(08)V9(03) COMP-3
           VALUE -29497495.128.
       77 FLD0716C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0717A                       PIC  9(05)V9(28) COMP-6
           VALUE  86936.9843469434133709228262887336.
       77 FLD0717C                       PIC  9(07)V9(21) COMP-6.

       77 FLD0718A                       PIC  9(06)       COMP-6
           VALUE  158746.
       77 FLD0718C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0719A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0719C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0720A                       PIC  9(03)       COMP-6
           VALUE  087.
       77 FLD0720C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0721A                       PIC S9(09)V9(03) COMP-3
           VALUE +332294869.962.
       77 FLD0721C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0722A                       PIC S9(05)V9(01) COMP-3
           VALUE -17094.9.
       77 FLD0722C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0723A                       PIC  9(05)V9(28) COMP-3
           VALUE  87349.0901765646254872876852459739.
       77 FLD0723C                       PIC  9(02)       COMP-6.

       77 FLD0724A                       PIC  9(09)V9(03) COMP-6
           VALUE  317474559.928.
       77 FLD0724C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0725A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.1169879467740964074096154945436.
       77 FLD0725C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0726A                       PIC  9(05)       COMP-6
           VALUE  14771.
       77 FLD0726C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0727A                       PIC  9(10)V9(10) COMP-3
           VALUE  5412169008.2113094177.
       77 FLD0727C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0728A                       PIC  9(09)V9(07) COMP-6
           VALUE  439411444.5456123.
       77 FLD0728C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0729A                       PIC  9(02)V9(33) COMP-6
           VALUE  94.514768998125520127473464526701718.
       77 FLD0729C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0730A                       PIC  9(06)V9(25) COMP-3
           VALUE  822685.8594490329412707296796725.
       77 FLD0730C                       PIC  9(09)V9(14) COMP-3.

       77 FLD0731A                       PIC  9(10)V9(12) COMP-3
           VALUE  5808279049.356201984011.
       77 FLD0731C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0732A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.5080332184045710519626481982413.
       77 FLD0732C                       PIC S9(04)       COMP-3.

       77 FLD0733A                       PIC  9(09)V9(03) COMP-6
           VALUE  328019305.824.
       77 FLD0733C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0734A                       PIC S9(06)       COMP-3
           VALUE -164821.
       77 FLD0734C                       PIC  9(02)       COMP-6.

       77 FLD0735A                       PIC S9(06)V9(01) COMP-3
           VALUE -190229.8.
       77 FLD0735C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0736A                       PIC  9(10)V9(09) COMP-3
           VALUE  5128678158.202983894.
       77 FLD0736C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0737A                       PIC S9(07)V9(02) COMP-3
           VALUE -2601084.10.
       77 FLD0737C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0738A                       PIC  9(10)V9(09) COMP-6
           VALUE  5071467647.954436275.
       77 FLD0738C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0739A                       PIC S9(09)V9(03) COMP-3
           VALUE +324797211.447.
       77 FLD0739C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0740A                       PIC S9(08)V9(03) COMP-3
           VALUE +30394739.303.
       77 FLD0740C                       PIC  9(05)V9(28) COMP-3.

       77 FLD0741A                       PIC S9(09)V9(03) COMP-3
           VALUE +322386723.831.
       77 FLD0741C                       PIC S9(09)V9(03) COMP-3.

       77 FLD0742A                       PIC  9(09)V9(06) COMP-6
           VALUE  419367234.713135.
       77 FLD0742C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0743A                       PIC  9(05)V9(27) COMP-6
           VALUE  85864.867305029812794003873932524.
       77 FLD0743C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0744A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0744C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0745A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.759709501186564217789509712019935250.
       77 FLD0745C                       PIC  9(05)       COMP-6.

       77 FLD0746A                       PIC  9(10)V9(10) COMP-3
           VALUE  5435731573.3552813430.
       77 FLD0746C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0747A                       PIC  9(10)V9(11) COMP-6
           VALUE  5681676571.07930934579.
       77 FLD0747C                       PIC  9(03)V9(31) COMP-6.

       77 FLD0748A                       PIC  9(03)       COMP-6
           VALUE  086.
       77 FLD0748C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0749A                       PIC S9(10)V9(07) COMP-3
           VALUE -4609096560.3942379.
       77 FLD0749C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0750A                       PIC  9(07)V9(22) COMP-6
           VALUE  7666736.3171436386792834127845.
       77 FLD0750C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0751A                       PIC  9(02)       COMP-6
           VALUE  06.
       77 FLD0751C                       PIC S9(05)       COMP-3.

       77 FLD0752A                       PIC  9(02)       COMP-6
           VALUE  07.
       77 FLD0752C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0753A                       PIC  9(08)V9(19) COMP-3
           VALUE  73379118.3872512742247806727.
       77 FLD0753C                       PIC S9(01)       COMP-3.

       77 FLD0754A                       PIC S9(09)V9(03) COMP-3
           VALUE +322061792.108.
       77 FLD0754C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0755A                       PIC  9(06)V9(25) COMP-6
           VALUE  835592.8333445592492978448717622.
       77 FLD0755C                       PIC  9(10)V9(10) COMP-3.

       77 FLD0756A                       PIC  9(09)V9(04) COMP-6
           VALUE  366295057.8421.
       77 FLD0756C                       PIC S9(05)       COMP-3.

       77 FLD0757A                       PIC  9(08)V9(19) COMP-3
           VALUE  71466976.1113856494283425035.
       77 FLD0757C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0758A                       PIC  9(07)V9(01) COMP-6
           VALUE  2293699.9.
       77 FLD0758C                       PIC S9(06)       COMP-3.

       77 FLD0759A                       PIC  9(03)V9(32) COMP-3
           VALUE  931.38963166127219928114300273591652.
       77 FLD0759C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0760A                       PIC  9(06)V9(01) COMP-6
           VALUE  188511.3.
       77 FLD0760C                       PIC  9(04)V9(30) COMP-3.

       77 FLD0761A                       PIC  9(09)V9(17) COMP-3
           VALUE  690006529.44346418937726639.
       77 FLD0761C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0762A                       PIC  9(09)V9(16) COMP-3
           VALUE  671435372.9957326377686399.
       77 FLD0762C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0763A                       PIC  9(08)V9(19) COMP-3
           VALUE  71468145.3175585401638159055.
       77 FLD0763C                       PIC  9(06)V9(24) COMP-6.

       77 FLD0764A                       PIC  9(10)V9(11) COMP-3
           VALUE  5535007698.50315821329.
       77 FLD0764C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0765A                       PIC  9(04)V9(29) COMP-6
           VALUE  8855.80582773889624093044403707608.
       77 FLD0765C                       PIC S9(04)       COMP-3.

       77 FLD0766A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0766C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0767A                       PIC S9(10)V9(08) COMP-3
           VALUE -4848285740.27346248.
       77 FLD0767C                       PIC S9(01)       COMP-3.

       77 FLD0768A                       PIC  9(09)V9(17) COMP-3
           VALUE  684230789.92735519854306858.
       77 FLD0768C                       PIC S9(02)       COMP-3.

       77 FLD0769A                       PIC  9(07)V9(02) COMP-6
           VALUE  2565731.27.
       77 FLD0769C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0770A                       PIC  9(09)V9(12) COMP-3
           VALUE  574214303.174467532997.
       77 FLD0770C                       PIC  9(10)V9(13) COMP-6.

       77 FLD0771A                       PIC  9(08)V9(18) COMP-6
           VALUE  69721614.519732855175249142.
       77 FLD0771C                       PIC  9(09)V9(17) COMP-3.

       77 FLD0772A                       PIC  9(10)V9(08) COMP-6
           VALUE  4868623585.10471993.
       77 FLD0772C                       PIC  9(10)V9(05) COMP-6.

       77 FLD0773A                       PIC S9(07)V9(01) COMP-3
           VALUE +2339835.9.
       77 FLD0773C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0774A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0774C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0775A                       PIC  9(09)V9(06) COMP-6
           VALUE  418947899.183504.
       77 FLD0775C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0776A                       PIC  9(09)V9(06) COMP-6
           VALUE  418950765.017868.
       77 FLD0776C                       PIC  9(05)V9(27) COMP-6.

       77 FLD0777A                       PIC S9(08)V9(03) COMP-3
           VALUE +31438250.184.
       77 FLD0777C                       PIC  9(10)V9(11) COMP-3.

       77 FLD0778A                       PIC S9(06)V9(01) COMP-3
           VALUE -192739.4.
       77 FLD0778C                       PIC  9(03)V9(31) COMP-6.

       77 FLD0779A                       PIC  9(04)V9(30) COMP-3
           VALUE  9029.333248069044692840634525055065.
       77 FLD0779C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0780A                       PIC  9(09)V9(03) COMP-6
           VALUE  318241207.749.
       77 FLD0780C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0781A                       PIC  9(10)V9(08) COMP-6
           VALUE  4967153543.73054196.
       77 FLD0781C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0782A                       PIC  9(05)       COMP-6
           VALUE  13793.
       77 FLD0782C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0783A                       PIC  9(04)V9(29) COMP-3
           VALUE  8813.39219378433402773964644438819.
       77 FLD0783C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0784A                       PIC  9(09)V9(15) COMP-3
           VALUE  641964802.793786426526878.
       77 FLD0784C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0785A                       PIC  9(08)V9(17) COMP-3
           VALUE  68097654.34600172362422654.
       77 FLD0785C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0786A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.820249933224565186407062356011010706.
       77 FLD0786C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0787A                       PIC  9(10)V9(11) COMP-6
           VALUE  5592847098.07636559730.
       77 FLD0787C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0788A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6557531637097668841818176588276401.
       77 FLD0788C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0789A                       PIC S9(05)V9(01) COMP-3
           VALUE -17101.7.
       77 FLD0789C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0790A                       PIC  9(07)V9(02) COMP-6
           VALUE  2384369.54.
       77 FLD0790C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0791A                       PIC  9(03)       COMP-6
           VALUE  088.
       77 FLD0791C                       PIC  9(08)V9(20) COMP-6.

       77 FLD0792A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5230059106088935649836457741912454.
       77 FLD0792C                       PIC  9(09)V9(05) COMP-6.

       77 FLD0793A                       PIC  9(06)V9(01) COMP-6
           VALUE  199221.9.
       77 FLD0793C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0794A                       PIC S9(08)V9(04) COMP-3
           VALUE +33437009.5807.
       77 FLD0794C                       PIC S9(01)       COMP-3.

       77 FLD0795A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0795C                       PIC S9(08)V9(04) COMP-3.

       77 FLD0796A                       PIC  9(07)V9(21) COMP-6
           VALUE  7565685.006144580171394409262.
       77 FLD0796C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0797A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0797C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0798A                       PIC S9(09)V9(03) COMP-3
           VALUE +332243375.906.
       77 FLD0798C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0799A                       PIC  9(09)V9(17) COMP-3
           VALUE  690866271.33683375934225523.
       77 FLD0799C                       PIC  9(09)V9(11) COMP-3.

       77 FLD0800A                       PIC  9(08)V9(18) COMP-3
           VALUE  70036112.416705975647346349.
       77 FLD0800C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0801A                       PIC S9(09)V9(07) COMP-3
           VALUE +443093279.8052367.
       77 FLD0801C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0802A                       PIC S9(07)V9(02) COMP-3
           VALUE +2449505.23.
       77 FLD0802C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0803A                       PIC S9(05)V9(01) COMP-3
           VALUE -17467.0.
       77 FLD0803C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0804A                       PIC  9(07)V9(02) COMP-6
           VALUE  2599541.84.
       77 FLD0804C                       PIC  9(01)       COMP-6.

       77 FLD0805A                       PIC  9(07)V9(01) COMP-6
           VALUE  2358341.0.
       77 FLD0805C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0806A                       PIC  9(10)V9(11) COMP-3
           VALUE  5703927562.80738821850.
       77 FLD0806C                       PIC  9(09)V9(07) COMP-6.

       77 FLD0807A                       PIC  9(09)V9(17) COMP-6
           VALUE  689326682.16034242991696601.
       77 FLD0807C                       PIC S9(03)       COMP-3.

       77 FLD0808A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0808C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0809A                       PIC  9(05)V9(28) COMP-6
           VALUE  86873.4196996681751201663246320094.
       77 FLD0809C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0810A                       PIC S9(04)       COMP-3
           VALUE +1129.
       77 FLD0810C                       PIC S9(07)V9(01) COMP-3.

       77 FLD0811A                       PIC  9(09)V9(15) COMP-6
           VALUE  648943185.643321429623142.
       77 FLD0811C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0812A                       PIC S9(08)V9(03) COMP-3
           VALUE -29270905.795.
       77 FLD0812C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0813A                       PIC  9(10)V9(08) COMP-6
           VALUE  4881724662.84412076.
       77 FLD0813C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0814A                       PIC S9(02)       COMP-3
           VALUE -07.
       77 FLD0814C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0815A                       PIC  9(06)V9(25) COMP-6
           VALUE  838676.0467962863785373883729334.
       77 FLD0815C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0816A                       PIC  9(08)V9(18) COMP-6
           VALUE  70774184.783492177786001775.
       77 FLD0816C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0817A                       PIC  9(10)V9(09) COMP-6
           VALUE  5163345142.860672476.
       77 FLD0817C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0818A                       PIC  9(08)V9(03) COMP-6
           VALUE  30586164.664.
       77 FLD0818C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0819A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.844708607145921108738662042014766484.
       77 FLD0819C                       PIC S9(03)       COMP-3.

       77 FLD0820A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0820C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0821A                       PIC  9(09)V9(11) COMP-3
           VALUE  550576956.44832715942.
       77 FLD0821C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0822A                       PIC S9(05)       COMP-3
           VALUE +14037.
       77 FLD0822C                       PIC  9(04)       COMP-6.

       77 FLD0823A                       PIC  9(08)V9(20) COMP-6
           VALUE  73880168.20028298070610617287.
       77 FLD0823C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0824A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351534260.3280557920.
       77 FLD0824C                       PIC  9(09)V9(14) COMP-6.

       77 FLD0825A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0825C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0826A                       PIC S9(06)V9(01) COMP-3
           VALUE -190786.5.
       77 FLD0826C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0827A                       PIC  9(07)V9(22) COMP-6
           VALUE  7763847.1978375678261841130733.
       77 FLD0827C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0828A                       PIC S9(10)V9(07) COMP-3
           VALUE -4530916009.2405642.
       77 FLD0828C                       PIC S9(05)       COMP-3.

       77 FLD0829A                       PIC  9(09)V9(17) COMP-3
           VALUE  691486534.21926165041355716.
       77 FLD0829C                       PIC  9(07)V9(23) COMP-6.

       77 FLD0830A                       PIC  9(04)V9(30) COMP-6
           VALUE  8965.722935126121395654763546190224.
       77 FLD0830C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0831A                       PIC  9(04)V9(30) COMP-6
           VALUE  8956.555580996397036841472072410397.
       77 FLD0831C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0832A                       PIC  9(04)       COMP-6
           VALUE  1185.
       77 FLD0832C                       PIC  9(09)V9(06) COMP-6.

       77 FLD0833A                       PIC  9(06)V9(24) COMP-3
           VALUE  804859.798300300854911881742737.
       77 FLD0833C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0834A                       PIC  9(09)V9(04) COMP-6
           VALUE  349209744.2881.
       77 FLD0834C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0835A                       PIC  9(08)V9(19) COMP-3
           VALUE  71178359.2779248075466114187.
       77 FLD0835C                       PIC  9(07)V9(22) COMP-6.

       77 FLD0836A                       PIC  9(09)V9(07) COMP-6
           VALUE  446141389.3412962.
       77 FLD0836C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0837A                       PIC  9(04)V9(30) COMP-6
           VALUE  8982.008694278872384941792006429750.
       77 FLD0837C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0838A                       PIC  9(10)V9(12) COMP-6
           VALUE  5873188106.793812979233.
       77 FLD0838C                       PIC  9(07)V9(22) COMP-3.

       77 FLD0839A                       PIC  9(08)V9(19) COMP-3
           VALUE  71324671.8649382605015318858.
       77 FLD0839C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0840A                       PIC S9(03)       COMP-3
           VALUE -094.
       77 FLD0840C                       PIC  9(04)       COMP-6.

       77 FLD0841A                       PIC  9(08)V9(18) COMP-3
           VALUE  70179428.042996372383299785.
       77 FLD0841C                       PIC  9(06)V9(24) COMP-3.

       77 FLD0842A                       PIC  9(09)V9(16) COMP-3
           VALUE  661649948.5739699704112126.
       77 FLD0842C                       PIC  9(02)V9(33) COMP-6.

       77 FLD0843A                       PIC  9(06)V9(25) COMP-6
           VALUE  818928.0761087860405211813485948.
       77 FLD0843C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0844A                       PIC  9(07)V9(22) COMP-6
           VALUE  7754458.9142564990247308287507.
       77 FLD0844C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0845A                       PIC  9(10)V9(12) COMP-3
           VALUE  5903835745.060688200425.
       77 FLD0845C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0846A                       PIC  9(08)V9(03) COMP-6
           VALUE  29802576.878.
       77 FLD0846C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0847A                       PIC  9(05)V9(26) COMP-3
           VALUE  84041.42690564196938041163775778.
       77 FLD0847C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0848A                       PIC  9(07)V9(23) COMP-3
           VALUE  7949747.62786875510656159349309.
       77 FLD0848C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0849A                       PIC  9(09)V9(13) COMP-6
           VALUE  595598045.8961575019216.
       77 FLD0849C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0850A                       PIC  9(09)V9(06) COMP-6
           VALUE  418716850.605351.
       77 FLD0850C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0851A                       PIC S9(03)       COMP-3
           VALUE -082.
       77 FLD0851C                       PIC  9(07)V9(01) COMP-6.

       77 FLD0852A                       PIC  9(10)V9(11) COMP-3
           VALUE  5643399909.75319838462.
       77 FLD0852C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0853A                       PIC  9(06)V9(24) COMP-3
           VALUE  801200.590406665469345171004533.
       77 FLD0853C                       PIC S9(01)       COMP-3.

       77 FLD0854A                       PIC  9(01)V9(35) COMP-3
           VALUE  9.72377885073923198255840816273121163.
       77 FLD0854C                       PIC  9(01)       COMP-6.

       77 FLD0855A                       PIC  9(08)V9(19) COMP-6
           VALUE  73562901.0042854747375429269.
       77 FLD0855C                       PIC  9(05)V9(01) COMP-6.

       77 FLD0856A                       PIC  9(09)V9(04) COMP-6
           VALUE  356144099.6704.
       77 FLD0856C                       PIC S9(05)       COMP-3.

       77 FLD0857A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.3286634102202334872799838194623.
       77 FLD0857C                       PIC S9(02)       COMP-3.

       77 FLD0858A                       PIC  9(10)V9(11) COMP-6
           VALUE  5560594458.08950059131.
       77 FLD0858C                       PIC  9(08)V9(03) COMP-6.

       77 FLD0859A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0859C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0860A                       PIC  9(07)V9(02) COMP-6
           VALUE  2576407.94.
       77 FLD0860C                       PIC  9(08)V9(04) COMP-6.

       77 FLD0861A                       PIC S9(10)V9(07) COMP-3
           VALUE -4605509961.3842453.
       77 FLD0861C                       PIC  9(04)       COMP-6.

       77 FLD0862A                       PIC  9(07)V9(22) COMP-6
           VALUE  7652464.2157409383802502134130.
       77 FLD0862C                       PIC  9(09)V9(12) COMP-6.

       77 FLD0863A                       PIC  9(05)V9(27) COMP-3
           VALUE  85070.091557533766835064170663827.
       77 FLD0863C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0864A                       PIC  9(10)V9(11) COMP-3
           VALUE  5711242885.34377577697.
       77 FLD0864C                       PIC  9(04)V9(29) COMP-6.

       77 FLD0865A                       PIC  9(06)V9(24) COMP-6
           VALUE  807409.725415061507725056344497.
       77 FLD0865C                       PIC S9(03)       COMP-3.

       77 FLD0866A                       PIC  9(09)V9(05) COMP-6
           VALUE  376060050.51851.
       77 FLD0866C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0867A                       PIC S9(05)       COMP-3
           VALUE +14084.
       77 FLD0867C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0868A                       PIC  9(07)V9(22) COMP-3
           VALUE  7648419.8420910554094831468319.
       77 FLD0868C                       PIC  9(10)V9(12) COMP-3.

       77 FLD0869A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0869C                       PIC  9(08)V9(17) COMP-3.

       77 FLD0870A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0870C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0871A                       PIC  9(09)V9(14) COMP-6
           VALUE  609764683.38536315982878.
       77 FLD0871C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0872A                       PIC  9(04)V9(29) COMP-3
           VALUE  8816.31176263962479389135751262074.
       77 FLD0872C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0873A                       PIC  9(07)V9(21) COMP-6
           VALUE  7561255.223942077163812314211.
       77 FLD0873C                       PIC  9(05)       COMP-6.

       77 FLD0874A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0874C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0875A                       PIC S9(06)V9(01) COMP-3
           VALUE +204126.0.
       77 FLD0875C                       PIC  9(02)       COMP-6.

       77 FLD0876A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0876C                       PIC  9(07)V9(23) COMP-3.

       77 FLD0877A                       PIC  9(08)V9(18) COMP-6
           VALUE  69924605.886404200827399790.
       77 FLD0877C                       PIC  9(09)V9(15) COMP-3.

       77 FLD0878A                       PIC  9(07)V9(22) COMP-3
           VALUE  7831260.9220719830993573395971.
       77 FLD0878C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0879A                       PIC  9(07)V9(02) COMP-6
           VALUE  2371533.81.
       77 FLD0879C                       PIC  9(05)V9(27) COMP-3.

       77 FLD0880A                       PIC S9(10)V9(06) COMP-3
           VALUE +4237732309.742536.
       77 FLD0880C                       PIC  9(05)V9(26) COMP-6.

       77 FLD0881A                       PIC  9(10)V9(11) COMP-6
           VALUE  5571129514.90407404264.
       77 FLD0881C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0882A                       PIC  9(10)V9(12) COMP-6
           VALUE  5888713345.878072713546.
       77 FLD0882C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0883A                       PIC  9(09)V9(16) COMP-3
           VALUE  672192258.1526228457349247.
       77 FLD0883C                       PIC  9(07)V9(21) COMP-6.

       77 FLD0884A                       PIC  9(10)V9(08) COMP-6
           VALUE  4954020911.85092596.
       77 FLD0884C                       PIC  9(07)V9(21) COMP-3.

       77 FLD0885A                       PIC S9(05)       COMP-3
           VALUE +13360.
       77 FLD0885C                       PIC S9(05)       COMP-3.

       77 FLD0886A                       PIC S9(09)V9(05) COMP-3
           VALUE -374529584.88504.
       77 FLD0886C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0887A                       PIC S9(07)V9(01) COMP-3
           VALUE +2114795.5.
       77 FLD0887C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0888A                       PIC  9(08)V9(19) COMP-6
           VALUE  73580519.1914812417586233550.
       77 FLD0888C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0889A                       PIC S9(05)       COMP-3
           VALUE -15225.
       77 FLD0889C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0890A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0890C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0891A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7956124985634538404610793804749846.
       77 FLD0891C                       PIC  9(08)V9(19) COMP-6.

       77 FLD0892A                       PIC  9(10)V9(09) COMP-6
           VALUE  5079027644.377075434.
       77 FLD0892C                       PIC  9(03)       COMP-6.

       77 FLD0893A                       PIC  9(10)V9(12) COMP-3
           VALUE  5900775083.003402254888.
       77 FLD0893C                       PIC  9(02)       COMP-6.

       77 FLD0894A                       PIC  9(06)V9(25) COMP-6
           VALUE  819872.1409522375935807758651208.
       77 FLD0894C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0895A                       PIC  9(10)V9(09) COMP-6
           VALUE  5099949658.575000377.
       77 FLD0895C                       PIC  9(08)V9(02) COMP-6.

       77 FLD0896A                       PIC  9(10)V9(07) COMP-6
           VALUE  4576511370.6787369.
       77 FLD0896C                       PIC S9(01)       COMP-3.

       77 FLD0897A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.997543976245016894566219889384228736.
       77 FLD0897C                       PIC S9(09)V9(07) COMP-3.

       77 FLD0898A                       PIC  9(09)V9(05) COMP-6
           VALUE  378033726.09171.
       77 FLD0898C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0899A                       PIC  9(08)V9(20) COMP-6
           VALUE  74918436.40783237834313013081.
       77 FLD0899C                       PIC  9(09)V9(07) COMP-6.

       77 FLD0900A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.41329164379282712360463847289793.
       77 FLD0900C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0901A                       PIC  9(10)V9(07) COMP-6
           VALUE  4563598931.5070740.
       77 FLD0901C                       PIC  9(01)V9(36) COMP-6.

       77 FLD0902A                       PIC  9(05)V9(28) COMP-3
           VALUE  87405.6741908566081633580324705690.
       77 FLD0902C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0903A                       PIC  9(08)V9(02) COMP-6
           VALUE  28616952.10.
       77 FLD0903C                       PIC S9(02)       COMP-3.

       77 FLD0904A                       PIC S9(04)       COMP-3
           VALUE +1137.
       77 FLD0904C                       PIC S9(01)       COMP-3.

       77 FLD0905A                       PIC  9(09)V9(04) COMP-6
           VALUE  357938124.4724.
       77 FLD0905C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0906A                       PIC  9(09)V9(16) COMP-6
           VALUE  669388906.6218295935684068.
       77 FLD0906C                       PIC  9(01)       COMP-6.

       77 FLD0907A                       PIC S9(09)V9(05) COMP-3
           VALUE -390800584.69506.
       77 FLD0907C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0908A                       PIC S9(10)V9(06) COMP-3
           VALUE +4306350776.286586.
       77 FLD0908C                       PIC  9(03)V9(31) COMP-3.

       77 FLD0909A                       PIC  9(08)V9(03) COMP-6
           VALUE  30663800.453.
       77 FLD0909C                       PIC  9(01)       COMP-6.

       77 FLD0910A                       PIC S9(06)V9(01) COMP-3
           VALUE -193158.9.
       77 FLD0910C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0911A                       PIC S9(10)V9(07) COMP-3
           VALUE -4611964452.0728980.
       77 FLD0911C                       PIC  9(08)V9(20) COMP-3.

       77 FLD0912A                       PIC  9(10)V9(09) COMP-3
           VALUE  5000191930.396378214.
       77 FLD0912C                       PIC  9(01)       COMP-6.

       77 FLD0913A                       PIC S9(04)       COMP-3
           VALUE +1246.
       77 FLD0913C                       PIC  9(03)       COMP-6.

       77 FLD0914A                       PIC  9(03)V9(31) COMP-6
           VALUE  917.2012666333545505281676923914346.
       77 FLD0914C                       PIC  9(01)V9(36) COMP-3.

       77 FLD0915A                       PIC  9(08)V9(20) COMP-6
           VALUE  74750906.49492384109464637731.
       77 FLD0915C                       PIC S9(04)       COMP-3.

       77 FLD0916A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0916C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0917A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0917C                       PIC  9(04)       COMP-6.

       77 FLD0918A                       PIC  9(04)       COMP-6
           VALUE  1059.
       77 FLD0918C                       PIC  9(10)V9(11) COMP-6.

       77 FLD0919A                       PIC S9(02)       COMP-3
           VALUE -06.
       77 FLD0919C                       PIC S9(01)       COMP-3.

       77 FLD0920A                       PIC S9(05)V9(01) COMP-3
           VALUE -17474.9.
       77 FLD0920C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0921A                       PIC  9(10)V9(10) COMP-6
           VALUE  5463494999.0456427304.
       77 FLD0921C                       PIC S9(01)       COMP-3.

       77 FLD0922A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0922C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0923A                       PIC  9(06)       COMP-6
           VALUE  159582.
       77 FLD0923C                       PIC S9(04)       COMP-3.

       77 FLD0924A                       PIC  9(10)V9(11) COMP-6
           VALUE  5650505738.70210182114.
       77 FLD0924C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0925A                       PIC S9(04)       COMP-3
           VALUE +1236.
       77 FLD0925C                       PIC S9(01)       COMP-3.

       77 FLD0926A                       PIC  9(08)V9(18) COMP-6
           VALUE  69535643.175280814620720093.
       77 FLD0926C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0927A                       PIC  9(06)V9(24) COMP-3
           VALUE  800954.558131814597921049880824.
       77 FLD0927C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0928A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0928C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0929A                       PIC  9(05)V9(28) COMP-3
           VALUE  87174.0739403786824013309342262800.
       77 FLD0929C                       PIC  9(08)V9(19) COMP-3.

       77 FLD0930A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.911281003002671008417223674769047647.
       77 FLD0930C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0931A                       PIC  9(09)V9(12) COMP-3
           VALUE  573747057.720371378408.
       77 FLD0931C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0932A                       PIC  9(10)V9(09) COMP-6
           VALUE  5079506475.355934913.
       77 FLD0932C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0933A                       PIC  9(07)V9(22) COMP-6
           VALUE  7776883.1704294028028812135744.
       77 FLD0933C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0934A                       PIC  9(05)V9(01) COMP-6
           VALUE  16899.6.
       77 FLD0934C                       PIC  9(07)V9(02) COMP-6.

       77 FLD0935A                       PIC  9(05)V9(01) COMP-6
           VALUE  16691.2.
       77 FLD0935C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0936A                       PIC  9(08)V9(03) COMP-6
           VALUE  29560937.131.
       77 FLD0936C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0937A                       PIC  9(02)V9(33) COMP-3
           VALUE  94.462893191714936147462822191300801.
       77 FLD0937C                       PIC  9(01)       COMP-6.

       77 FLD0938A                       PIC  9(09)V9(12) COMP-6
           VALUE  578242437.999430092254.
       77 FLD0938C                       PIC  9(08)V9(18) COMP-6.

       77 FLD0939A                       PIC  9(10)V9(13) COMP-6
           VALUE  6084884727.3780637401330.
       77 FLD0939C                       PIC S9(01)       COMP-3.

       77 FLD0940A                       PIC  9(09)V9(12) COMP-6
           VALUE  577997061.609985873786.
       77 FLD0940C                       PIC  9(10)V9(08) COMP-6.

       77 FLD0941A                       PIC  9(09)V9(16) COMP-3
           VALUE  670449367.9367865555107641.
       77 FLD0941C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0942A                       PIC  9(10)V9(10) COMP-3
           VALUE  5309347867.8071082121.
       77 FLD0942C                       PIC  9(03)V9(32) COMP-3.

       77 FLD0943A                       PIC S9(09)V9(03) COMP-3
           VALUE +323766798.919.
       77 FLD0943C                       PIC S9(06)V9(01) COMP-3.

       77 FLD0944A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7363239628727824559462078468641266.
       77 FLD0944C                       PIC S9(07)V9(02) COMP-3.

       77 FLD0945A                       PIC  9(10)V9(10) COMP-3
           VALUE  5427766423.1255295934.
       77 FLD0945C                       PIC S9(10)V9(06) COMP-3.

       77 FLD0946A                       PIC S9(07)V9(02) COMP-3
           VALUE -2603132.30.
       77 FLD0946C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0947A                       PIC  9(05)V9(27) COMP-6
           VALUE  85846.989065825540787812997223227.
       77 FLD0947C                       PIC  9(09)V9(16) COMP-3.

       77 FLD0948A                       PIC  9(04)       COMP-6
           VALUE  1058.
       77 FLD0948C                       PIC  9(07)V9(21) COMP-6.

       77 FLD0949A                       PIC S9(10)V9(06) COMP-3
           VALUE +4307044196.647341.
       77 FLD0949C                       PIC  9(10)V9(07) COMP-6.

       77 FLD0950A                       PIC  9(09)V9(14) COMP-3
           VALUE  614898523.03850200954116.
       77 FLD0950C                       PIC  9(04)V9(30) COMP-6.

       77 FLD0951A                       PIC S9(08)V9(03) COMP-3
           VALUE +31116955.475.
       77 FLD0951C                       PIC  9(08)V9(20) COMP-6.

       77 FLD0952A                       PIC  9(09)V9(03) COMP-6
           VALUE  315844571.317.
       77 FLD0952C                       PIC  9(02)       COMP-6.

       77 FLD0953A                       PIC  9(06)       COMP-6
           VALUE  166635.
       77 FLD0953C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0954A                       PIC  9(10)V9(11) COMP-6
           VALUE  5577123049.60128579800.
       77 FLD0954C                       PIC  9(02)V9(34) COMP-3.

       77 FLD0955A                       PIC S9(08)V9(02) COMP-3
           VALUE -27357789.23.
       77 FLD0955C                       PIC  9(06)V9(25) COMP-3.

       77 FLD0956A                       PIC S9(08)V9(02) COMP-3
           VALUE -27355040.84.
       77 FLD0956C                       PIC  9(08)V9(18) COMP-3.

       77 FLD0957A                       PIC  9(09)V9(15) COMP-6
           VALUE  637627083.330792543414133.
       77 FLD0957C                       PIC S9(04)       COMP-3.

       77 FLD0958A                       PIC S9(08)V9(03) COMP-3
           VALUE -29370744.150.
       77 FLD0958C                       PIC  9(10)V9(06) COMP-6.

       77 FLD0959A                       PIC  9(06)V9(25) COMP-6
           VALUE  827211.6833605048791255853757320.
       77 FLD0959C                       PIC S9(01)       COMP-3.

       77 FLD0960A                       PIC  9(10)V9(11) COMP-6
           VALUE  5559976801.18206716315.
       77 FLD0960C                       PIC S9(01)       COMP-3.

       77 FLD0961A                       PIC  9(08)V9(19) COMP-6
           VALUE  72708740.7191407630868695832.
       77 FLD0961C                       PIC S9(04)       COMP-3.

       77 FLD0962A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8081984946274620718043024680810049.
       77 FLD0962C                       PIC  9(08)V9(17) COMP-3.

       77 FLD0963A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.803573230667260718362854277074802666.
       77 FLD0963C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0964A                       PIC  9(09)V9(15) COMP-6
           VALUE  639504907.969730918004813.
       77 FLD0964C                       PIC  9(09)V9(13) COMP-6.

       77 FLD0965A                       PIC  9(05)       COMP-6
           VALUE  13581.
       77 FLD0965C                       PIC  9(01)       COMP-6.

       77 FLD0966A                       PIC  9(06)V9(01) COMP-6
           VALUE  189200.6.
       77 FLD0966C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0967A                       PIC  9(02)       COMP-6
           VALUE  06.
       77 FLD0967C                       PIC  9(09)V9(04) COMP-6.

       77 FLD0968A                       PIC  9(09)V9(15) COMP-6
           VALUE  649996663.320669743058033.
       77 FLD0968C                       PIC S9(04)       COMP-3.

       77 FLD0969A                       PIC S9(05)       COMP-3
           VALUE -15366.
       77 FLD0969C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0970A                       PIC  9(09)V9(14) COMP-3
           VALUE  631417540.20798013247173.
       77 FLD0970C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0971A                       PIC  9(07)V9(01) COMP-6
           VALUE  2161446.9.
       77 FLD0971C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0972A                       PIC  9(09)V9(15) COMP-6
           VALUE  647710182.878484586055378.
       77 FLD0972C                       PIC  9(05)       COMP-6.

       77 FLD0973A                       PIC  9(05)       COMP-6
           VALUE  13817.
       77 FLD0973C                       PIC  9(06)V9(25) COMP-6.

       77 FLD0974A                       PIC  9(04)       COMP-6
           VALUE  1180.
       77 FLD0974C                       PIC S9(03)       COMP-3.

       77 FLD0975A                       PIC S9(02)       COMP-3
           VALUE -06.
       77 FLD0975C                       PIC  9(09)V9(03) COMP-6.

       77 FLD0976A                       PIC S9(07)V9(01) COMP-3
           VALUE +2206144.7.
       77 FLD0976C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0977A                       PIC  9(09)V9(03) COMP-6
           VALUE  327431372.704.
       77 FLD0977C                       PIC S9(09)V9(05) COMP-3.

       77 FLD0978A                       PIC  9(09)V9(16) COMP-6
           VALUE  675062190.8116747338368668.
       77 FLD0978C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0979A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.33169671466619643496187563869170.
       77 FLD0979C                       PIC  9(09)V9(05) COMP-6.

       77 FLD0980A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.82234581280043794748735308530740.
       77 FLD0980C                       PIC  9(09)V9(15) COMP-6.

       77 FLD0981A                       PIC  9(06)V9(01) COMP-6
           VALUE  195132.7.
       77 FLD0981C                       PIC S9(09)V9(04) COMP-3.

       77 FLD0982A                       PIC  9(06)V9(25) COMP-6
           VALUE  816610.1728260642955703474399342.
       77 FLD0982C                       PIC S9(08)V9(03) COMP-3.

       77 FLD0983A                       PIC  9(10)V9(09) COMP-3
           VALUE  5114754992.436914005.
       77 FLD0983C                       PIC  9(02)V9(34) COMP-6.

       77 FLD0984A                       PIC  9(09)V9(15) COMP-3
           VALUE  632949921.330981046807551.
       77 FLD0984C                       PIC  9(10)V9(09) COMP-6.

       77 FLD0985A                       PIC  9(10)V9(06) COMP-6
           VALUE  4296662473.303992.
       77 FLD0985C                       PIC  9(05)V9(28) COMP-3.

       77 FLD0986A                       PIC  9(05)       COMP-6
           VALUE  14588.
       77 FLD0986C                       PIC  9(01)       COMP-6.

       77 FLD0987A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.834402345123109956404050535638816654.
       77 FLD0987C                       PIC  9(06)V9(26) COMP-3.

       77 FLD0988A                       PIC  9(01)       COMP-6
           VALUE  0.
       77 FLD0988C                       PIC S9(05)V9(01) COMP-3.

       77 FLD0989A                       PIC S9(04)       COMP-3
           VALUE +1235.
       77 FLD0989C                       PIC  9(09)V9(13) COMP-3.

       77 FLD0990A                       PIC  9(07)V9(22) COMP-3
           VALUE  7806084.0781040319313888176111.
       77 FLD0990C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0991A                       PIC  9(06)V9(24) COMP-6
           VALUE  807774.663029880435338725419569.
       77 FLD0991C                       PIC S9(09)V9(06) COMP-3.

       77 FLD0992A                       PIC  9(07)V9(22) COMP-6
           VALUE  7784108.2583169551867285917978.
       77 FLD0992C                       PIC  9(04)V9(29) COMP-3.

       77 FLD0993A                       PIC  9(08)V9(20) COMP-6
           VALUE  74534466.64416291111976420324.
       77 FLD0993C                       PIC S9(04)       COMP-3.

       77 FLD0994A                       PIC  9(06)V9(24) COMP-6
           VALUE  815107.307501011568717785849003.
       77 FLD0994C                       PIC S9(10)V9(08) COMP-3.

       77 FLD0995A                       PIC S9(01)       COMP-3
           VALUE +0.
       77 FLD0995C                       PIC  9(06)V9(01) COMP-6.

       77 FLD0996A                       PIC  9(09)V9(14) COMP-6
           VALUE  619241405.61761309431432.
       77 FLD0996C                       PIC  9(09)V9(16) COMP-6.

       77 FLD0997A                       PIC  9(10)V9(09) COMP-3
           VALUE  5006446394.611311356.
       77 FLD0997C                       PIC  9(10)V9(09) COMP-3.

       77 FLD0998A                       PIC  9(09)V9(13) COMP-6
           VALUE  598229443.4201559374386.
       77 FLD0998C                       PIC S9(01)       COMP-3.

       77 FLD0999A                       PIC S9(03)       COMP-3
           VALUE -081.
       77 FLD0999C                       PIC S9(01)       COMP-3.

      * RESULTS-AREA
       78 XPC-FLD0500C
          VALUE X'0621'.
       78 XPC-FLD0501C
          VALUE X'065291085537078474843042'.
       78 XPC-FLD0502C
          VALUE X'000000790000000000000000000000'.
       78 XPC-FLD0503C
          VALUE X'358277427925159000000000000000000F'.
       78 XPC-FLD0504C
          VALUE X'0028360864010000000F'.
       78 XPC-FLD0505C
          VALUE X'000000091103328435033F'.
       78 XPC-FLD0506C
          VALUE X'068389403C'.
       78 XPC-FLD0507C
          VALUE X'0070736506262277043F'.
       78 XPC-FLD0508C
          VALUE X'06588559719467786C'.
       78 XPC-FLD0509C
          VALUE X'000000000000000000'.
       78 XPC-FLD0510C
          VALUE X'295C'.
       78 XPC-FLD0511C
          VALUE X'00000815863785057160'.
       78 XPC-FLD0512C
          VALUE X'5000000000000000000000000000000000000F'.
       78 XPC-FLD0513C
          VALUE X'05377383224693719210307500000F'.
       78 XPC-FLD0514C
          VALUE X'00701093435939'.
       78 XPC-FLD0515C
          VALUE X'43575486937182716920000000000000000F'.
       78 XPC-FLD0516C
          VALUE X'09'.
       78 XPC-FLD0517C
          VALUE X'0449762043805779990C'.
       78 XPC-FLD0518C
          VALUE X'084C'.
       78 XPC-FLD0519C
          VALUE X'3009760879846921088898000F'.
       78 XPC-FLD0520C
          VALUE X'00000905232938011752974F'.
       78 XPC-FLD0521C
          VALUE X'13956C'.
       78 XPC-FLD0522C
          VALUE X'0000000000000C'.
       78 XPC-FLD0523C
          VALUE X'07080714951C'.
       78 XPC-FLD0524C
          VALUE X'0000201515300000000F'.
       78 XPC-FLD0525C
          VALUE X'0000000000000000000000000000000000'.
       78 XPC-FLD0526C
          VALUE X'0781289600'.
       78 XPC-FLD0527C
          VALUE X'5853770318384275972F'.
       78 XPC-FLD0528C
          VALUE X'07949C'.
       78 XPC-FLD0529C
          VALUE X'52985709714885653C'.
       78 XPC-FLD0530C
          VALUE X'036C'.
       78 XPC-FLD0531C
          VALUE X'074870497C'.
       78 XPC-FLD0532C
          VALUE X'6C'.
       78 XPC-FLD0533C
          VALUE X'0928'.
       78 XPC-FLD0534C
          VALUE X'0408226706354108000F'.
       78 XPC-FLD0535C
          VALUE X'001599279674729810000000000000000F'.
       78 XPC-FLD0536C
          VALUE X'0D'.
       78 XPC-FLD0537C
          VALUE X'3354'.
       78 XPC-FLD0538C
          VALUE X'0092229859860523566439383102988358'.
       78 XPC-FLD0539C
          VALUE X'085666721070025741990860979058197F'.
       78 XPC-FLD0540C
          VALUE X'07'.
       78 XPC-FLD0541C
          VALUE X'072407408074400000000000000000'.
       78 XPC-FLD0542C
          VALUE X'000083170657894731436F'.
       78 XPC-FLD0543C
          VALUE X'0018877290'.
       78 XPC-FLD0544C
          VALUE X'4176619436'.
       78 XPC-FLD0545C
          VALUE X'222292854668459716194200000F'.
       78 XPC-FLD0546C
          VALUE X'00082035886892695641936F'.
       78 XPC-FLD0547C
          VALUE X'0008219257242C'.
       78 XPC-FLD0548C
          VALUE X'00795538578445739497091437'.
       78 XPC-FLD0549C
          VALUE X'0002367856700000'.
       78 XPC-FLD0550C
          VALUE X'00'.
       78 XPC-FLD0551C
          VALUE X'0002589973730000000000000F'.
       78 XPC-FLD0552C
          VALUE X'090761'.
       78 XPC-FLD0553C
          VALUE X'0000000000000C'.
       78 XPC-FLD0554C
          VALUE X'21915000000000000000000000000000000F'.
       78 XPC-FLD0555C
          VALUE X'0388184875665600000F'.
       78 XPC-FLD0556C
          VALUE X'0000000898320926000534'.
       78 XPC-FLD0557C
          VALUE X'77011C'.
       78 XPC-FLD0558C
          VALUE X'08305503'.
       78 XPC-FLD0559C
          VALUE X'020322482355519160000000000000'.
       78 XPC-FLD0560C
          VALUE X'4036406039145050'.
       78 XPC-FLD0561C
          VALUE X'01'.
       78 XPC-FLD0562C
          VALUE X'000000000000000000000000000000000000'.
       78 XPC-FLD0563C
          VALUE X'40974749501C'.
       78 XPC-FLD0564C
          VALUE X'063383915884629260510000000000000000'.
       78 XPC-FLD0565C
          VALUE X'00089994'.
       78 XPC-FLD0566C
          VALUE X'451645287642'.
       78 XPC-FLD0567C
          VALUE X'0176734000000000000000000000000000'.
       78 XPC-FLD0568C
          VALUE X'002811973776000000000000'.
       78 XPC-FLD0569C
          VALUE X'301098669520162C'.
       78 XPC-FLD0570C
          VALUE X'000137750000000000000000000F'.
       78 XPC-FLD0571C
          VALUE X'09958448841215502500000000'.
       78 XPC-FLD0572C
          VALUE X'0199648C'.
       78 XPC-FLD0573C
          VALUE X'6619308000790000000000000000000000000F'.
       78 XPC-FLD0574C
          VALUE X'6C'.
       78 XPC-FLD0575C
          VALUE X'6C'.
       78 XPC-FLD0576C
          VALUE X'05512897460227348389'.
       78 XPC-FLD0577C
          VALUE X'836079360000000000000000000000000000'.
       78 XPC-FLD0578C
          VALUE X'443752'.
       78 XPC-FLD0579C
          VALUE X'0688719854554142085F'.
       78 XPC-FLD0580C
          VALUE X'0600291000000000000000000000000000000F'.
       78 XPC-FLD0581C
          VALUE X'028271118430000000000000'.
       78 XPC-FLD0582C
          VALUE X'000000009509570414550270'.
       78 XPC-FLD0583C
          VALUE X'4C'.
       78 XPC-FLD0584C
          VALUE X'000000000000000000000000000000000000'.
       78 XPC-FLD0585C
          VALUE X'087260076600000000000000000000000000'.
       78 XPC-FLD0586C
          VALUE X'000857220013400623703780922824'.
       78 XPC-FLD0587C
          VALUE X'03349D'.
       78 XPC-FLD0588C
          VALUE X'05773570048599000000000000000000000F'.
       78 XPC-FLD0589C
          VALUE X'02073C'.
       78 XPC-FLD0590C
          VALUE X'3097998C'.
       78 XPC-FLD0591C
          VALUE X'0576933255371857245F'.
       78 XPC-FLD0592C
          VALUE X'44514829253C'.
       78 XPC-FLD0593C
          VALUE X'042C'.
       78 XPC-FLD0594C
          VALUE X'74051549100000000000000000000F'.
       78 XPC-FLD0595C
          VALUE X'4892017490690525605145920000000F'.
       78 XPC-FLD0596C
          VALUE X'000009050358418523600789'.
       78 XPC-FLD0597C
          VALUE X'04920661642122000000000000000000'.
       78 XPC-FLD0598C
          VALUE X'888650589753158C'.
       78 XPC-FLD0599C
          VALUE X'09'.
       78 XPC-FLD0600C
          VALUE X'0694362049109000000000000000000F'.
       78 XPC-FLD0601C
          VALUE X'000000009763'.
       78 XPC-FLD0602C
          VALUE X'0543562700'.
       78 XPC-FLD0603C
          VALUE X'0658075C'.
       78 XPC-FLD0604C
          VALUE X'0007286271135915775021'.
       78 XPC-FLD0605C
          VALUE X'0000001194000000'.
       78 XPC-FLD0606C
          VALUE X'0079555575692C'.
       78 XPC-FLD0607C
          VALUE X'011846'.
       78 XPC-FLD0608C
          VALUE X'184410000000000000000000000000000000'.
       78 XPC-FLD0609C
          VALUE X'000339487124475000'.
       78 XPC-FLD0610C
          VALUE X'0080798853'.
       78 XPC-FLD0611C
          VALUE X'03'.
       78 XPC-FLD0612C
          VALUE X'041617991442294410800000000000'.
       78 XPC-FLD0613C
          VALUE X'000155510C'.
       78 XPC-FLD0614C
          VALUE X'2016470146304405460000'.
       78 XPC-FLD0615C
          VALUE X'000001010C'.
       78 XPC-FLD0616C
          VALUE X'30'.
       78 XPC-FLD0617C
          VALUE X'00'.
       78 XPC-FLD0618C
          VALUE X'0009'.
       78 XPC-FLD0619C
          VALUE X'000008018509983636245F'.
       78 XPC-FLD0620C
          VALUE X'071717267381095706202387'.
       78 XPC-FLD0621C
          VALUE X'000090350136903954414435702F'.
       78 XPC-FLD0622C
          VALUE X'5924201925737C'.
       78 XPC-FLD0623C
          VALUE X'0000000104000000000000000F'.
       78 XPC-FLD0624C
          VALUE X'0000162056000000'.
       78 XPC-FLD0625C
          VALUE X'00012960000000000000000000000F'.
       78 XPC-FLD0626C
          VALUE X'000000883960373C'.
       78 XPC-FLD0627C
          VALUE X'000010930C'.
       78 XPC-FLD0628C
          VALUE X'000000009943'.
       78 XPC-FLD0629C
          VALUE X'009255439194261209090441866464971F'.
       78 XPC-FLD0630C
          VALUE X'0400669561119235000000'.
       78 XPC-FLD0631C
          VALUE X'648949'.
       78 XPC-FLD0632C
          VALUE X'00069998401036213298'.
       78 XPC-FLD0633C
          VALUE X'0072186800078C'.
       78 XPC-FLD0634C
          VALUE X'0660740225520500000000000000000F'.
       78 XPC-FLD0635C
          VALUE X'0000019086320000000000'.
       78 XPC-FLD0636C
          VALUE X'026055'.
       78 XPC-FLD0637C
          VALUE X'000734701873111827330F'.
       78 XPC-FLD0638C
          VALUE X'7524512041246673721417437263000F'.
       78 XPC-FLD0639C
          VALUE X'04327000000000000000000000000000000000'.
       78 XPC-FLD0640C
          VALUE X'81861493829378950692898797569796000F'.
       78 XPC-FLD0641C
          VALUE X'0076720562697199168322725881'.
       78 XPC-FLD0642C
          VALUE X'00708064946636227210419F'.
       78 XPC-FLD0643C
          VALUE X'0219471490'.
       78 XPC-FLD0644C
          VALUE X'000700000000000000000000000000000000'.
       78 XPC-FLD0645C
          VALUE X'0000091310'.
       78 XPC-FLD0646C
          VALUE X'0075205968056084349093'.
       78 XPC-FLD0647C
          VALUE X'00000000070000000000000000'.
       78 XPC-FLD0648C
          VALUE X'0000001149000000000000000F'.
       78 XPC-FLD0649C
          VALUE X'0007912687104666880F'.
       78 XPC-FLD0650C
          VALUE X'0000000098787342621723084F'.
       78 XPC-FLD0651C
          VALUE X'006999379564814C'.
       78 XPC-FLD0652C
          VALUE X'000166766C'.
       78 XPC-FLD0653C
          VALUE X'233215'.
       78 XPC-FLD0654C
          VALUE X'3933713028'.
       78 XPC-FLD0655C
          VALUE X'00008180133890362937254F'.
       78 XPC-FLD0656C
          VALUE X'0000200859700000000000000F'.
       78 XPC-FLD0657C
          VALUE X'000000936171946190701431689F'.
       78 XPC-FLD0658C
          VALUE X'000700693658329550883F'.
       78 XPC-FLD0659C
          VALUE X'0000090443377938015334649435'.
       78 XPC-FLD0660C
          VALUE X'12407C'.
       78 XPC-FLD0661C
          VALUE X'000000009655815696240F'.
       78 XPC-FLD0662C
          VALUE X'00021319850000000000000000'.
       78 XPC-FLD0663C
          VALUE X'0578800000000000000000000000000000'.
       78 XPC-FLD0664C
          VALUE X'00000143710000000C'.
       78 XPC-FLD0665C
          VALUE X'0024558753700000000000000F'.
       78 XPC-FLD0666C
          VALUE X'15'.
       78 XPC-FLD0667C
          VALUE X'0000000094482499794694274F'.
       78 XPC-FLD0668C
          VALUE X'0000000935153318450F'.
       78 XPC-FLD0669C
          VALUE X'0000000000993732'.
       78 XPC-FLD0670C
          VALUE X'0135400000000000000000000000000000000F'.
       78 XPC-FLD0671C
          VALUE X'06221697'.
       78 XPC-FLD0672C
          VALUE X'564917934329454900000000'.
       78 XPC-FLD0673C
          VALUE X'0500233346'.
       78 XPC-FLD0674C
          VALUE X'06506400821929467000000000000000'.
       78 XPC-FLD0675C
          VALUE X'00000084609285471017'.
       78 XPC-FLD0676C
          VALUE X'0960000000000000000000000000000000000F'.
       78 XPC-FLD0677C
          VALUE X'818310000000000000000000000000000F'.
       78 XPC-FLD0678C
          VALUE X'00092000000000000000000000000000'.
       78 XPC-FLD0679C
          VALUE X'000000000800000000'.
       78 XPC-FLD0680C
          VALUE X'002811938166000000000F'.
       78 XPC-FLD0681C
          VALUE X'2441159564489030486811300000000F'.
       78 XPC-FLD0682C
          VALUE X'7297844577231500000000000000000F'.
       78 XPC-FLD0683C
          VALUE X'00000086894306881785154F'.
       78 XPC-FLD0684C
          VALUE X'0592333736406744'.
       78 XPC-FLD0685C
          VALUE X'0254571499000000000000000000000F'.
       78 XPC-FLD0686C
          VALUE X'06210446931125709335574F'.
       78 XPC-FLD0687C
          VALUE X'039400587476898000'.
       78 XPC-FLD0688C
          VALUE X'0932'.
       78 XPC-FLD0689C
          VALUE X'0593069914341C'.
       78 XPC-FLD0690C
          VALUE X'00000000979C'.
       78 XPC-FLD0691C
          VALUE X'00439500550593808C'.
       78 XPC-FLD0692C
          VALUE X'358382577746400000000000'.
       78 XPC-FLD0693C
          VALUE X'9C'.
       78 XPC-FLD0694C
          VALUE X'06'.
       78 XPC-FLD0695C
          VALUE X'354304867111100000000000'.
       78 XPC-FLD0696C
          VALUE X'000009067945'.
       78 XPC-FLD0697C
          VALUE X'00414586353841170000'.
       78 XPC-FLD0698C
          VALUE X'533C'.
       78 XPC-FLD0699C
          VALUE X'59706495252042024457490F'.
       78 XPC-FLD0700C
          VALUE X'4C'.
       78 XPC-FLD0701C
          VALUE X'0853633905155776417927881990000000000F'.
       78 XPC-FLD0702C
          VALUE X'00090218'.
       78 XPC-FLD0703C
          VALUE X'000011260000'.
       78 XPC-FLD0704C
          VALUE X'69632293359954040000000F'.
       78 XPC-FLD0705C
          VALUE X'053818642380664638'.
       78 XPC-FLD0706C
          VALUE X'0154424C'.
       78 XPC-FLD0707C
          VALUE X'0000000000000000000F'.
       78 XPC-FLD0708C
          VALUE X'000000951225'.
       78 XPC-FLD0709C
          VALUE X'00000112400000'.
       78 XPC-FLD0710C
          VALUE X'0000000009946C'.
       78 XPC-FLD0711C
          VALUE X'67'.
       78 XPC-FLD0712C
          VALUE X'0061043323032745544C'.
       78 XPC-FLD0713C
          VALUE X'92805645'.
       78 XPC-FLD0714C
          VALUE X'05939805673719'.
       78 XPC-FLD0715C
          VALUE X'04066437555035270000'.
       78 XPC-FLD0716C
          VALUE X'04951280000000000000000000000000000F'.
       78 XPC-FLD0717C
          VALUE X'0086936984346943413370922826'.
       78 XPC-FLD0718C
          VALUE X'0000158746000000'.
       78 XPC-FLD0719C
          VALUE X'0000000000'.
       78 XPC-FLD0720C
          VALUE X'000000087000000C'.
       78 XPC-FLD0721C
          VALUE X'22948699'.
       78 XPC-FLD0722C
          VALUE X'00017094900000000000000000000F'.
       78 XPC-FLD0723C
          VALUE X'49'.
       78 XPC-FLD0724C
          VALUE X'00317474559928000000'.
       78 XPC-FLD0725C
          VALUE X'00000009151169879C'.
       78 XPC-FLD0726C
          VALUE X'000014771000000C'.
       78 XPC-FLD0727C
          VALUE X'04121690082113094177000000'.
       78 XPC-FLD0728C
          VALUE X'043941144454561C'.
       78 XPC-FLD0729C
          VALUE X'000009451476899812552012747346'.
       78 XPC-FLD0730C
          VALUE X'00082268585944903294127F'.
       78 XPC-FLD0731C
          VALUE X'08082790493562019840110F'.
       78 XPC-FLD0732C
          VALUE X'00915C'.
       78 XPC-FLD0733C
          VALUE X'328019305824000000000000'.
       78 XPC-FLD0734C
          VALUE X'21'.
       78 XPC-FLD0735C
          VALUE X'0000190229800000000000000F'.
       78 XPC-FLD0736C
          VALUE X'867815820298389400000000000000'.
       78 XPC-FLD0737C
          VALUE X'260108410D'.
       78 XPC-FLD0738C
          VALUE X'479544362750000000000000000000000000'.
       78 XPC-FLD0739C
          VALUE X'0032479721144700000C'.
       78 XPC-FLD0740C
          VALUE X'947393030000000000000000000000000F'.
       78 XPC-FLD0741C
          VALUE X'0322386723831C'.
       78 XPC-FLD0742C
          VALUE X'19367234713C'.
       78 XPC-FLD0743C
          VALUE X'00858648'.
       78 XPC-FLD0744C
          VALUE X'0000000000'.
       78 XPC-FLD0745C
          VALUE X'000009'.
       78 XPC-FLD0746C
          VALUE X'5435731573355281343F'.
       78 XPC-FLD0747C
          VALUE X'5710793093457900000000000000000000'.
       78 XPC-FLD0748C
          VALUE X'0000860C'.
       78 XPC-FLD0749C
          VALUE X'0965603942379000000000000000000F'.
       78 XPC-FLD0750C
          VALUE X'076667363171'.
       78 XPC-FLD0751C
          VALUE X'00006C'.
       78 XPC-FLD0752C
          VALUE X'00700000000000000000000000000000000F'.
       78 XPC-FLD0753C
          VALUE X'8C'.
       78 XPC-FLD0754C
          VALUE X'0206179210'.
       78 XPC-FLD0755C
          VALUE X'000008355928333445592F'.
       78 XPC-FLD0756C
          VALUE X'95057C'.
       78 XPC-FLD0757C
          VALUE X'146697611C'.
       78 XPC-FLD0758C
          VALUE X'0293699C'.
       78 XPC-FLD0759C
          VALUE X'00000931389631661272199281143F'.
       78 XPC-FLD0760C
          VALUE X'08511300000000000000000000000000000F'.
       78 XPC-FLD0761C
          VALUE X'069000652944346418937726'.
       78 XPC-FLD0762C
          VALUE X'0143537299'.
       78 XPC-FLD0763C
          VALUE X'468145317558540163815905500000'.
       78 XPC-FLD0764C
          VALUE X'553500769850315821'.
       78 XPC-FLD0765C
          VALUE X'08855C'.
       78 XPC-FLD0766C
          VALUE X'00000000'.
       78 XPC-FLD0767C
          VALUE X'0D'.
       78 XPC-FLD0768C
          VALUE X'089C'.
       78 XPC-FLD0769C
          VALUE X'00025657312700'.
       78 XPC-FLD0770C
          VALUE X'005742143031744675329970'.
       78 XPC-FLD0771C
          VALUE X'006972161451973285517524914F'.
       78 XPC-FLD0772C
          VALUE X'0486862358510471'.
       78 XPC-FLD0773C
          VALUE X'83590000000000000000000000000000000F'.
       78 XPC-FLD0774C
          VALUE X'000000000C'.
       78 XPC-FLD0775C
          VALUE X'89918350400000000000000000000000000F'.
       78 XPC-FLD0776C
          VALUE X'50765017868000000000000000000000'.
       78 XPC-FLD0777C
          VALUE X'003143825018400000000F'.
       78 XPC-FLD0778C
          VALUE X'7394000000000000000000000000000000'.
       78 XPC-FLD0779C
          VALUE X'0000000902933324806C'.
       78 XPC-FLD0780C
          VALUE X'2412077490000000000000000000000F'.
       78 XPC-FLD0781C
          VALUE X'067153543730'.
       78 XPC-FLD0782C
          VALUE X'930000000000000000000000000000000000'.
       78 XPC-FLD0783C
          VALUE X'00000008813392193C'.
       78 XPC-FLD0784C
          VALUE X'9648027937864265268780000000000F'.
       78 XPC-FLD0785C
          VALUE X'068097654346'.
       78 XPC-FLD0786C
          VALUE X'000009820249933224565186407062356F'.
       78 XPC-FLD0787C
          VALUE X'08470980'.
       78 XPC-FLD0788C
          VALUE X'000000956557531637097668841818'.
       78 XPC-FLD0789C
          VALUE X'0000171017000000000000000F'.
       78 XPC-FLD0790C
          VALUE X'02384369540C'.
       78 XPC-FLD0791C
          VALUE X'0000008800000000000000000000'.
       78 XPC-FLD0792C
          VALUE X'00000009552300'.
       78 XPC-FLD0793C
          VALUE X'0000019922190000000000'.
       78 XPC-FLD0794C
          VALUE X'9C'.
       78 XPC-FLD0795C
          VALUE X'0000000000000C'.
       78 XPC-FLD0796C
          VALUE X'0075656850061445801713944092'.
       78 XPC-FLD0797C
          VALUE X'00000000000000'.
       78 XPC-FLD0798C
          VALUE X'3322433759060000000000000F'.
       78 XPC-FLD0799C
          VALUE X'069086627133683375934F'.
       78 XPC-FLD0800C
          VALUE X'7003611241'.
       78 XPC-FLD0801C
          VALUE X'9805236700000000000000000000000000000F'.
       78 XPC-FLD0802C
          VALUE X'950523000000000000000000000000000F'.
       78 XPC-FLD0803C
          VALUE X'0000001746700000000000'.
       78 XPC-FLD0804C
          VALUE X'01'.
       78 XPC-FLD0805C
          VALUE X'000235834100000000'.
       78 XPC-FLD0806C
          VALUE X'7039275628073882'.
       78 XPC-FLD0807C
          VALUE X'682C'.
       78 XPC-FLD0808C
          VALUE X'000000000000000000'.
       78 XPC-FLD0809C
          VALUE X'00000868734196996C'.
       78 XPC-FLD0810C
          VALUE X'000011290C'.
       78 XPC-FLD0811C
          VALUE X'5643321429623142000000000000000000000F'.
       78 XPC-FLD0812C
          VALUE X'2927090579'.
       78 XPC-FLD0813C
          VALUE X'81724662844C'.
       78 XPC-FLD0814C
          VALUE X'00000007000000000000000000000F'.
       78 XPC-FLD0815C
          VALUE X'0760467962863785373883729334000000000F'.
       78 XPC-FLD0816C
          VALUE X'0418478349217778600177500000000000'.
       78 XPC-FLD0817C
          VALUE X'05163345142860672476'.
       78 XPC-FLD0818C
          VALUE X'0305861646640000000000000000'.
       78 XPC-FLD0819C
          VALUE X'009C'.
       78 XPC-FLD0820C
          VALUE X'000000000000000000000000000000000000'.
       78 XPC-FLD0821C
          VALUE X'055057695644832C'.
       78 XPC-FLD0822C
          VALUE X'4037'.
       78 XPC-FLD0823C
          VALUE X'073880168200282C'.
       78 XPC-FLD0824C
          VALUE X'035153426032805579200000'.
       78 XPC-FLD0825C
          VALUE X'0000000C'.
       78 XPC-FLD0826C
          VALUE X'0000019078650000000D'.
       78 XPC-FLD0827C
          VALUE X'000077638471978375'.
       78 XPC-FLD0828C
          VALUE X'16009D'.
       78 XPC-FLD0829C
          VALUE X'148653421926165041355716000000'.
       78 XPC-FLD0830C
          VALUE X'0000000896572293512612'.
       78 XPC-FLD0831C
          VALUE X'0000089565555809963970368F'.
       78 XPC-FLD0832C
          VALUE X'0000001185000000'.
       78 XPC-FLD0833C
          VALUE X'0008048597983003008549118F'.
       78 XPC-FLD0834C
          VALUE X'492097442881000000000000000F'.
       78 XPC-FLD0835C
          VALUE X'011783592779248075466114187000'.
       78 XPC-FLD0836C
          VALUE X'04461413893412962000000F'.
       78 XPC-FLD0837C
          VALUE X'00008982008C'.
       78 XPC-FLD0838C
          VALUE X'31881067938129792330000000000F'.
       78 XPC-FLD0839C
          VALUE X'03246718'.
       78 XPC-FLD0840C
          VALUE X'0094'.
       78 XPC-FLD0841C
          VALUE X'0179428042996372383299785000000F'.
       78 XPC-FLD0842C
          VALUE X'048573969970411212600000000000000000'.
       78 XPC-FLD0843C
          VALUE X'00818928076C'.
       78 XPC-FLD0844C
          VALUE X'000077544589142564'.
       78 XPC-FLD0845C
          VALUE X'0903835745060688200425000F'.
       78 XPC-FLD0846C
          VALUE X'000298025768780000'.
       78 XPC-FLD0847C
          VALUE X'000084041426'.
       78 XPC-FLD0848C
          VALUE X'079497476278687551065615934F'.
       78 XPC-FLD0849C
          VALUE X'05598045896157501921600000000F'.
       78 XPC-FLD0850C
          VALUE X'0418716850605351000000000F'.
       78 XPC-FLD0851C
          VALUE X'00000820'.
       78 XPC-FLD0852C
          VALUE X'4339990975'.
       78 XPC-FLD0853C
          VALUE X'0C'.
       78 XPC-FLD0854C
          VALUE X'09'.
       78 XPC-FLD0855C
          VALUE X'629010'.
       78 XPC-FLD0856C
          VALUE X'44099C'.
       78 XPC-FLD0857C
          VALUE X'015C'.
       78 XPC-FLD0858C
          VALUE X'060594458089'.
       78 XPC-FLD0859C
          VALUE X'0000000000000000000000000000000000000F'.
       78 XPC-FLD0860C
          VALUE X'025764079400'.
       78 XPC-FLD0861C
          VALUE X'9961'.
       78 XPC-FLD0862C
          VALUE X'0007652464215740938380'.
       78 XPC-FLD0863C
          VALUE X'00000085070091557533'.
       78 XPC-FLD0864C
          VALUE X'0288534377577697000000000000000000'.
       78 XPC-FLD0865C
          VALUE X'409C'.
       78 XPC-FLD0866C
          VALUE X'0050518510000000000000000000000000'.
       78 XPC-FLD0867C
          VALUE X'0000140840000000000000000000'.
       78 XPC-FLD0868C
          VALUE X'00007648419842091055409F'.
       78 XPC-FLD0869C
          VALUE X'0000000000000000000000000F'.
       78 XPC-FLD0870C
          VALUE X'000000000000000000000000'.
       78 XPC-FLD0871C
          VALUE X'0609764683385363159F'.
       78 XPC-FLD0872C
          VALUE X'000000088163117626'.
       78 XPC-FLD0873C
          VALUE X'061255'.
       78 XPC-FLD0874C
          VALUE X'00000000'.
       78 XPC-FLD0875C
          VALUE X'26'.
       78 XPC-FLD0876C
          VALUE X'0000000000000000000000000000000F'.
       78 XPC-FLD0877C
          VALUE X'0069924605886404200827399F'.
       78 XPC-FLD0878C
          VALUE X'126092207198309935733959710000000F'.
       78 XPC-FLD0879C
          VALUE X'071533810000000000000000000000000F'.
       78 XPC-FLD0880C
          VALUE X'03230974253600000000000000000000'.
       78 XPC-FLD0881C
          VALUE X'5711295149040C'.
       78 XPC-FLD0882C
          VALUE X'08887133458780727135460000'.
       78 XPC-FLD0883C
          VALUE X'2192258152622845734924700000'.
       78 XPC-FLD0884C
          VALUE X'04020911850925960000000000000F'.
       78 XPC-FLD0885C
          VALUE X'13360C'.
       78 XPC-FLD0886C
          VALUE X'037452958488504D'.
       78 XPC-FLD0887C
          VALUE X'01147955000000000000000000000000'.
       78 XPC-FLD0888C
          VALUE X'0358051919'.
       78 XPC-FLD0889C
          VALUE X'0250000000000000000000000000000000000F'.
       78 XPC-FLD0890C
          VALUE X'000000000000000000000000000F'.
       78 XPC-FLD0891C
          VALUE X'0000000957956124985634538404'.
       78 XPC-FLD0892C
          VALUE X'0644'.
       78 XPC-FLD0893C
          VALUE X'83'.
       78 XPC-FLD0894C
          VALUE X'000819872140952237593580'.
       78 XPC-FLD0895C
          VALUE X'9994965857'.
       78 XPC-FLD0896C
          VALUE X'0C'.
       78 XPC-FLD0897C
          VALUE X'00000000099975439C'.
       78 XPC-FLD0898C
          VALUE X'00337260'.
       78 XPC-FLD0899C
          VALUE X'0749184364078323'.
       78 XPC-FLD0900C
          VALUE X'00009294'.
       78 XPC-FLD0901C
          VALUE X'01507074000000000000000000000000000000'.
       78 XPC-FLD0902C
          VALUE X'0000087405674190856F'.
       78 XPC-FLD0903C
          VALUE X'052C'.
       78 XPC-FLD0904C
          VALUE X'7C'.
       78 XPC-FLD0905C
          VALUE X'03579381244724'.
       78 XPC-FLD0906C
          VALUE X'06'.
       78 XPC-FLD0907C
          VALUE X'0039080058469506000000'.
       78 XPC-FLD0908C
          VALUE X'07762865860000000000000000000000000F'.
       78 XPC-FLD0909C
          VALUE X'00'.
       78 XPC-FLD0910C
          VALUE X'3158900000000000000000000000000000'.
       78 XPC-FLD0911C
          VALUE X'01196445207289800000000000000F'.
       78 XPC-FLD0912C
          VALUE X'00'.
       78 XPC-FLD0913C
          VALUE X'0246'.
       78 XPC-FLD0914C
          VALUE X'7201266633354550528167692391434600000F'.
       78 XPC-FLD0915C
          VALUE X'00906C'.
       78 XPC-FLD0916C
          VALUE X'0000000000000000'.
       78 XPC-FLD0917C
          VALUE X'0000'.
       78 XPC-FLD0918C
          VALUE X'0000000105900000000000'.
       78 XPC-FLD0919C
          VALUE X'6D'.
       78 XPC-FLD0920C
          VALUE X'00000174749000000000000000'.
       78 XPC-FLD0921C
          VALUE X'9C'.
       78 XPC-FLD0922C
          VALUE X'0000000C'.
       78 XPC-FLD0923C
          VALUE X'09582C'.
       78 XPC-FLD0924C
          VALUE X'5057387021018211400000000000000F'.
       78 XPC-FLD0925C
          VALUE X'6C'.
       78 XPC-FLD0926C
          VALUE X'953564317C'.
       78 XPC-FLD0927C
          VALUE X'0000800954558131814F'.
       78 XPC-FLD0928C
          VALUE X'0000000000'.
       78 XPC-FLD0929C
          VALUE X'000871740739403786824013309F'.
       78 XPC-FLD0930C
          VALUE X'00000000099112810030026F'.
       78 XPC-FLD0931C
          VALUE X'374705772C'.
       78 XPC-FLD0932C
          VALUE X'05079506475355934913'.
       78 XPC-FLD0933C
          VALUE X'007776883170'.
       78 XPC-FLD0934C
          VALUE X'0001689960'.
       78 XPC-FLD0935C
          VALUE X'000001669120000000'.
       78 XPC-FLD0936C
          VALUE X'0371310000000000000000000000000000000F'.
       78 XPC-FLD0937C
          VALUE X'04'.
       78 XPC-FLD0938C
          VALUE X'78242437999430092254000000'.
       78 XPC-FLD0939C
          VALUE X'7C'.
       78 XPC-FLD0940C
          VALUE X'057799706160998587'.
       78 XPC-FLD0941C
          VALUE X'06704493679367'.
       78 XPC-FLD0942C
          VALUE X'86780710821210000000000000000000000F'.
       78 XPC-FLD0943C
          VALUE X'7667989C'.
       78 XPC-FLD0944C
          VALUE X'000009573C'.
       78 XPC-FLD0945C
          VALUE X'05427766423125529C'.
       78 XPC-FLD0946C
          VALUE X'0323000000000000000000000000000000000F'.
       78 XPC-FLD0947C
          VALUE X'0000858469890658255407878F'.
       78 XPC-FLD0948C
          VALUE X'0001058000000000000000000000'.
       78 XPC-FLD0949C
          VALUE X'043070441966473410'.
       78 XPC-FLD0950C
          VALUE X'8523038502009541160000000000000000'.
       78 XPC-FLD0951C
          VALUE X'3111695547500000000000000000'.
       78 XPC-FLD0952C
          VALUE X'71'.
       78 XPC-FLD0953C
          VALUE X'00000166635000000000'.
       78 XPC-FLD0954C
          VALUE X'0496012857980000000000000000000000000F'.
       78 XPC-FLD0955C
          VALUE X'3577892300000000000000000000000F'.
       78 XPC-FLD0956C
          VALUE X'027355040840000000000000000F'.
       78 XPC-FLD0957C
          VALUE X'07083C'.
       78 XPC-FLD0958C
          VALUE X'0029370744150000'.
       78 XPC-FLD0959C
          VALUE X'1C'.
       78 XPC-FLD0960C
          VALUE X'1C'.
       78 XPC-FLD0961C
          VALUE X'08740C'.
       78 XPC-FLD0962C
          VALUE X'0000009680819849462746207F'.
       78 XPC-FLD0963C
          VALUE X'00000000098035732306672607'.
       78 XPC-FLD0964C
          VALUE X'6395049079697309180048'.
       78 XPC-FLD0965C
          VALUE X'01'.
       78 XPC-FLD0966C
          VALUE X'01892006'.
       78 XPC-FLD0967C
          VALUE X'00000000060000'.
       78 XPC-FLD0968C
          VALUE X'06663C'.
       78 XPC-FLD0969C
          VALUE X'00000153660000000000000F'.
       78 XPC-FLD0970C
          VALUE X'402079801324717300000000000000000000'.
       78 XPC-FLD0971C
          VALUE X'002161446900000C'.
       78 XPC-FLD0972C
          VALUE X'010182'.
       78 XPC-FLD0973C
          VALUE X'00138170000000000000000000000000'.
       78 XPC-FLD0974C
          VALUE X'180C'.
       78 XPC-FLD0975C
          VALUE X'000000006000'.
       78 XPC-FLD0976C
          VALUE X'00002206144700000000'.
       78 XPC-FLD0977C
          VALUE X'032743137270400C'.
       78 XPC-FLD0978C
          VALUE X'675062190811674C'.
       78 XPC-FLD0979C
          VALUE X'00000092533169'.
       78 XPC-FLD0980C
          VALUE X'000000935822345812800437'.
       78 XPC-FLD0981C
          VALUE X'0001951327000C'.
       78 XPC-FLD0982C
          VALUE X'00816610172C'.
       78 XPC-FLD0983C
          VALUE X'924369140050000000000000000000000000'.
       78 XPC-FLD0984C
          VALUE X'00632949921330981046'.
       78 XPC-FLD0985C
          VALUE X'624733039920000000000000000000000F'.
       78 XPC-FLD0986C
          VALUE X'08'.
       78 XPC-FLD0987C
          VALUE X'000000983440234512310995640405053F'.
       78 XPC-FLD0988C
          VALUE X'0000000C'.
       78 XPC-FLD0989C
          VALUE X'00000012350000000000000F'.
       78 XPC-FLD0990C
          VALUE X'08060840'.
       78 XPC-FLD0991C
          VALUE X'000807774663029C'.
       78 XPC-FLD0992C
          VALUE X'410825831695518672859179780000000F'.
       78 XPC-FLD0993C
          VALUE X'04466C'.
       78 XPC-FLD0994C
          VALUE X'0000081510730750101C'.
       78 XPC-FLD0995C
          VALUE X'00000000'.
       78 XPC-FLD0996C
          VALUE X'06192414056176130943143200'.
       78 XPC-FLD0997C
          VALUE X'5006446394611311356F'.
       78 XPC-FLD0998C
          VALUE X'3C'.
       78 XPC-FLD0999C
          VALUE X'1D'.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.

           MOVE FLD0500A        TO FLD0500C.
           MOVE FLD0501A        TO FLD0501C.
           MOVE FLD0502A        TO FLD0502C.
           MOVE FLD0503A        TO FLD0503C.
           MOVE FLD0504A        TO FLD0504C.
           MOVE FLD0505A        TO FLD0505C.
           MOVE FLD0506A        TO FLD0506C.
           MOVE FLD0507A        TO FLD0507C.
           MOVE FLD0508A        TO FLD0508C.
           MOVE FLD0509A        TO FLD0509C.
           MOVE FLD0510A        TO FLD0510C.
           MOVE FLD0511A        TO FLD0511C.
           MOVE FLD0512A        TO FLD0512C.
           MOVE FLD0513A        TO FLD0513C.
           MOVE FLD0514A        TO FLD0514C.
           MOVE FLD0515A        TO FLD0515C.
           MOVE FLD0516A        TO FLD0516C.
           MOVE FLD0517A        TO FLD0517C.
           MOVE FLD0518A        TO FLD0518C.
           MOVE FLD0519A        TO FLD0519C.
           MOVE FLD0520A        TO FLD0520C.
           MOVE FLD0521A        TO FLD0521C.
           MOVE FLD0522A        TO FLD0522C.
           MOVE FLD0523A        TO FLD0523C.
           MOVE FLD0524A        TO FLD0524C.
           MOVE FLD0525A        TO FLD0525C.
           MOVE FLD0526A        TO FLD0526C.
           MOVE FLD0527A        TO FLD0527C.
           MOVE FLD0528A        TO FLD0528C.
           MOVE FLD0529A        TO FLD0529C.
           MOVE FLD0530A        TO FLD0530C.
           MOVE FLD0531A        TO FLD0531C.
           MOVE FLD0532A        TO FLD0532C.
           MOVE FLD0533A        TO FLD0533C.
           MOVE FLD0534A        TO FLD0534C.
           MOVE FLD0535A        TO FLD0535C.
           MOVE FLD0536A        TO FLD0536C.
           MOVE FLD0537A        TO FLD0537C.
           MOVE FLD0538A        TO FLD0538C.
           MOVE FLD0539A        TO FLD0539C.
           MOVE FLD0540A        TO FLD0540C.
           MOVE FLD0541A        TO FLD0541C.
           MOVE FLD0542A        TO FLD0542C.
           MOVE FLD0543A        TO FLD0543C.
           MOVE FLD0544A        TO FLD0544C.
           MOVE FLD0545A        TO FLD0545C.
           MOVE FLD0546A        TO FLD0546C.
           MOVE FLD0547A        TO FLD0547C.
           MOVE FLD0548A        TO FLD0548C.
           MOVE FLD0549A        TO FLD0549C.
           MOVE FLD0550A        TO FLD0550C.
           MOVE FLD0551A        TO FLD0551C.
           MOVE FLD0552A        TO FLD0552C.
           MOVE FLD0553A        TO FLD0553C.
           MOVE FLD0554A        TO FLD0554C.
           MOVE FLD0555A        TO FLD0555C.
           MOVE FLD0556A        TO FLD0556C.
           MOVE FLD0557A        TO FLD0557C.
           MOVE FLD0558A        TO FLD0558C.
           MOVE FLD0559A        TO FLD0559C.
           MOVE FLD0560A        TO FLD0560C.
           MOVE FLD0561A        TO FLD0561C.
           MOVE FLD0562A        TO FLD0562C.
           MOVE FLD0563A        TO FLD0563C.
           MOVE FLD0564A        TO FLD0564C.
           MOVE FLD0565A        TO FLD0565C.
           MOVE FLD0566A        TO FLD0566C.
           MOVE FLD0567A        TO FLD0567C.
           MOVE FLD0568A        TO FLD0568C.
           MOVE FLD0569A        TO FLD0569C.
           MOVE FLD0570A        TO FLD0570C.
           MOVE FLD0571A        TO FLD0571C.
           MOVE FLD0572A        TO FLD0572C.
           MOVE FLD0573A        TO FLD0573C.
           MOVE FLD0574A        TO FLD0574C.
           MOVE FLD0575A        TO FLD0575C.
           MOVE FLD0576A        TO FLD0576C.
           MOVE FLD0577A        TO FLD0577C.
           MOVE FLD0578A        TO FLD0578C.
           MOVE FLD0579A        TO FLD0579C.
           MOVE FLD0580A        TO FLD0580C.
           MOVE FLD0581A        TO FLD0581C.
           MOVE FLD0582A        TO FLD0582C.
           MOVE FLD0583A        TO FLD0583C.
           MOVE FLD0584A        TO FLD0584C.
           MOVE FLD0585A        TO FLD0585C.
           MOVE FLD0586A        TO FLD0586C.
           MOVE FLD0587A        TO FLD0587C.
           MOVE FLD0588A        TO FLD0588C.
           MOVE FLD0589A        TO FLD0589C.
           MOVE FLD0590A        TO FLD0590C.
           MOVE FLD0591A        TO FLD0591C.
           MOVE FLD0592A        TO FLD0592C.
           MOVE FLD0593A        TO FLD0593C.
           MOVE FLD0594A        TO FLD0594C.
           MOVE FLD0595A        TO FLD0595C.
           MOVE FLD0596A        TO FLD0596C.
           MOVE FLD0597A        TO FLD0597C.
           MOVE FLD0598A        TO FLD0598C.
           MOVE FLD0599A        TO FLD0599C.
           MOVE FLD0600A        TO FLD0600C.
           MOVE FLD0601A        TO FLD0601C.
           MOVE FLD0602A        TO FLD0602C.
           MOVE FLD0603A        TO FLD0603C.
           MOVE FLD0604A        TO FLD0604C.
           MOVE FLD0605A        TO FLD0605C.
           MOVE FLD0606A        TO FLD0606C.
           MOVE FLD0607A        TO FLD0607C.
           MOVE FLD0608A        TO FLD0608C.
           MOVE FLD0609A        TO FLD0609C.
           MOVE FLD0610A        TO FLD0610C.
           MOVE FLD0611A        TO FLD0611C.
           MOVE FLD0612A        TO FLD0612C.
           MOVE FLD0613A        TO FLD0613C.
           MOVE FLD0614A        TO FLD0614C.
           MOVE FLD0615A        TO FLD0615C.
           MOVE FLD0616A        TO FLD0616C.
           MOVE FLD0617A        TO FLD0617C.
           MOVE FLD0618A        TO FLD0618C.
           MOVE FLD0619A        TO FLD0619C.
           MOVE FLD0620A        TO FLD0620C.
           MOVE FLD0621A        TO FLD0621C.
           MOVE FLD0622A        TO FLD0622C.
           MOVE FLD0623A        TO FLD0623C.
           MOVE FLD0624A        TO FLD0624C.
           MOVE FLD0625A        TO FLD0625C.
           MOVE FLD0626A        TO FLD0626C.
           MOVE FLD0627A        TO FLD0627C.
           MOVE FLD0628A        TO FLD0628C.
           MOVE FLD0629A        TO FLD0629C.
           MOVE FLD0630A        TO FLD0630C.
           MOVE FLD0631A        TO FLD0631C.
           MOVE FLD0632A        TO FLD0632C.
           MOVE FLD0633A        TO FLD0633C.
           MOVE FLD0634A        TO FLD0634C.
           MOVE FLD0635A        TO FLD0635C.
           MOVE FLD0636A        TO FLD0636C.
           MOVE FLD0637A        TO FLD0637C.
           MOVE FLD0638A        TO FLD0638C.
           MOVE FLD0639A        TO FLD0639C.
           MOVE FLD0640A        TO FLD0640C.
           MOVE FLD0641A        TO FLD0641C.
           MOVE FLD0642A        TO FLD0642C.
           MOVE FLD0643A        TO FLD0643C.
           MOVE FLD0644A        TO FLD0644C.
           MOVE FLD0645A        TO FLD0645C.
           MOVE FLD0646A        TO FLD0646C.
           MOVE FLD0647A        TO FLD0647C.
           MOVE FLD0648A        TO FLD0648C.
           MOVE FLD0649A        TO FLD0649C.
           MOVE FLD0650A        TO FLD0650C.
           MOVE FLD0651A        TO FLD0651C.
           MOVE FLD0652A        TO FLD0652C.
           MOVE FLD0653A        TO FLD0653C.
           MOVE FLD0654A        TO FLD0654C.
           MOVE FLD0655A        TO FLD0655C.
           MOVE FLD0656A        TO FLD0656C.
           MOVE FLD0657A        TO FLD0657C.
           MOVE FLD0658A        TO FLD0658C.
           MOVE FLD0659A        TO FLD0659C.
           MOVE FLD0660A        TO FLD0660C.
           MOVE FLD0661A        TO FLD0661C.
           MOVE FLD0662A        TO FLD0662C.
           MOVE FLD0663A        TO FLD0663C.
           MOVE FLD0664A        TO FLD0664C.
           MOVE FLD0665A        TO FLD0665C.
           MOVE FLD0666A        TO FLD0666C.
           MOVE FLD0667A        TO FLD0667C.
           MOVE FLD0668A        TO FLD0668C.
           MOVE FLD0669A        TO FLD0669C.
           MOVE FLD0670A        TO FLD0670C.
           MOVE FLD0671A        TO FLD0671C.
           MOVE FLD0672A        TO FLD0672C.
           MOVE FLD0673A        TO FLD0673C.
           MOVE FLD0674A        TO FLD0674C.
           MOVE FLD0675A        TO FLD0675C.
           MOVE FLD0676A        TO FLD0676C.
           MOVE FLD0677A        TO FLD0677C.
           MOVE FLD0678A        TO FLD0678C.
           MOVE FLD0679A        TO FLD0679C.
           MOVE FLD0680A        TO FLD0680C.
           MOVE FLD0681A        TO FLD0681C.
           MOVE FLD0682A        TO FLD0682C.
           MOVE FLD0683A        TO FLD0683C.
           MOVE FLD0684A        TO FLD0684C.
           MOVE FLD0685A        TO FLD0685C.
           MOVE FLD0686A        TO FLD0686C.
           MOVE FLD0687A        TO FLD0687C.
           MOVE FLD0688A        TO FLD0688C.
           MOVE FLD0689A        TO FLD0689C.
           MOVE FLD0690A        TO FLD0690C.
           MOVE FLD0691A        TO FLD0691C.
           MOVE FLD0692A        TO FLD0692C.
           MOVE FLD0693A        TO FLD0693C.
           MOVE FLD0694A        TO FLD0694C.
           MOVE FLD0695A        TO FLD0695C.
           MOVE FLD0696A        TO FLD0696C.
           MOVE FLD0697A        TO FLD0697C.
           MOVE FLD0698A        TO FLD0698C.
           MOVE FLD0699A        TO FLD0699C.
           MOVE FLD0700A        TO FLD0700C.
           MOVE FLD0701A        TO FLD0701C.
           MOVE FLD0702A        TO FLD0702C.
           MOVE FLD0703A        TO FLD0703C.
           MOVE FLD0704A        TO FLD0704C.
           MOVE FLD0705A        TO FLD0705C.
           MOVE FLD0706A        TO FLD0706C.
           MOVE FLD0707A        TO FLD0707C.
           MOVE FLD0708A        TO FLD0708C.
           MOVE FLD0709A        TO FLD0709C.
           MOVE FLD0710A        TO FLD0710C.
           MOVE FLD0711A        TO FLD0711C.
           MOVE FLD0712A        TO FLD0712C.
           MOVE FLD0713A        TO FLD0713C.
           MOVE FLD0714A        TO FLD0714C.
           MOVE FLD0715A        TO FLD0715C.
           MOVE FLD0716A        TO FLD0716C.
           MOVE FLD0717A        TO FLD0717C.
           MOVE FLD0718A        TO FLD0718C.
           MOVE FLD0719A        TO FLD0719C.
           MOVE FLD0720A        TO FLD0720C.
           MOVE FLD0721A        TO FLD0721C.
           MOVE FLD0722A        TO FLD0722C.
           MOVE FLD0723A        TO FLD0723C.
           MOVE FLD0724A        TO FLD0724C.
           MOVE FLD0725A        TO FLD0725C.
           MOVE FLD0726A        TO FLD0726C.
           MOVE FLD0727A        TO FLD0727C.
           MOVE FLD0728A        TO FLD0728C.
           MOVE FLD0729A        TO FLD0729C.
           MOVE FLD0730A        TO FLD0730C.
           MOVE FLD0731A        TO FLD0731C.
           MOVE FLD0732A        TO FLD0732C.
           MOVE FLD0733A        TO FLD0733C.
           MOVE FLD0734A        TO FLD0734C.
           MOVE FLD0735A        TO FLD0735C.
           MOVE FLD0736A        TO FLD0736C.
           MOVE FLD0737A        TO FLD0737C.
           MOVE FLD0738A        TO FLD0738C.
           MOVE FLD0739A        TO FLD0739C.
           MOVE FLD0740A        TO FLD0740C.
           MOVE FLD0741A        TO FLD0741C.
           MOVE FLD0742A        TO FLD0742C.
           MOVE FLD0743A        TO FLD0743C.
           MOVE FLD0744A        TO FLD0744C.
           MOVE FLD0745A        TO FLD0745C.
           MOVE FLD0746A        TO FLD0746C.
           MOVE FLD0747A        TO FLD0747C.
           MOVE FLD0748A        TO FLD0748C.
           MOVE FLD0749A        TO FLD0749C.
           MOVE FLD0750A        TO FLD0750C.
           MOVE FLD0751A        TO FLD0751C.
           MOVE FLD0752A        TO FLD0752C.
           MOVE FLD0753A        TO FLD0753C.
           MOVE FLD0754A        TO FLD0754C.
           MOVE FLD0755A        TO FLD0755C.
           MOVE FLD0756A        TO FLD0756C.
           MOVE FLD0757A        TO FLD0757C.
           MOVE FLD0758A        TO FLD0758C.
           MOVE FLD0759A        TO FLD0759C.
           MOVE FLD0760A        TO FLD0760C.
           MOVE FLD0761A        TO FLD0761C.
           MOVE FLD0762A        TO FLD0762C.
           MOVE FLD0763A        TO FLD0763C.
           MOVE FLD0764A        TO FLD0764C.
           MOVE FLD0765A        TO FLD0765C.
           MOVE FLD0766A        TO FLD0766C.
           MOVE FLD0767A        TO FLD0767C.
           MOVE FLD0768A        TO FLD0768C.
           MOVE FLD0769A        TO FLD0769C.
           MOVE FLD0770A        TO FLD0770C.
           MOVE FLD0771A        TO FLD0771C.
           MOVE FLD0772A        TO FLD0772C.
           MOVE FLD0773A        TO FLD0773C.
           MOVE FLD0774A        TO FLD0774C.
           MOVE FLD0775A        TO FLD0775C.
           MOVE FLD0776A        TO FLD0776C.
           MOVE FLD0777A        TO FLD0777C.
           MOVE FLD0778A        TO FLD0778C.
           MOVE FLD0779A        TO FLD0779C.
           MOVE FLD0780A        TO FLD0780C.
           MOVE FLD0781A        TO FLD0781C.
           MOVE FLD0782A        TO FLD0782C.
           MOVE FLD0783A        TO FLD0783C.
           MOVE FLD0784A        TO FLD0784C.
           MOVE FLD0785A        TO FLD0785C.
           MOVE FLD0786A        TO FLD0786C.
           MOVE FLD0787A        TO FLD0787C.
           MOVE FLD0788A        TO FLD0788C.
           MOVE FLD0789A        TO FLD0789C.
           MOVE FLD0790A        TO FLD0790C.
           MOVE FLD0791A        TO FLD0791C.
           MOVE FLD0792A        TO FLD0792C.
           MOVE FLD0793A        TO FLD0793C.
           MOVE FLD0794A        TO FLD0794C.
           MOVE FLD0795A        TO FLD0795C.
           MOVE FLD0796A        TO FLD0796C.
           MOVE FLD0797A        TO FLD0797C.
           MOVE FLD0798A        TO FLD0798C.
           MOVE FLD0799A        TO FLD0799C.
           MOVE FLD0800A        TO FLD0800C.
           MOVE FLD0801A        TO FLD0801C.
           MOVE FLD0802A        TO FLD0802C.
           MOVE FLD0803A        TO FLD0803C.
           MOVE FLD0804A        TO FLD0804C.
           MOVE FLD0805A        TO FLD0805C.
           MOVE FLD0806A        TO FLD0806C.
           MOVE FLD0807A        TO FLD0807C.
           MOVE FLD0808A        TO FLD0808C.
           MOVE FLD0809A        TO FLD0809C.
           MOVE FLD0810A        TO FLD0810C.
           MOVE FLD0811A        TO FLD0811C.
           MOVE FLD0812A        TO FLD0812C.
           MOVE FLD0813A        TO FLD0813C.
           MOVE FLD0814A        TO FLD0814C.
           MOVE FLD0815A        TO FLD0815C.
           MOVE FLD0816A        TO FLD0816C.
           MOVE FLD0817A        TO FLD0817C.
           MOVE FLD0818A        TO FLD0818C.
           MOVE FLD0819A        TO FLD0819C.
           MOVE FLD0820A        TO FLD0820C.
           MOVE FLD0821A        TO FLD0821C.
           MOVE FLD0822A        TO FLD0822C.
           MOVE FLD0823A        TO FLD0823C.
           MOVE FLD0824A        TO FLD0824C.
           MOVE FLD0825A        TO FLD0825C.
           MOVE FLD0826A        TO FLD0826C.
           MOVE FLD0827A        TO FLD0827C.
           MOVE FLD0828A        TO FLD0828C.
           MOVE FLD0829A        TO FLD0829C.
           MOVE FLD0830A        TO FLD0830C.
           MOVE FLD0831A        TO FLD0831C.
           MOVE FLD0832A        TO FLD0832C.
           MOVE FLD0833A        TO FLD0833C.
           MOVE FLD0834A        TO FLD0834C.
           MOVE FLD0835A        TO FLD0835C.
           MOVE FLD0836A        TO FLD0836C.
           MOVE FLD0837A        TO FLD0837C.
           MOVE FLD0838A        TO FLD0838C.
           MOVE FLD0839A        TO FLD0839C.
           MOVE FLD0840A        TO FLD0840C.
           MOVE FLD0841A        TO FLD0841C.
           MOVE FLD0842A        TO FLD0842C.
           MOVE FLD0843A        TO FLD0843C.
           MOVE FLD0844A        TO FLD0844C.
           MOVE FLD0845A        TO FLD0845C.
           MOVE FLD0846A        TO FLD0846C.
           MOVE FLD0847A        TO FLD0847C.
           MOVE FLD0848A        TO FLD0848C.
           MOVE FLD0849A        TO FLD0849C.
           MOVE FLD0850A        TO FLD0850C.
           MOVE FLD0851A        TO FLD0851C.
           MOVE FLD0852A        TO FLD0852C.
           MOVE FLD0853A        TO FLD0853C.
           MOVE FLD0854A        TO FLD0854C.
           MOVE FLD0855A        TO FLD0855C.
           MOVE FLD0856A        TO FLD0856C.
           MOVE FLD0857A        TO FLD0857C.
           MOVE FLD0858A        TO FLD0858C.
           MOVE FLD0859A        TO FLD0859C.
           MOVE FLD0860A        TO FLD0860C.
           MOVE FLD0861A        TO FLD0861C.
           MOVE FLD0862A        TO FLD0862C.
           MOVE FLD0863A        TO FLD0863C.
           MOVE FLD0864A        TO FLD0864C.
           MOVE FLD0865A        TO FLD0865C.
           MOVE FLD0866A        TO FLD0866C.
           MOVE FLD0867A        TO FLD0867C.
           MOVE FLD0868A        TO FLD0868C.
           MOVE FLD0869A        TO FLD0869C.
           MOVE FLD0870A        TO FLD0870C.
           MOVE FLD0871A        TO FLD0871C.
           MOVE FLD0872A        TO FLD0872C.
           MOVE FLD0873A        TO FLD0873C.
           MOVE FLD0874A        TO FLD0874C.
           MOVE FLD0875A        TO FLD0875C.
           MOVE FLD0876A        TO FLD0876C.
           MOVE FLD0877A        TO FLD0877C.
           MOVE FLD0878A        TO FLD0878C.
           MOVE FLD0879A        TO FLD0879C.
           MOVE FLD0880A        TO FLD0880C.
           MOVE FLD0881A        TO FLD0881C.
           MOVE FLD0882A        TO FLD0882C.
           MOVE FLD0883A        TO FLD0883C.
           MOVE FLD0884A        TO FLD0884C.
           MOVE FLD0885A        TO FLD0885C.
           MOVE FLD0886A        TO FLD0886C.
           MOVE FLD0887A        TO FLD0887C.
           MOVE FLD0888A        TO FLD0888C.
           MOVE FLD0889A        TO FLD0889C.
           MOVE FLD0890A        TO FLD0890C.
           MOVE FLD0891A        TO FLD0891C.
           MOVE FLD0892A        TO FLD0892C.
           MOVE FLD0893A        TO FLD0893C.
           MOVE FLD0894A        TO FLD0894C.
           MOVE FLD0895A        TO FLD0895C.
           MOVE FLD0896A        TO FLD0896C.
           MOVE FLD0897A        TO FLD0897C.
           MOVE FLD0898A        TO FLD0898C.
           MOVE FLD0899A        TO FLD0899C.
           MOVE FLD0900A        TO FLD0900C.
           MOVE FLD0901A        TO FLD0901C.
           MOVE FLD0902A        TO FLD0902C.
           MOVE FLD0903A        TO FLD0903C.
           MOVE FLD0904A        TO FLD0904C.
           MOVE FLD0905A        TO FLD0905C.
           MOVE FLD0906A        TO FLD0906C.
           MOVE FLD0907A        TO FLD0907C.
           MOVE FLD0908A        TO FLD0908C.
           MOVE FLD0909A        TO FLD0909C.
           MOVE FLD0910A        TO FLD0910C.
           MOVE FLD0911A        TO FLD0911C.
           MOVE FLD0912A        TO FLD0912C.
           MOVE FLD0913A        TO FLD0913C.
           MOVE FLD0914A        TO FLD0914C.
           MOVE FLD0915A        TO FLD0915C.
           MOVE FLD0916A        TO FLD0916C.
           MOVE FLD0917A        TO FLD0917C.
           MOVE FLD0918A        TO FLD0918C.
           MOVE FLD0919A        TO FLD0919C.
           MOVE FLD0920A        TO FLD0920C.
           MOVE FLD0921A        TO FLD0921C.
           MOVE FLD0922A        TO FLD0922C.
           MOVE FLD0923A        TO FLD0923C.
           MOVE FLD0924A        TO FLD0924C.
           MOVE FLD0925A        TO FLD0925C.
           MOVE FLD0926A        TO FLD0926C.
           MOVE FLD0927A        TO FLD0927C.
           MOVE FLD0928A        TO FLD0928C.
           MOVE FLD0929A        TO FLD0929C.
           MOVE FLD0930A        TO FLD0930C.
           MOVE FLD0931A        TO FLD0931C.
           MOVE FLD0932A        TO FLD0932C.
           MOVE FLD0933A        TO FLD0933C.
           MOVE FLD0934A        TO FLD0934C.
           MOVE FLD0935A        TO FLD0935C.
           MOVE FLD0936A        TO FLD0936C.
           MOVE FLD0937A        TO FLD0937C.
           MOVE FLD0938A        TO FLD0938C.
           MOVE FLD0939A        TO FLD0939C.
           MOVE FLD0940A        TO FLD0940C.
           MOVE FLD0941A        TO FLD0941C.
           MOVE FLD0942A        TO FLD0942C.
           MOVE FLD0943A        TO FLD0943C.
           MOVE FLD0944A        TO FLD0944C.
           MOVE FLD0945A        TO FLD0945C.
           MOVE FLD0946A        TO FLD0946C.
           MOVE FLD0947A        TO FLD0947C.
           MOVE FLD0948A        TO FLD0948C.
           MOVE FLD0949A        TO FLD0949C.
           MOVE FLD0950A        TO FLD0950C.
           MOVE FLD0951A        TO FLD0951C.
           MOVE FLD0952A        TO FLD0952C.
           MOVE FLD0953A        TO FLD0953C.
           MOVE FLD0954A        TO FLD0954C.
           MOVE FLD0955A        TO FLD0955C.
           MOVE FLD0956A        TO FLD0956C.
           MOVE FLD0957A        TO FLD0957C.
           MOVE FLD0958A        TO FLD0958C.
           MOVE FLD0959A        TO FLD0959C.
           MOVE FLD0960A        TO FLD0960C.
           MOVE FLD0961A        TO FLD0961C.
           MOVE FLD0962A        TO FLD0962C.
           MOVE FLD0963A        TO FLD0963C.
           MOVE FLD0964A        TO FLD0964C.
           MOVE FLD0965A        TO FLD0965C.
           MOVE FLD0966A        TO FLD0966C.
           MOVE FLD0967A        TO FLD0967C.
           MOVE FLD0968A        TO FLD0968C.
           MOVE FLD0969A        TO FLD0969C.
           MOVE FLD0970A        TO FLD0970C.
           MOVE FLD0971A        TO FLD0971C.
           MOVE FLD0972A        TO FLD0972C.
           MOVE FLD0973A        TO FLD0973C.
           MOVE FLD0974A        TO FLD0974C.
           MOVE FLD0975A        TO FLD0975C.
           MOVE FLD0976A        TO FLD0976C.
           MOVE FLD0977A        TO FLD0977C.
           MOVE FLD0978A        TO FLD0978C.
           MOVE FLD0979A        TO FLD0979C.
           MOVE FLD0980A        TO FLD0980C.
           MOVE FLD0981A        TO FLD0981C.
           MOVE FLD0982A        TO FLD0982C.
           MOVE FLD0983A        TO FLD0983C.
           MOVE FLD0984A        TO FLD0984C.
           MOVE FLD0985A        TO FLD0985C.
           MOVE FLD0986A        TO FLD0986C.
           MOVE FLD0987A        TO FLD0987C.
           MOVE FLD0988A        TO FLD0988C.
           MOVE FLD0989A        TO FLD0989C.
           MOVE FLD0990A        TO FLD0990C.
           MOVE FLD0991A        TO FLD0991C.
           MOVE FLD0992A        TO FLD0992C.
           MOVE FLD0993A        TO FLD0993C.
           MOVE FLD0994A        TO FLD0994C.
           MOVE FLD0995A        TO FLD0995C.
           MOVE FLD0996A        TO FLD0996C.
           MOVE FLD0997A        TO FLD0997C.
           MOVE FLD0998A        TO FLD0998C.
           MOVE FLD0999A        TO FLD0999C.

       4000-COMPARE.

           IF FLD0500C (1:)    NOT EQUAL XPC-FLD0500C
              DISPLAY 'FLD0500C ==> ' HEX-OF (FLD0500C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0500C).
           IF FLD0501C (1:)    NOT EQUAL XPC-FLD0501C
              DISPLAY 'FLD0501C ==> ' HEX-OF (FLD0501C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0501C).
           IF FLD0502C (1:)    NOT EQUAL XPC-FLD0502C
              DISPLAY 'FLD0502C ==> ' HEX-OF (FLD0502C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0502C).
           IF FLD0503C (1:)    NOT EQUAL XPC-FLD0503C
              DISPLAY 'FLD0503C ==> ' HEX-OF (FLD0503C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0503C).
           IF FLD0504C (1:)    NOT EQUAL XPC-FLD0504C
              DISPLAY 'FLD0504C ==> ' HEX-OF (FLD0504C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0504C).
           IF FLD0505C (1:)    NOT EQUAL XPC-FLD0505C
              DISPLAY 'FLD0505C ==> ' HEX-OF (FLD0505C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0505C).
           IF FLD0506C (1:)    NOT EQUAL XPC-FLD0506C
              DISPLAY 'FLD0506C ==> ' HEX-OF (FLD0506C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0506C).
           IF FLD0507C (1:)    NOT EQUAL XPC-FLD0507C
              DISPLAY 'FLD0507C ==> ' HEX-OF (FLD0507C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0507C).
           IF FLD0508C (1:)    NOT EQUAL XPC-FLD0508C
              DISPLAY 'FLD0508C ==> ' HEX-OF (FLD0508C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0508C).
           IF FLD0509C (1:)    NOT EQUAL XPC-FLD0509C
              DISPLAY 'FLD0509C ==> ' HEX-OF (FLD0509C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0509C).
           IF FLD0510C (1:)    NOT EQUAL XPC-FLD0510C
              DISPLAY 'FLD0510C ==> ' HEX-OF (FLD0510C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0510C).
           IF FLD0511C (1:)    NOT EQUAL XPC-FLD0511C
              DISPLAY 'FLD0511C ==> ' HEX-OF (FLD0511C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0511C).
           IF FLD0512C (1:)    NOT EQUAL XPC-FLD0512C
              DISPLAY 'FLD0512C ==> ' HEX-OF (FLD0512C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0512C).
           IF FLD0513C (1:)    NOT EQUAL XPC-FLD0513C
              DISPLAY 'FLD0513C ==> ' HEX-OF (FLD0513C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0513C).
           IF FLD0514C (1:)    NOT EQUAL XPC-FLD0514C
              DISPLAY 'FLD0514C ==> ' HEX-OF (FLD0514C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0514C).
           IF FLD0515C (1:)    NOT EQUAL XPC-FLD0515C
              DISPLAY 'FLD0515C ==> ' HEX-OF (FLD0515C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0515C).
           IF FLD0516C (1:)    NOT EQUAL XPC-FLD0516C
              DISPLAY 'FLD0516C ==> ' HEX-OF (FLD0516C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0516C).
           IF FLD0517C (1:)    NOT EQUAL XPC-FLD0517C
              DISPLAY 'FLD0517C ==> ' HEX-OF (FLD0517C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0517C).
           IF FLD0518C (1:)    NOT EQUAL XPC-FLD0518C
              DISPLAY 'FLD0518C ==> ' HEX-OF (FLD0518C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0518C).
           IF FLD0519C (1:)    NOT EQUAL XPC-FLD0519C
              DISPLAY 'FLD0519C ==> ' HEX-OF (FLD0519C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0519C).
           IF FLD0520C (1:)    NOT EQUAL XPC-FLD0520C
              DISPLAY 'FLD0520C ==> ' HEX-OF (FLD0520C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0520C).
           IF FLD0521C (1:)    NOT EQUAL XPC-FLD0521C
              DISPLAY 'FLD0521C ==> ' HEX-OF (FLD0521C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0521C).
           IF FLD0522C (1:)    NOT EQUAL XPC-FLD0522C
              DISPLAY 'FLD0522C ==> ' HEX-OF (FLD0522C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0522C).
           IF FLD0523C (1:)    NOT EQUAL XPC-FLD0523C
              DISPLAY 'FLD0523C ==> ' HEX-OF (FLD0523C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0523C).
           IF FLD0524C (1:)    NOT EQUAL XPC-FLD0524C
              DISPLAY 'FLD0524C ==> ' HEX-OF (FLD0524C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0524C).
           IF FLD0525C (1:)    NOT EQUAL XPC-FLD0525C
              DISPLAY 'FLD0525C ==> ' HEX-OF (FLD0525C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0525C).
           IF FLD0526C (1:)    NOT EQUAL XPC-FLD0526C
              DISPLAY 'FLD0526C ==> ' HEX-OF (FLD0526C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0526C).
           IF FLD0527C (1:)    NOT EQUAL XPC-FLD0527C
              DISPLAY 'FLD0527C ==> ' HEX-OF (FLD0527C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0527C).
           IF FLD0528C (1:)    NOT EQUAL XPC-FLD0528C
              DISPLAY 'FLD0528C ==> ' HEX-OF (FLD0528C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0528C).
           IF FLD0529C (1:)    NOT EQUAL XPC-FLD0529C
              DISPLAY 'FLD0529C ==> ' HEX-OF (FLD0529C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0529C).
           IF FLD0530C (1:)    NOT EQUAL XPC-FLD0530C
              DISPLAY 'FLD0530C ==> ' HEX-OF (FLD0530C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0530C).
           IF FLD0531C (1:)    NOT EQUAL XPC-FLD0531C
              DISPLAY 'FLD0531C ==> ' HEX-OF (FLD0531C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0531C).
           IF FLD0532C (1:)    NOT EQUAL XPC-FLD0532C
              DISPLAY 'FLD0532C ==> ' HEX-OF (FLD0532C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0532C).
           IF FLD0533C (1:)    NOT EQUAL XPC-FLD0533C
              DISPLAY 'FLD0533C ==> ' HEX-OF (FLD0533C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0533C).
           IF FLD0534C (1:)    NOT EQUAL XPC-FLD0534C
              DISPLAY 'FLD0534C ==> ' HEX-OF (FLD0534C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0534C).
           IF FLD0535C (1:)    NOT EQUAL XPC-FLD0535C
              DISPLAY 'FLD0535C ==> ' HEX-OF (FLD0535C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0535C).
           IF FLD0536C (1:)    NOT EQUAL XPC-FLD0536C
              DISPLAY 'FLD0536C ==> ' HEX-OF (FLD0536C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0536C).
           IF FLD0537C (1:)    NOT EQUAL XPC-FLD0537C
              DISPLAY 'FLD0537C ==> ' HEX-OF (FLD0537C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0537C).
           IF FLD0538C (1:)    NOT EQUAL XPC-FLD0538C
              DISPLAY 'FLD0538C ==> ' HEX-OF (FLD0538C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0538C).
           IF FLD0539C (1:)    NOT EQUAL XPC-FLD0539C
              DISPLAY 'FLD0539C ==> ' HEX-OF (FLD0539C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0539C).
           IF FLD0540C (1:)    NOT EQUAL XPC-FLD0540C
              DISPLAY 'FLD0540C ==> ' HEX-OF (FLD0540C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0540C).
           IF FLD0541C (1:)    NOT EQUAL XPC-FLD0541C
              DISPLAY 'FLD0541C ==> ' HEX-OF (FLD0541C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0541C).
           IF FLD0542C (1:)    NOT EQUAL XPC-FLD0542C
              DISPLAY 'FLD0542C ==> ' HEX-OF (FLD0542C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0542C).
           IF FLD0543C (1:)    NOT EQUAL XPC-FLD0543C
              DISPLAY 'FLD0543C ==> ' HEX-OF (FLD0543C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0543C).
           IF FLD0544C (1:)    NOT EQUAL XPC-FLD0544C
              DISPLAY 'FLD0544C ==> ' HEX-OF (FLD0544C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0544C).
           IF FLD0545C (1:)    NOT EQUAL XPC-FLD0545C
              DISPLAY 'FLD0545C ==> ' HEX-OF (FLD0545C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0545C).
           IF FLD0546C (1:)    NOT EQUAL XPC-FLD0546C
              DISPLAY 'FLD0546C ==> ' HEX-OF (FLD0546C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0546C).
           IF FLD0547C (1:)    NOT EQUAL XPC-FLD0547C
              DISPLAY 'FLD0547C ==> ' HEX-OF (FLD0547C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0547C).
           IF FLD0548C (1:)    NOT EQUAL XPC-FLD0548C
              DISPLAY 'FLD0548C ==> ' HEX-OF (FLD0548C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0548C).
           IF FLD0549C (1:)    NOT EQUAL XPC-FLD0549C
              DISPLAY 'FLD0549C ==> ' HEX-OF (FLD0549C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0549C).
           IF FLD0550C (1:)    NOT EQUAL XPC-FLD0550C
              DISPLAY 'FLD0550C ==> ' HEX-OF (FLD0550C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0550C).
           IF FLD0551C (1:)    NOT EQUAL XPC-FLD0551C
              DISPLAY 'FLD0551C ==> ' HEX-OF (FLD0551C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0551C).
           IF FLD0552C (1:)    NOT EQUAL XPC-FLD0552C
              DISPLAY 'FLD0552C ==> ' HEX-OF (FLD0552C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0552C).
           IF FLD0553C (1:)    NOT EQUAL XPC-FLD0553C
              DISPLAY 'FLD0553C ==> ' HEX-OF (FLD0553C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0553C).
           IF FLD0554C (1:)    NOT EQUAL XPC-FLD0554C
              DISPLAY 'FLD0554C ==> ' HEX-OF (FLD0554C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0554C).
           IF FLD0555C (1:)    NOT EQUAL XPC-FLD0555C
              DISPLAY 'FLD0555C ==> ' HEX-OF (FLD0555C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0555C).
           IF FLD0556C (1:)    NOT EQUAL XPC-FLD0556C
              DISPLAY 'FLD0556C ==> ' HEX-OF (FLD0556C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0556C).
           IF FLD0557C (1:)    NOT EQUAL XPC-FLD0557C
              DISPLAY 'FLD0557C ==> ' HEX-OF (FLD0557C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0557C).
           IF FLD0558C (1:)    NOT EQUAL XPC-FLD0558C
              DISPLAY 'FLD0558C ==> ' HEX-OF (FLD0558C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0558C).
           IF FLD0559C (1:)    NOT EQUAL XPC-FLD0559C
              DISPLAY 'FLD0559C ==> ' HEX-OF (FLD0559C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0559C).
           IF FLD0560C (1:)    NOT EQUAL XPC-FLD0560C
              DISPLAY 'FLD0560C ==> ' HEX-OF (FLD0560C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0560C).
           IF FLD0561C (1:)    NOT EQUAL XPC-FLD0561C
              DISPLAY 'FLD0561C ==> ' HEX-OF (FLD0561C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0561C).
           IF FLD0562C (1:)    NOT EQUAL XPC-FLD0562C
              DISPLAY 'FLD0562C ==> ' HEX-OF (FLD0562C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0562C).
           IF FLD0563C (1:)    NOT EQUAL XPC-FLD0563C
              DISPLAY 'FLD0563C ==> ' HEX-OF (FLD0563C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0563C).
           IF FLD0564C (1:)    NOT EQUAL XPC-FLD0564C
              DISPLAY 'FLD0564C ==> ' HEX-OF (FLD0564C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0564C).
           IF FLD0565C (1:)    NOT EQUAL XPC-FLD0565C
              DISPLAY 'FLD0565C ==> ' HEX-OF (FLD0565C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0565C).
           IF FLD0566C (1:)    NOT EQUAL XPC-FLD0566C
              DISPLAY 'FLD0566C ==> ' HEX-OF (FLD0566C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0566C).
           IF FLD0567C (1:)    NOT EQUAL XPC-FLD0567C
              DISPLAY 'FLD0567C ==> ' HEX-OF (FLD0567C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0567C).
           IF FLD0568C (1:)    NOT EQUAL XPC-FLD0568C
              DISPLAY 'FLD0568C ==> ' HEX-OF (FLD0568C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0568C).
           IF FLD0569C (1:)    NOT EQUAL XPC-FLD0569C
              DISPLAY 'FLD0569C ==> ' HEX-OF (FLD0569C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0569C).
           IF FLD0570C (1:)    NOT EQUAL XPC-FLD0570C
              DISPLAY 'FLD0570C ==> ' HEX-OF (FLD0570C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0570C).
           IF FLD0571C (1:)    NOT EQUAL XPC-FLD0571C
              DISPLAY 'FLD0571C ==> ' HEX-OF (FLD0571C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0571C).
           IF FLD0572C (1:)    NOT EQUAL XPC-FLD0572C
              DISPLAY 'FLD0572C ==> ' HEX-OF (FLD0572C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0572C).
           IF FLD0573C (1:)    NOT EQUAL XPC-FLD0573C
              DISPLAY 'FLD0573C ==> ' HEX-OF (FLD0573C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0573C).
           IF FLD0574C (1:)    NOT EQUAL XPC-FLD0574C
              DISPLAY 'FLD0574C ==> ' HEX-OF (FLD0574C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0574C).
           IF FLD0575C (1:)    NOT EQUAL XPC-FLD0575C
              DISPLAY 'FLD0575C ==> ' HEX-OF (FLD0575C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0575C).
           IF FLD0576C (1:)    NOT EQUAL XPC-FLD0576C
              DISPLAY 'FLD0576C ==> ' HEX-OF (FLD0576C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0576C).
           IF FLD0577C (1:)    NOT EQUAL XPC-FLD0577C
              DISPLAY 'FLD0577C ==> ' HEX-OF (FLD0577C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0577C).
           IF FLD0578C (1:)    NOT EQUAL XPC-FLD0578C
              DISPLAY 'FLD0578C ==> ' HEX-OF (FLD0578C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0578C).
           IF FLD0579C (1:)    NOT EQUAL XPC-FLD0579C
              DISPLAY 'FLD0579C ==> ' HEX-OF (FLD0579C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0579C).
           IF FLD0580C (1:)    NOT EQUAL XPC-FLD0580C
              DISPLAY 'FLD0580C ==> ' HEX-OF (FLD0580C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0580C).
           IF FLD0581C (1:)    NOT EQUAL XPC-FLD0581C
              DISPLAY 'FLD0581C ==> ' HEX-OF (FLD0581C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0581C).
           IF FLD0582C (1:)    NOT EQUAL XPC-FLD0582C
              DISPLAY 'FLD0582C ==> ' HEX-OF (FLD0582C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0582C).
           IF FLD0583C (1:)    NOT EQUAL XPC-FLD0583C
              DISPLAY 'FLD0583C ==> ' HEX-OF (FLD0583C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0583C).
           IF FLD0584C (1:)    NOT EQUAL XPC-FLD0584C
              DISPLAY 'FLD0584C ==> ' HEX-OF (FLD0584C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0584C).
           IF FLD0585C (1:)    NOT EQUAL XPC-FLD0585C
              DISPLAY 'FLD0585C ==> ' HEX-OF (FLD0585C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0585C).
           IF FLD0586C (1:)    NOT EQUAL XPC-FLD0586C
              DISPLAY 'FLD0586C ==> ' HEX-OF (FLD0586C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0586C).
           IF FLD0587C (1:)    NOT EQUAL XPC-FLD0587C
              DISPLAY 'FLD0587C ==> ' HEX-OF (FLD0587C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0587C).
           IF FLD0588C (1:)    NOT EQUAL XPC-FLD0588C
              DISPLAY 'FLD0588C ==> ' HEX-OF (FLD0588C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0588C).
           IF FLD0589C (1:)    NOT EQUAL XPC-FLD0589C
              DISPLAY 'FLD0589C ==> ' HEX-OF (FLD0589C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0589C).
           IF FLD0590C (1:)    NOT EQUAL XPC-FLD0590C
              DISPLAY 'FLD0590C ==> ' HEX-OF (FLD0590C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0590C).
           IF FLD0591C (1:)    NOT EQUAL XPC-FLD0591C
              DISPLAY 'FLD0591C ==> ' HEX-OF (FLD0591C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0591C).
           IF FLD0592C (1:)    NOT EQUAL XPC-FLD0592C
              DISPLAY 'FLD0592C ==> ' HEX-OF (FLD0592C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0592C).
           IF FLD0593C (1:)    NOT EQUAL XPC-FLD0593C
              DISPLAY 'FLD0593C ==> ' HEX-OF (FLD0593C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0593C).
           IF FLD0594C (1:)    NOT EQUAL XPC-FLD0594C
              DISPLAY 'FLD0594C ==> ' HEX-OF (FLD0594C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0594C).
           IF FLD0595C (1:)    NOT EQUAL XPC-FLD0595C
              DISPLAY 'FLD0595C ==> ' HEX-OF (FLD0595C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0595C).
           IF FLD0596C (1:)    NOT EQUAL XPC-FLD0596C
              DISPLAY 'FLD0596C ==> ' HEX-OF (FLD0596C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0596C).
           IF FLD0597C (1:)    NOT EQUAL XPC-FLD0597C
              DISPLAY 'FLD0597C ==> ' HEX-OF (FLD0597C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0597C).
           IF FLD0598C (1:)    NOT EQUAL XPC-FLD0598C
              DISPLAY 'FLD0598C ==> ' HEX-OF (FLD0598C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0598C).
           IF FLD0599C (1:)    NOT EQUAL XPC-FLD0599C
              DISPLAY 'FLD0599C ==> ' HEX-OF (FLD0599C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0599C).
           IF FLD0600C (1:)    NOT EQUAL XPC-FLD0600C
              DISPLAY 'FLD0600C ==> ' HEX-OF (FLD0600C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0600C).
           IF FLD0601C (1:)    NOT EQUAL XPC-FLD0601C
              DISPLAY 'FLD0601C ==> ' HEX-OF (FLD0601C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0601C).
           IF FLD0602C (1:)    NOT EQUAL XPC-FLD0602C
              DISPLAY 'FLD0602C ==> ' HEX-OF (FLD0602C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0602C).
           IF FLD0603C (1:)    NOT EQUAL XPC-FLD0603C
              DISPLAY 'FLD0603C ==> ' HEX-OF (FLD0603C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0603C).
           IF FLD0604C (1:)    NOT EQUAL XPC-FLD0604C
              DISPLAY 'FLD0604C ==> ' HEX-OF (FLD0604C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0604C).
           IF FLD0605C (1:)    NOT EQUAL XPC-FLD0605C
              DISPLAY 'FLD0605C ==> ' HEX-OF (FLD0605C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0605C).
           IF FLD0606C (1:)    NOT EQUAL XPC-FLD0606C
              DISPLAY 'FLD0606C ==> ' HEX-OF (FLD0606C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0606C).
           IF FLD0607C (1:)    NOT EQUAL XPC-FLD0607C
              DISPLAY 'FLD0607C ==> ' HEX-OF (FLD0607C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0607C).
           IF FLD0608C (1:)    NOT EQUAL XPC-FLD0608C
              DISPLAY 'FLD0608C ==> ' HEX-OF (FLD0608C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0608C).
           IF FLD0609C (1:)    NOT EQUAL XPC-FLD0609C
              DISPLAY 'FLD0609C ==> ' HEX-OF (FLD0609C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0609C).
           IF FLD0610C (1:)    NOT EQUAL XPC-FLD0610C
              DISPLAY 'FLD0610C ==> ' HEX-OF (FLD0610C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0610C).
           IF FLD0611C (1:)    NOT EQUAL XPC-FLD0611C
              DISPLAY 'FLD0611C ==> ' HEX-OF (FLD0611C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0611C).
           IF FLD0612C (1:)    NOT EQUAL XPC-FLD0612C
              DISPLAY 'FLD0612C ==> ' HEX-OF (FLD0612C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0612C).
           IF FLD0613C (1:)    NOT EQUAL XPC-FLD0613C
              DISPLAY 'FLD0613C ==> ' HEX-OF (FLD0613C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0613C).
           IF FLD0614C (1:)    NOT EQUAL XPC-FLD0614C
              DISPLAY 'FLD0614C ==> ' HEX-OF (FLD0614C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0614C).
           IF FLD0615C (1:)    NOT EQUAL XPC-FLD0615C
              DISPLAY 'FLD0615C ==> ' HEX-OF (FLD0615C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0615C).
           IF FLD0616C (1:)    NOT EQUAL XPC-FLD0616C
              DISPLAY 'FLD0616C ==> ' HEX-OF (FLD0616C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0616C).
           IF FLD0617C (1:)    NOT EQUAL XPC-FLD0617C
              DISPLAY 'FLD0617C ==> ' HEX-OF (FLD0617C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0617C).
           IF FLD0618C (1:)    NOT EQUAL XPC-FLD0618C
              DISPLAY 'FLD0618C ==> ' HEX-OF (FLD0618C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0618C).
           IF FLD0619C (1:)    NOT EQUAL XPC-FLD0619C
              DISPLAY 'FLD0619C ==> ' HEX-OF (FLD0619C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0619C).
           IF FLD0620C (1:)    NOT EQUAL XPC-FLD0620C
              DISPLAY 'FLD0620C ==> ' HEX-OF (FLD0620C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0620C).
           IF FLD0621C (1:)    NOT EQUAL XPC-FLD0621C
              DISPLAY 'FLD0621C ==> ' HEX-OF (FLD0621C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0621C).
           IF FLD0622C (1:)    NOT EQUAL XPC-FLD0622C
              DISPLAY 'FLD0622C ==> ' HEX-OF (FLD0622C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0622C).
           IF FLD0623C (1:)    NOT EQUAL XPC-FLD0623C
              DISPLAY 'FLD0623C ==> ' HEX-OF (FLD0623C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0623C).
           IF FLD0624C (1:)    NOT EQUAL XPC-FLD0624C
              DISPLAY 'FLD0624C ==> ' HEX-OF (FLD0624C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0624C).
           IF FLD0625C (1:)    NOT EQUAL XPC-FLD0625C
              DISPLAY 'FLD0625C ==> ' HEX-OF (FLD0625C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0625C).
           IF FLD0626C (1:)    NOT EQUAL XPC-FLD0626C
              DISPLAY 'FLD0626C ==> ' HEX-OF (FLD0626C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0626C).
           IF FLD0627C (1:)    NOT EQUAL XPC-FLD0627C
              DISPLAY 'FLD0627C ==> ' HEX-OF (FLD0627C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0627C).
           IF FLD0628C (1:)    NOT EQUAL XPC-FLD0628C
              DISPLAY 'FLD0628C ==> ' HEX-OF (FLD0628C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0628C).
           IF FLD0629C (1:)    NOT EQUAL XPC-FLD0629C
              DISPLAY 'FLD0629C ==> ' HEX-OF (FLD0629C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0629C).
           IF FLD0630C (1:)    NOT EQUAL XPC-FLD0630C
              DISPLAY 'FLD0630C ==> ' HEX-OF (FLD0630C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0630C).
           IF FLD0631C (1:)    NOT EQUAL XPC-FLD0631C
              DISPLAY 'FLD0631C ==> ' HEX-OF (FLD0631C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0631C).
           IF FLD0632C (1:)    NOT EQUAL XPC-FLD0632C
              DISPLAY 'FLD0632C ==> ' HEX-OF (FLD0632C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0632C).
           IF FLD0633C (1:)    NOT EQUAL XPC-FLD0633C
              DISPLAY 'FLD0633C ==> ' HEX-OF (FLD0633C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0633C).
           IF FLD0634C (1:)    NOT EQUAL XPC-FLD0634C
              DISPLAY 'FLD0634C ==> ' HEX-OF (FLD0634C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0634C).
           IF FLD0635C (1:)    NOT EQUAL XPC-FLD0635C
              DISPLAY 'FLD0635C ==> ' HEX-OF (FLD0635C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0635C).
           IF FLD0636C (1:)    NOT EQUAL XPC-FLD0636C
              DISPLAY 'FLD0636C ==> ' HEX-OF (FLD0636C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0636C).
           IF FLD0637C (1:)    NOT EQUAL XPC-FLD0637C
              DISPLAY 'FLD0637C ==> ' HEX-OF (FLD0637C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0637C).
           IF FLD0638C (1:)    NOT EQUAL XPC-FLD0638C
              DISPLAY 'FLD0638C ==> ' HEX-OF (FLD0638C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0638C).
           IF FLD0639C (1:)    NOT EQUAL XPC-FLD0639C
              DISPLAY 'FLD0639C ==> ' HEX-OF (FLD0639C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0639C).
           IF FLD0640C (1:)    NOT EQUAL XPC-FLD0640C
              DISPLAY 'FLD0640C ==> ' HEX-OF (FLD0640C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0640C).
           IF FLD0641C (1:)    NOT EQUAL XPC-FLD0641C
              DISPLAY 'FLD0641C ==> ' HEX-OF (FLD0641C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0641C).
           IF FLD0642C (1:)    NOT EQUAL XPC-FLD0642C
              DISPLAY 'FLD0642C ==> ' HEX-OF (FLD0642C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0642C).
           IF FLD0643C (1:)    NOT EQUAL XPC-FLD0643C
              DISPLAY 'FLD0643C ==> ' HEX-OF (FLD0643C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0643C).
           IF FLD0644C (1:)    NOT EQUAL XPC-FLD0644C
              DISPLAY 'FLD0644C ==> ' HEX-OF (FLD0644C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0644C).
           IF FLD0645C (1:)    NOT EQUAL XPC-FLD0645C
              DISPLAY 'FLD0645C ==> ' HEX-OF (FLD0645C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0645C).
           IF FLD0646C (1:)    NOT EQUAL XPC-FLD0646C
              DISPLAY 'FLD0646C ==> ' HEX-OF (FLD0646C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0646C).
           IF FLD0647C (1:)    NOT EQUAL XPC-FLD0647C
              DISPLAY 'FLD0647C ==> ' HEX-OF (FLD0647C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0647C).
           IF FLD0648C (1:)    NOT EQUAL XPC-FLD0648C
              DISPLAY 'FLD0648C ==> ' HEX-OF (FLD0648C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0648C).
           IF FLD0649C (1:)    NOT EQUAL XPC-FLD0649C
              DISPLAY 'FLD0649C ==> ' HEX-OF (FLD0649C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0649C).
           IF FLD0650C (1:)    NOT EQUAL XPC-FLD0650C
              DISPLAY 'FLD0650C ==> ' HEX-OF (FLD0650C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0650C).
           IF FLD0651C (1:)    NOT EQUAL XPC-FLD0651C
              DISPLAY 'FLD0651C ==> ' HEX-OF (FLD0651C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0651C).
           IF FLD0652C (1:)    NOT EQUAL XPC-FLD0652C
              DISPLAY 'FLD0652C ==> ' HEX-OF (FLD0652C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0652C).
           IF FLD0653C (1:)    NOT EQUAL XPC-FLD0653C
              DISPLAY 'FLD0653C ==> ' HEX-OF (FLD0653C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0653C).
           IF FLD0654C (1:)    NOT EQUAL XPC-FLD0654C
              DISPLAY 'FLD0654C ==> ' HEX-OF (FLD0654C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0654C).
           IF FLD0655C (1:)    NOT EQUAL XPC-FLD0655C
              DISPLAY 'FLD0655C ==> ' HEX-OF (FLD0655C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0655C).
           IF FLD0656C (1:)    NOT EQUAL XPC-FLD0656C
              DISPLAY 'FLD0656C ==> ' HEX-OF (FLD0656C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0656C).
           IF FLD0657C (1:)    NOT EQUAL XPC-FLD0657C
              DISPLAY 'FLD0657C ==> ' HEX-OF (FLD0657C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0657C).
           IF FLD0658C (1:)    NOT EQUAL XPC-FLD0658C
              DISPLAY 'FLD0658C ==> ' HEX-OF (FLD0658C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0658C).
           IF FLD0659C (1:)    NOT EQUAL XPC-FLD0659C
              DISPLAY 'FLD0659C ==> ' HEX-OF (FLD0659C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0659C).
           IF FLD0660C (1:)    NOT EQUAL XPC-FLD0660C
              DISPLAY 'FLD0660C ==> ' HEX-OF (FLD0660C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0660C).
           IF FLD0661C (1:)    NOT EQUAL XPC-FLD0661C
              DISPLAY 'FLD0661C ==> ' HEX-OF (FLD0661C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0661C).
           IF FLD0662C (1:)    NOT EQUAL XPC-FLD0662C
              DISPLAY 'FLD0662C ==> ' HEX-OF (FLD0662C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0662C).
           IF FLD0663C (1:)    NOT EQUAL XPC-FLD0663C
              DISPLAY 'FLD0663C ==> ' HEX-OF (FLD0663C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0663C).
           IF FLD0664C (1:)    NOT EQUAL XPC-FLD0664C
              DISPLAY 'FLD0664C ==> ' HEX-OF (FLD0664C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0664C).
           IF FLD0665C (1:)    NOT EQUAL XPC-FLD0665C
              DISPLAY 'FLD0665C ==> ' HEX-OF (FLD0665C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0665C).
           IF FLD0666C (1:)    NOT EQUAL XPC-FLD0666C
              DISPLAY 'FLD0666C ==> ' HEX-OF (FLD0666C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0666C).
           IF FLD0667C (1:)    NOT EQUAL XPC-FLD0667C
              DISPLAY 'FLD0667C ==> ' HEX-OF (FLD0667C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0667C).
           IF FLD0668C (1:)    NOT EQUAL XPC-FLD0668C
              DISPLAY 'FLD0668C ==> ' HEX-OF (FLD0668C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0668C).
           IF FLD0669C (1:)    NOT EQUAL XPC-FLD0669C
              DISPLAY 'FLD0669C ==> ' HEX-OF (FLD0669C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0669C).
           IF FLD0670C (1:)    NOT EQUAL XPC-FLD0670C
              DISPLAY 'FLD0670C ==> ' HEX-OF (FLD0670C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0670C).
           IF FLD0671C (1:)    NOT EQUAL XPC-FLD0671C
              DISPLAY 'FLD0671C ==> ' HEX-OF (FLD0671C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0671C).
           IF FLD0672C (1:)    NOT EQUAL XPC-FLD0672C
              DISPLAY 'FLD0672C ==> ' HEX-OF (FLD0672C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0672C).
           IF FLD0673C (1:)    NOT EQUAL XPC-FLD0673C
              DISPLAY 'FLD0673C ==> ' HEX-OF (FLD0673C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0673C).
           IF FLD0674C (1:)    NOT EQUAL XPC-FLD0674C
              DISPLAY 'FLD0674C ==> ' HEX-OF (FLD0674C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0674C).
           IF FLD0675C (1:)    NOT EQUAL XPC-FLD0675C
              DISPLAY 'FLD0675C ==> ' HEX-OF (FLD0675C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0675C).
           IF FLD0676C (1:)    NOT EQUAL XPC-FLD0676C
              DISPLAY 'FLD0676C ==> ' HEX-OF (FLD0676C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0676C).
           IF FLD0677C (1:)    NOT EQUAL XPC-FLD0677C
              DISPLAY 'FLD0677C ==> ' HEX-OF (FLD0677C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0677C).
           IF FLD0678C (1:)    NOT EQUAL XPC-FLD0678C
              DISPLAY 'FLD0678C ==> ' HEX-OF (FLD0678C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0678C).
           IF FLD0679C (1:)    NOT EQUAL XPC-FLD0679C
              DISPLAY 'FLD0679C ==> ' HEX-OF (FLD0679C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0679C).
           IF FLD0680C (1:)    NOT EQUAL XPC-FLD0680C
              DISPLAY 'FLD0680C ==> ' HEX-OF (FLD0680C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0680C).
           IF FLD0681C (1:)    NOT EQUAL XPC-FLD0681C
              DISPLAY 'FLD0681C ==> ' HEX-OF (FLD0681C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0681C).
           IF FLD0682C (1:)    NOT EQUAL XPC-FLD0682C
              DISPLAY 'FLD0682C ==> ' HEX-OF (FLD0682C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0682C).
           IF FLD0683C (1:)    NOT EQUAL XPC-FLD0683C
              DISPLAY 'FLD0683C ==> ' HEX-OF (FLD0683C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0683C).
           IF FLD0684C (1:)    NOT EQUAL XPC-FLD0684C
              DISPLAY 'FLD0684C ==> ' HEX-OF (FLD0684C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0684C).
           IF FLD0685C (1:)    NOT EQUAL XPC-FLD0685C
              DISPLAY 'FLD0685C ==> ' HEX-OF (FLD0685C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0685C).
           IF FLD0686C (1:)    NOT EQUAL XPC-FLD0686C
              DISPLAY 'FLD0686C ==> ' HEX-OF (FLD0686C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0686C).
           IF FLD0687C (1:)    NOT EQUAL XPC-FLD0687C
              DISPLAY 'FLD0687C ==> ' HEX-OF (FLD0687C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0687C).
           IF FLD0688C (1:)    NOT EQUAL XPC-FLD0688C
              DISPLAY 'FLD0688C ==> ' HEX-OF (FLD0688C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0688C).
           IF FLD0689C (1:)    NOT EQUAL XPC-FLD0689C
              DISPLAY 'FLD0689C ==> ' HEX-OF (FLD0689C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0689C).
           IF FLD0690C (1:)    NOT EQUAL XPC-FLD0690C
              DISPLAY 'FLD0690C ==> ' HEX-OF (FLD0690C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0690C).
           IF FLD0691C (1:)    NOT EQUAL XPC-FLD0691C
              DISPLAY 'FLD0691C ==> ' HEX-OF (FLD0691C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0691C).
           IF FLD0692C (1:)    NOT EQUAL XPC-FLD0692C
              DISPLAY 'FLD0692C ==> ' HEX-OF (FLD0692C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0692C).
           IF FLD0693C (1:)    NOT EQUAL XPC-FLD0693C
              DISPLAY 'FLD0693C ==> ' HEX-OF (FLD0693C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0693C).
           IF FLD0694C (1:)    NOT EQUAL XPC-FLD0694C
              DISPLAY 'FLD0694C ==> ' HEX-OF (FLD0694C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0694C).
           IF FLD0695C (1:)    NOT EQUAL XPC-FLD0695C
              DISPLAY 'FLD0695C ==> ' HEX-OF (FLD0695C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0695C).
           IF FLD0696C (1:)    NOT EQUAL XPC-FLD0696C
              DISPLAY 'FLD0696C ==> ' HEX-OF (FLD0696C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0696C).
           IF FLD0697C (1:)    NOT EQUAL XPC-FLD0697C
              DISPLAY 'FLD0697C ==> ' HEX-OF (FLD0697C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0697C).
           IF FLD0698C (1:)    NOT EQUAL XPC-FLD0698C
              DISPLAY 'FLD0698C ==> ' HEX-OF (FLD0698C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0698C).
           IF FLD0699C (1:)    NOT EQUAL XPC-FLD0699C
              DISPLAY 'FLD0699C ==> ' HEX-OF (FLD0699C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0699C).
           IF FLD0700C (1:)    NOT EQUAL XPC-FLD0700C
              DISPLAY 'FLD0700C ==> ' HEX-OF (FLD0700C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0700C).
           IF FLD0701C (1:)    NOT EQUAL XPC-FLD0701C
              DISPLAY 'FLD0701C ==> ' HEX-OF (FLD0701C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0701C).
           IF FLD0702C (1:)    NOT EQUAL XPC-FLD0702C
              DISPLAY 'FLD0702C ==> ' HEX-OF (FLD0702C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0702C).
           IF FLD0703C (1:)    NOT EQUAL XPC-FLD0703C
              DISPLAY 'FLD0703C ==> ' HEX-OF (FLD0703C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0703C).
           IF FLD0704C (1:)    NOT EQUAL XPC-FLD0704C
              DISPLAY 'FLD0704C ==> ' HEX-OF (FLD0704C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0704C).
           IF FLD0705C (1:)    NOT EQUAL XPC-FLD0705C
              DISPLAY 'FLD0705C ==> ' HEX-OF (FLD0705C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0705C).
           IF FLD0706C (1:)    NOT EQUAL XPC-FLD0706C
              DISPLAY 'FLD0706C ==> ' HEX-OF (FLD0706C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0706C).
           IF FLD0707C (1:)    NOT EQUAL XPC-FLD0707C
              DISPLAY 'FLD0707C ==> ' HEX-OF (FLD0707C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0707C).
           IF FLD0708C (1:)    NOT EQUAL XPC-FLD0708C
              DISPLAY 'FLD0708C ==> ' HEX-OF (FLD0708C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0708C).
           IF FLD0709C (1:)    NOT EQUAL XPC-FLD0709C
              DISPLAY 'FLD0709C ==> ' HEX-OF (FLD0709C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0709C).
           IF FLD0710C (1:)    NOT EQUAL XPC-FLD0710C
              DISPLAY 'FLD0710C ==> ' HEX-OF (FLD0710C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0710C).
           IF FLD0711C (1:)    NOT EQUAL XPC-FLD0711C
              DISPLAY 'FLD0711C ==> ' HEX-OF (FLD0711C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0711C).
           IF FLD0712C (1:)    NOT EQUAL XPC-FLD0712C
              DISPLAY 'FLD0712C ==> ' HEX-OF (FLD0712C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0712C).
           IF FLD0713C (1:)    NOT EQUAL XPC-FLD0713C
              DISPLAY 'FLD0713C ==> ' HEX-OF (FLD0713C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0713C).
           IF FLD0714C (1:)    NOT EQUAL XPC-FLD0714C
              DISPLAY 'FLD0714C ==> ' HEX-OF (FLD0714C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0714C).
           IF FLD0715C (1:)    NOT EQUAL XPC-FLD0715C
              DISPLAY 'FLD0715C ==> ' HEX-OF (FLD0715C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0715C).
           IF FLD0716C (1:)    NOT EQUAL XPC-FLD0716C
              DISPLAY 'FLD0716C ==> ' HEX-OF (FLD0716C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0716C).
           IF FLD0717C (1:)    NOT EQUAL XPC-FLD0717C
              DISPLAY 'FLD0717C ==> ' HEX-OF (FLD0717C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0717C).
           IF FLD0718C (1:)    NOT EQUAL XPC-FLD0718C
              DISPLAY 'FLD0718C ==> ' HEX-OF (FLD0718C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0718C).
           IF FLD0719C (1:)    NOT EQUAL XPC-FLD0719C
              DISPLAY 'FLD0719C ==> ' HEX-OF (FLD0719C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0719C).
           IF FLD0720C (1:)    NOT EQUAL XPC-FLD0720C
              DISPLAY 'FLD0720C ==> ' HEX-OF (FLD0720C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0720C).
           IF FLD0721C (1:)    NOT EQUAL XPC-FLD0721C
              DISPLAY 'FLD0721C ==> ' HEX-OF (FLD0721C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0721C).
           IF FLD0722C (1:)    NOT EQUAL XPC-FLD0722C
              DISPLAY 'FLD0722C ==> ' HEX-OF (FLD0722C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0722C).
           IF FLD0723C (1:)    NOT EQUAL XPC-FLD0723C
              DISPLAY 'FLD0723C ==> ' HEX-OF (FLD0723C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0723C).
           IF FLD0724C (1:)    NOT EQUAL XPC-FLD0724C
              DISPLAY 'FLD0724C ==> ' HEX-OF (FLD0724C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0724C).
           IF FLD0725C (1:)    NOT EQUAL XPC-FLD0725C
              DISPLAY 'FLD0725C ==> ' HEX-OF (FLD0725C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0725C).
           IF FLD0726C (1:)    NOT EQUAL XPC-FLD0726C
              DISPLAY 'FLD0726C ==> ' HEX-OF (FLD0726C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0726C).
           IF FLD0727C (1:)    NOT EQUAL XPC-FLD0727C
              DISPLAY 'FLD0727C ==> ' HEX-OF (FLD0727C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0727C).
           IF FLD0728C (1:)    NOT EQUAL XPC-FLD0728C
              DISPLAY 'FLD0728C ==> ' HEX-OF (FLD0728C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0728C).
           IF FLD0729C (1:)    NOT EQUAL XPC-FLD0729C
              DISPLAY 'FLD0729C ==> ' HEX-OF (FLD0729C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0729C).
           IF FLD0730C (1:)    NOT EQUAL XPC-FLD0730C
              DISPLAY 'FLD0730C ==> ' HEX-OF (FLD0730C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0730C).
           IF FLD0731C (1:)    NOT EQUAL XPC-FLD0731C
              DISPLAY 'FLD0731C ==> ' HEX-OF (FLD0731C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0731C).
           IF FLD0732C (1:)    NOT EQUAL XPC-FLD0732C
              DISPLAY 'FLD0732C ==> ' HEX-OF (FLD0732C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0732C).
           IF FLD0733C (1:)    NOT EQUAL XPC-FLD0733C
              DISPLAY 'FLD0733C ==> ' HEX-OF (FLD0733C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0733C).
           IF FLD0734C (1:)    NOT EQUAL XPC-FLD0734C
              DISPLAY 'FLD0734C ==> ' HEX-OF (FLD0734C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0734C).
           IF FLD0735C (1:)    NOT EQUAL XPC-FLD0735C
              DISPLAY 'FLD0735C ==> ' HEX-OF (FLD0735C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0735C).
           IF FLD0736C (1:)    NOT EQUAL XPC-FLD0736C
              DISPLAY 'FLD0736C ==> ' HEX-OF (FLD0736C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0736C).
           IF FLD0737C (1:)    NOT EQUAL XPC-FLD0737C
              DISPLAY 'FLD0737C ==> ' HEX-OF (FLD0737C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0737C).
           IF FLD0738C (1:)    NOT EQUAL XPC-FLD0738C
              DISPLAY 'FLD0738C ==> ' HEX-OF (FLD0738C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0738C).
           IF FLD0739C (1:)    NOT EQUAL XPC-FLD0739C
              DISPLAY 'FLD0739C ==> ' HEX-OF (FLD0739C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0739C).
           IF FLD0740C (1:)    NOT EQUAL XPC-FLD0740C
              DISPLAY 'FLD0740C ==> ' HEX-OF (FLD0740C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0740C).
           IF FLD0741C (1:)    NOT EQUAL XPC-FLD0741C
              DISPLAY 'FLD0741C ==> ' HEX-OF (FLD0741C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0741C).
           IF FLD0742C (1:)    NOT EQUAL XPC-FLD0742C
              DISPLAY 'FLD0742C ==> ' HEX-OF (FLD0742C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0742C).
           IF FLD0743C (1:)    NOT EQUAL XPC-FLD0743C
              DISPLAY 'FLD0743C ==> ' HEX-OF (FLD0743C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0743C).
           IF FLD0744C (1:)    NOT EQUAL XPC-FLD0744C
              DISPLAY 'FLD0744C ==> ' HEX-OF (FLD0744C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0744C).
           IF FLD0745C (1:)    NOT EQUAL XPC-FLD0745C
              DISPLAY 'FLD0745C ==> ' HEX-OF (FLD0745C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0745C).
           IF FLD0746C (1:)    NOT EQUAL XPC-FLD0746C
              DISPLAY 'FLD0746C ==> ' HEX-OF (FLD0746C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0746C).
           IF FLD0747C (1:)    NOT EQUAL XPC-FLD0747C
              DISPLAY 'FLD0747C ==> ' HEX-OF (FLD0747C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0747C).
           IF FLD0748C (1:)    NOT EQUAL XPC-FLD0748C
              DISPLAY 'FLD0748C ==> ' HEX-OF (FLD0748C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0748C).
           IF FLD0749C (1:)    NOT EQUAL XPC-FLD0749C
              DISPLAY 'FLD0749C ==> ' HEX-OF (FLD0749C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0749C).
           IF FLD0750C (1:)    NOT EQUAL XPC-FLD0750C
              DISPLAY 'FLD0750C ==> ' HEX-OF (FLD0750C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0750C).
           IF FLD0751C (1:)    NOT EQUAL XPC-FLD0751C
              DISPLAY 'FLD0751C ==> ' HEX-OF (FLD0751C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0751C).
           IF FLD0752C (1:)    NOT EQUAL XPC-FLD0752C
              DISPLAY 'FLD0752C ==> ' HEX-OF (FLD0752C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0752C).
           IF FLD0753C (1:)    NOT EQUAL XPC-FLD0753C
              DISPLAY 'FLD0753C ==> ' HEX-OF (FLD0753C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0753C).
           IF FLD0754C (1:)    NOT EQUAL XPC-FLD0754C
              DISPLAY 'FLD0754C ==> ' HEX-OF (FLD0754C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0754C).
           IF FLD0755C (1:)    NOT EQUAL XPC-FLD0755C
              DISPLAY 'FLD0755C ==> ' HEX-OF (FLD0755C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0755C).
           IF FLD0756C (1:)    NOT EQUAL XPC-FLD0756C
              DISPLAY 'FLD0756C ==> ' HEX-OF (FLD0756C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0756C).
           IF FLD0757C (1:)    NOT EQUAL XPC-FLD0757C
              DISPLAY 'FLD0757C ==> ' HEX-OF (FLD0757C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0757C).
           IF FLD0758C (1:)    NOT EQUAL XPC-FLD0758C
              DISPLAY 'FLD0758C ==> ' HEX-OF (FLD0758C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0758C).
           IF FLD0759C (1:)    NOT EQUAL XPC-FLD0759C
              DISPLAY 'FLD0759C ==> ' HEX-OF (FLD0759C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0759C).
           IF FLD0760C (1:)    NOT EQUAL XPC-FLD0760C
              DISPLAY 'FLD0760C ==> ' HEX-OF (FLD0760C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0760C).
           IF FLD0761C (1:)    NOT EQUAL XPC-FLD0761C
              DISPLAY 'FLD0761C ==> ' HEX-OF (FLD0761C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0761C).
           IF FLD0762C (1:)    NOT EQUAL XPC-FLD0762C
              DISPLAY 'FLD0762C ==> ' HEX-OF (FLD0762C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0762C).
           IF FLD0763C (1:)    NOT EQUAL XPC-FLD0763C
              DISPLAY 'FLD0763C ==> ' HEX-OF (FLD0763C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0763C).
           IF FLD0764C (1:)    NOT EQUAL XPC-FLD0764C
              DISPLAY 'FLD0764C ==> ' HEX-OF (FLD0764C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0764C).
           IF FLD0765C (1:)    NOT EQUAL XPC-FLD0765C
              DISPLAY 'FLD0765C ==> ' HEX-OF (FLD0765C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0765C).
           IF FLD0766C (1:)    NOT EQUAL XPC-FLD0766C
              DISPLAY 'FLD0766C ==> ' HEX-OF (FLD0766C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0766C).
           IF FLD0767C (1:)    NOT EQUAL XPC-FLD0767C
              DISPLAY 'FLD0767C ==> ' HEX-OF (FLD0767C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0767C).
           IF FLD0768C (1:)    NOT EQUAL XPC-FLD0768C
              DISPLAY 'FLD0768C ==> ' HEX-OF (FLD0768C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0768C).
           IF FLD0769C (1:)    NOT EQUAL XPC-FLD0769C
              DISPLAY 'FLD0769C ==> ' HEX-OF (FLD0769C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0769C).
           IF FLD0770C (1:)    NOT EQUAL XPC-FLD0770C
              DISPLAY 'FLD0770C ==> ' HEX-OF (FLD0770C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0770C).
           IF FLD0771C (1:)    NOT EQUAL XPC-FLD0771C
              DISPLAY 'FLD0771C ==> ' HEX-OF (FLD0771C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0771C).
           IF FLD0772C (1:)    NOT EQUAL XPC-FLD0772C
              DISPLAY 'FLD0772C ==> ' HEX-OF (FLD0772C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0772C).
           IF FLD0773C (1:)    NOT EQUAL XPC-FLD0773C
              DISPLAY 'FLD0773C ==> ' HEX-OF (FLD0773C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0773C).
           IF FLD0774C (1:)    NOT EQUAL XPC-FLD0774C
              DISPLAY 'FLD0774C ==> ' HEX-OF (FLD0774C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0774C).
           IF FLD0775C (1:)    NOT EQUAL XPC-FLD0775C
              DISPLAY 'FLD0775C ==> ' HEX-OF (FLD0775C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0775C).
           IF FLD0776C (1:)    NOT EQUAL XPC-FLD0776C
              DISPLAY 'FLD0776C ==> ' HEX-OF (FLD0776C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0776C).
           IF FLD0777C (1:)    NOT EQUAL XPC-FLD0777C
              DISPLAY 'FLD0777C ==> ' HEX-OF (FLD0777C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0777C).
           IF FLD0778C (1:)    NOT EQUAL XPC-FLD0778C
              DISPLAY 'FLD0778C ==> ' HEX-OF (FLD0778C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0778C).
           IF FLD0779C (1:)    NOT EQUAL XPC-FLD0779C
              DISPLAY 'FLD0779C ==> ' HEX-OF (FLD0779C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0779C).
           IF FLD0780C (1:)    NOT EQUAL XPC-FLD0780C
              DISPLAY 'FLD0780C ==> ' HEX-OF (FLD0780C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0780C).
           IF FLD0781C (1:)    NOT EQUAL XPC-FLD0781C
              DISPLAY 'FLD0781C ==> ' HEX-OF (FLD0781C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0781C).
           IF FLD0782C (1:)    NOT EQUAL XPC-FLD0782C
              DISPLAY 'FLD0782C ==> ' HEX-OF (FLD0782C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0782C).
           IF FLD0783C (1:)    NOT EQUAL XPC-FLD0783C
              DISPLAY 'FLD0783C ==> ' HEX-OF (FLD0783C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0783C).
           IF FLD0784C (1:)    NOT EQUAL XPC-FLD0784C
              DISPLAY 'FLD0784C ==> ' HEX-OF (FLD0784C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0784C).
           IF FLD0785C (1:)    NOT EQUAL XPC-FLD0785C
              DISPLAY 'FLD0785C ==> ' HEX-OF (FLD0785C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0785C).
           IF FLD0786C (1:)    NOT EQUAL XPC-FLD0786C
              DISPLAY 'FLD0786C ==> ' HEX-OF (FLD0786C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0786C).
           IF FLD0787C (1:)    NOT EQUAL XPC-FLD0787C
              DISPLAY 'FLD0787C ==> ' HEX-OF (FLD0787C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0787C).
           IF FLD0788C (1:)    NOT EQUAL XPC-FLD0788C
              DISPLAY 'FLD0788C ==> ' HEX-OF (FLD0788C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0788C).
           IF FLD0789C (1:)    NOT EQUAL XPC-FLD0789C
              DISPLAY 'FLD0789C ==> ' HEX-OF (FLD0789C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0789C).
           IF FLD0790C (1:)    NOT EQUAL XPC-FLD0790C
              DISPLAY 'FLD0790C ==> ' HEX-OF (FLD0790C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0790C).
           IF FLD0791C (1:)    NOT EQUAL XPC-FLD0791C
              DISPLAY 'FLD0791C ==> ' HEX-OF (FLD0791C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0791C).
           IF FLD0792C (1:)    NOT EQUAL XPC-FLD0792C
              DISPLAY 'FLD0792C ==> ' HEX-OF (FLD0792C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0792C).
           IF FLD0793C (1:)    NOT EQUAL XPC-FLD0793C
              DISPLAY 'FLD0793C ==> ' HEX-OF (FLD0793C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0793C).
           IF FLD0794C (1:)    NOT EQUAL XPC-FLD0794C
              DISPLAY 'FLD0794C ==> ' HEX-OF (FLD0794C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0794C).
           IF FLD0795C (1:)    NOT EQUAL XPC-FLD0795C
              DISPLAY 'FLD0795C ==> ' HEX-OF (FLD0795C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0795C).
           IF FLD0796C (1:)    NOT EQUAL XPC-FLD0796C
              DISPLAY 'FLD0796C ==> ' HEX-OF (FLD0796C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0796C).
           IF FLD0797C (1:)    NOT EQUAL XPC-FLD0797C
              DISPLAY 'FLD0797C ==> ' HEX-OF (FLD0797C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0797C).
           IF FLD0798C (1:)    NOT EQUAL XPC-FLD0798C
              DISPLAY 'FLD0798C ==> ' HEX-OF (FLD0798C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0798C).
           IF FLD0799C (1:)    NOT EQUAL XPC-FLD0799C
              DISPLAY 'FLD0799C ==> ' HEX-OF (FLD0799C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0799C).
           IF FLD0800C (1:)    NOT EQUAL XPC-FLD0800C
              DISPLAY 'FLD0800C ==> ' HEX-OF (FLD0800C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0800C).
           IF FLD0801C (1:)    NOT EQUAL XPC-FLD0801C
              DISPLAY 'FLD0801C ==> ' HEX-OF (FLD0801C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0801C).
           IF FLD0802C (1:)    NOT EQUAL XPC-FLD0802C
              DISPLAY 'FLD0802C ==> ' HEX-OF (FLD0802C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0802C).
           IF FLD0803C (1:)    NOT EQUAL XPC-FLD0803C
              DISPLAY 'FLD0803C ==> ' HEX-OF (FLD0803C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0803C).
           IF FLD0804C (1:)    NOT EQUAL XPC-FLD0804C
              DISPLAY 'FLD0804C ==> ' HEX-OF (FLD0804C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0804C).
           IF FLD0805C (1:)    NOT EQUAL XPC-FLD0805C
              DISPLAY 'FLD0805C ==> ' HEX-OF (FLD0805C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0805C).
           IF FLD0806C (1:)    NOT EQUAL XPC-FLD0806C
              DISPLAY 'FLD0806C ==> ' HEX-OF (FLD0806C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0806C).
           IF FLD0807C (1:)    NOT EQUAL XPC-FLD0807C
              DISPLAY 'FLD0807C ==> ' HEX-OF (FLD0807C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0807C).
           IF FLD0808C (1:)    NOT EQUAL XPC-FLD0808C
              DISPLAY 'FLD0808C ==> ' HEX-OF (FLD0808C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0808C).
           IF FLD0809C (1:)    NOT EQUAL XPC-FLD0809C
              DISPLAY 'FLD0809C ==> ' HEX-OF (FLD0809C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0809C).
           IF FLD0810C (1:)    NOT EQUAL XPC-FLD0810C
              DISPLAY 'FLD0810C ==> ' HEX-OF (FLD0810C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0810C).
           IF FLD0811C (1:)    NOT EQUAL XPC-FLD0811C
              DISPLAY 'FLD0811C ==> ' HEX-OF (FLD0811C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0811C).
           IF FLD0812C (1:)    NOT EQUAL XPC-FLD0812C
              DISPLAY 'FLD0812C ==> ' HEX-OF (FLD0812C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0812C).
           IF FLD0813C (1:)    NOT EQUAL XPC-FLD0813C
              DISPLAY 'FLD0813C ==> ' HEX-OF (FLD0813C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0813C).
           IF FLD0814C (1:)    NOT EQUAL XPC-FLD0814C
              DISPLAY 'FLD0814C ==> ' HEX-OF (FLD0814C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0814C).
           IF FLD0815C (1:)    NOT EQUAL XPC-FLD0815C
              DISPLAY 'FLD0815C ==> ' HEX-OF (FLD0815C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0815C).
           IF FLD0816C (1:)    NOT EQUAL XPC-FLD0816C
              DISPLAY 'FLD0816C ==> ' HEX-OF (FLD0816C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0816C).
           IF FLD0817C (1:)    NOT EQUAL XPC-FLD0817C
              DISPLAY 'FLD0817C ==> ' HEX-OF (FLD0817C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0817C).
           IF FLD0818C (1:)    NOT EQUAL XPC-FLD0818C
              DISPLAY 'FLD0818C ==> ' HEX-OF (FLD0818C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0818C).
           IF FLD0819C (1:)    NOT EQUAL XPC-FLD0819C
              DISPLAY 'FLD0819C ==> ' HEX-OF (FLD0819C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0819C).
           IF FLD0820C (1:)    NOT EQUAL XPC-FLD0820C
              DISPLAY 'FLD0820C ==> ' HEX-OF (FLD0820C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0820C).
           IF FLD0821C (1:)    NOT EQUAL XPC-FLD0821C
              DISPLAY 'FLD0821C ==> ' HEX-OF (FLD0821C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0821C).
           IF FLD0822C (1:)    NOT EQUAL XPC-FLD0822C
              DISPLAY 'FLD0822C ==> ' HEX-OF (FLD0822C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0822C).
           IF FLD0823C (1:)    NOT EQUAL XPC-FLD0823C
              DISPLAY 'FLD0823C ==> ' HEX-OF (FLD0823C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0823C).
           IF FLD0824C (1:)    NOT EQUAL XPC-FLD0824C
              DISPLAY 'FLD0824C ==> ' HEX-OF (FLD0824C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0824C).
           IF FLD0825C (1:)    NOT EQUAL XPC-FLD0825C
              DISPLAY 'FLD0825C ==> ' HEX-OF (FLD0825C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0825C).
           IF FLD0826C (1:)    NOT EQUAL XPC-FLD0826C
              DISPLAY 'FLD0826C ==> ' HEX-OF (FLD0826C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0826C).
           IF FLD0827C (1:)    NOT EQUAL XPC-FLD0827C
              DISPLAY 'FLD0827C ==> ' HEX-OF (FLD0827C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0827C).
           IF FLD0828C (1:)    NOT EQUAL XPC-FLD0828C
              DISPLAY 'FLD0828C ==> ' HEX-OF (FLD0828C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0828C).
           IF FLD0829C (1:)    NOT EQUAL XPC-FLD0829C
              DISPLAY 'FLD0829C ==> ' HEX-OF (FLD0829C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0829C).
           IF FLD0830C (1:)    NOT EQUAL XPC-FLD0830C
              DISPLAY 'FLD0830C ==> ' HEX-OF (FLD0830C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0830C).
           IF FLD0831C (1:)    NOT EQUAL XPC-FLD0831C
              DISPLAY 'FLD0831C ==> ' HEX-OF (FLD0831C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0831C).
           IF FLD0832C (1:)    NOT EQUAL XPC-FLD0832C
              DISPLAY 'FLD0832C ==> ' HEX-OF (FLD0832C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0832C).
           IF FLD0833C (1:)    NOT EQUAL XPC-FLD0833C
              DISPLAY 'FLD0833C ==> ' HEX-OF (FLD0833C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0833C).
           IF FLD0834C (1:)    NOT EQUAL XPC-FLD0834C
              DISPLAY 'FLD0834C ==> ' HEX-OF (FLD0834C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0834C).
           IF FLD0835C (1:)    NOT EQUAL XPC-FLD0835C
              DISPLAY 'FLD0835C ==> ' HEX-OF (FLD0835C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0835C).
           IF FLD0836C (1:)    NOT EQUAL XPC-FLD0836C
              DISPLAY 'FLD0836C ==> ' HEX-OF (FLD0836C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0836C).
           IF FLD0837C (1:)    NOT EQUAL XPC-FLD0837C
              DISPLAY 'FLD0837C ==> ' HEX-OF (FLD0837C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0837C).
           IF FLD0838C (1:)    NOT EQUAL XPC-FLD0838C
              DISPLAY 'FLD0838C ==> ' HEX-OF (FLD0838C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0838C).
           IF FLD0839C (1:)    NOT EQUAL XPC-FLD0839C
              DISPLAY 'FLD0839C ==> ' HEX-OF (FLD0839C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0839C).
           IF FLD0840C (1:)    NOT EQUAL XPC-FLD0840C
              DISPLAY 'FLD0840C ==> ' HEX-OF (FLD0840C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0840C).
           IF FLD0841C (1:)    NOT EQUAL XPC-FLD0841C
              DISPLAY 'FLD0841C ==> ' HEX-OF (FLD0841C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0841C).
           IF FLD0842C (1:)    NOT EQUAL XPC-FLD0842C
              DISPLAY 'FLD0842C ==> ' HEX-OF (FLD0842C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0842C).
           IF FLD0843C (1:)    NOT EQUAL XPC-FLD0843C
              DISPLAY 'FLD0843C ==> ' HEX-OF (FLD0843C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0843C).
           IF FLD0844C (1:)    NOT EQUAL XPC-FLD0844C
              DISPLAY 'FLD0844C ==> ' HEX-OF (FLD0844C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0844C).
           IF FLD0845C (1:)    NOT EQUAL XPC-FLD0845C
              DISPLAY 'FLD0845C ==> ' HEX-OF (FLD0845C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0845C).
           IF FLD0846C (1:)    NOT EQUAL XPC-FLD0846C
              DISPLAY 'FLD0846C ==> ' HEX-OF (FLD0846C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0846C).
           IF FLD0847C (1:)    NOT EQUAL XPC-FLD0847C
              DISPLAY 'FLD0847C ==> ' HEX-OF (FLD0847C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0847C).
           IF FLD0848C (1:)    NOT EQUAL XPC-FLD0848C
              DISPLAY 'FLD0848C ==> ' HEX-OF (FLD0848C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0848C).
           IF FLD0849C (1:)    NOT EQUAL XPC-FLD0849C
              DISPLAY 'FLD0849C ==> ' HEX-OF (FLD0849C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0849C).
           IF FLD0850C (1:)    NOT EQUAL XPC-FLD0850C
              DISPLAY 'FLD0850C ==> ' HEX-OF (FLD0850C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0850C).
           IF FLD0851C (1:)    NOT EQUAL XPC-FLD0851C
              DISPLAY 'FLD0851C ==> ' HEX-OF (FLD0851C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0851C).
           IF FLD0852C (1:)    NOT EQUAL XPC-FLD0852C
              DISPLAY 'FLD0852C ==> ' HEX-OF (FLD0852C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0852C).
           IF FLD0853C (1:)    NOT EQUAL XPC-FLD0853C
              DISPLAY 'FLD0853C ==> ' HEX-OF (FLD0853C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0853C).
           IF FLD0854C (1:)    NOT EQUAL XPC-FLD0854C
              DISPLAY 'FLD0854C ==> ' HEX-OF (FLD0854C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0854C).
           IF FLD0855C (1:)    NOT EQUAL XPC-FLD0855C
              DISPLAY 'FLD0855C ==> ' HEX-OF (FLD0855C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0855C).
           IF FLD0856C (1:)    NOT EQUAL XPC-FLD0856C
              DISPLAY 'FLD0856C ==> ' HEX-OF (FLD0856C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0856C).
           IF FLD0857C (1:)    NOT EQUAL XPC-FLD0857C
              DISPLAY 'FLD0857C ==> ' HEX-OF (FLD0857C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0857C).
           IF FLD0858C (1:)    NOT EQUAL XPC-FLD0858C
              DISPLAY 'FLD0858C ==> ' HEX-OF (FLD0858C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0858C).
           IF FLD0859C (1:)    NOT EQUAL XPC-FLD0859C
              DISPLAY 'FLD0859C ==> ' HEX-OF (FLD0859C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0859C).
           IF FLD0860C (1:)    NOT EQUAL XPC-FLD0860C
              DISPLAY 'FLD0860C ==> ' HEX-OF (FLD0860C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0860C).
           IF FLD0861C (1:)    NOT EQUAL XPC-FLD0861C
              DISPLAY 'FLD0861C ==> ' HEX-OF (FLD0861C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0861C).
           IF FLD0862C (1:)    NOT EQUAL XPC-FLD0862C
              DISPLAY 'FLD0862C ==> ' HEX-OF (FLD0862C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0862C).
           IF FLD0863C (1:)    NOT EQUAL XPC-FLD0863C
              DISPLAY 'FLD0863C ==> ' HEX-OF (FLD0863C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0863C).
           IF FLD0864C (1:)    NOT EQUAL XPC-FLD0864C
              DISPLAY 'FLD0864C ==> ' HEX-OF (FLD0864C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0864C).
           IF FLD0865C (1:)    NOT EQUAL XPC-FLD0865C
              DISPLAY 'FLD0865C ==> ' HEX-OF (FLD0865C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0865C).
           IF FLD0866C (1:)    NOT EQUAL XPC-FLD0866C
              DISPLAY 'FLD0866C ==> ' HEX-OF (FLD0866C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0866C).
           IF FLD0867C (1:)    NOT EQUAL XPC-FLD0867C
              DISPLAY 'FLD0867C ==> ' HEX-OF (FLD0867C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0867C).
           IF FLD0868C (1:)    NOT EQUAL XPC-FLD0868C
              DISPLAY 'FLD0868C ==> ' HEX-OF (FLD0868C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0868C).
           IF FLD0869C (1:)    NOT EQUAL XPC-FLD0869C
              DISPLAY 'FLD0869C ==> ' HEX-OF (FLD0869C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0869C).
           IF FLD0870C (1:)    NOT EQUAL XPC-FLD0870C
              DISPLAY 'FLD0870C ==> ' HEX-OF (FLD0870C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0870C).
           IF FLD0871C (1:)    NOT EQUAL XPC-FLD0871C
              DISPLAY 'FLD0871C ==> ' HEX-OF (FLD0871C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0871C).
           IF FLD0872C (1:)    NOT EQUAL XPC-FLD0872C
              DISPLAY 'FLD0872C ==> ' HEX-OF (FLD0872C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0872C).
           IF FLD0873C (1:)    NOT EQUAL XPC-FLD0873C
              DISPLAY 'FLD0873C ==> ' HEX-OF (FLD0873C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0873C).
           IF FLD0874C (1:)    NOT EQUAL XPC-FLD0874C
              DISPLAY 'FLD0874C ==> ' HEX-OF (FLD0874C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0874C).
           IF FLD0875C (1:)    NOT EQUAL XPC-FLD0875C
              DISPLAY 'FLD0875C ==> ' HEX-OF (FLD0875C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0875C).
           IF FLD0876C (1:)    NOT EQUAL XPC-FLD0876C
              DISPLAY 'FLD0876C ==> ' HEX-OF (FLD0876C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0876C).
           IF FLD0877C (1:)    NOT EQUAL XPC-FLD0877C
              DISPLAY 'FLD0877C ==> ' HEX-OF (FLD0877C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0877C).
           IF FLD0878C (1:)    NOT EQUAL XPC-FLD0878C
              DISPLAY 'FLD0878C ==> ' HEX-OF (FLD0878C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0878C).
           IF FLD0879C (1:)    NOT EQUAL XPC-FLD0879C
              DISPLAY 'FLD0879C ==> ' HEX-OF (FLD0879C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0879C).
           IF FLD0880C (1:)    NOT EQUAL XPC-FLD0880C
              DISPLAY 'FLD0880C ==> ' HEX-OF (FLD0880C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0880C).
           IF FLD0881C (1:)    NOT EQUAL XPC-FLD0881C
              DISPLAY 'FLD0881C ==> ' HEX-OF (FLD0881C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0881C).
           IF FLD0882C (1:)    NOT EQUAL XPC-FLD0882C
              DISPLAY 'FLD0882C ==> ' HEX-OF (FLD0882C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0882C).
           IF FLD0883C (1:)    NOT EQUAL XPC-FLD0883C
              DISPLAY 'FLD0883C ==> ' HEX-OF (FLD0883C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0883C).
           IF FLD0884C (1:)    NOT EQUAL XPC-FLD0884C
              DISPLAY 'FLD0884C ==> ' HEX-OF (FLD0884C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0884C).
           IF FLD0885C (1:)    NOT EQUAL XPC-FLD0885C
              DISPLAY 'FLD0885C ==> ' HEX-OF (FLD0885C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0885C).
           IF FLD0886C (1:)    NOT EQUAL XPC-FLD0886C
              DISPLAY 'FLD0886C ==> ' HEX-OF (FLD0886C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0886C).
           IF FLD0887C (1:)    NOT EQUAL XPC-FLD0887C
              DISPLAY 'FLD0887C ==> ' HEX-OF (FLD0887C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0887C).
           IF FLD0888C (1:)    NOT EQUAL XPC-FLD0888C
              DISPLAY 'FLD0888C ==> ' HEX-OF (FLD0888C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0888C).
           IF FLD0889C (1:)    NOT EQUAL XPC-FLD0889C
              DISPLAY 'FLD0889C ==> ' HEX-OF (FLD0889C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0889C).
           IF FLD0890C (1:)    NOT EQUAL XPC-FLD0890C
              DISPLAY 'FLD0890C ==> ' HEX-OF (FLD0890C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0890C).
           IF FLD0891C (1:)    NOT EQUAL XPC-FLD0891C
              DISPLAY 'FLD0891C ==> ' HEX-OF (FLD0891C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0891C).
           IF FLD0892C (1:)    NOT EQUAL XPC-FLD0892C
              DISPLAY 'FLD0892C ==> ' HEX-OF (FLD0892C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0892C).
           IF FLD0893C (1:)    NOT EQUAL XPC-FLD0893C
              DISPLAY 'FLD0893C ==> ' HEX-OF (FLD0893C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0893C).
           IF FLD0894C (1:)    NOT EQUAL XPC-FLD0894C
              DISPLAY 'FLD0894C ==> ' HEX-OF (FLD0894C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0894C).
           IF FLD0895C (1:)    NOT EQUAL XPC-FLD0895C
              DISPLAY 'FLD0895C ==> ' HEX-OF (FLD0895C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0895C).
           IF FLD0896C (1:)    NOT EQUAL XPC-FLD0896C
              DISPLAY 'FLD0896C ==> ' HEX-OF (FLD0896C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0896C).
           IF FLD0897C (1:)    NOT EQUAL XPC-FLD0897C
              DISPLAY 'FLD0897C ==> ' HEX-OF (FLD0897C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0897C).
           IF FLD0898C (1:)    NOT EQUAL XPC-FLD0898C
              DISPLAY 'FLD0898C ==> ' HEX-OF (FLD0898C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0898C).
           IF FLD0899C (1:)    NOT EQUAL XPC-FLD0899C
              DISPLAY 'FLD0899C ==> ' HEX-OF (FLD0899C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0899C).
           IF FLD0900C (1:)    NOT EQUAL XPC-FLD0900C
              DISPLAY 'FLD0900C ==> ' HEX-OF (FLD0900C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0900C).
           IF FLD0901C (1:)    NOT EQUAL XPC-FLD0901C
              DISPLAY 'FLD0901C ==> ' HEX-OF (FLD0901C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0901C).
           IF FLD0902C (1:)    NOT EQUAL XPC-FLD0902C
              DISPLAY 'FLD0902C ==> ' HEX-OF (FLD0902C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0902C).
           IF FLD0903C (1:)    NOT EQUAL XPC-FLD0903C
              DISPLAY 'FLD0903C ==> ' HEX-OF (FLD0903C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0903C).
           IF FLD0904C (1:)    NOT EQUAL XPC-FLD0904C
              DISPLAY 'FLD0904C ==> ' HEX-OF (FLD0904C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0904C).
           IF FLD0905C (1:)    NOT EQUAL XPC-FLD0905C
              DISPLAY 'FLD0905C ==> ' HEX-OF (FLD0905C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0905C).
           IF FLD0906C (1:)    NOT EQUAL XPC-FLD0906C
              DISPLAY 'FLD0906C ==> ' HEX-OF (FLD0906C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0906C).
           IF FLD0907C (1:)    NOT EQUAL XPC-FLD0907C
              DISPLAY 'FLD0907C ==> ' HEX-OF (FLD0907C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0907C).
           IF FLD0908C (1:)    NOT EQUAL XPC-FLD0908C
              DISPLAY 'FLD0908C ==> ' HEX-OF (FLD0908C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0908C).
           IF FLD0909C (1:)    NOT EQUAL XPC-FLD0909C
              DISPLAY 'FLD0909C ==> ' HEX-OF (FLD0909C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0909C).
           IF FLD0910C (1:)    NOT EQUAL XPC-FLD0910C
              DISPLAY 'FLD0910C ==> ' HEX-OF (FLD0910C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0910C).
           IF FLD0911C (1:)    NOT EQUAL XPC-FLD0911C
              DISPLAY 'FLD0911C ==> ' HEX-OF (FLD0911C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0911C).
           IF FLD0912C (1:)    NOT EQUAL XPC-FLD0912C
              DISPLAY 'FLD0912C ==> ' HEX-OF (FLD0912C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0912C).
           IF FLD0913C (1:)    NOT EQUAL XPC-FLD0913C
              DISPLAY 'FLD0913C ==> ' HEX-OF (FLD0913C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0913C).
           IF FLD0914C (1:)    NOT EQUAL XPC-FLD0914C
              DISPLAY 'FLD0914C ==> ' HEX-OF (FLD0914C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0914C).
           IF FLD0915C (1:)    NOT EQUAL XPC-FLD0915C
              DISPLAY 'FLD0915C ==> ' HEX-OF (FLD0915C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0915C).
           IF FLD0916C (1:)    NOT EQUAL XPC-FLD0916C
              DISPLAY 'FLD0916C ==> ' HEX-OF (FLD0916C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0916C).
           IF FLD0917C (1:)    NOT EQUAL XPC-FLD0917C
              DISPLAY 'FLD0917C ==> ' HEX-OF (FLD0917C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0917C).
           IF FLD0918C (1:)    NOT EQUAL XPC-FLD0918C
              DISPLAY 'FLD0918C ==> ' HEX-OF (FLD0918C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0918C).
           IF FLD0919C (1:)    NOT EQUAL XPC-FLD0919C
              DISPLAY 'FLD0919C ==> ' HEX-OF (FLD0919C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0919C).
           IF FLD0920C (1:)    NOT EQUAL XPC-FLD0920C
              DISPLAY 'FLD0920C ==> ' HEX-OF (FLD0920C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0920C).
           IF FLD0921C (1:)    NOT EQUAL XPC-FLD0921C
              DISPLAY 'FLD0921C ==> ' HEX-OF (FLD0921C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0921C).
           IF FLD0922C (1:)    NOT EQUAL XPC-FLD0922C
              DISPLAY 'FLD0922C ==> ' HEX-OF (FLD0922C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0922C).
           IF FLD0923C (1:)    NOT EQUAL XPC-FLD0923C
              DISPLAY 'FLD0923C ==> ' HEX-OF (FLD0923C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0923C).
           IF FLD0924C (1:)    NOT EQUAL XPC-FLD0924C
              DISPLAY 'FLD0924C ==> ' HEX-OF (FLD0924C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0924C).
           IF FLD0925C (1:)    NOT EQUAL XPC-FLD0925C
              DISPLAY 'FLD0925C ==> ' HEX-OF (FLD0925C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0925C).
           IF FLD0926C (1:)    NOT EQUAL XPC-FLD0926C
              DISPLAY 'FLD0926C ==> ' HEX-OF (FLD0926C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0926C).
           IF FLD0927C (1:)    NOT EQUAL XPC-FLD0927C
              DISPLAY 'FLD0927C ==> ' HEX-OF (FLD0927C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0927C).
           IF FLD0928C (1:)    NOT EQUAL XPC-FLD0928C
              DISPLAY 'FLD0928C ==> ' HEX-OF (FLD0928C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0928C).
           IF FLD0929C (1:)    NOT EQUAL XPC-FLD0929C
              DISPLAY 'FLD0929C ==> ' HEX-OF (FLD0929C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0929C).
           IF FLD0930C (1:)    NOT EQUAL XPC-FLD0930C
              DISPLAY 'FLD0930C ==> ' HEX-OF (FLD0930C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0930C).
           IF FLD0931C (1:)    NOT EQUAL XPC-FLD0931C
              DISPLAY 'FLD0931C ==> ' HEX-OF (FLD0931C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0931C).
           IF FLD0932C (1:)    NOT EQUAL XPC-FLD0932C
              DISPLAY 'FLD0932C ==> ' HEX-OF (FLD0932C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0932C).
           IF FLD0933C (1:)    NOT EQUAL XPC-FLD0933C
              DISPLAY 'FLD0933C ==> ' HEX-OF (FLD0933C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0933C).
           IF FLD0934C (1:)    NOT EQUAL XPC-FLD0934C
              DISPLAY 'FLD0934C ==> ' HEX-OF (FLD0934C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0934C).
           IF FLD0935C (1:)    NOT EQUAL XPC-FLD0935C
              DISPLAY 'FLD0935C ==> ' HEX-OF (FLD0935C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0935C).
           IF FLD0936C (1:)    NOT EQUAL XPC-FLD0936C
              DISPLAY 'FLD0936C ==> ' HEX-OF (FLD0936C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0936C).
           IF FLD0937C (1:)    NOT EQUAL XPC-FLD0937C
              DISPLAY 'FLD0937C ==> ' HEX-OF (FLD0937C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0937C).
           IF FLD0938C (1:)    NOT EQUAL XPC-FLD0938C
              DISPLAY 'FLD0938C ==> ' HEX-OF (FLD0938C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0938C).
           IF FLD0939C (1:)    NOT EQUAL XPC-FLD0939C
              DISPLAY 'FLD0939C ==> ' HEX-OF (FLD0939C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0939C).
           IF FLD0940C (1:)    NOT EQUAL XPC-FLD0940C
              DISPLAY 'FLD0940C ==> ' HEX-OF (FLD0940C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0940C).
           IF FLD0941C (1:)    NOT EQUAL XPC-FLD0941C
              DISPLAY 'FLD0941C ==> ' HEX-OF (FLD0941C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0941C).
           IF FLD0942C (1:)    NOT EQUAL XPC-FLD0942C
              DISPLAY 'FLD0942C ==> ' HEX-OF (FLD0942C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0942C).
           IF FLD0943C (1:)    NOT EQUAL XPC-FLD0943C
              DISPLAY 'FLD0943C ==> ' HEX-OF (FLD0943C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0943C).
           IF FLD0944C (1:)    NOT EQUAL XPC-FLD0944C
              DISPLAY 'FLD0944C ==> ' HEX-OF (FLD0944C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0944C).
           IF FLD0945C (1:)    NOT EQUAL XPC-FLD0945C
              DISPLAY 'FLD0945C ==> ' HEX-OF (FLD0945C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0945C).
           IF FLD0946C (1:)    NOT EQUAL XPC-FLD0946C
              DISPLAY 'FLD0946C ==> ' HEX-OF (FLD0946C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0946C).
           IF FLD0947C (1:)    NOT EQUAL XPC-FLD0947C
              DISPLAY 'FLD0947C ==> ' HEX-OF (FLD0947C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0947C).
           IF FLD0948C (1:)    NOT EQUAL XPC-FLD0948C
              DISPLAY 'FLD0948C ==> ' HEX-OF (FLD0948C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0948C).
           IF FLD0949C (1:)    NOT EQUAL XPC-FLD0949C
              DISPLAY 'FLD0949C ==> ' HEX-OF (FLD0949C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0949C).
           IF FLD0950C (1:)    NOT EQUAL XPC-FLD0950C
              DISPLAY 'FLD0950C ==> ' HEX-OF (FLD0950C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0950C).
           IF FLD0951C (1:)    NOT EQUAL XPC-FLD0951C
              DISPLAY 'FLD0951C ==> ' HEX-OF (FLD0951C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0951C).
           IF FLD0952C (1:)    NOT EQUAL XPC-FLD0952C
              DISPLAY 'FLD0952C ==> ' HEX-OF (FLD0952C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0952C).
           IF FLD0953C (1:)    NOT EQUAL XPC-FLD0953C
              DISPLAY 'FLD0953C ==> ' HEX-OF (FLD0953C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0953C).
           IF FLD0954C (1:)    NOT EQUAL XPC-FLD0954C
              DISPLAY 'FLD0954C ==> ' HEX-OF (FLD0954C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0954C).
           IF FLD0955C (1:)    NOT EQUAL XPC-FLD0955C
              DISPLAY 'FLD0955C ==> ' HEX-OF (FLD0955C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0955C).
           IF FLD0956C (1:)    NOT EQUAL XPC-FLD0956C
              DISPLAY 'FLD0956C ==> ' HEX-OF (FLD0956C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0956C).
           IF FLD0957C (1:)    NOT EQUAL XPC-FLD0957C
              DISPLAY 'FLD0957C ==> ' HEX-OF (FLD0957C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0957C).
           IF FLD0958C (1:)    NOT EQUAL XPC-FLD0958C
              DISPLAY 'FLD0958C ==> ' HEX-OF (FLD0958C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0958C).
           IF FLD0959C (1:)    NOT EQUAL XPC-FLD0959C
              DISPLAY 'FLD0959C ==> ' HEX-OF (FLD0959C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0959C).
           IF FLD0960C (1:)    NOT EQUAL XPC-FLD0960C
              DISPLAY 'FLD0960C ==> ' HEX-OF (FLD0960C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0960C).
           IF FLD0961C (1:)    NOT EQUAL XPC-FLD0961C
              DISPLAY 'FLD0961C ==> ' HEX-OF (FLD0961C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0961C).
           IF FLD0962C (1:)    NOT EQUAL XPC-FLD0962C
              DISPLAY 'FLD0962C ==> ' HEX-OF (FLD0962C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0962C).
           IF FLD0963C (1:)    NOT EQUAL XPC-FLD0963C
              DISPLAY 'FLD0963C ==> ' HEX-OF (FLD0963C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0963C).
           IF FLD0964C (1:)    NOT EQUAL XPC-FLD0964C
              DISPLAY 'FLD0964C ==> ' HEX-OF (FLD0964C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0964C).
           IF FLD0965C (1:)    NOT EQUAL XPC-FLD0965C
              DISPLAY 'FLD0965C ==> ' HEX-OF (FLD0965C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0965C).
           IF FLD0966C (1:)    NOT EQUAL XPC-FLD0966C
              DISPLAY 'FLD0966C ==> ' HEX-OF (FLD0966C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0966C).
           IF FLD0967C (1:)    NOT EQUAL XPC-FLD0967C
              DISPLAY 'FLD0967C ==> ' HEX-OF (FLD0967C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0967C).
           IF FLD0968C (1:)    NOT EQUAL XPC-FLD0968C
              DISPLAY 'FLD0968C ==> ' HEX-OF (FLD0968C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0968C).
           IF FLD0969C (1:)    NOT EQUAL XPC-FLD0969C
              DISPLAY 'FLD0969C ==> ' HEX-OF (FLD0969C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0969C).
           IF FLD0970C (1:)    NOT EQUAL XPC-FLD0970C
              DISPLAY 'FLD0970C ==> ' HEX-OF (FLD0970C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0970C).
           IF FLD0971C (1:)    NOT EQUAL XPC-FLD0971C
              DISPLAY 'FLD0971C ==> ' HEX-OF (FLD0971C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0971C).
           IF FLD0972C (1:)    NOT EQUAL XPC-FLD0972C
              DISPLAY 'FLD0972C ==> ' HEX-OF (FLD0972C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0972C).
           IF FLD0973C (1:)    NOT EQUAL XPC-FLD0973C
              DISPLAY 'FLD0973C ==> ' HEX-OF (FLD0973C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0973C).
           IF FLD0974C (1:)    NOT EQUAL XPC-FLD0974C
              DISPLAY 'FLD0974C ==> ' HEX-OF (FLD0974C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0974C).
           IF FLD0975C (1:)    NOT EQUAL XPC-FLD0975C
              DISPLAY 'FLD0975C ==> ' HEX-OF (FLD0975C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0975C).
           IF FLD0976C (1:)    NOT EQUAL XPC-FLD0976C
              DISPLAY 'FLD0976C ==> ' HEX-OF (FLD0976C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0976C).
           IF FLD0977C (1:)    NOT EQUAL XPC-FLD0977C
              DISPLAY 'FLD0977C ==> ' HEX-OF (FLD0977C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0977C).
           IF FLD0978C (1:)    NOT EQUAL XPC-FLD0978C
              DISPLAY 'FLD0978C ==> ' HEX-OF (FLD0978C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0978C).
           IF FLD0979C (1:)    NOT EQUAL XPC-FLD0979C
              DISPLAY 'FLD0979C ==> ' HEX-OF (FLD0979C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0979C).
           IF FLD0980C (1:)    NOT EQUAL XPC-FLD0980C
              DISPLAY 'FLD0980C ==> ' HEX-OF (FLD0980C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0980C).
           IF FLD0981C (1:)    NOT EQUAL XPC-FLD0981C
              DISPLAY 'FLD0981C ==> ' HEX-OF (FLD0981C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0981C).
           IF FLD0982C (1:)    NOT EQUAL XPC-FLD0982C
              DISPLAY 'FLD0982C ==> ' HEX-OF (FLD0982C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0982C).
           IF FLD0983C (1:)    NOT EQUAL XPC-FLD0983C
              DISPLAY 'FLD0983C ==> ' HEX-OF (FLD0983C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0983C).
           IF FLD0984C (1:)    NOT EQUAL XPC-FLD0984C
              DISPLAY 'FLD0984C ==> ' HEX-OF (FLD0984C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0984C).
           IF FLD0985C (1:)    NOT EQUAL XPC-FLD0985C
              DISPLAY 'FLD0985C ==> ' HEX-OF (FLD0985C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0985C).
           IF FLD0986C (1:)    NOT EQUAL XPC-FLD0986C
              DISPLAY 'FLD0986C ==> ' HEX-OF (FLD0986C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0986C).
           IF FLD0987C (1:)    NOT EQUAL XPC-FLD0987C
              DISPLAY 'FLD0987C ==> ' HEX-OF (FLD0987C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0987C).
           IF FLD0988C (1:)    NOT EQUAL XPC-FLD0988C
              DISPLAY 'FLD0988C ==> ' HEX-OF (FLD0988C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0988C).
           IF FLD0989C (1:)    NOT EQUAL XPC-FLD0989C
              DISPLAY 'FLD0989C ==> ' HEX-OF (FLD0989C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0989C).
           IF FLD0990C (1:)    NOT EQUAL XPC-FLD0990C
              DISPLAY 'FLD0990C ==> ' HEX-OF (FLD0990C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0990C).
           IF FLD0991C (1:)    NOT EQUAL XPC-FLD0991C
              DISPLAY 'FLD0991C ==> ' HEX-OF (FLD0991C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0991C).
           IF FLD0992C (1:)    NOT EQUAL XPC-FLD0992C
              DISPLAY 'FLD0992C ==> ' HEX-OF (FLD0992C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0992C).
           IF FLD0993C (1:)    NOT EQUAL XPC-FLD0993C
              DISPLAY 'FLD0993C ==> ' HEX-OF (FLD0993C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0993C).
           IF FLD0994C (1:)    NOT EQUAL XPC-FLD0994C
              DISPLAY 'FLD0994C ==> ' HEX-OF (FLD0994C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0994C).
           IF FLD0995C (1:)    NOT EQUAL XPC-FLD0995C
              DISPLAY 'FLD0995C ==> ' HEX-OF (FLD0995C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0995C).
           IF FLD0996C (1:)    NOT EQUAL XPC-FLD0996C
              DISPLAY 'FLD0996C ==> ' HEX-OF (FLD0996C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0996C).
           IF FLD0997C (1:)    NOT EQUAL XPC-FLD0997C
              DISPLAY 'FLD0997C ==> ' HEX-OF (FLD0997C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0997C).
           IF FLD0998C (1:)    NOT EQUAL XPC-FLD0998C
              DISPLAY 'FLD0998C ==> ' HEX-OF (FLD0998C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0998C).
           IF FLD0999C (1:)    NOT EQUAL XPC-FLD0999C
              DISPLAY 'FLD0999C ==> ' HEX-OF (FLD0999C)
                x'0a' 'EXPECTED ==> ' HEX-OF (XPC-FLD0999C).
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:12320: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "data_packed.at:12320"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:12320"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:12321: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_packed.at:12321"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:12321"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1279
#AT_START_1280
at_fn_group_banner 1280 'data_packed.at:12326' \
  "BCD ADD and SUBTRACT w/o SIZE ERROR" "            " 5
at_xfail=no
(
  $as_echo "1280. $at_setup_line: testing $at_desc ..."
  $at_traceon



# This test was originally generated and contributed by Chuck Haatvedt.
# It tests a huge amount of ADD / SUBTRACT between BCD fields with different
# attributes (size, decimal places, sign, sign nible) and checks for the
# expected hexadecimal value as well as the raise of a SIZE ERROR
# after the computation.
# The initial test was split later to be compilable without issues on
# "small tin" and also to make it easier for checking tools to insert
# additional debug code - without forcing the compiler to work too hard
# to compile / link that.
# As this code only tests BCD there is a duplicate in data_display.at
# that tests the same with cob_decimal.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTNR.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77  FLD0001A                       PIC  9(08)V9(19) COMP-3
           VALUE  72210483.5706116943150334464.
       77  FLD0001B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0001E                       PIC X  VALUE 'N'.

       77  FLD0002A                       PIC  9(05)V9(26) COMP-6
           VALUE  83954.98773698940597753903603006.
       77  FLD0002B                       PIC  9(05)V9(27) COMP-6
           VALUE  85526.912891598327881581553810974.
       77  FLD0002E                       PIC X  VALUE 'N'.

       77  FLD0003A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0003B                       PIC  9(10)V9(08) COMP-6
           VALUE  4976916625.40136914.
       77  FLD0003E                       PIC X  VALUE 'N'.

       77  FLD0004A                       PIC S9(08)V9(03) COMP-3
           VALUE +31348416.669.
       77  FLD0004B                       PIC  9(05)V9(01) COMP-6
           VALUE  16799.5.
       77  FLD0004E                       PIC X  VALUE 'N'.

       77  FLD0005A                       PIC S9(07)V9(01) COMP-3
           VALUE +2337334.8.
       77  FLD0005B                       PIC S9(09)V9(03) COMP-3
           VALUE +324331791.973.
       77  FLD0005E                       PIC X  VALUE 'N'.

       77  FLD0006A                       PIC  9(04)       COMP-6
           VALUE  1169.
       77  FLD0006B                       PIC  9(03)V9(31) COMP-3
           VALUE  912.5850054312464321171205483551602.
       77  FLD0006E                       PIC X  VALUE 'N'.

       77  FLD0007A                       PIC S9(04)       COMP-3
           VALUE +1123.
       77  FLD0007B                       PIC S9(08)V9(02) COMP-3
           VALUE -27032151.91.
       77  FLD0007E                       PIC X  VALUE 'N'.

       77  FLD0008A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0008B                       PIC S9(03)       COMP-3
           VALUE -091.
       77  FLD0008E                       PIC X  VALUE 'N'.

       77  FLD0009A                       PIC  9(10)V9(07) COMP-6
           VALUE  4695987895.4491957.
       77  FLD0009B                       PIC  9(05)V9(28) COMP-3
           VALUE  87164.4396861416259625343627703841.
       77  FLD0009E                       PIC X  VALUE 'N'.

       77  FLD0010A                       PIC  9(03)V9(32) COMP-3
           VALUE  932.59120224122482589734772773226723.
       77  FLD0010B                       PIC S9(09)V9(06) COMP-3
           VALUE +401314086.816856.
       77  FLD0010E                       PIC X  VALUE 'N'.

       77  FLD0011A                       PIC  9(09)V9(04) COMP-6
           VALUE  356168291.4830.
       77  FLD0011B                       PIC  9(04)V9(29) COMP-6
           VALUE  8869.25340695890795927880390081554.
       77  FLD0011E                       PIC X  VALUE 'N'.

       77  FLD0012A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0012B                       PIC  9(08)V9(19) COMP-3
           VALUE  71485769.2486604356929547066.
       77  FLD0012E                       PIC X  VALUE 'N'.

       77  FLD0013A                       PIC  9(06)V9(25) COMP-6
           VALUE  829630.0004717120923913853403064.
       77  FLD0013B                       PIC  9(07)V9(02) COMP-6
           VALUE  2497013.60.
       77  FLD0013E                       PIC X  VALUE 'N'.

       77  FLD0014A                       PIC  9(09)V9(13) COMP-3
           VALUE  592943121.2490873237541.
       77  FLD0014B                       PIC  9(06)V9(01) COMP-6
           VALUE  186764.7.
       77  FLD0014E                       PIC X  VALUE 'N'.

       77  FLD0015A                       PIC  9(07)V9(23) COMP-6
           VALUE  7984732.71412134533164817185024.
       77  FLD0015B                       PIC  9(10)V9(08) COMP-6
           VALUE  4953047329.19498391.
       77  FLD0015E                       PIC X  VALUE 'N'.

       77  FLD0016A                       PIC  9(05)V9(28) COMP-3
           VALUE  87275.9557853607148558694461826235.
       77  FLD0016B                       PIC S9(10)V9(06) COMP-3
           VALUE +4316165362.791636.
       77  FLD0016E                       PIC X  VALUE 'N'.

       77  FLD0017A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0017B                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.341087204116393039043941826093.
       77  FLD0017E                       PIC X  VALUE 'N'.

       77  FLD0018A                       PIC  9(07)V9(21) COMP-3
           VALUE  7619026.805277494540646898713.
       77  FLD0018B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0018E                       PIC X  VALUE 'N'.

       77  FLD0019A                       PIC S9(10)V9(08) COMP-3
           VALUE -4930528885.68236813.
       77  FLD0019B                       PIC S9(09)V9(06) COMP-3
           VALUE +402620216.542097.
       77  FLD0019E                       PIC X  VALUE 'N'.

       77  FLD0020A                       PIC  9(09)V9(15) COMP-3
           VALUE  643887452.720044328735582.
       77  FLD0020B                       PIC  9(09)V9(11) COMP-3
           VALUE  552340679.26366126055.
       77  FLD0020E                       PIC X  VALUE 'N'.

       77  FLD0021A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.880441680787707126043528660375159233.
       77  FLD0021B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0021E                       PIC X  VALUE 'N'.

       77  FLD0022A                       PIC  9(06)V9(24) COMP-3
           VALUE  810040.192546636172998830716096.
       77  FLD0022B                       PIC  9(07)V9(21) COMP-3
           VALUE  7610660.641468062204140210269.
       77  FLD0022E                       PIC X  VALUE 'N'.

       77  FLD0023A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0023B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1865432391802879230624512274516746.
       77  FLD0023E                       PIC X  VALUE 'N'.

       77  FLD0024A                       PIC  9(09)V9(03) COMP-6
           VALUE  329406009.124.
       77  FLD0024B                       PIC S9(09)V9(06) COMP-3
           VALUE +410668612.232476.
       77  FLD0024E                       PIC X  VALUE 'N'.

       77  FLD0025A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0025B                       PIC  9(07)V9(02) COMP-6
           VALUE  2497488.27.
       77  FLD0025E                       PIC X  VALUE 'N'.

       77  FLD0026A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0026B                       PIC S9(09)V9(05) COMP-3
           VALUE -383757196.20564.
       77  FLD0026E                       PIC X  VALUE 'N'.

       77  FLD0027A                       PIC  9(09)V9(13) COMP-3
           VALUE  601026867.0937520818498.
       77  FLD0027B                       PIC  9(06)V9(25) COMP-6
           VALUE  815849.1045356750515082921992870.
       77  FLD0027E                       PIC X  VALUE 'N'.

       77  FLD0028A                       PIC  9(04)V9(29) COMP-6
           VALUE  8794.72782911061568000832266989164.
       77  FLD0028B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0028E                       PIC X  VALUE 'N'.

       77  FLD0029A                       PIC  9(05)       COMP-6
           VALUE  13697.
       77  FLD0029B                       PIC  9(09)V9(17) COMP-3
           VALUE  684374480.18294422258378517.
       77  FLD0029E                       PIC X  VALUE 'N'.

       77  FLD0030A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0030B                       PIC  9(08)V9(18) COMP-3
           VALUE  70264210.169553353857452293.
       77  FLD0030E                       PIC X  VALUE 'N'.

       77  FLD0031A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0031B                       PIC  9(08)V9(18) COMP-3
           VALUE  70450280.588407820925311852.
       77  FLD0031E                       PIC X  VALUE 'N'.

       77  FLD0032A                       PIC  9(10)V9(10) COMP-6
           VALUE  5269599769.4606222516.
       77  FLD0032B                       PIC S9(09)V9(03) COMP-3
           VALUE +322379197.669.
       77  FLD0032E                       PIC X  VALUE 'N'.

       77  FLD0033A                       PIC  9(09)V9(15) COMP-3
           VALUE  641903038.069859710468278.
       77  FLD0033B                       PIC  9(09)V9(03) COMP-6
           VALUE  318353502.142.
       77  FLD0033E                       PIC X  VALUE 'N'.

       77  FLD0034A                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0034B                       PIC S9(07)V9(01) COMP-3
           VALUE +2126766.9.
       77  FLD0034E                       PIC X  VALUE 'N'.

       77  FLD0035A                       PIC  9(06)V9(25) COMP-6
           VALUE  816285.5924199176049782522568420.
       77  FLD0035B                       PIC  9(07)V9(01) COMP-6
           VALUE  2276316.1.
       77  FLD0035E                       PIC X  VALUE 'N'.

       77  FLD0036A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.789384107274801127829277902492322027.
       77  FLD0036B                       PIC  9(05)V9(27) COMP-6
           VALUE  84790.535447228665422159110676147.
       77  FLD0036E                       PIC X  VALUE 'N'.

       77  FLD0037A                       PIC  9(10)V9(11) COMP-6
           VALUE  5559560836.79804091701.
       77  FLD0037B                       PIC S9(05)       COMP-3
           VALUE -15352.
       77  FLD0037E                       PIC X  VALUE 'N'.

       77  FLD0038A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5897506417712539139586169767426326.
       77  FLD0038B                       PIC  9(06)V9(25) COMP-6
           VALUE  819342.2486726212872198971126636.
       77  FLD0038E                       PIC X  VALUE 'N'.

       77  FLD0039A                       PIC  9(04)V9(29) COMP-3
           VALUE  8933.20399454893721014059337903745.
       77  FLD0039B                       PIC  9(06)V9(01) COMP-6
           VALUE  205344.3.
       77  FLD0039E                       PIC X  VALUE 'N'.

       77  FLD0040A                       PIC S9(06)       COMP-3
           VALUE -162227.
       77  FLD0040B                       PIC S9(03)       COMP-3
           VALUE +101.
       77  FLD0040E                       PIC X  VALUE 'N'.

       77  FLD0041A                       PIC  9(09)V9(17) COMP-6
           VALUE  687709210.19485042879892944.
       77  FLD0041B                       PIC  9(10)V9(09) COMP-3
           VALUE  5032246021.307608119.
       77  FLD0041E                       PIC X  VALUE 'N'.

       77  FLD0042A                       PIC  9(07)V9(22) COMP-6
           VALUE  7680734.5400734650109342283030.
       77  FLD0042B                       PIC  9(10)V9(10) COMP-6
           VALUE  5398987461.4943655917.
       77  FLD0042E                       PIC X  VALUE 'N'.

       77  FLD0043A                       PIC S9(08)V9(02) COMP-3
           VALUE -28038049.48.
       77  FLD0043B                       PIC  9(04)V9(30) COMP-3
           VALUE  9102.051349475740460448491830902639.
       77  FLD0043E                       PIC X  VALUE 'N'.

       77  FLD0044A                       PIC  9(06)V9(01) COMP-6
           VALUE  206224.3.
       77  FLD0044B                       PIC  9(09)V9(04) COMP-6
           VALUE  359534215.7883.
       77  FLD0044E                       PIC X  VALUE 'N'.

       77  FLD0045A                       PIC  9(08)V9(02) COMP-6
           VALUE  28592495.81.
       77  FLD0045B                       PIC  9(09)V9(05) COMP-6
           VALUE  377058873.76830.
       77  FLD0045E                       PIC X  VALUE 'N'.

       77  FLD0046A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0046B                       PIC  9(05)V9(27) COMP-3
           VALUE  86000.025910646182847330010190489.
       77  FLD0046E                       PIC X  VALUE 'N'.

       77  FLD0047A                       PIC  9(08)V9(02) COMP-6
           VALUE  26966592.97.
       77  FLD0047B                       PIC  9(10)V9(08) COMP-6
           VALUE  4982239515.90845814.
       77  FLD0047E                       PIC X  VALUE 'N'.

       77  FLD0048A                       PIC  9(05)V9(26) COMP-6
           VALUE  83962.84254838164429202151950448.
       77  FLD0048B                       PIC S9(05)V9(01) COMP-3
           VALUE -17309.9.
       77  FLD0048E                       PIC X  VALUE 'N'.

       77  FLD0049A                       PIC  9(09)V9(16) COMP-6
           VALUE  677621907.0336453320635428.
       77  FLD0049B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.784571866912429305429554915463086217.
       77  FLD0049E                       PIC X  VALUE 'N'.

       77  FLD0050A                       PIC  9(09)V9(03) COMP-6
           VALUE  329667670.988.
       77  FLD0050B                       PIC  9(09)V9(06) COMP-6
           VALUE  408790070.710566.
       77  FLD0050E                       PIC X  VALUE 'N'.

       77  FLD0051A                       PIC  9(09)V9(15) COMP-3
           VALUE  643375703.689413991348544.
       77  FLD0051B                       PIC  9(04)V9(30) COMP-6
           VALUE  9064.871948640588206203005938732530.
       77  FLD0051E                       PIC X  VALUE 'N'.

       77  FLD0052A                       PIC  9(09)V9(04) COMP-6
           VALUE  367200483.8576.
       77  FLD0052B                       PIC  9(09)V9(11) COMP-3
           VALUE  550990476.15163754265.
       77  FLD0052E                       PIC X  VALUE 'N'.

       77  FLD0053A                       PIC  9(07)V9(01) COMP-6
           VALUE  2260324.6.
       77  FLD0053B                       PIC S9(09)V9(04) COMP-3
           VALUE -361176713.4701.
       77  FLD0053E                       PIC X  VALUE 'N'.

       77  FLD0054A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0054B                       PIC  9(09)V9(03) COMP-6
           VALUE  319288758.232.
       77  FLD0054E                       PIC X  VALUE 'N'.

       77  FLD0055A                       PIC  9(09)V9(14) COMP-3
           VALUE  622232417.66982828604426.
       77  FLD0055B                       PIC  9(08)V9(17) COMP-3
           VALUE  68254498.02012105715576240.
       77  FLD0055E                       PIC X  VALUE 'N'.

       77  FLD0056A                       PIC  9(07)V9(01) COMP-6
           VALUE  2161993.9.
       77  FLD0056B                       PIC  9(08)V9(02) COMP-6
           VALUE  27806089.73.
       77  FLD0056E                       PIC X  VALUE 'N'.

       77  FLD0057A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.20878243011406638629523513372987.
       77  FLD0057B                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0057E                       PIC X  VALUE 'N'.

       77  FLD0058A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.6574119281082611010447180888149887.
       77  FLD0058B                       PIC S9(09)V9(04) COMP-3
           VALUE +343623662.0368.
       77  FLD0058E                       PIC X  VALUE 'N'.

       77  FLD0059A                       PIC  9(07)V9(02) COMP-6
           VALUE  2566438.61.
       77  FLD0059B                       PIC  9(09)V9(14) COMP-6
           VALUE  625762300.58564874525472.
       77  FLD0059E                       PIC X  VALUE 'N'.

       77  FLD0060A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.888752946983269120906356874911580234.
       77  FLD0060B                       PIC  9(06)       COMP-6
           VALUE  159150.
       77  FLD0060E                       PIC X  VALUE 'N'.

       77  FLD0061A                       PIC  9(03)       COMP-6
           VALUE  095.
       77  FLD0061B                       PIC  9(06)V9(25) COMP-6
           VALUE  816564.2123096498172785118185856.
       77  FLD0061E                       PIC X  VALUE 'N'.

       77  FLD0062A                       PIC  9(10)V9(11) COMP-6
           VALUE  5579259193.81647705819.
       77  FLD0062B                       PIC  9(09)V9(13) COMP-3
           VALUE  602304146.8914084317631.
       77  FLD0062E                       PIC X  VALUE 'N'.

       77  FLD0063A                       PIC S9(07)V9(01) COMP-3
           VALUE +2106925.6.
       77  FLD0063B                       PIC  9(08)V9(19) COMP-3
           VALUE  73193550.7264897311507922950.
       77  FLD0063E                       PIC X  VALUE 'N'.

       77  FLD0064A                       PIC  9(06)V9(25) COMP-6
           VALUE  828553.1635867423583263757791428.
       77  FLD0064B                       PIC S9(04)       COMP-3
           VALUE +1113.
       77  FLD0064E                       PIC X  VALUE 'N'.

       77  FLD0065A                       PIC  9(08)V9(02) COMP-6
           VALUE  26934154.73.
       77  FLD0065B                       PIC S9(04)       COMP-3
           VALUE +1223.
       77  FLD0065E                       PIC X  VALUE 'N'.

       77  FLD0066A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0066B                       PIC  9(05)V9(27) COMP-3
           VALUE  85085.260849998822774153950376785.
       77  FLD0066E                       PIC X  VALUE 'N'.

       77  FLD0067A                       PIC S9(03)       COMP-3
           VALUE -091.
       77  FLD0067B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0067E                       PIC X  VALUE 'N'.

       77  FLD0068A                       PIC  9(06)V9(25) COMP-6
           VALUE  838055.6814082209537986045688739.
       77  FLD0068B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0068E                       PIC X  VALUE 'N'.

       77  FLD0069A                       PIC  9(10)V9(08) COMP-6
           VALUE  4880885916.76487937.
       77  FLD0069B                       PIC  9(03)       COMP-6
           VALUE  097.
       77  FLD0069E                       PIC X  VALUE 'N'.

       77  FLD0070A                       PIC  9(08)V9(18) COMP-6
           VALUE  69654747.914044090606466852.
       77  FLD0070B                       PIC S9(06)V9(01) COMP-3
           VALUE -192591.5.
       77  FLD0070E                       PIC X  VALUE 'N'.

       77  FLD0071A                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0071B                       PIC  9(04)       COMP-6
           VALUE  1269.
       77  FLD0071E                       PIC X  VALUE 'N'.

       77  FLD0072A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.925387953744267965916492357791867107.
       77  FLD0072B                       PIC  9(09)V9(15) COMP-6
           VALUE  655377323.717403204028641.
       77  FLD0072E                       PIC X  VALUE 'N'.

       77  FLD0073A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.812328554525302504174533169134519994.
       77  FLD0073B                       PIC  9(08)V9(18) COMP-6
           VALUE  70717230.890474991333860543.
       77  FLD0073E                       PIC X  VALUE 'N'.

       77  FLD0074A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.84903592679257400277492706663906.
       77  FLD0074B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.839916331263631743553332853480242192.
       77  FLD0074E                       PIC X  VALUE 'N'.

       77  FLD0075A                       PIC  9(10)V9(10) COMP-3
           VALUE  5446083738.8683014381.
       77  FLD0075B                       PIC S9(07)V9(01) COMP-3
           VALUE +2205661.8.
       77  FLD0075E                       PIC X  VALUE 'N'.

       77  FLD0076A                       PIC S9(07)V9(02) COMP-3
           VALUE +2412584.18.
       77  FLD0076B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1877730461857529675739897356834262.
       77  FLD0076E                       PIC X  VALUE 'N'.

       77  FLD0077A                       PIC  9(10)V9(08) COMP-6
           VALUE  4971042025.86989840.
       77  FLD0077B                       PIC  9(05)V9(28) COMP-6
           VALUE  87747.7884783979700245026833727024.
       77  FLD0077E                       PIC X  VALUE 'N'.

       77  FLD0078A                       PIC  9(06)V9(01) COMP-6
           VALUE  186044.2.
       77  FLD0078B                       PIC  9(10)V9(10) COMP-6
           VALUE  5264094377.6727222580.
       77  FLD0078E                       PIC X  VALUE 'N'.

       77  FLD0079A                       PIC  9(09)V9(15) COMP-6
           VALUE  638119223.314542294289708.
       77  FLD0079B                       PIC S9(03)       COMP-3
           VALUE +101.
       77  FLD0079E                       PIC X  VALUE 'N'.

       77  FLD0080A                       PIC  9(07)V9(23) COMP-3
           VALUE  7905587.67133311302011122734256.
       77  FLD0080B                       PIC S9(09)V9(04) COMP-3
           VALUE -363247849.5626.
       77  FLD0080E                       PIC X  VALUE 'N'.

       77  FLD0081A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.951308658902108250643436804239172488.
       77  FLD0081B                       PIC  9(09)V9(04) COMP-6
           VALUE  367206952.3371.
       77  FLD0081E                       PIC X  VALUE 'N'.

       77  FLD0082A                       PIC S9(08)V9(02) COMP-3
           VALUE -26324419.10.
       77  FLD0082B                       PIC  9(07)V9(22) COMP-6
           VALUE  7666475.1738066827524420432382.
       77  FLD0082E                       PIC X  VALUE 'N'.

       77  FLD0083A                       PIC  9(09)V9(14) COMP-3
           VALUE  631384121.39469823891602.
       77  FLD0083B                       PIC S9(07)V9(02) COMP-3
           VALUE -2518657.33.
       77  FLD0083E                       PIC X  VALUE 'N'.

       77  FLD0084A                       PIC  9(04)V9(29) COMP-3
           VALUE  8913.08379718931953483718189090723.
       77  FLD0084B                       PIC  9(09)V9(06) COMP-6
           VALUE  405118244.918866.
       77  FLD0084E                       PIC X  VALUE 'N'.

       77  FLD0085A                       PIC  9(05)       COMP-6
           VALUE  15779.
       77  FLD0085B                       PIC  9(10)V9(06) COMP-6
           VALUE  4354227755.611629.
       77  FLD0085E                       PIC X  VALUE 'N'.

       77  FLD0086A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.766547774737049936177868403319735080.
       77  FLD0086B                       PIC  9(10)V9(11) COMP-3
           VALUE  5711670223.78104349833.
       77  FLD0086E                       PIC X  VALUE 'N'.

       77  FLD0087A                       PIC  9(09)V9(14) COMP-6
           VALUE  617158605.01368802193411.
       77  FLD0087B                       PIC  9(04)       COMP-6
           VALUE  1168.
       77  FLD0087E                       PIC X  VALUE 'N'.

       77  FLD0088A                       PIC  9(10)V9(12) COMP-3
           VALUE  5809468198.000283800652.
       77  FLD0088B                       PIC  9(09)V9(03) COMP-6
           VALUE  327927843.481.
       77  FLD0088E                       PIC X  VALUE 'N'.

       77  FLD0089A                       PIC  9(06)V9(24) COMP-3
           VALUE  802942.222446262787727278009697.
       77  FLD0089B                       PIC  9(03)V9(31) COMP-3
           VALUE  913.0556640200002682661306607769802.
       77  FLD0089E                       PIC X  VALUE 'N'.

       77  FLD0090A                       PIC S9(08)V9(02) COMP-3
           VALUE -28271627.31.
       77  FLD0090B                       PIC S9(08)V9(03) COMP-3
           VALUE -29023436.992.
       77  FLD0090E                       PIC X  VALUE 'N'.

       77  FLD0091A                       PIC  9(09)V9(07) COMP-6
           VALUE  438808038.0901770.
       77  FLD0091B                       PIC  9(08)V9(18) COMP-6
           VALUE  69809163.794725925811235356.
       77  FLD0091E                       PIC X  VALUE 'N'.

       77  FLD0092A                       PIC S9(07)V9(01) COMP-3
           VALUE +2146587.0.
       77  FLD0092B                       PIC  9(06)V9(25) COMP-6
           VALUE  828676.9901534452031910404912196.
       77  FLD0092E                       PIC X  VALUE 'N'.

       77  FLD0093A                       PIC  9(06)V9(25) COMP-3
           VALUE  831848.6927757260396276706160278.
       77  FLD0093B                       PIC  9(07)V9(23) COMP-3
           VALUE  7909193.25337388512409120266966.
       77  FLD0093E                       PIC X  VALUE 'N'.

       77  FLD0094A                       PIC  9(07)V9(01) COMP-6
           VALUE  2260698.5.
       77  FLD0094B                       PIC  9(10)V9(10) COMP-3
           VALUE  5308926344.5354850645.
       77  FLD0094E                       PIC X  VALUE 'N'.

       77  FLD0095A                       PIC  9(07)V9(22) COMP-6
           VALUE  7681159.7607563408818265315858.
       77  FLD0095B                       PIC  9(06)V9(25) COMP-6
           VALUE  835614.2190518044410296738533361.
       77  FLD0095E                       PIC X  VALUE 'N'.

       77  FLD0096A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0096B                       PIC  9(05)V9(28) COMP-6
           VALUE  87505.3049076218392166026660561328.
       77  FLD0096E                       PIC X  VALUE 'N'.

       77  FLD0097A                       PIC  9(03)       COMP-6
           VALUE  085.
       77  FLD0097B                       PIC  9(07)V9(22) COMP-6
           VALUE  7663819.4132902548449948199049.
       77  FLD0097E                       PIC X  VALUE 'N'.

       77  FLD0098A                       PIC  9(05)V9(28) COMP-6
           VALUE  87637.1310136299430659789777564583.
       77  FLD0098B                       PIC  9(08)V9(04) COMP-6
           VALUE  33500668.0379.
       77  FLD0098E                       PIC X  VALUE 'N'.

       77  FLD0099A                       PIC S9(10)V9(08) COMP-3
           VALUE -4946809917.70565292.
       77  FLD0099B                       PIC S9(08)V9(03) COMP-3
           VALUE +30007106.715.
       77  FLD0099E                       PIC X  VALUE 'N'.

       77  FLD0100A                       PIC  9(10)V9(09) COMP-3
           VALUE  5148281813.288457797.
       77  FLD0100B                       PIC  9(09)V9(14) COMP-6
           VALUE  609442213.66168171982735.
       77  FLD0100E                       PIC X  VALUE 'N'.

       77  FLD0101A                       PIC S9(07)V9(02) COMP-3
           VALUE -2605358.58.
       77  FLD0101B                       PIC S9(07)V9(02) COMP-3
           VALUE -2515761.93.
       77  FLD0101E                       PIC X  VALUE 'N'.

       77  FLD0102A                       PIC  9(05)       COMP-6
           VALUE  13880.
       77  FLD0102B                       PIC  9(09)V9(14) COMP-6
           VALUE  626009568.32775289662151.
       77  FLD0102E                       PIC X  VALUE 'N'.

       77  FLD0103A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.51599988912647631877916865050792.
       77  FLD0103B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0103E                       PIC X  VALUE 'N'.

       77  FLD0104A                       PIC  9(07)V9(01) COMP-6
           VALUE  2254306.3.
       77  FLD0104B                       PIC S9(10)V9(08) COMP-3
           VALUE -4810300752.02174334.
       77  FLD0104E                       PIC X  VALUE 'N'.

       77  FLD0105A                       PIC S9(08)V9(03) COMP-3
           VALUE -29081388.428.
       77  FLD0105B                       PIC  9(08)V9(02) COMP-6
           VALUE  27558698.77.
       77  FLD0105E                       PIC X  VALUE 'N'.

       77  FLD0106A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0106B                       PIC S9(08)V9(02) COMP-3
           VALUE -26362185.29.
       77  FLD0106E                       PIC X  VALUE 'N'.

       77  FLD0107A                       PIC  9(09)V9(16) COMP-6
           VALUE  677462443.7557797973497031.
       77  FLD0107B                       PIC  9(08)V9(19) COMP-6
           VALUE  71705910.5997380985542122289.
       77  FLD0107E                       PIC X  VALUE 'N'.

       77  FLD0108A                       PIC  9(09)V9(14) COMP-3
           VALUE  610210882.31341436003418.
       77  FLD0108B                       PIC S9(08)V9(02) COMP-3
           VALUE -28421053.19.
       77  FLD0108E                       PIC X  VALUE 'N'.

       77  FLD0109A                       PIC S9(04)       COMP-3
           VALUE +1136.
       77  FLD0109B                       PIC  9(04)V9(30) COMP-3
           VALUE  9020.720262660837374113498299266211.
       77  FLD0109E                       PIC X  VALUE 'N'.

       77  FLD0110A                       PIC  9(07)V9(23) COMP-3
           VALUE  7940109.55673497886841971649118.
       77  FLD0110B                       PIC  9(08)V9(18) COMP-6
           VALUE  69721135.284383173313926818.
       77  FLD0110E                       PIC X  VALUE 'N'.

       77  FLD0111A                       PIC  9(09)V9(03) COMP-6
           VALUE  326472185.831.
       77  FLD0111B                       PIC  9(10)V9(09) COMP-6
           VALUE  5255901748.964217912.
       77  FLD0111E                       PIC X  VALUE 'N'.

       77  FLD0112A                       PIC  9(08)V9(19) COMP-3
           VALUE  71238052.4624002697819946661.
       77  FLD0112B                       PIC S9(08)V9(02) COMP-3
           VALUE -27133920.74.
       77  FLD0112E                       PIC X  VALUE 'N'.

       77  FLD0113A                       PIC  9(04)V9(30) COMP-6
           VALUE  9092.566324157485002643852567416615.
       77  FLD0113B                       PIC  9(04)       COMP-6
           VALUE  1277.
       77  FLD0113E                       PIC X  VALUE 'N'.

       77  FLD0114A                       PIC  9(09)V9(07) COMP-6
           VALUE  437805064.1539988.
       77  FLD0114B                       PIC  9(05)V9(01) COMP-6
           VALUE  17667.3.
       77  FLD0114E                       PIC X  VALUE 'N'.

       77  FLD0115A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.2362934933669089687668929400388151.
       77  FLD0115B                       PIC S9(08)V9(03) COMP-3
           VALUE +30236682.408.
       77  FLD0115E                       PIC X  VALUE 'N'.

       77  FLD0116A                       PIC  9(07)V9(22) COMP-3
           VALUE  7646463.4359510952332783517704.
       77  FLD0116B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0116E                       PIC X  VALUE 'N'.

       77  FLD0117A                       PIC  9(09)V9(14) COMP-6
           VALUE  617509561.34001855346582.
       77  FLD0117B                       PIC  9(05)       COMP-6
           VALUE  13612.
       77  FLD0117E                       PIC X  VALUE 'N'.

       77  FLD0118A                       PIC  9(10)V9(10) COMP-3
           VALUE  5408402726.5490597358.
       77  FLD0118B                       PIC S9(03)       COMP-3
           VALUE -080.
       77  FLD0118E                       PIC X  VALUE 'N'.

       77  FLD0119A                       PIC S9(08)V9(03) COMP-3
           VALUE +30078875.458.
       77  FLD0119B                       PIC  9(07)V9(02) COMP-6
           VALUE  2460449.05.
       77  FLD0119E                       PIC X  VALUE 'N'.

       77  FLD0120A                       PIC  9(06)V9(25) COMP-3
           VALUE  830160.1137616416714593015058198.
       77  FLD0120B                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0120E                       PIC X  VALUE 'N'.

       77  FLD0121A                       PIC S9(07)V9(01) COMP-3
           VALUE +2338292.2.
       77  FLD0121B                       PIC S9(09)V9(03) COMP-3
           VALUE +320991974.822.
       77  FLD0121E                       PIC X  VALUE 'N'.

       77  FLD0122A                       PIC S9(06)V9(01) COMP-3
           VALUE -184951.8.
       77  FLD0122B                       PIC  9(08)V9(02) COMP-6
           VALUE  26752619.72.
       77  FLD0122E                       PIC X  VALUE 'N'.

       77  FLD0123A                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0123B                       PIC  9(07)V9(21) COMP-3
           VALUE  7502027.502690824523057244732.
       77  FLD0123E                       PIC X  VALUE 'N'.

       77  FLD0124A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0124B                       PIC S9(10)V9(06) COMP-3
           VALUE +4223876720.963152.
       77  FLD0124E                       PIC X  VALUE 'N'.

       77  FLD0125A                       PIC  9(04)V9(29) COMP-3
           VALUE  8800.31826789913984576685379579430.
       77  FLD0125B                       PIC  9(09)V9(15) COMP-6
           VALUE  637787216.045794358443288.
       77  FLD0125E                       PIC X  VALUE 'N'.

       77  FLD0126A                       PIC  9(06)V9(24) COMP-6
           VALUE  807990.071015203703552742808824.
       77  FLD0126B                       PIC  9(07)V9(01) COMP-6
           VALUE  2285688.0.
       77  FLD0126E                       PIC X  VALUE 'N'.

       77  FLD0127A                       PIC  9(04)V9(30) COMP-6
           VALUE  8981.860178820127993404298649693373.
       77  FLD0127B                       PIC  9(05)V9(28) COMP-6
           VALUE  87878.0390073648609572387613297905.
       77  FLD0127E                       PIC X  VALUE 'N'.

       77  FLD0128A                       PIC  9(10)V9(06) COMP-6
           VALUE  4298489587.591516.
       77  FLD0128B                       PIC  9(08)V9(02) COMP-6
           VALUE  26904320.50.
       77  FLD0128E                       PIC X  VALUE 'N'.

       77  FLD0129A                       PIC S9(08)V9(04) COMP-3
           VALUE +33460508.1048.
       77  FLD0129B                       PIC  9(09)V9(14) COMP-6
           VALUE  629564859.51748508700376.
       77  FLD0129E                       PIC X  VALUE 'N'.

       77  FLD0130A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0130B                       PIC  9(08)V9(03) COMP-6
           VALUE  30500681.275.
       77  FLD0130E                       PIC X  VALUE 'N'.

       77  FLD0131A                       PIC  9(08)V9(02) COMP-6
           VALUE  26916210.05.
       77  FLD0131B                       PIC  9(08)V9(18) COMP-6
           VALUE  70626515.642831921848454612.
       77  FLD0131E                       PIC X  VALUE 'N'.

       77  FLD0132A                       PIC  9(04)       COMP-6
           VALUE  1270.
       77  FLD0132B                       PIC  9(07)V9(01) COMP-6
           VALUE  2163498.7.
       77  FLD0132E                       PIC X  VALUE 'N'.

       77  FLD0133A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.890353542063604619372085835493635386.
       77  FLD0133B                       PIC S9(07)V9(02) COMP-3
           VALUE -2528421.98.
       77  FLD0133E                       PIC X  VALUE 'N'.

       77  FLD0134A                       PIC  9(08)V9(18) COMP-3
           VALUE  70385499.741438917187252855.
       77  FLD0134B                       PIC  9(09)V9(16) COMP-3
           VALUE  673960062.4739148226893803.
       77  FLD0134E                       PIC X  VALUE 'N'.

       77  FLD0135A                       PIC  9(10)V9(07) COMP-6
           VALUE  4678335500.0128495.
       77  FLD0135B                       PIC  9(07)V9(02) COMP-6
           VALUE  2561321.97.
       77  FLD0135E                       PIC X  VALUE 'N'.

       77  FLD0136A                       PIC S9(05)       COMP-3
           VALUE -15169.
       77  FLD0136B                       PIC  9(08)V9(19) COMP-3
           VALUE  72091249.9695820607747975827.
       77  FLD0136E                       PIC X  VALUE 'N'.

       77  FLD0137A                       PIC S9(08)V9(02) COMP-3
           VALUE -27190319.39.
       77  FLD0137B                       PIC  9(03)V9(32) COMP-3
           VALUE  921.23024961283406231160597599227912.
       77  FLD0137E                       PIC X  VALUE 'N'.

       77  FLD0138A                       PIC S9(10)V9(08) COMP-3
           VALUE -4824223828.94490853.
       77  FLD0138B                       PIC  9(04)V9(30) COMP-6
           VALUE  8976.142294415691003095503219810780.
       77  FLD0138E                       PIC X  VALUE 'N'.

       77  FLD0139A                       PIC  9(09)V9(03) COMP-6
           VALUE  319644653.394.
       77  FLD0139B                       PIC  9(06)V9(25) COMP-6
           VALUE  818318.3537620841718762676464393.
       77  FLD0139E                       PIC X  VALUE 'N'.

       77  FLD0140A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0140B                       PIC  9(03)V9(31) COMP-3
           VALUE  913.4502802484925076953459210926666.
       77  FLD0140E                       PIC X  VALUE 'N'.

       77  FLD0141A                       PIC  9(09)V9(14) COMP-3
           VALUE  612266512.11346116987499.
       77  FLD0141B                       PIC  9(06)V9(01) COMP-6
           VALUE  198046.5.
       77  FLD0141E                       PIC X  VALUE 'N'.

       77  FLD0142A                       PIC  9(09)V9(04) COMP-6
           VALUE  356201246.7531.
       77  FLD0142B                       PIC S9(04)       COMP-3
           VALUE +1134.
       77  FLD0142E                       PIC X  VALUE 'N'.

       77  FLD0143A                       PIC S9(07)V9(02) COMP-3
           VALUE -2608987.15.
       77  FLD0143B                       PIC  9(06)V9(01) COMP-6
           VALUE  205887.8.
       77  FLD0143E                       PIC X  VALUE 'N'.

       77  FLD0144A                       PIC  9(10)V9(11) COMP-6
           VALUE  5664625691.64754570216.
       77  FLD0144B                       PIC  9(07)V9(01) COMP-6
           VALUE  2170292.3.
       77  FLD0144E                       PIC X  VALUE 'N'.

       77  FLD0145A                       PIC  9(09)V9(13) COMP-3
           VALUE  592809780.4295365813587.
       77  FLD0145B                       PIC  9(09)V9(06) COMP-6
           VALUE  416669902.306984.
       77  FLD0145E                       PIC X  VALUE 'N'.

       77  FLD0146A                       PIC S9(03)       COMP-3
           VALUE -091.
       77  FLD0146B                       PIC  9(09)V9(13) COMP-3
           VALUE  592675280.7490164309811.
       77  FLD0146E                       PIC X  VALUE 'N'.

       77  FLD0147A                       PIC  9(03)       COMP-6
           VALUE  085.
       77  FLD0147B                       PIC  9(10)V9(05) COMP-6
           VALUE  3974420340.21838.
       77  FLD0147E                       PIC X  VALUE 'N'.

       77  FLD0148A                       PIC  9(04)       COMP-6
           VALUE  1189.
       77  FLD0148B                       PIC  9(08)V9(04) COMP-6
           VALUE  33583306.9980.
       77  FLD0148E                       PIC X  VALUE 'N'.

       77  FLD0149A                       PIC  9(05)V9(27) COMP-3
           VALUE  86469.811002464236349140946913394.
       77  FLD0149B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0149E                       PIC X  VALUE 'N'.

       77  FLD0150A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0150B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.779789481524289174174668914929497987.
       77  FLD0150E                       PIC X  VALUE 'N'.

       77  FLD0151A                       PIC  9(09)V9(13) COMP-3
           VALUE  602633749.4884196344102.
       77  FLD0151B                       PIC  9(07)V9(22) COMP-3
           VALUE  7715228.5011189425389943608024.
       77  FLD0151E                       PIC X  VALUE 'N'.

       77  FLD0152A                       PIC S9(08)V9(02) COMP-3
           VALUE -28005400.65.
       77  FLD0152B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.9689035330467796747200281970435753.
       77  FLD0152E                       PIC X  VALUE 'N'.

       77  FLD0153A                       PIC  9(08)V9(18) COMP-3
           VALUE  69246387.672994647033419823.
       77  FLD0153B                       PIC  9(07)V9(22) COMP-3
           VALUE  7700147.9845998110906890588012.
       77  FLD0153E                       PIC X  VALUE 'N'.

       77  FLD0154A                       PIC  9(09)V9(14) COMP-6
           VALUE  618531644.61004783714059.
       77  FLD0154B                       PIC  9(10)V9(07) COMP-6
           VALUE  4667533939.9326892.
       77  FLD0154E                       PIC X  VALUE 'N'.

       77  FLD0155A                       PIC  9(10)V9(12) COMP-3
           VALUE  5816028861.286740569980.
       77  FLD0155B                       PIC  9(03)V9(31) COMP-3
           VALUE  920.9824083062539967770021576143335.
       77  FLD0155E                       PIC X  VALUE 'N'.

       77  FLD0156A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3830714078202746009083057288080453.
       77  FLD0156B                       PIC  9(04)V9(30) COMP-6
           VALUE  9080.971133779824899789900882751680.
       77  FLD0156E                       PIC X  VALUE 'N'.

       77  FLD0157A                       PIC  9(09)V9(16) COMP-6
           VALUE  659745695.0483697735165833.
       77  FLD0157B                       PIC  9(10)V9(06) COMP-6
           VALUE  4359875032.276696.
       77  FLD0157E                       PIC X  VALUE 'N'.

       77  FLD0158A                       PIC S9(09)V9(06) COMP-3
           VALUE +412656981.234114.
       77  FLD0158B                       PIC  9(09)V9(14) COMP-3
           VALUE  611832243.66474420197192.
       77  FLD0158E                       PIC X  VALUE 'N'.

       77  FLD0159A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0159B                       PIC  9(09)V9(15) COMP-3
           VALUE  643529357.674236912600918.
       77  FLD0159E                       PIC X  VALUE 'N'.

       77  FLD0160A                       PIC  9(08)V9(20) COMP-6
           VALUE  74656107.83998073429756914265.
       77  FLD0160B                       PIC  9(06)V9(01) COMP-6
           VALUE  207077.8.
       77  FLD0160E                       PIC X  VALUE 'N'.

       77  FLD0161A                       PIC  9(07)V9(22) COMP-6
           VALUE  7887170.9741627593626134284932.
       77  FLD0161B                       PIC  9(08)V9(19) COMP-6
           VALUE  71702582.3615881408024108623.
       77  FLD0161E                       PIC X  VALUE 'N'.

       77  FLD0162A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0162B                       PIC  9(10)V9(11) COMP-6
           VALUE  5668143857.58160899086.
       77  FLD0162E                       PIC X  VALUE 'N'.

       77  FLD0163A                       PIC  9(09)V9(14) COMP-6
           VALUE  618392824.19829444403802.
       77  FLD0163B                       PIC  9(09)V9(15) COMP-3
           VALUE  650815786.826470232817598.
       77  FLD0163E                       PIC X  VALUE 'N'.

       77  FLD0164A                       PIC S9(06)V9(01) COMP-3
           VALUE +204076.7.
       77  FLD0164B                       PIC  9(04)       COMP-6
           VALUE  1076.
       77  FLD0164E                       PIC X  VALUE 'N'.

       77  FLD0165A                       PIC  9(09)V9(14) COMP-3
           VALUE  610409164.63927785695631.
       77  FLD0165B                       PIC  9(04)       COMP-6
           VALUE  1267.
       77  FLD0165E                       PIC X  VALUE 'N'.

       77  FLD0166A                       PIC  9(07)V9(02) COMP-6
           VALUE  2460589.98.
       77  FLD0166B                       PIC  9(05)V9(01) COMP-6
           VALUE  17630.0.
       77  FLD0166E                       PIC X  VALUE 'N'.

       77  FLD0167A                       PIC S9(09)V9(03) COMP-3
           VALUE +323253458.962.
       77  FLD0167B                       PIC  9(06)V9(25) COMP-6
           VALUE  838285.1322478405142746282763255.
       77  FLD0167E                       PIC X  VALUE 'N'.

       77  FLD0168A                       PIC S9(04)       COMP-3
           VALUE +1200.
       77  FLD0168B                       PIC S9(10)V9(06) COMP-3
           VALUE +4326937205.661665.
       77  FLD0168E                       PIC X  VALUE 'N'.

       77  FLD0169A                       PIC  9(06)V9(25) COMP-3
           VALUE  834885.7368063762329768451309064.
       77  FLD0169B                       PIC  9(08)V9(18) COMP-6
           VALUE  70699865.109667991980302304.
       77  FLD0169E                       PIC X  VALUE 'N'.

       77  FLD0170A                       PIC  9(08)V9(19) COMP-3
           VALUE  72325482.4666709539293663056.
       77  FLD0170B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.863493423765207213094186045054811984.
       77  FLD0170E                       PIC X  VALUE 'N'.

       77  FLD0171A                       PIC  9(09)V9(16) COMP-6
           VALUE  675345293.4675296948086042.
       77  FLD0171B                       PIC  9(10)V9(06) COMP-6
           VALUE  4258478422.558273.
       77  FLD0171E                       PIC X  VALUE 'N'.

       77  FLD0172A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.0216523360032936373897882731398567.
       77  FLD0172B                       PIC  9(04)V9(30) COMP-6
           VALUE  8999.798406174591702821885519369971.
       77  FLD0172E                       PIC X  VALUE 'N'.

       77  FLD0173A                       PIC S9(09)V9(06) COMP-3
           VALUE +412472914.336663.
       77  FLD0173B                       PIC  9(10)V9(08) COMP-6
           VALUE  4786981213.45750904.
       77  FLD0173E                       PIC X  VALUE 'N'.

       77  FLD0174A                       PIC S9(04)       COMP-3
           VALUE +1244.
       77  FLD0174B                       PIC  9(10)V9(09) COMP-6
           VALUE  5152586737.087611057.
       77  FLD0174E                       PIC X  VALUE 'N'.

       77  FLD0175A                       PIC S9(05)       COMP-3
           VALUE +13456.
       77  FLD0175B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0175E                       PIC X  VALUE 'N'.

       77  FLD0176A                       PIC  9(07)V9(23) COMP-3
           VALUE  7902178.74582138546379894705751.
       77  FLD0176B                       PIC  9(08)V9(03) COMP-6
           VALUE  29797398.003.
       77  FLD0176E                       PIC X  VALUE 'N'.

       77  FLD0177A                       PIC  9(07)V9(21) COMP-3
           VALUE  7618839.577049143496623173632.
       77  FLD0177B                       PIC  9(07)V9(02) COMP-6
           VALUE  2373414.07.
       77  FLD0177E                       PIC X  VALUE 'N'.

       77  FLD0178A                       PIC  9(09)V9(04) COMP-6
           VALUE  355502105.3348.
       77  FLD0178B                       PIC S9(08)V9(03) COMP-3
           VALUE +31397739.222.
       77  FLD0178E                       PIC X  VALUE 'N'.

       77  FLD0179A                       PIC  9(09)V9(05) COMP-6
           VALUE  388560564.63472.
       77  FLD0179B                       PIC  9(03)       COMP-6
           VALUE  099.
       77  FLD0179E                       PIC X  VALUE 'N'.

       77  FLD0180A                       PIC  9(05)V9(27) COMP-6
           VALUE  85946.157652659294079455776227405.
       77  FLD0180B                       PIC  9(10)V9(10) COMP-3
           VALUE  5435189439.3573940700.
       77  FLD0180E                       PIC X  VALUE 'N'.

       77  FLD0181A                       PIC  9(06)V9(01) COMP-6
           VALUE  188908.8.
       77  FLD0181B                       PIC S9(10)V9(08) COMP-3
           VALUE -4740924741.33910868.
       77  FLD0181E                       PIC X  VALUE 'N'.

       77  FLD0182A                       PIC  9(10)V9(13) COMP-6
           VALUE  6061401860.3468300394609.
       77  FLD0182B                       PIC  9(09)V9(15) COMP-3
           VALUE  643493508.008180281620980.
       77  FLD0182E                       PIC X  VALUE 'N'.

       77  FLD0183A                       PIC  9(07)V9(23) COMP-3
           VALUE  7910108.10526126539876656806882.
       77  FLD0183B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0183E                       PIC X  VALUE 'N'.

       77  FLD0184A                       PIC  9(09)V9(15) COMP-6
           VALUE  635945742.812533687526865.
       77  FLD0184B                       PIC S9(07)V9(01) COMP-3
           VALUE +2343773.6.
       77  FLD0184E                       PIC X  VALUE 'N'.

       77  FLD0185A                       PIC  9(05)       COMP-6
           VALUE  15666.
       77  FLD0185B                       PIC  9(08)V9(20) COMP-6
           VALUE  73935660.38753716096465495866.
       77  FLD0185E                       PIC X  VALUE 'N'.

       77  FLD0186A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0186B                       PIC  9(05)V9(26) COMP-3
           VALUE  84084.08947119312415452441200613.
       77  FLD0186E                       PIC X  VALUE 'N'.

       77  FLD0187A                       PIC  9(09)V9(13) COMP-3
           VALUE  604672028.7423602568921.
       77  FLD0187B                       PIC  9(10)V9(12) COMP-6
           VALUE  5893278013.192120301511.
       77  FLD0187E                       PIC X  VALUE 'N'.

       77  FLD0188A                       PIC  9(08)V9(17) COMP-3
           VALUE  68008236.87569536035724127.
       77  FLD0188B                       PIC  9(07)V9(21) COMP-3
           VALUE  7537078.198448752264226868646.
       77  FLD0188E                       PIC X  VALUE 'N'.

       77  FLD0189A                       PIC  9(10)V9(09) COMP-3
           VALUE  5115071016.238050827.
       77  FLD0189B                       PIC  9(10)V9(11) COMP-6
           VALUE  5668524677.20726727051.
       77  FLD0189E                       PIC X  VALUE 'N'.

       77  FLD0190A                       PIC  9(07)V9(02) COMP-6
           VALUE  2382137.54.
       77  FLD0190B                       PIC  9(09)V9(14) COMP-6
           VALUE  627148648.94273569806415.
       77  FLD0190E                       PIC X  VALUE 'N'.

       77  FLD0191A                       PIC  9(05)       COMP-6
           VALUE  13720.
       77  FLD0191B                       PIC  9(06)V9(24) COMP-3
           VALUE  803717.168989411478996487403492.
       77  FLD0191E                       PIC X  VALUE 'N'.

       77  FLD0192A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.894259454195439840162862310535274446.
       77  FLD0192B                       PIC  9(09)V9(04) COMP-6
           VALUE  358034239.3955.
       77  FLD0192E                       PIC X  VALUE 'N'.

       77  FLD0193A                       PIC  9(10)V9(06) COMP-6
           VALUE  4252943677.090519.
       77  FLD0193B                       PIC  9(09)V9(14) COMP-3
           VALUE  612048644.17243076690766.
       77  FLD0193E                       PIC X  VALUE 'N'.

       77  FLD0194A                       PIC  9(09)V9(06) COMP-6
           VALUE  417168379.939779.
       77  FLD0194B                       PIC  9(09)V9(15) COMP-3
           VALUE  634454032.998696626499679.
       77  FLD0194E                       PIC X  VALUE 'N'.

       77  FLD0195A                       PIC  9(08)V9(02) COMP-6
           VALUE  26645846.45.
       77  FLD0195B                       PIC  9(05)       COMP-6
           VALUE  14921.
       77  FLD0195E                       PIC X  VALUE 'N'.

       77  FLD0196A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0196B                       PIC S9(05)V9(01) COMP-3
           VALUE -18000.7.
       77  FLD0196E                       PIC X  VALUE 'N'.

       77  FLD0197A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.847788375924405590566834689525421708.
       77  FLD0197B                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0197E                       PIC X  VALUE 'N'.

       77  FLD0198A                       PIC  9(09)V9(13) COMP-3
           VALUE  593293108.5591157671643.
       77  FLD0198B                       PIC S9(05)       COMP-3
           VALUE +14072.
       77  FLD0198E                       PIC X  VALUE 'N'.

       77  FLD0199A                       PIC  9(07)V9(02) COMP-6
           VALUE  2483287.24.
       77  FLD0199B                       PIC  9(07)V9(23) COMP-6
           VALUE  7969040.17410605347571106449322.
       77  FLD0199E                       PIC X  VALUE 'N'.

       77  FLD0200A                       PIC S9(10)V9(08) COMP-3
           VALUE -4935972790.60619176.
       77  FLD0200B                       PIC  9(10)V9(07) COMP-6
           VALUE  4582475224.7206340.
       77  FLD0200E                       PIC X  VALUE 'N'.

       77  FLD0201A                       PIC  9(04)       COMP-6
           VALUE  1282.
       77  FLD0201B                       PIC  9(07)V9(23) COMP-3
           VALUE  7926313.90444417882612526682351.
       77  FLD0201E                       PIC X  VALUE 'N'.

       77  FLD0202A                       PIC S9(09)V9(04) COMP-3
           VALUE -360603443.7503.
       77  FLD0202B                       PIC  9(03)V9(32) COMP-6
           VALUE  935.68197555010013122256395945441909.
       77  FLD0202E                       PIC X  VALUE 'N'.

       77  FLD0203A                       PIC  9(09)V9(14) COMP-6
           VALUE  628607663.38264040253847.
       77  FLD0203B                       PIC  9(03)V9(31) COMP-3
           VALUE  920.1886012491730104656539879215415.
       77  FLD0203E                       PIC X  VALUE 'N'.

       77  FLD0204A                       PIC  9(01)V9(35) COMP-3
           VALUE  9.73054030732718233664968465745914727.
       77  FLD0204B                       PIC  9(07)V9(01) COMP-6
           VALUE  2363275.3.
       77  FLD0204E                       PIC X  VALUE 'N'.

       77  FLD0205A                       PIC  9(09)V9(15) COMP-6
           VALUE  648926914.508991536933990.
       77  FLD0205B                       PIC  9(09)V9(15) COMP-6
           VALUE  639814213.238647178094709.
       77  FLD0205E                       PIC X  VALUE 'N'.

       77  FLD0206A                       PIC  9(06)V9(01) COMP-6
           VALUE  186967.7.
       77  FLD0206B                       PIC  9(08)V9(18) COMP-6
           VALUE  70826356.466434425840361654.
       77  FLD0206E                       PIC X  VALUE 'N'.

       77  FLD0207A                       PIC  9(05)V9(26) COMP-6
           VALUE  83944.39242287422553445708217623.
       77  FLD0207B                       PIC  9(07)V9(21) COMP-3
           VALUE  7607846.993308088334728722657.
       77  FLD0207E                       PIC X  VALUE 'N'.

       77  FLD0208A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7940040016311842308027735271025449.
       77  FLD0208B                       PIC  9(07)V9(01) COMP-6
           VALUE  2151595.4.
       77  FLD0208E                       PIC X  VALUE 'N'.

       77  FLD0209A                       PIC  9(03)V9(32) COMP-6
           VALUE  926.61149050802726900855077474261634.
       77  FLD0209B                       PIC  9(07)V9(23) COMP-6
           VALUE  7951784.48263920700789242346218.
       77  FLD0209E                       PIC X  VALUE 'N'.

       77  FLD0210A                       PIC  9(08)V9(19) COMP-3
           VALUE  72323528.1456575562764044207.
       77  FLD0210B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0210E                       PIC X  VALUE 'N'.

       77  FLD0211A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0211B                       PIC S9(09)V9(07) COMP-3
           VALUE +442113770.7554604.
       77  FLD0211E                       PIC X  VALUE 'N'.

       77  FLD0212A                       PIC  9(10)V9(08) COMP-6
           VALUE  4892032792.55731038.
       77  FLD0212B                       PIC S9(09)V9(05) COMP-3
           VALUE -372935567.70682.
       77  FLD0212E                       PIC X  VALUE 'N'.

       77  FLD0213A                       PIC S9(03)       COMP-3
           VALUE -082.
       77  FLD0213B                       PIC  9(07)V9(21) COMP-3
           VALUE  7525721.770631302875997903356.
       77  FLD0213E                       PIC X  VALUE 'N'.

       77  FLD0214A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0214B                       PIC  9(09)V9(16) COMP-6
           VALUE  666893270.4655321508369070.
       77  FLD0214E                       PIC X  VALUE 'N'.

       77  FLD0215A                       PIC  9(03)V9(32) COMP-6
           VALUE  926.34033699271633999217101518297567.
       77  FLD0215B                       PIC S9(05)V9(01) COMP-3
           VALUE -18226.5.
       77  FLD0215E                       PIC X  VALUE 'N'.

       77  FLD0216A                       PIC S9(08)V9(02) COMP-3
           VALUE -28095374.87.
       77  FLD0216B                       PIC  9(08)V9(02) COMP-6
           VALUE  28541793.87.
       77  FLD0216E                       PIC X  VALUE 'N'.

       77  FLD0217A                       PIC  9(08)V9(20) COMP-6
           VALUE  74562962.48658396130792880285.
       77  FLD0217B                       PIC S9(09)V9(07) COMP-3
           VALUE +444563659.0422049.
       77  FLD0217E                       PIC X  VALUE 'N'.

       77  FLD0218A                       PIC S9(05)V9(01) COMP-3
           VALUE -18094.6.
       77  FLD0218B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.867255193327033602201936446363106369.
       77  FLD0218E                       PIC X  VALUE 'N'.

       77  FLD0219A                       PIC  9(09)V9(12) COMP-6
           VALUE  578788992.127507229135.
       77  FLD0219B                       PIC  9(10)V9(10) COMP-6
           VALUE  5297903516.0907261836.
       77  FLD0219E                       PIC X  VALUE 'N'.

       77  FLD0220A                       PIC  9(09)V9(12) COMP-3
           VALUE  573343525.907533679841.
       77  FLD0220B                       PIC S9(05)       COMP-3
           VALUE +14161.
       77  FLD0220E                       PIC X  VALUE 'N'.

       77  FLD0221A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0221B                       PIC  9(04)V9(29) COMP-6
           VALUE  8789.10367794605407176788958167890.
       77  FLD0221E                       PIC X  VALUE 'N'.

       77  FLD0222A                       PIC  9(09)V9(14) COMP-6
           VALUE  628182805.25174396977661.
       77  FLD0222B                       PIC S9(05)       COMP-3
           VALUE -15228.
       77  FLD0222E                       PIC X  VALUE 'N'.

       77  FLD0223A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0223B                       PIC  9(08)V9(18) COMP-6
           VALUE  69950927.082806102497158917.
       77  FLD0223E                       PIC X  VALUE 'N'.

       77  FLD0224A                       PIC  9(06)V9(25) COMP-6
           VALUE  838187.2267509891116787912324070.
       77  FLD0224B                       PIC S9(09)V9(05) COMP-3
           VALUE -382169497.04991.
       77  FLD0224E                       PIC X  VALUE 'N'.

       77  FLD0225A                       PIC  9(05)       COMP-6
           VALUE  13797.
       77  FLD0225B                       PIC  9(09)V9(12) COMP-3
           VALUE  572598612.808938978169.
       77  FLD0225E                       PIC X  VALUE 'N'.

       77  FLD0226A                       PIC  9(05)       COMP-6
           VALUE  14900.
       77  FLD0226B                       PIC S9(07)V9(01) COMP-3
           VALUE +2129995.4.
       77  FLD0226E                       PIC X  VALUE 'N'.

       77  FLD0227A                       PIC  9(09)V9(14) COMP-6
           VALUE  629583055.15940859997670.
       77  FLD0227B                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.577034983017961522477889957372.
       77  FLD0227E                       PIC X  VALUE 'N'.

       77  FLD0228A                       PIC S9(07)V9(01) COMP-3
           VALUE +2225916.3.
       77  FLD0228B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.739690596877397243957830141880549490.
       77  FLD0228E                       PIC X  VALUE 'N'.

       77  FLD0229A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.870473603260505601753038718015886843.
       77  FLD0229B                       PIC  9(08)V9(20) COMP-6
           VALUE  73838029.76208535540081356884.
       77  FLD0229E                       PIC X  VALUE 'N'.

       77  FLD0230A                       PIC S9(06)V9(01) COMP-3
           VALUE +201492.2.
       77  FLD0230B                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0230E                       PIC X  VALUE 'N'.

       77  FLD0231A                       PIC  9(05)V9(28) COMP-6
           VALUE  87781.6812716511907233041256404248.
       77  FLD0231B                       PIC S9(08)V9(02) COMP-3
           VALUE -27182116.43.
       77  FLD0231E                       PIC X  VALUE 'N'.

       77  FLD0232A                       PIC  9(09)V9(04) COMP-6
           VALUE  356308264.5328.
       77  FLD0232B                       PIC  9(06)V9(25) COMP-3
           VALUE  833280.3014261945806495646138500.
       77  FLD0232E                       PIC X  VALUE 'N'.

       77  FLD0233A                       PIC  9(07)V9(21) COMP-6
           VALUE  7552156.809035388551620826547.
       77  FLD0233B                       PIC  9(08)V9(04) COMP-6
           VALUE  33739768.3403.
       77  FLD0233E                       PIC X  VALUE 'N'.

       77  FLD0234A                       PIC  9(08)V9(04) COMP-6
           VALUE  33831052.6754.
       77  FLD0234B                       PIC  9(09)V9(13) COMP-3
           VALUE  593899144.9424572133253.
       77  FLD0234E                       PIC X  VALUE 'N'.

       77  FLD0235A                       PIC S9(05)       COMP-3
           VALUE +14123.
       77  FLD0235B                       PIC S9(10)V9(08) COMP-3
           VALUE -4808329310.19295639.
       77  FLD0235E                       PIC X  VALUE 'N'.

       77  FLD0236A                       PIC  9(04)V9(29) COMP-3
           VALUE  8818.23528289915170574886360554955.
       77  FLD0236B                       PIC  9(08)V9(18) COMP-3
           VALUE  70480160.116860446350983693.
       77  FLD0236E                       PIC X  VALUE 'N'.

       77  FLD0237A                       PIC  9(08)V9(02) COMP-6
           VALUE  28742037.59.
       77  FLD0237B                       PIC  9(04)V9(29) COMP-6
           VALUE  8850.90488581330880890618573175743.
       77  FLD0237E                       PIC X  VALUE 'N'.

       77  FLD0238A                       PIC  9(09)V9(15) COMP-3
           VALUE  634521096.430120334908053.
       77  FLD0238B                       PIC  9(06)V9(01) COMP-6
           VALUE  198396.3.
       77  FLD0238E                       PIC X  VALUE 'N'.

       77  FLD0239A                       PIC  9(09)V9(16) COMP-6
           VALUE  678585779.2924817610824561.
       77  FLD0239B                       PIC  9(09)V9(14) COMP-3
           VALUE  614739880.97122655993587.
       77  FLD0239E                       PIC X  VALUE 'N'.

       77  FLD0240A                       PIC  9(10)V9(06) COMP-6
           VALUE  4289853576.446766.
       77  FLD0240B                       PIC  9(06)V9(25) COMP-3
           VALUE  833165.4817075836438888813972880.
       77  FLD0240E                       PIC X  VALUE 'N'.

       77  FLD0241A                       PIC S9(05)       COMP-3
           VALUE +14407.
       77  FLD0241B                       PIC  9(09)V9(14) COMP-6
           VALUE  608742950.23205993171444.
       77  FLD0241E                       PIC X  VALUE 'N'.

       77  FLD0242A                       PIC  9(10)V9(12) COMP-6
           VALUE  5860383854.989427154791.
       77  FLD0242B                       PIC S9(06)V9(01) COMP-3
           VALUE +201770.8.
       77  FLD0242E                       PIC X  VALUE 'N'.

       77  FLD0243A                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0409660969254295181940506154205650.
       77  FLD0243B                       PIC  9(05)V9(28) COMP-6
           VALUE  86928.4847432245544318618613033322.
       77  FLD0243E                       PIC X  VALUE 'N'.

       77  FLD0244A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0244B                       PIC  9(09)V9(13) COMP-6
           VALUE  596454149.7067354924865.
       77  FLD0244E                       PIC X  VALUE 'N'.

       77  FLD0245A                       PIC S9(09)V9(05) COMP-3
           VALUE -371716886.14542.
       77  FLD0245B                       PIC  9(09)V9(15) COMP-6
           VALUE  636050719.355519267317333.
       77  FLD0245E                       PIC X  VALUE 'N'.

       77  FLD0246A                       PIC  9(05)V9(28) COMP-3
           VALUE  87216.9313623637143528810611314838.
       77  FLD0246B                       PIC  9(06)V9(01) COMP-6
           VALUE  208199.5.
       77  FLD0246E                       PIC X  VALUE 'N'.

       77  FLD0247A                       PIC  9(06)V9(25) COMP-3
           VALUE  834494.8214770686600871840710169.
       77  FLD0247B                       PIC  9(08)V9(19) COMP-3
           VALUE  73372232.8570783122181353519.
       77  FLD0247E                       PIC X  VALUE 'N'.

       77  FLD0248A                       PIC  9(04)V9(29) COMP-6
           VALUE  8885.56418584546814365410227765096.
       77  FLD0248B                       PIC  9(10)V9(11) COMP-6
           VALUE  5683594830.11341870550.
       77  FLD0248E                       PIC X  VALUE 'N'.

       77  FLD0249A                       PIC  9(09)V9(16) COMP-6
           VALUE  678470839.5950102000071524.
       77  FLD0249B                       PIC  9(09)V9(16) COMP-3
           VALUE  673175418.3146980707874718.
       77  FLD0249E                       PIC X  VALUE 'N'.

       77  FLD0250A                       PIC  9(09)V9(15) COMP-3
           VALUE  643468324.926731005675151.
       77  FLD0250B                       PIC  9(04)V9(30) COMP-6
           VALUE  9057.675398841628089385835664870683.
       77  FLD0250E                       PIC X  VALUE 'N'.

       77  FLD0251A                       PIC S9(09)V9(06) COMP-3
           VALUE +402548910.007195.
       77  FLD0251B                       PIC  9(06)V9(25) COMP-3
           VALUE  830149.1080513825338016431487631.
       77  FLD0251E                       PIC X  VALUE 'N'.

       77  FLD0252A                       PIC S9(05)V9(01) COMP-3
           VALUE -18339.3.
       77  FLD0252B                       PIC S9(07)V9(01) COMP-3
           VALUE +2343087.3.
       77  FLD0252E                       PIC X  VALUE 'N'.

       77  FLD0253A                       PIC  9(06)V9(25) COMP-3
           VALUE  822593.8518184680026124055984837.
       77  FLD0253B                       PIC  9(07)V9(01) COMP-6
           VALUE  2159897.7.
       77  FLD0253E                       PIC X  VALUE 'N'.

       77  FLD0254A                       PIC  9(10)V9(10) COMP-3
           VALUE  5401895692.3872574193.
       77  FLD0254B                       PIC S9(07)V9(02) COMP-3
           VALUE +2405256.16.
       77  FLD0254E                       PIC X  VALUE 'N'.

       77  FLD0255A                       PIC  9(02)V9(34) COMP-6
           VALUE  94.8299297085154591080424779647728428.
       77  FLD0255B                       PIC  9(10)V9(10) COMP-3
           VALUE  5408143412.7739858030.
       77  FLD0255E                       PIC X  VALUE 'N'.

       77  FLD0256A                       PIC S9(09)V9(08) COMP-3
           VALUE -473179644.06591722.
       77  FLD0256B                       PIC  9(04)V9(30) COMP-3
           VALUE  9107.434804383051085707734273455571.
       77  FLD0256E                       PIC X  VALUE 'N'.

       77  FLD0257A                       PIC  9(09)V9(12) COMP-6
           VALUE  577029491.737192756772.
       77  FLD0257B                       PIC S9(03)       COMP-3
           VALUE -084.
       77  FLD0257E                       PIC X  VALUE 'N'.

       77  FLD0258A                       PIC  9(10)V9(12) COMP-3
           VALUE  5908893351.960881057394.
       77  FLD0258B                       PIC  9(05)V9(27) COMP-6
           VALUE  84978.202175808337237583600654033.
       77  FLD0258E                       PIC X  VALUE 'N'.

       77  FLD0259A                       PIC  9(03)V9(32) COMP-6
           VALUE  937.55337057593879368511124994256533.
       77  FLD0259B                       PIC S9(09)V9(05) COMP-3
           VALUE -374669242.27931.
       77  FLD0259E                       PIC X  VALUE 'N'.

       77  FLD0260A                       PIC  9(05)V9(27) COMP-6
           VALUE  86648.984966754782899300835197209.
       77  FLD0260B                       PIC  9(09)V9(13) COMP-3
           VALUE  601823310.0433563187436.
       77  FLD0260E                       PIC X  VALUE 'N'.

       77  FLD0261A                       PIC S9(09)V9(05) COMP-3
           VALUE -374213925.47904.
       77  FLD0261B                       PIC  9(09)V9(05) COMP-6
           VALUE  379885544.06227.
       77  FLD0261E                       PIC X  VALUE 'N'.

       77  FLD0262A                       PIC S9(05)V9(01) COMP-3
           VALUE -17015.9.
       77  FLD0262B                       PIC  9(09)V9(17) COMP-6
           VALUE  687559565.36759821329241049.
       77  FLD0262E                       PIC X  VALUE 'N'.

       77  FLD0263A                       PIC  9(05)V9(26) COMP-3
           VALUE  84046.29767805690265802809335582.
       77  FLD0263B                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0263E                       PIC X  VALUE 'N'.

       77  FLD0264A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.78568596491340514376133796758949.
       77  FLD0264B                       PIC  9(05)V9(01) COMP-6
           VALUE  17620.4.
       77  FLD0264E                       PIC X  VALUE 'N'.

       77  FLD0265A                       PIC S9(09)V9(05) COMP-3
           VALUE -380334582.15301.
       77  FLD0265B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.854231270822284560750858872779645025.
       77  FLD0265E                       PIC X  VALUE 'N'.

       77  FLD0266A                       PIC  9(05)V9(27) COMP-6
           VALUE  84707.693570856212872399737534578.
       77  FLD0266B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.1883348354436562566149859776487573.
       77  FLD0266E                       PIC X  VALUE 'N'.

       77  FLD0267A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0267B                       PIC S9(07)V9(01) COMP-3
           VALUE +2348814.4.
       77  FLD0267E                       PIC X  VALUE 'N'.

       77  FLD0268A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0268B                       PIC  9(06)V9(25) COMP-3
           VALUE  821150.0957830146774085733341053.
       77  FLD0268E                       PIC X  VALUE 'N'.

       77  FLD0269A                       PIC  9(08)V9(18) COMP-6
           VALUE  69955495.182247551255727557.
       77  FLD0269B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0269E                       PIC X  VALUE 'N'.

       77  FLD0270A                       PIC  9(08)V9(18) COMP-6
           VALUE  69584936.933990082508216801.
       77  FLD0270B                       PIC S9(04)       COMP-3
           VALUE +1200.
       77  FLD0270E                       PIC X  VALUE 'N'.

       77  FLD0271A                       PIC  9(10)V9(07) COMP-6
           VALUE  4478155927.4435323.
       77  FLD0271B                       PIC  9(07)V9(02) COMP-6
           VALUE  2371664.59.
       77  FLD0271E                       PIC X  VALUE 'N'.

       77  FLD0272A                       PIC S9(09)V9(06) COMP-3
           VALUE +411514667.070764.
       77  FLD0272B                       PIC S9(10)V9(08) COMP-3
           VALUE -4748492295.95657285.
       77  FLD0272E                       PIC X  VALUE 'N'.

       77  FLD0273A                       PIC  9(10)V9(07) COMP-6
           VALUE  4698099460.5024867.
       77  FLD0273B                       PIC S9(10)V9(06) COMP-3
           VALUE +4338009792.593093.
       77  FLD0273E                       PIC X  VALUE 'N'.

       77  FLD0274A                       PIC  9(07)V9(01) COMP-6
           VALUE  2190249.4.
       77  FLD0274B                       PIC  9(10)V9(10) COMP-6
           VALUE  5271665070.2586675958.
       77  FLD0274E                       PIC X  VALUE 'N'.

       77  FLD0275A                       PIC  9(04)       COMP-6
           VALUE  1157.
       77  FLD0275B                       PIC S9(07)V9(02) COMP-3
           VALUE +2422980.94.
       77  FLD0275E                       PIC X  VALUE 'N'.

       77  FLD0276A                       PIC  9(04)V9(30) COMP-3
           VALUE  9021.044697283423507983002309629227.
       77  FLD0276B                       PIC  9(02)V9(33) COMP-6
           VALUE  94.591784695476577304873444518307223.
       77  FLD0276E                       PIC X  VALUE 'N'.

       77  FLD0277A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.749582162084949876756923003995325416.
       77  FLD0277B                       PIC  9(10)V9(08) COMP-6
           VALUE  4992154586.01645512.
       77  FLD0277E                       PIC X  VALUE 'N'.

       77  FLD0278A                       PIC  9(10)V9(06) COMP-6
           VALUE  4251062706.993476.
       77  FLD0278B                       PIC  9(03)V9(31) COMP-3
           VALUE  914.7657257947739983805490737722720.
       77  FLD0278E                       PIC X  VALUE 'N'.

       77  FLD0279A                       PIC S9(08)V9(02) COMP-3
           VALUE -27159201.10.
       77  FLD0279B                       PIC  9(03)V9(32) COMP-3
           VALUE  921.08160397424898579998853165307082.
       77  FLD0279E                       PIC X  VALUE 'N'.

       77  FLD0280A                       PIC  9(07)V9(02) COMP-6
           VALUE  2571968.92.
       77  FLD0280B                       PIC  9(08)V9(19) COMP-3
           VALUE  71229222.1254675839148262639.
       77  FLD0280E                       PIC X  VALUE 'N'.

       77  FLD0281A                       PIC S9(09)V9(04) COMP-3
           VALUE +342861689.3811.
       77  FLD0281B                       PIC  9(10)V9(07) COMP-6
           VALUE  4662459797.7205073.
       77  FLD0281E                       PIC X  VALUE 'N'.

       77  FLD0282A                       PIC S9(10)V9(07) COMP-3
           VALUE -4600147325.4430291.
       77  FLD0282B                       PIC  9(07)V9(22) COMP-6
           VALUE  7889304.3658446049271049105300.
       77  FLD0282E                       PIC X  VALUE 'N'.

       77  FLD0283A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0283B                       PIC S9(05)V9(01) COMP-3
           VALUE -18273.9.
       77  FLD0283E                       PIC X  VALUE 'N'.

       77  FLD0284A                       PIC  9(09)V9(17) COMP-6
           VALUE  689733171.20512533939802324.
       77  FLD0284B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0284E                       PIC X  VALUE 'N'.

       77  FLD0285A                       PIC  9(03)V9(32) COMP-6
           VALUE  928.78828230193799520009179104818031.
       77  FLD0285B                       PIC  9(08)V9(20) COMP-6
           VALUE  73692142.62351649891158444916.
       77  FLD0285E                       PIC X  VALUE 'N'.

       77  FLD0286A                       PIC  9(08)V9(18) COMP-3
           VALUE  70426964.322731444578806758.
       77  FLD0286B                       PIC  9(07)V9(01) COMP-6
           VALUE  2181620.7.
       77  FLD0286E                       PIC X  VALUE 'N'.

       77  FLD0287A                       PIC S9(07)V9(02) COMP-3
           VALUE -2521413.84.
       77  FLD0287B                       PIC  9(06)       COMP-6
           VALUE  158585.
       77  FLD0287E                       PIC X  VALUE 'N'.

       77  FLD0288A                       PIC  9(09)V9(17) COMP-6
           VALUE  688074525.02240640246355951.
       77  FLD0288B                       PIC  9(04)V9(29) COMP-3
           VALUE  8936.92752615119712089608583482913.
       77  FLD0288E                       PIC X  VALUE 'N'.

       77  FLD0289A                       PIC S9(03)       COMP-3
           VALUE -092.
       77  FLD0289B                       PIC  9(10)V9(11) COMP-6
           VALUE  5676330984.14293657540.
       77  FLD0289E                       PIC X  VALUE 'N'.

       77  FLD0290A                       PIC S9(09)V9(05) COMP-3
           VALUE -382951207.35442.
       77  FLD0290B                       PIC S9(03)       COMP-3
           VALUE -094.
       77  FLD0290E                       PIC X  VALUE 'N'.

       77  FLD0291A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.859384124391753490002088256005663424.
       77  FLD0291B                       PIC  9(06)V9(25) COMP-3
           VALUE  830008.1335268413296191170047677.
       77  FLD0291E                       PIC X  VALUE 'N'.

       77  FLD0292A                       PIC S9(08)V9(03) COMP-3
           VALUE +31020519.916.
       77  FLD0292B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0292E                       PIC X  VALUE 'N'.

       77  FLD0293A                       PIC S9(03)       COMP-3
           VALUE -093.
       77  FLD0293B                       PIC  9(08)V9(03) COMP-6
           VALUE  30744484.924.
       77  FLD0293E                       PIC X  VALUE 'N'.

       77  FLD0294A                       PIC S9(09)V9(06) COMP-3
           VALUE +412445339.504106.
       77  FLD0294B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0294E                       PIC X  VALUE 'N'.

       77  FLD0295A                       PIC S9(07)V9(02) COMP-3
           VALUE -2502548.06.
       77  FLD0295B                       PIC S9(07)V9(01) COMP-3
           VALUE +2138373.7.
       77  FLD0295E                       PIC X  VALUE 'N'.

       77  FLD0296A                       PIC S9(06)       COMP-3
           VALUE -160918.
       77  FLD0296B                       PIC  9(09)V9(12) COMP-3
           VALUE  574303107.736577889141.
       77  FLD0296E                       PIC X  VALUE 'N'.

       77  FLD0297A                       PIC  9(08)V9(03) COMP-6
           VALUE  30843552.269.
       77  FLD0297B                       PIC  9(10)V9(09) COMP-6
           VALUE  5180156945.333709295.
       77  FLD0297E                       PIC X  VALUE 'N'.

       77  FLD0298A                       PIC S9(10)V9(08) COMP-3
           VALUE -4831587379.88150510.
       77  FLD0298B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.983859909908295859892746193509083241.
       77  FLD0298E                       PIC X  VALUE 'N'.

       77  FLD0299A                       PIC  9(10)V9(13) COMP-6
           VALUE  6064872573.5835784522720.
       77  FLD0299B                       PIC  9(09)V9(16) COMP-6
           VALUE  669818284.8844781434038964.
       77  FLD0299E                       PIC X  VALUE 'N'.

       77  FLD0300A                       PIC  9(08)V9(20) COMP-6
           VALUE  73956142.30661028409841151187.
       77  FLD0300B                       PIC  9(09)V9(14) COMP-3
           VALUE  624082886.12038953502292.
       77  FLD0300E                       PIC X  VALUE 'N'.

       77  FLD0301A                       PIC S9(10)V9(07) COMP-3
           VALUE -4524568495.0704084.
       77  FLD0301B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0301E                       PIC X  VALUE 'N'.

       77  FLD0302A                       PIC  9(02)V9(34) COMP-6
           VALUE  94.9764690231816866017311440373305231.
       77  FLD0302B                       PIC  9(10)V9(06) COMP-6
           VALUE  4291773437.216153.
       77  FLD0302E                       PIC X  VALUE 'N'.

       77  FLD0303A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.998247249142951931233369577967096120.
       77  FLD0303B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0303E                       PIC X  VALUE 'N'.

       77  FLD0304A                       PIC S9(03)       COMP-3
           VALUE -083.
       77  FLD0304B                       PIC  9(10)V9(11) COMP-6
           VALUE  5565734306.84127234968.
       77  FLD0304E                       PIC X  VALUE 'N'.

       77  FLD0305A                       PIC  9(09)V9(03) COMP-6
           VALUE  328435884.788.
       77  FLD0305B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0305E                       PIC X  VALUE 'N'.

       77  FLD0306A                       PIC S9(03)       COMP-3
           VALUE -083.
       77  FLD0306B                       PIC S9(10)V9(08) COMP-3
           VALUE -4936418970.17687181.
       77  FLD0306E                       PIC X  VALUE 'N'.

       77  FLD0307A                       PIC  9(10)V9(10) COMP-3
           VALUE  5430567751.9659767416.
       77  FLD0307B                       PIC  9(03)V9(32) COMP-6
           VALUE  928.08547489686554765597747973515652.
       77  FLD0307E                       PIC X  VALUE 'N'.

       77  FLD0308A                       PIC  9(09)V9(05) COMP-6
           VALUE  377189267.62120.
       77  FLD0308B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.4274365663057242414879510761238634.
       77  FLD0308E                       PIC X  VALUE 'N'.

       77  FLD0309A                       PIC  9(09)V9(03) COMP-6
           VALUE  325461096.612.
       77  FLD0309B                       PIC S9(03)       COMP-3
           VALUE -093.
       77  FLD0309E                       PIC X  VALUE 'N'.

       77  FLD0310A                       PIC  9(09)V9(05) COMP-6
           VALUE  377541451.37210.
       77  FLD0310B                       PIC  9(09)V9(06) COMP-6
           VALUE  416709099.760976.
       77  FLD0310E                       PIC X  VALUE 'N'.

       77  FLD0311A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0311B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.931117203050255914931199185957666486.
       77  FLD0311E                       PIC X  VALUE 'N'.

       77  FLD0312A                       PIC S9(10)V9(07) COMP-3
           VALUE -4631183834.9707568.
       77  FLD0312B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0312E                       PIC X  VALUE 'N'.

       77  FLD0313A                       PIC  9(05)V9(27) COMP-3
           VALUE  86493.365621715367907995641871821.
       77  FLD0313B                       PIC  9(09)V9(05) COMP-6
           VALUE  375066571.23058.
       77  FLD0313E                       PIC X  VALUE 'N'.

       77  FLD0314A                       PIC  9(03)       COMP-6
           VALUE  088.
       77  FLD0314B                       PIC  9(08)V9(18) COMP-6
           VALUE  69720866.107690404600560896.
       77  FLD0314E                       PIC X  VALUE 'N'.

       77  FLD0315A                       PIC  9(07)V9(23) COMP-3
           VALUE  7933336.74589681625555215305212.
       77  FLD0315B                       PIC  9(09)V9(17) COMP-6
           VALUE  688307785.43204196306959374.
       77  FLD0315E                       PIC X  VALUE 'N'.

       77  FLD0316A                       PIC  9(06)V9(01) COMP-6
           VALUE  195827.4.
       77  FLD0316B                       PIC  9(10)V9(11) COMP-3
           VALUE  5611864585.06384822086.
       77  FLD0316E                       PIC X  VALUE 'N'.

       77  FLD0317A                       PIC  9(10)V9(08) COMP-6
           VALUE  4983225307.65216153.
       77  FLD0317B                       PIC S9(09)V9(03) COMP-3
           VALUE +331361572.492.
       77  FLD0317E                       PIC X  VALUE 'N'.

       77  FLD0318A                       PIC  9(08)V9(02) COMP-6
           VALUE  26926374.69.
       77  FLD0318B                       PIC  9(04)V9(29) COMP-3
           VALUE  8825.34717446214034275442372745601.
       77  FLD0318E                       PIC X  VALUE 'N'.

       77  FLD0319A                       PIC  9(08)V9(18) COMP-6
           VALUE  69931441.978879860243978328.
       77  FLD0319B                       PIC  9(09)V9(15) COMP-3
           VALUE  650439668.121860714578019.
       77  FLD0319E                       PIC X  VALUE 'N'.

       77  FLD0320A                       PIC  9(08)V9(19) COMP-6
           VALUE  71973495.8824565840274090078.
       77  FLD0320B                       PIC  9(10)V9(11) COMP-3
           VALUE  5542215777.53993832615.
       77  FLD0320E                       PIC X  VALUE 'N'.

       77  FLD0321A                       PIC  9(10)V9(09) COMP-3
           VALUE  5005504874.853489161.
       77  FLD0321B                       PIC  9(09)V9(16) COMP-3
           VALUE  660163921.0521921263818967.
       77  FLD0321E                       PIC X  VALUE 'N'.

       77  FLD0322A                       PIC S9(09)V9(07) COMP-3
           VALUE +442005310.2249054.
       77  FLD0322B                       PIC  9(09)V9(14) COMP-6
           VALUE  617916374.92097983841432.
       77  FLD0322E                       PIC X  VALUE 'N'.

       77  FLD0323A                       PIC S9(05)       COMP-3
           VALUE -15097.
       77  FLD0323B                       PIC  9(01)V9(35) COMP-3
           VALUE  9.73366140153258840861383305309573188.
       77  FLD0323E                       PIC X  VALUE 'N'.

       77  FLD0324A                       PIC  9(10)V9(11) COMP-3
           VALUE  5601604504.75820970162.
       77  FLD0324B                       PIC  9(10)V9(10) COMP-3
           VALUE  5319146871.9734047443.
       77  FLD0324E                       PIC X  VALUE 'N'.

       77  FLD0325A                       PIC  9(04)       COMP-6
           VALUE  1169.
       77  FLD0325B                       PIC  9(08)V9(19) COMP-3
           VALUE  72332591.2353324218528882738.
       77  FLD0325E                       PIC X  VALUE 'N'.

       77  FLD0326A                       PIC S9(08)V9(03) COMP-3
           VALUE +31312044.720.
       77  FLD0326B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0326E                       PIC X  VALUE 'N'.

       77  FLD0327A                       PIC S9(03)       COMP-3
           VALUE -090.
       77  FLD0327B                       PIC S9(07)V9(01) COMP-3
           VALUE +2122536.7.
       77  FLD0327E                       PIC X  VALUE 'N'.

       77  FLD0328A                       PIC  9(08)V9(19) COMP-3
           VALUE  71147504.7716873310044150002.
       77  FLD0328B                       PIC S9(09)V9(05) COMP-3
           VALUE -393175029.86891.
       77  FLD0328E                       PIC X  VALUE 'N'.

       77  FLD0329A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0329B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.2096907591406971249625712516717612.
       77  FLD0329E                       PIC X  VALUE 'N'.

       77  FLD0330A                       PIC  9(09)V9(07) COMP-6
           VALUE  445280746.1581723.
       77  FLD0330B                       PIC  9(07)V9(23) COMP-6
           VALUE  7955244.25555017788980194382020.
       77  FLD0330E                       PIC X  VALUE 'N'.

       77  FLD0331A                       PIC S9(07)V9(01) COMP-3
           VALUE +2232816.8.
       77  FLD0331B                       PIC  9(08)V9(02) COMP-6
           VALUE  27670053.03.
       77  FLD0331E                       PIC X  VALUE 'N'.

       77  FLD0332A                       PIC  9(05)V9(27) COMP-6
           VALUE  86562.988696340348315771962006692.
       77  FLD0332B                       PIC  9(09)V9(04) COMP-6
           VALUE  355930982.9079.
       77  FLD0332E                       PIC X  VALUE 'N'.

       77  FLD0333A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6494138775326296908474432711955159.
       77  FLD0333B                       PIC S9(07)V9(02) COMP-3
           VALUE +2431333.31.
       77  FLD0333E                       PIC X  VALUE 'N'.

       77  FLD0334A                       PIC  9(08)V9(03) COMP-6
           VALUE  28999492.466.
       77  FLD0334B                       PIC  9(09)V9(03) COMP-6
           VALUE  326043905.981.
       77  FLD0334E                       PIC X  VALUE 'N'.

       77  FLD0335A                       PIC S9(08)V9(03) COMP-3
           VALUE +30334218.791.
       77  FLD0335B                       PIC  9(10)V9(09) COMP-6
           VALUE  5075855226.668805064.
       77  FLD0335E                       PIC X  VALUE 'N'.

       77  FLD0336A                       PIC  9(05)V9(27) COMP-6
           VALUE  85800.255545984371874368434873758.
       77  FLD0336B                       PIC S9(08)V9(03) COMP-3
           VALUE -29245898.644.
       77  FLD0336E                       PIC X  VALUE 'N'.

       77  FLD0337A                       PIC  9(08)V9(19) COMP-3
           VALUE  72003996.5448931451597047725.
       77  FLD0337B                       PIC  9(08)V9(19) COMP-3
           VALUE  71409231.4076567258318561925.
       77  FLD0337E                       PIC X  VALUE 'N'.

       77  FLD0338A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0338B                       PIC  9(10)V9(10) COMP-3
           VALUE  5304768900.0456310637.
       77  FLD0338E                       PIC X  VALUE 'N'.

       77  FLD0339A                       PIC S9(06)       COMP-3
           VALUE -160552.
       77  FLD0339B                       PIC  9(09)V9(13) COMP-3
           VALUE  594533435.7259434154840.
       77  FLD0339E                       PIC X  VALUE 'N'.

       77  FLD0340A                       PIC  9(10)V9(09) COMP-3
           VALUE  5028381651.473269320.
       77  FLD0340B                       PIC S9(09)V9(04) COMP-3
           VALUE -361499697.6055.
       77  FLD0340E                       PIC X  VALUE 'N'.

       77  FLD0341A                       PIC  9(10)V9(11) COMP-6
           VALUE  5676316159.01010966318.
       77  FLD0341B                       PIC  9(09)V9(12) COMP-3
           VALUE  572076310.146404809486.
       77  FLD0341E                       PIC X  VALUE 'N'.

       77  FLD0342A                       PIC S9(07)V9(01) COMP-3
           VALUE +2347143.0.
       77  FLD0342B                       PIC S9(10)V9(07) COMP-3
           VALUE -4530575977.8135124.
       77  FLD0342E                       PIC X  VALUE 'N'.

       77  FLD0343A                       PIC  9(08)V9(19) COMP-6
           VALUE  72866356.1504289902792663724.
       77  FLD0343B                       PIC  9(06)V9(01) COMP-6
           VALUE  195736.6.
       77  FLD0343E                       PIC X  VALUE 'N'.

       77  FLD0344A                       PIC  9(09)V9(07) COMP-6
           VALUE  439744878.9947105.
       77  FLD0344B                       PIC  9(04)V9(29) COMP-3
           VALUE  8815.39565612843856179381418769480.
       77  FLD0344E                       PIC X  VALUE 'N'.

       77  FLD0345A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0345B                       PIC  9(09)V9(06) COMP-6
           VALUE  405441574.894889.
       77  FLD0345E                       PIC X  VALUE 'N'.

       77  FLD0346A                       PIC  9(07)V9(22) COMP-3
           VALUE  7807860.0333687642187641131386.
       77  FLD0346B                       PIC  9(09)V9(16) COMP-3
           VALUE  674345587.8778652490268541.
       77  FLD0346E                       PIC X  VALUE 'N'.

       77  FLD0347A                       PIC  9(08)V9(18) COMP-3
           VALUE  70165985.253748408556617732.
       77  FLD0347B                       PIC  9(06)       COMP-6
           VALUE  158396.
       77  FLD0347E                       PIC X  VALUE 'N'.

       77  FLD0348A                       PIC  9(08)V9(04) COMP-6
           VALUE  33778742.7133.
       77  FLD0348B                       PIC  9(09)V9(12) COMP-6
           VALUE  575387126.330844100863.
       77  FLD0348E                       PIC X  VALUE 'N'.

       77  FLD0349A                       PIC  9(10)V9(09) COMP-3
           VALUE  5122785066.779668161.
       77  FLD0349B                       PIC  9(03)V9(32) COMP-3
           VALUE  924.84903066843715535583214659709483.
       77  FLD0349E                       PIC X  VALUE 'N'.

       77  FLD0350A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0350B                       PIC  9(06)V9(25) COMP-6
           VALUE  826494.1389960360762501068165875.
       77  FLD0350E                       PIC X  VALUE 'N'.

       77  FLD0351A                       PIC  9(05)V9(27) COMP-6
           VALUE  84942.576912519174303639601930626.
       77  FLD0351B                       PIC  9(10)V9(10) COMP-6
           VALUE  5388327188.5283523516.
       77  FLD0351E                       PIC X  VALUE 'N'.

       77  FLD0352A                       PIC  9(03)V9(32) COMP-6
           VALUE  937.88592938035042489985926295048557.
       77  FLD0352B                       PIC  9(06)V9(01) COMP-6
           VALUE  195629.8.
       77  FLD0352E                       PIC X  VALUE 'N'.

       77  FLD0353A                       PIC S9(07)V9(02) COMP-3
           VALUE -2544588.73.
       77  FLD0353B                       PIC  9(02)V9(33) COMP-3
           VALUE  94.340663054368900652946194895775988.
       77  FLD0353E                       PIC X  VALUE 'N'.

       77  FLD0354A                       PIC  9(07)V9(01) COMP-6
           VALUE  2152460.4.
       77  FLD0354B                       PIC S9(08)V9(03) COMP-3
           VALUE -29015200.342.
       77  FLD0354E                       PIC X  VALUE 'N'.

       77  FLD0355A                       PIC  9(06)V9(01) COMP-6
           VALUE  208715.4.
       77  FLD0355B                       PIC S9(05)       COMP-3
           VALUE -15428.
       77  FLD0355E                       PIC X  VALUE 'N'.

       77  FLD0356A                       PIC S9(09)V9(05) COMP-3
           VALUE -391398983.37050.
       77  FLD0356B                       PIC  9(05)V9(27) COMP-6
           VALUE  84690.187478976841628508509529638.
       77  FLD0356E                       PIC X  VALUE 'N'.

       77  FLD0357A                       PIC  9(10)V9(10) COMP-3
           VALUE  5323345989.0667944591.
       77  FLD0357B                       PIC  9(03)       COMP-6
           VALUE  079.
       77  FLD0357E                       PIC X  VALUE 'N'.

       77  FLD0358A                       PIC  9(08)V9(03) COMP-6
           VALUE  29848403.943.
       77  FLD0358B                       PIC  9(09)V9(17) COMP-6
           VALUE  688595894.53938552239264936.
       77  FLD0358E                       PIC X  VALUE 'N'.

       77  FLD0359A                       PIC  9(07)V9(22) COMP-6
           VALUE  7654789.5985185210321333215688.
       77  FLD0359B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.927521413787718795873615817981772124.
       77  FLD0359E                       PIC X  VALUE 'N'.

       77  FLD0360A                       PIC S9(09)V9(06) COMP-3
           VALUE +400277612.276280.
       77  FLD0360B                       PIC  9(08)V9(02) COMP-6
           VALUE  26666225.04.
       77  FLD0360E                       PIC X  VALUE 'N'.

       77  FLD0361A                       PIC  9(06)V9(25) COMP-3
           VALUE  823089.8044061112361902132761315.
       77  FLD0361B                       PIC  9(05)V9(27) COMP-6
           VALUE  84762.044237681810621154454565839.
       77  FLD0361E                       PIC X  VALUE 'N'.

       77  FLD0362A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0362B                       PIC  9(04)V9(30) COMP-6
           VALUE  8970.899599407193836242413453874178.
       77  FLD0362E                       PIC X  VALUE 'N'.

       77  FLD0363A                       PIC  9(09)V9(04) COMP-6
           VALUE  358575926.2078.
       77  FLD0363B                       PIC  9(04)V9(30) COMP-3
           VALUE  9034.927431796696550847514117776881.
       77  FLD0363E                       PIC X  VALUE 'N'.

       77  FLD0364A                       PIC S9(04)       COMP-3
           VALUE +1234.
       77  FLD0364B                       PIC  9(06)V9(25) COMP-3
           VALUE  830028.0009277749559970516202156.
       77  FLD0364E                       PIC X  VALUE 'N'.

       77  FLD0365A                       PIC  9(09)V9(11) COMP-3
           VALUE  551967009.62472056151.
       77  FLD0365B                       PIC  9(09)V9(16) COMP-6
           VALUE  658782379.9892106313436102.
       77  FLD0365E                       PIC X  VALUE 'N'.

       77  FLD0366A                       PIC  9(06)V9(25) COMP-3
           VALUE  822414.3642778768414913770357088.
       77  FLD0366B                       PIC  9(06)V9(25) COMP-6
           VALUE  838180.2974044693099742175945721.
       77  FLD0366E                       PIC X  VALUE 'N'.

       77  FLD0367A                       PIC  9(09)V9(13) COMP-6
           VALUE  595975436.9256639039420.
       77  FLD0367B                       PIC S9(06)V9(01) COMP-3
           VALUE -191378.3.
       77  FLD0367E                       PIC X  VALUE 'N'.

       77  FLD0368A                       PIC  9(05)       COMP-6
           VALUE  15663.
       77  FLD0368B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0368E                       PIC X  VALUE 'N'.

       77  FLD0369A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0369B                       PIC S9(08)V9(03) COMP-3
           VALUE +31224128.387.
       77  FLD0369E                       PIC X  VALUE 'N'.

       77  FLD0370A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0370B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0370E                       PIC X  VALUE 'N'.

       77  FLD0371A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0371B                       PIC S9(03)       COMP-3
           VALUE -082.
       77  FLD0371E                       PIC X  VALUE 'N'.

       77  FLD0372A                       PIC  9(10)V9(09) COMP-6
           VALUE  5067586024.551302692.
       77  FLD0372B                       PIC  9(10)V9(09) COMP-3
           VALUE  5017586497.117959565.
       77  FLD0372E                       PIC X  VALUE 'N'.

       77  FLD0373A                       PIC  9(09)V9(16) COMP-3
           VALUE  660730415.8912360447786227.
       77  FLD0373B                       PIC S9(09)V9(04) COMP-3
           VALUE -352559577.5040.
       77  FLD0373E                       PIC X  VALUE 'N'.

       77  FLD0374A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0374B                       PIC  9(08)V9(19) COMP-3
           VALUE  71126449.7973442155753787119.
       77  FLD0374E                       PIC X  VALUE 'N'.

       77  FLD0375A                       PIC  9(07)V9(22) COMP-3
           VALUE  7816763.9605777072819847717255.
       77  FLD0375B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0375E                       PIC X  VALUE 'N'.

       77  FLD0376A                       PIC  9(05)V9(27) COMP-6
           VALUE  84980.958923270843996533585595898.
       77  FLD0376B                       PIC  9(10)V9(09) COMP-3
           VALUE  5240094598.000759607.
       77  FLD0376E                       PIC X  VALUE 'N'.

       77  FLD0377A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7759547981370871205797357106348499.
       77  FLD0377B                       PIC  9(07)V9(22) COMP-3
           VALUE  7813622.4062247550126159012506.
       77  FLD0377E                       PIC X  VALUE 'N'.

       77  FLD0378A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0378B                       PIC S9(06)       COMP-3
           VALUE -163135.
       77  FLD0378E                       PIC X  VALUE 'N'.

       77  FLD0379A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351160784.1302399890.
       77  FLD0379B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0379E                       PIC X  VALUE 'N'.

       77  FLD0380A                       PIC  9(09)V9(03) COMP-6
           VALUE  318886259.138.
       77  FLD0380B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0380E                       PIC X  VALUE 'N'.

       77  FLD0381A                       PIC  9(10)V9(09) COMP-6
           VALUE  5188977124.912377281.
       77  FLD0381B                       PIC  9(03)       COMP-6
           VALUE  096.
       77  FLD0381E                       PIC X  VALUE 'N'.

       77  FLD0382A                       PIC  9(10)V9(10) COMP-6
           VALUE  5469463185.9002762475.
       77  FLD0382B                       PIC  9(04)       COMP-6
           VALUE  1276.
       77  FLD0382E                       PIC X  VALUE 'N'.

       77  FLD0383A                       PIC  9(04)V9(29) COMP-3
           VALUE  8846.28028341020278269013488170458.
       77  FLD0383B                       PIC  9(06)V9(24) COMP-3
           VALUE  801588.906111812216082057602761.
       77  FLD0383E                       PIC X  VALUE 'N'.

       77  FLD0384A                       PIC S9(07)V9(02) COMP-3
           VALUE +2410021.83.
       77  FLD0384B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0384E                       PIC X  VALUE 'N'.

       77  FLD0385A                       PIC  9(09)V9(14) COMP-6
           VALUE  616198826.41569234671408.
       77  FLD0385B                       PIC  9(04)V9(29) COMP-3
           VALUE  8914.93363280043138452413131744833.
       77  FLD0385E                       PIC X  VALUE 'N'.

       77  FLD0386A                       PIC  9(10)V9(11) COMP-6
           VALUE  5671006446.22052230126.
       77  FLD0386B                       PIC  9(07)V9(21) COMP-3
           VALUE  7538453.430795608589676248811.
       77  FLD0386E                       PIC X  VALUE 'N'.

       77  FLD0387A                       PIC  9(08)V9(03) COMP-6
           VALUE  30516405.931.
       77  FLD0387B                       PIC  9(09)V9(16) COMP-3
           VALUE  660134959.6835575095354897.
       77  FLD0387E                       PIC X  VALUE 'N'.

       77  FLD0388A                       PIC  9(10)V9(11) COMP-6
           VALUE  5691303425.20841603359.
       77  FLD0388B                       PIC  9(03)       COMP-6
           VALUE  099.
       77  FLD0388E                       PIC X  VALUE 'N'.

       77  FLD0389A                       PIC S9(10)V9(06) COMP-3
           VALUE +4300560615.719126.
       77  FLD0389B                       PIC  9(10)V9(12) COMP-6
           VALUE  5882065365.633618592156.
       77  FLD0389E                       PIC X  VALUE 'N'.

       77  FLD0390A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0390B                       PIC  9(03)       COMP-6
           VALUE  095.
       77  FLD0390E                       PIC X  VALUE 'N'.

       77  FLD0391A                       PIC S9(08)V9(03) COMP-3
           VALUE +30066642.536.
       77  FLD0391B                       PIC S9(08)V9(02) COMP-3
           VALUE -26329271.26.
       77  FLD0391E                       PIC X  VALUE 'N'.

       77  FLD0392A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7627258628673261320329856971511617.
       77  FLD0392B                       PIC  9(10)V9(07) COMP-6
           VALUE  4682510725.0510572.
       77  FLD0392E                       PIC X  VALUE 'N'.

       77  FLD0393A                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0393B                       PIC  9(04)V9(30) COMP-6
           VALUE  9067.420163680885991652758093550801.
       77  FLD0393E                       PIC X  VALUE 'N'.

       77  FLD0394A                       PIC  9(05)V9(01) COMP-6
           VALUE  16807.8.
       77  FLD0394B                       PIC S9(10)V9(08) COMP-3
           VALUE -4746288002.63585892.
       77  FLD0394E                       PIC X  VALUE 'N'.

       77  FLD0395A                       PIC  9(10)V9(09) COMP-3
           VALUE  5206691882.901124390.
       77  FLD0395B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0395E                       PIC X  VALUE 'N'.

       77  FLD0396A                       PIC  9(09)V9(06) COMP-6
           VALUE  419939827.280791.
       77  FLD0396B                       PIC  9(09)V9(07) COMP-6
           VALUE  446487444.5871826.
       77  FLD0396E                       PIC X  VALUE 'N'.

       77  FLD0397A                       PIC  9(05)V9(27) COMP-6
           VALUE  85569.982924983467587054519754019.
       77  FLD0397B                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0397E                       PIC X  VALUE 'N'.

       77  FLD0398A                       PIC  9(05)V9(26) COMP-3
           VALUE  84110.85692078776876456913669244.
       77  FLD0398B                       PIC S9(08)V9(02) COMP-3
           VALUE -28358417.67.
       77  FLD0398E                       PIC X  VALUE 'N'.

       77  FLD0399A                       PIC  9(05)V9(27) COMP-3
           VALUE  86215.377080746946614198122915695.
       77  FLD0399B                       PIC  9(07)V9(02) COMP-6
           VALUE  2481207.70.
       77  FLD0399E                       PIC X  VALUE 'N'.

       77  FLD0400A                       PIC  9(10)V9(08) COMP-6
           VALUE  4880703034.67910082.
       77  FLD0400B                       PIC  9(06)V9(25) COMP-6
           VALUE  835199.6491942943467989834971376.
       77  FLD0400E                       PIC X  VALUE 'N'.

       77  FLD0401A                       PIC  9(08)V9(03) COMP-6
           VALUE  30757829.425.
       77  FLD0401B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0401E                       PIC X  VALUE 'N'.

       77  FLD0402A                       PIC  9(04)V9(29) COMP-3
           VALUE  8843.41306989221531686951038864208.
       77  FLD0402B                       PIC  9(08)V9(18) COMP-6
           VALUE  69652895.633901057426129455.
       77  FLD0402E                       PIC X  VALUE 'N'.

       77  FLD0403A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351391185.2119278034.
       77  FLD0403B                       PIC  9(03)V9(32) COMP-6
           VALUE  939.96913575689089448417234962107613.
       77  FLD0403E                       PIC X  VALUE 'N'.

       77  FLD0404A                       PIC S9(10)V9(08) COMP-3
           VALUE -4810592903.51378177.
       77  FLD0404B                       PIC  9(09)V9(16) COMP-3
           VALUE  670850774.7441430080215241.
       77  FLD0404E                       PIC X  VALUE 'N'.

       77  FLD0405A                       PIC S9(09)V9(04) COMP-3
           VALUE -360620744.0007.
       77  FLD0405B                       PIC S9(05)       COMP-3
           VALUE +14133.
       77  FLD0405E                       PIC X  VALUE 'N'.

       77  FLD0406A                       PIC S9(07)V9(02) COMP-3
           VALUE -2503018.94.
       77  FLD0406B                       PIC  9(07)V9(23) COMP-6
           VALUE  7996063.91391730064732712435215.
       77  FLD0406E                       PIC X  VALUE 'N'.

       77  FLD0407A                       PIC  9(09)V9(13) COMP-3
           VALUE  592634898.8738083800598.
       77  FLD0407B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.879241102928391082826919955550692975.
       77  FLD0407E                       PIC X  VALUE 'N'.

       77  FLD0408A                       PIC  9(09)V9(07) COMP-6
           VALUE  438100099.1119252.
       77  FLD0408B                       PIC  9(08)V9(02) COMP-6
           VALUE  28626783.20.
       77  FLD0408E                       PIC X  VALUE 'N'.

       77  FLD0409A                       PIC  9(08)V9(02) COMP-6
           VALUE  28575188.65.
       77  FLD0409B                       PIC  9(09)V9(12) COMP-6
           VALUE  576691261.515216657684.
       77  FLD0409E                       PIC X  VALUE 'N'.

       77  FLD0410A                       PIC  9(09)V9(14) COMP-6
           VALUE  615937928.60877261130525.
       77  FLD0410B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.822719722312858170454319406417198479.
       77  FLD0410E                       PIC X  VALUE 'N'.

       77  FLD0411A                       PIC  9(09)V9(17) COMP-6
           VALUE  688573322.26995748847286904.
       77  FLD0411B                       PIC  9(07)V9(22) COMP-6
           VALUE  7775778.4281136710369253250973.
       77  FLD0411E                       PIC X  VALUE 'N'.

       77  FLD0412A                       PIC  9(09)V9(12) COMP-3
           VALUE  572677017.522024045526.
       77  FLD0412B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0412E                       PIC X  VALUE 'N'.

       77  FLD0413A                       PIC  9(06)V9(25) COMP-6
           VALUE  828822.6462986850728853482905833.
       77  FLD0413B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0413E                       PIC X  VALUE 'N'.

       77  FLD0414A                       PIC  9(05)V9(27) COMP-3
           VALUE  84413.303017262042438062508153961.
       77  FLD0414B                       PIC S9(05)       COMP-3
           VALUE -15377.
       77  FLD0414E                       PIC X  VALUE 'N'.

       77  FLD0415A                       PIC  9(09)V9(15) COMP-3
           VALUE  650722988.227690701812377.
       77  FLD0415B                       PIC  9(03)V9(31) COMP-6
           VALUE  919.0351051613949717733476063585840.
       77  FLD0415E                       PIC X  VALUE 'N'.

       77  FLD0416A                       PIC  9(09)V9(16) COMP-6
           VALUE  675584038.8269652718733482.
       77  FLD0416B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0416E                       PIC X  VALUE 'N'.

       77  FLD0417A                       PIC  9(03)V9(32) COMP-3
           VALUE  942.59186417160190085695603556814603.
       77  FLD0417B                       PIC  9(04)V9(29) COMP-3
           VALUE  8943.54109346381376255408213182818.
       77  FLD0417E                       PIC X  VALUE 'N'.

       77  FLD0418A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0418B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0418E                       PIC X  VALUE 'N'.

       77  FLD0419A                       PIC  9(09)V9(06) COMP-6
           VALUE  415695619.544491.
       77  FLD0419B                       PIC  9(10)V9(10) COMP-3
           VALUE  5349169017.3884820502.
       77  FLD0419E                       PIC X  VALUE 'N'.

       77  FLD0420A                       PIC  9(08)V9(02) COMP-6
           VALUE  26881191.37.
       77  FLD0420B                       PIC  9(04)V9(30) COMP-6
           VALUE  9092.387304867948216724471421912312.
       77  FLD0420E                       PIC X  VALUE 'N'.

       77  FLD0421A                       PIC  9(08)V9(19) COMP-3
           VALUE  71124707.9077118260492795798.
       77  FLD0421B                       PIC S9(06)V9(01) COMP-3
           VALUE +210383.3.
       77  FLD0421E                       PIC X  VALUE 'N'.

       77  FLD0422A                       PIC  9(08)V9(18) COMP-3
           VALUE  69276472.004700051510184266.
       77  FLD0422B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7464238557165900900258748151827603.
       77  FLD0422E                       PIC X  VALUE 'N'.

       77  FLD0423A                       PIC  9(09)V9(13) COMP-6
           VALUE  595417774.2919815052857.
       77  FLD0423B                       PIC  9(09)V9(17) COMP-6
           VALUE  689527286.14626146441679566.
       77  FLD0423E                       PIC X  VALUE 'N'.

       77  FLD0424A                       PIC  9(09)V9(11) COMP-3
           VALUE  551151541.59885582085.
       77  FLD0424B                       PIC  9(08)V9(19) COMP-6
           VALUE  72724692.5117367437607640567.
       77  FLD0424E                       PIC X  VALUE 'N'.

       77  FLD0425A                       PIC S9(10)V9(08) COMP-3
           VALUE -4741628720.81754727.
       77  FLD0425B                       PIC  9(10)V9(12) COMP-3
           VALUE  5846836543.074439562772.
       77  FLD0425E                       PIC X  VALUE 'N'.

       77  FLD0426A                       PIC  9(10)V9(11) COMP-3
           VALUE  5601456695.80725313885.
       77  FLD0426B                       PIC  9(10)V9(11) COMP-6
           VALUE  5581868249.31393821280.
       77  FLD0426E                       PIC X  VALUE 'N'.

       77  FLD0427A                       PIC  9(09)V9(04) COMP-6
           VALUE  365284621.5641.
       77  FLD0427B                       PIC  9(07)V9(22) COMP-6
           VALUE  7792109.4871910845380824639505.
       77  FLD0427E                       PIC X  VALUE 'N'.

       77  FLD0428A                       PIC  9(05)V9(27) COMP-6
           VALUE  85913.234918316627730661139139556.
       77  FLD0428B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.753152813075189886404814387788064777.
       77  FLD0428E                       PIC X  VALUE 'N'.

       77  FLD0429A                       PIC  9(07)V9(22) COMP-3
           VALUE  7833347.6062909002113343603923.
       77  FLD0429B                       PIC  9(09)V9(06) COMP-6
           VALUE  415311789.274485.
       77  FLD0429E                       PIC X  VALUE 'N'.

       77  FLD0430A                       PIC  9(08)V9(03) COMP-6
           VALUE  30820998.502.
       77  FLD0430B                       PIC  9(09)V9(04) COMP-6
           VALUE  345613119.3468.
       77  FLD0430E                       PIC X  VALUE 'N'.

       77  FLD0431A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0431B                       PIC  9(03)V9(31) COMP-3
           VALUE  920.3928254587173674039490833820309.
       77  FLD0431E                       PIC X  VALUE 'N'.

       77  FLD0432A                       PIC  9(10)V9(11) COMP-3
           VALUE  5612307034.00538710745.
       77  FLD0432B                       PIC S9(06)       COMP-3
           VALUE -161655.
       77  FLD0432E                       PIC X  VALUE 'N'.

       77  FLD0433A                       PIC  9(08)V9(19) COMP-3
           VALUE  72012955.8244768763763943297.
       77  FLD0433B                       PIC  9(06)V9(01) COMP-6
           VALUE  206502.1.
       77  FLD0433E                       PIC X  VALUE 'N'.

       77  FLD0434A                       PIC S9(10)V9(07) COMP-3
           VALUE -4547054675.3415619.
       77  FLD0434B                       PIC  9(03)V9(32) COMP-3
           VALUE  931.50114075800283242045907172723673.
       77  FLD0434E                       PIC X  VALUE 'N'.

       77  FLD0435A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0435B                       PIC  9(10)V9(12) COMP-3
           VALUE  5848414344.863717140299.
       77  FLD0435E                       PIC X  VALUE 'N'.

       77  FLD0436A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0436B                       PIC  9(06)V9(25) COMP-3
           VALUE  830719.5843004202551185244374210.
       77  FLD0436E                       PIC X  VALUE 'N'.

       77  FLD0437A                       PIC  9(09)V9(15) COMP-3
           VALUE  632897272.198471361193128.
       77  FLD0437B                       PIC  9(09)V9(15) COMP-3
           VALUE  644015379.475938010145341.
       77  FLD0437E                       PIC X  VALUE 'N'.

       77  FLD0438A                       PIC  9(09)V9(16) COMP-3
           VALUE  664694021.6365745390802999.
       77  FLD0438B                       PIC  9(05)V9(28) COMP-3
           VALUE  87427.7230957161255453513604152249.
       77  FLD0438E                       PIC X  VALUE 'N'.

       77  FLD0439A                       PIC  9(10)V9(08) COMP-6
           VALUE  4961134805.43429519.
       77  FLD0439B                       PIC  9(10)V9(11) COMP-3
           VALUE  5610850764.78219813012.
       77  FLD0439E                       PIC X  VALUE 'N'.

       77  FLD0440A                       PIC  9(04)V9(29) COMP-6
           VALUE  8899.07507055040514210020319296745.
       77  FLD0440B                       PIC  9(10)V9(07) COMP-6
           VALUE  4554701137.8932739.
       77  FLD0440E                       PIC X  VALUE 'N'.

       77  FLD0441A                       PIC  9(08)V9(19) COMP-3
           VALUE  71126905.4406556744396539215.
       77  FLD0441B                       PIC S9(10)V9(06) COMP-3
           VALUE +4339238601.837461.
       77  FLD0441E                       PIC X  VALUE 'N'.

       77  FLD0442A                       PIC  9(05)V9(01) COMP-6
           VALUE  16995.1.
       77  FLD0442B                       PIC  9(03)V9(31) COMP-6
           VALUE  915.7753741786495149668212434335146.
       77  FLD0442E                       PIC X  VALUE 'N'.

       77  FLD0443A                       PIC S9(10)V9(08) COMP-3
           VALUE -4744984255.46487689.
       77  FLD0443B                       PIC  9(09)V9(14) COMP-3
           VALUE  620915031.52970173307068.
       77  FLD0443E                       PIC X  VALUE 'N'.

       77  FLD0444A                       PIC  9(02)V9(33) COMP-6
           VALUE  94.673816662087151296844922399031929.
       77  FLD0444B                       PIC  9(10)V9(09) COMP-3
           VALUE  5047752845.189990011.
       77  FLD0444E                       PIC X  VALUE 'N'.

       77  FLD0445A                       PIC  9(10)V9(10) COMP-3
           VALUE  5416554544.5299512206.
       77  FLD0445B                       PIC S9(10)V9(07) COMP-3
           VALUE -4623541965.4562581.
       77  FLD0445E                       PIC X  VALUE 'N'.

       77  FLD0446A                       PIC  9(10)V9(09) COMP-3
           VALUE  5044897846.697211640.
       77  FLD0446B                       PIC  9(09)V9(16) COMP-6
           VALUE  665206327.4939082893055797.
       77  FLD0446E                       PIC X  VALUE 'N'.

       77  FLD0447A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0447B                       PIC  9(08)V9(02) COMP-6
           VALUE  27717300.69.
       77  FLD0447E                       PIC X  VALUE 'N'.

       77  FLD0448A                       PIC  9(06)V9(01) COMP-6
           VALUE  186565.4.
       77  FLD0448B                       PIC  9(10)V9(10) COMP-6
           VALUE  5373290497.5367845601.
       77  FLD0448E                       PIC X  VALUE 'N'.

       77  FLD0449A                       PIC S9(09)V9(05) COMP-3
           VALUE -384988094.18704.
       77  FLD0449B                       PIC S9(08)V9(04) COMP-3
           VALUE +34016016.2924.
       77  FLD0449E                       PIC X  VALUE 'N'.

       77  FLD0450A                       PIC  9(09)V9(14) COMP-6
           VALUE  625578375.50228334588808.
       77  FLD0450B                       PIC  9(09)V9(13) COMP-6
           VALUE  597300618.6146695428718.
       77  FLD0450E                       PIC X  VALUE 'N'.

       77  FLD0451A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0451B                       PIC S9(07)V9(02) COMP-3
           VALUE -2517390.40.
       77  FLD0451E                       PIC X  VALUE 'N'.

       77  FLD0452A                       PIC  9(08)V9(02) COMP-6
           VALUE  26826484.18.
       77  FLD0452B                       PIC  9(10)V9(11) COMP-6
           VALUE  5576443525.30127562772.
       77  FLD0452E                       PIC X  VALUE 'N'.

       77  FLD0453A                       PIC  9(10)V9(10) COMP-6
           VALUE  5383526546.5392911909.
       77  FLD0453B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7573296701221163829131910461001098.
       77  FLD0453E                       PIC X  VALUE 'N'.

       77  FLD0454A                       PIC S9(03)       COMP-3
           VALUE -090.
       77  FLD0454B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0454E                       PIC X  VALUE 'N'.

       77  FLD0455A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0455B                       PIC  9(05)V9(27) COMP-3
           VALUE  85105.998788168291113720442808698.
       77  FLD0455E                       PIC X  VALUE 'N'.

       77  FLD0456A                       PIC S9(03)       COMP-3
           VALUE -093.
       77  FLD0456B                       PIC  9(05)       COMP-6
           VALUE  15509.
       77  FLD0456E                       PIC X  VALUE 'N'.

       77  FLD0457A                       PIC  9(04)V9(30) COMP-6
           VALUE  9063.641671624598217249513254500925.
       77  FLD0457B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0457E                       PIC X  VALUE 'N'.

       77  FLD0458A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0458B                       PIC  9(09)V9(03) COMP-6
           VALUE  319507540.378.
       77  FLD0458E                       PIC X  VALUE 'N'.

       77  FLD0459A                       PIC  9(06)V9(01) COMP-6
           VALUE  198479.9.
       77  FLD0459B                       PIC  9(10)V9(11) COMP-3
           VALUE  5635468078.16151518188.
       77  FLD0459E                       PIC X  VALUE 'N'.

       77  FLD0460A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0460B                       PIC  9(07)V9(22) COMP-3
           VALUE  7834589.5335320658858790920930.
       77  FLD0460E                       PIC X  VALUE 'N'.

       77  FLD0461A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0461B                       PIC S9(07)V9(01) COMP-3
           VALUE +2146839.2.
       77  FLD0461E                       PIC X  VALUE 'N'.

       77  FLD0462A                       PIC  9(08)V9(02) COMP-6
           VALUE  26776595.69.
       77  FLD0462B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.2391194548525610308331579290097579.
       77  FLD0462E                       PIC X  VALUE 'N'.

       77  FLD0463A                       PIC  9(05)V9(27) COMP-3
           VALUE  85490.666934027292889197724434779.
       77  FLD0463B                       PIC  9(09)V9(06) COMP-6
           VALUE  407249114.981761.
       77  FLD0463E                       PIC X  VALUE 'N'.

       77  FLD0464A                       PIC  9(10)V9(07) COMP-6
           VALUE  4587031190.3834293.
       77  FLD0464B                       PIC  9(08)V9(19) COMP-6
           VALUE  71857481.5704608793609509120.
       77  FLD0464E                       PIC X  VALUE 'N'.

       77  FLD0465A                       PIC  9(10)V9(12) COMP-3
           VALUE  5816563985.597106301028.
       77  FLD0465B                       PIC  9(06)V9(25) COMP-6
           VALUE  837937.1800695708527584315561398.
       77  FLD0465E                       PIC X  VALUE 'N'.

       77  FLD0466A                       PIC  9(09)V9(15) COMP-3
           VALUE  654381306.333900236715805.
       77  FLD0466B                       PIC  9(05)       COMP-6
           VALUE  14616.
       77  FLD0466E                       PIC X  VALUE 'N'.

       77  FLD0467A                       PIC S9(07)V9(01) COMP-3
           VALUE +2343287.0.
       77  FLD0467B                       PIC  9(04)V9(29) COMP-3
           VALUE  8929.74677715112297171629052172647.
       77  FLD0467E                       PIC X  VALUE 'N'.

       77  FLD0468A                       PIC S9(10)V9(06) COMP-3
           VALUE +4344132145.767680.
       77  FLD0468B                       PIC  9(08)V9(03) COMP-6
           VALUE  29592230.696.
       77  FLD0468E                       PIC X  VALUE 'N'.

       77  FLD0469A                       PIC  9(08)V9(18) COMP-6
           VALUE  70961503.876956555370014712.
       77  FLD0469B                       PIC  9(10)V9(09) COMP-3
           VALUE  5200119971.346918168.
       77  FLD0469E                       PIC X  VALUE 'N'.

       77  FLD0470A                       PIC  9(03)V9(31) COMP-3
           VALUE  913.6810028966669827710234130790922.
       77  FLD0470B                       PIC S9(09)V9(05) COMP-3
           VALUE -383130523.18889.
       77  FLD0470E                       PIC X  VALUE 'N'.

       77  FLD0471A                       PIC S9(07)V9(02) COMP-3
           VALUE -2507103.69.
       77  FLD0471B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0471E                       PIC X  VALUE 'N'.

       77  FLD0472A                       PIC  9(10)V9(09) COMP-3
           VALUE  5103990869.050332168.
       77  FLD0472B                       PIC  9(06)V9(26) COMP-3
           VALUE  843393.74409143441635450244575622.
       77  FLD0472E                       PIC X  VALUE 'N'.

       77  FLD0473A                       PIC  9(08)V9(20) COMP-3
           VALUE  74367162.06805468187823748849.
       77  FLD0473B                       PIC  9(08)V9(18) COMP-3
           VALUE  70143773.259305752798553612.
       77  FLD0473E                       PIC X  VALUE 'N'.

       77  FLD0474A                       PIC  9(08)V9(19) COMP-6
           VALUE  72625744.5118117406224200749.
       77  FLD0474B                       PIC S9(05)       COMP-3
           VALUE +13295.
       77  FLD0474E                       PIC X  VALUE 'N'.

       77  FLD0475A                       PIC  9(10)V9(07) COMP-6
           VALUE  4588724634.2999971.
       77  FLD0475B                       PIC S9(09)V9(06) COMP-3
           VALUE +420010897.357724.
       77  FLD0475E                       PIC X  VALUE 'N'.

       77  FLD0476A                       PIC  9(08)V9(02) COMP-6
           VALUE  28869933.49.
       77  FLD0476B                       PIC  9(06)V9(01) COMP-6
           VALUE  197306.5.
       77  FLD0476E                       PIC X  VALUE 'N'.

       77  FLD0477A                       PIC  9(08)V9(20) COMP-3
           VALUE  74492482.99155191155307420558.
       77  FLD0477B                       PIC S9(09)V9(05) COMP-3
           VALUE -380644102.28203.
       77  FLD0477E                       PIC X  VALUE 'N'.

       77  FLD0478A                       PIC  9(08)V9(19) COMP-6
           VALUE  72616162.5751895356550846827.
       77  FLD0478B                       PIC  9(09)V9(04) COMP-6
           VALUE  345871637.9604.
       77  FLD0478E                       PIC X  VALUE 'N'.

       77  FLD0479A                       PIC S9(09)V9(06) COMP-3
           VALUE +413502052.896697.
       77  FLD0479B                       PIC  9(06)V9(25) COMP-3
           VALUE  820524.8465168897276100778981344.
       77  FLD0479E                       PIC X  VALUE 'N'.

       77  FLD0480A                       PIC S9(06)V9(01) COMP-3
           VALUE +203017.8.
       77  FLD0480B                       PIC  9(08)V9(20) COMP-6
           VALUE  74798417.21657910502685240317.
       77  FLD0480E                       PIC X  VALUE 'N'.

       77  FLD0481A                       PIC  9(05)       COMP-6
           VALUE  15658.
       77  FLD0481B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.907459007614364265847939350351225584.
       77  FLD0481E                       PIC X  VALUE 'N'.

       77  FLD0482A                       PIC  9(08)V9(18) COMP-6
           VALUE  70905037.950447225014727337.
       77  FLD0482B                       PIC S9(10)V9(08) COMP-3
           VALUE -4922020906.16106868.
       77  FLD0482E                       PIC X  VALUE 'N'.

       77  FLD0483A                       PIC  9(03)       COMP-6
           VALUE  079.
       77  FLD0483B                       PIC S9(09)V9(03) COMP-3
           VALUE +323420049.144.
       77  FLD0483E                       PIC X  VALUE 'N'.

       77  FLD0484A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0484B                       PIC  9(09)V9(12) COMP-6
           VALUE  577123861.473882282524.
       77  FLD0484E                       PIC X  VALUE 'N'.

       77  FLD0485A                       PIC  9(07)V9(02) COMP-6
           VALUE  2567572.97.
       77  FLD0485B                       PIC  9(05)V9(01) COMP-6
           VALUE  16688.0.
       77  FLD0485E                       PIC X  VALUE 'N'.

       77  FLD0486A                       PIC  9(05)       COMP-6
           VALUE  13937.
       77  FLD0486B                       PIC  9(10)V9(07) COMP-6
           VALUE  4583814690.4965959.
       77  FLD0486E                       PIC X  VALUE 'N'.

       77  FLD0487A                       PIC  9(06)V9(01) COMP-6
           VALUE  209384.2.
       77  FLD0487B                       PIC  9(08)V9(18) COMP-3
           VALUE  70207035.549040885946681100.
       77  FLD0487E                       PIC X  VALUE 'N'.

       77  FLD0488A                       PIC S9(10)V9(07) COMP-3
           VALUE -4519198906.7966076.
       77  FLD0488B                       PIC  9(09)V9(16) COMP-6
           VALUE  669660091.3134611587906874.
       77  FLD0488E                       PIC X  VALUE 'N'.

       77  FLD0489A                       PIC S9(05)V9(01) COMP-3
           VALUE -17360.6.
       77  FLD0489B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.950567826331271348294649214949458837.
       77  FLD0489E                       PIC X  VALUE 'N'.

       77  FLD0490A                       PIC  9(10)V9(10) COMP-6
           VALUE  5352566580.2623056954.
       77  FLD0490B                       PIC  9(08)V9(02) COMP-6
           VALUE  28596817.06.
       77  FLD0490E                       PIC X  VALUE 'N'.

       77  FLD0491A                       PIC  9(03)V9(31) COMP-6
           VALUE  918.2459205467069507378141679510008.
       77  FLD0491B                       PIC  9(09)V9(16) COMP-3
           VALUE  661285516.5476814178759923.
       77  FLD0491E                       PIC X  VALUE 'N'.

       77  FLD0492A                       PIC  9(06)V9(25) COMP-6
           VALUE  819266.4570447540928199714471702.
       77  FLD0492B                       PIC S9(09)V9(04) COMP-3
           VALUE +343135449.1145.
       77  FLD0492E                       PIC X  VALUE 'N'.

       77  FLD0493A                       PIC S9(05)V9(01) COMP-3
           VALUE -18038.5.
       77  FLD0493B                       PIC  9(06)V9(24) COMP-6
           VALUE  808734.959278862186593528349476.
       77  FLD0493E                       PIC X  VALUE 'N'.

       77  FLD0494A                       PIC  9(05)V9(28) COMP-6
           VALUE  87574.5417791477964719604187848744.
       77  FLD0494B                       PIC  9(10)V9(09) COMP-3
           VALUE  5133082903.157394349.
       77  FLD0494E                       PIC X  VALUE 'N'.

       77  FLD0495A                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0495B                       PIC  9(09)V9(15) COMP-6
           VALUE  646882578.915106698502768.
       77  FLD0495E                       PIC X  VALUE 'N'.

       77  FLD0496A                       PIC  9(06)V9(25) COMP-6
           VALUE  816763.6415427422802437718019064.
       77  FLD0496B                       PIC S9(04)       COMP-3
           VALUE +1240.
       77  FLD0496E                       PIC X  VALUE 'N'.

       77  FLD0497A                       PIC  9(06)V9(25) COMP-6
           VALUE  836230.6435874340415637107071233.
       77  FLD0497B                       PIC  9(09)V9(16) COMP-6
           VALUE  665491997.9684780217965567.
       77  FLD0497E                       PIC X  VALUE 'N'.

       77  FLD0498A                       PIC  9(10)V9(08) COMP-6
           VALUE  4792455293.49441590.
       77  FLD0498B                       PIC  9(06)V9(01) COMP-6
           VALUE  189449.4.
       77  FLD0498E                       PIC X  VALUE 'N'.

       77  FLD0499A                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0499B                       PIC  9(09)V9(15) COMP-3
           VALUE  634131211.402607308791345.
       77  FLD0499E                       PIC X  VALUE 'N'.

      * RESULTS-AREA.
       78  XPC-FLD0001B
           VALUE X'03'.
       78  XPC-FLD0001E          VALUE 'N'.
       78  XPC-FLD0002B
           VALUE X'01571925154608921904042517780914'.
       78  XPC-FLD0002E          VALUE 'N'.
       78  XPC-FLD0003B
           VALUE X'497691662540136914'.
       78  XPC-FLD0003E          VALUE 'N'.
       78  XPC-FLD0004B
           VALUE X'316171'.
       78  XPC-FLD0004E          VALUE 'N'.
       78  XPC-FLD0005B
           VALUE X'0326669126773C'.
       78  XPC-FLD0005E          VALUE 'N'.
       78  XPC-FLD0006B
           VALUE X'02564149945687535678828794516448398F'.
       78  XPC-FLD0006E          VALUE 'N'.
       78  XPC-FLD0007B
           VALUE X'02703102891D'.
       78  XPC-FLD0007E          VALUE 'N'.
       78  XPC-FLD0008B
           VALUE X'091D'.
       78  XPC-FLD0008E          VALUE 'N'.
       78  XPC-FLD0009B
           VALUE X'871644396861416259625343627703841F'.
       78  XPC-FLD0009E          VALUE 'Y'.
       78  XPC-FLD0010B
           VALUE X'401313154225653C'.
       78  XPC-FLD0010E          VALUE 'N'.
       78  XPC-FLD0011B
           VALUE X'0716073640695890795927880390081554'.
       78  XPC-FLD0011E          VALUE 'N'.
       78  XPC-FLD0012B
           VALUE X'714856822486604356929547066F'.
       78  XPC-FLD0012E          VALUE 'N'.
       78  XPC-FLD0013B
           VALUE X'0332664360'.
       78  XPC-FLD0013E          VALUE 'N'.
       78  XPC-FLD0014B
           VALUE X'07563565'.
       78  XPC-FLD0014E          VALUE 'N'.
       78  XPC-FLD0015B
           VALUE X'496103206190910525'.
       78  XPC-FLD0015E          VALUE 'N'.
       78  XPC-FLD0016B
           VALUE X'04316078086835850C'.
       78  XPC-FLD0016E          VALUE 'N'.
       78  XPC-FLD0017B
           VALUE X'8983341087204116393039043941826093'.
       78  XPC-FLD0017E          VALUE 'N'.
       78  XPC-FLD0018B
           VALUE X'0C'.
       78  XPC-FLD0018E          VALUE 'Y'.
       78  XPC-FLD0019B
           VALUE X'527908669140271D'.
       78  XPC-FLD0019E          VALUE 'N'.
       78  XPC-FLD0020B
           VALUE X'009154677345638306818F'.
       78  XPC-FLD0020E          VALUE 'N'.
       78  XPC-FLD0021B
           VALUE X'9C'.
       78  XPC-FLD0021E          VALUE 'N'.
       78  XPC-FLD0022B
           VALUE X'06800620448921426031141379552F'.
       78  XPC-FLD0022E          VALUE 'N'.
       78  XPC-FLD0023B
           VALUE X'0011865432391802879230624512274516746F'.
       78  XPC-FLD0023E          VALUE 'N'.
       78  XPC-FLD0024B
           VALUE X'081262603108476C'.
       78  XPC-FLD0024E          VALUE 'N'.
       78  XPC-FLD0025B
           VALUE X'0249748827'.
       78  XPC-FLD0025E          VALUE 'N'.
       78  XPC-FLD0026B
           VALUE X'038375719620564D'.
       78  XPC-FLD0026E          VALUE 'N'.
       78  XPC-FLD0027B
           VALUE X'08158491045356750515082921992870'.
       78  XPC-FLD0027E          VALUE 'Y'.
       78  XPC-FLD0028B
           VALUE X'4D'.
       78  XPC-FLD0028E          VALUE 'N'.
       78  XPC-FLD0029B
           VALUE X'068438817718294422258378517F'.
       78  XPC-FLD0029E          VALUE 'N'.
       78  XPC-FLD0030B
           VALUE X'070264210169553353857452293F'.
       78  XPC-FLD0030E          VALUE 'N'.
       78  XPC-FLD0031B
           VALUE X'070450280588407820925311852F'.
       78  XPC-FLD0031E          VALUE 'N'.
       78  XPC-FLD0032B
           VALUE X'0947220571791D'.
       78  XPC-FLD0032E          VALUE 'N'.
       78  XPC-FLD0033B
           VALUE X'960256540211'.
       78  XPC-FLD0033E          VALUE 'N'.
       78  XPC-FLD0034B
           VALUE X'021267719C'.
       78  XPC-FLD0034E          VALUE 'N'.
       78  XPC-FLD0035B
           VALUE X'30926016'.
       78  XPC-FLD0035E          VALUE 'N'.
       78  XPC-FLD0036B
           VALUE X'84780746063121390621031281398244'.
       78  XPC-FLD0036E          VALUE 'N'.
       78  XPC-FLD0037B
           VALUE X'45484C'.
       78  XPC-FLD0037E          VALUE 'N'.
       78  XPC-FLD0038B
           VALUE X'08192466589219795159659831540466'.
       78  XPC-FLD0038E          VALUE 'N'.
       78  XPC-FLD0039B
           VALUE X'02142775'.
       78  XPC-FLD0039E          VALUE 'N'.
       78  XPC-FLD0040B
           VALUE X'328C'.
       78  XPC-FLD0040E          VALUE 'N'.
       78  XPC-FLD0041B
           VALUE X'5719955231502458547F'.
       78  XPC-FLD0041E          VALUE 'N'.
       78  XPC-FLD0042B
           VALUE X'53913067269542921266'.
       78  XPC-FLD0042E          VALUE 'N'.
       78  XPC-FLD0043B
           VALUE X'08947428650524259539551508169097361F'.
       78  XPC-FLD0043E          VALUE 'N'.
       78  XPC-FLD0044B
           VALUE X'03593279914883'.
       78  XPC-FLD0044E          VALUE 'N'.
       78  XPC-FLD0045B
           VALUE X'40565136957830'.
       78  XPC-FLD0045E          VALUE 'N'.
       78  XPC-FLD0046B
           VALUE X'086000025910646182847330010190489F'.
       78  XPC-FLD0046E          VALUE 'N'.
       78  XPC-FLD0047B
           VALUE X'500920610887845814'.
       78  XPC-FLD0047E          VALUE 'N'.
       78  XPC-FLD0048B
           VALUE X'0173099D'.
       78  XPC-FLD0048E          VALUE 'Y'.
       78  XPC-FLD0049B
           VALUE X'06818217198975972105429554915463086217'.
       78  XPC-FLD0049E          VALUE 'N'.
       78  XPC-FLD0050B
           VALUE X'0079122399722566'.
       78  XPC-FLD0050E          VALUE 'N'.
       78  XPC-FLD0051B
           VALUE X'9064871948640588206203005938732530'.
       78  XPC-FLD0051E          VALUE 'Y'.
       78  XPC-FLD0052B
           VALUE X'018378999229403754265F'.
       78  XPC-FLD0052E          VALUE 'N'.
       78  XPC-FLD0053B
           VALUE X'3589163888701D'.
       78  XPC-FLD0053E          VALUE 'N'.
       78  XPC-FLD0054B
           VALUE X'319288758232'.
       78  XPC-FLD0054E          VALUE 'N'.
       78  XPC-FLD0055B
           VALUE X'9048691568994934320002240F'.
       78  XPC-FLD0055E          VALUE 'N'.
       78  XPC-FLD0056B
           VALUE X'2564409583'.
       78  XPC-FLD0056E          VALUE 'N'.
       78  XPC-FLD0057B
           VALUE X'006D'.
       78  XPC-FLD0057E          VALUE 'Y'.
       78  XPC-FLD0058B
           VALUE X'3436235653793C'.
       78  XPC-FLD0058E          VALUE 'N'.
       78  XPC-FLD0059B
           VALUE X'062832873919564874525472'.
       78  XPC-FLD0059E          VALUE 'N'.
       78  XPC-FLD0060B
           VALUE X'159140'.
       78  XPC-FLD0060E          VALUE 'N'.
       78  XPC-FLD0061B
           VALUE X'08166592123096498172785118185856'.
       78  XPC-FLD0061E          VALUE 'N'.
       78  XPC-FLD0062B
           VALUE X'09769550469250686264269F'.
       78  XPC-FLD0062E          VALUE 'N'.
       78  XPC-FLD0063B
           VALUE X'753004763264897311507922950F'.
       78  XPC-FLD0063E          VALUE 'N'.
       78  XPC-FLD0064B
           VALUE X'07440D'.
       78  XPC-FLD0064E          VALUE 'N'.
       78  XPC-FLD0065B
           VALUE X'05377C'.
       78  XPC-FLD0065E          VALUE 'N'.
       78  XPC-FLD0066B
           VALUE X'085085260849998822774153950376785F'.
       78  XPC-FLD0066E          VALUE 'N'.
       78  XPC-FLD0067B
           VALUE X'1D'.
       78  XPC-FLD0067E          VALUE 'N'.
       78  XPC-FLD0068B
           VALUE X'05'.
       78  XPC-FLD0068E          VALUE 'N'.
       78  XPC-FLD0069B
           VALUE X'0097'.
       78  XPC-FLD0069E          VALUE 'Y'.
       78  XPC-FLD0070B
           VALUE X'8473394D'.
       78  XPC-FLD0070E          VALUE 'N'.
       78  XPC-FLD0071B
           VALUE X'1274'.
       78  XPC-FLD0071E          VALUE 'N'.
       78  XPC-FLD0072B
           VALUE X'655377313792015250284373'.
       78  XPC-FLD0072E          VALUE 'N'.
       78  XPC-FLD0073B
           VALUE X'70717240702803545859163047'.
       78  XPC-FLD0073E          VALUE 'N'.
       78  XPC-FLD0074B
           VALUE X'6009119595528942259221594213158817808F'.
       78  XPC-FLD0074E          VALUE 'N'.
       78  XPC-FLD0075B
           VALUE X'022056618C'.
       78  XPC-FLD0075E          VALUE 'Y'.
       78  XPC-FLD0076B
           VALUE X'0889922269538142470324260102643165738F'.
       78  XPC-FLD0076E          VALUE 'N'.
       78  XPC-FLD0077B
           VALUE X'0297736583767979700245026833727024'.
       78  XPC-FLD0077E          VALUE 'N'.
       78  XPC-FLD0078B
           VALUE X'52639083334727222580'.
       78  XPC-FLD0078E          VALUE 'N'.
       78  XPC-FLD0079B
           VALUE X'324C'.
       78  XPC-FLD0079E          VALUE 'N'.
       78  XPC-FLD0080B
           VALUE X'3711534372339D'.
       78  XPC-FLD0080E          VALUE 'N'.
       78  XPC-FLD0081B
           VALUE X'03672069622884'.
       78  XPC-FLD0081E          VALUE 'N'.
       78  XPC-FLD0082B
           VALUE X'039908942738066827524420432382'.
       78  XPC-FLD0082E          VALUE 'N'.
       78  XPC-FLD0083B
           VALUE X'886546406C'.
       78  XPC-FLD0083E          VALUE 'N'.
       78  XPC-FLD0084B
           VALUE X'0405109331835068'.
       78  XPC-FLD0084E          VALUE 'N'.
       78  XPC-FLD0085B
           VALUE X'4354243534611629'.
       78  XPC-FLD0085E          VALUE 'N'.
       78  XPC-FLD0086B
           VALUE X'571167021401449572359F'.
       78  XPC-FLD0086E          VALUE 'N'.
       78  XPC-FLD0087B
           VALUE X'1168'.
       78  XPC-FLD0087E          VALUE 'Y'.
       78  XPC-FLD0088B
           VALUE X'481540354519'.
       78  XPC-FLD0088E          VALUE 'N'.
       78  XPC-FLD0089B
           VALUE X'08552781102827879955441403577769802F'.
       78  XPC-FLD0089E          VALUE 'N'.
       78  XPC-FLD0090B
           VALUE X'00751809682D'.
       78  XPC-FLD0090E          VALUE 'N'.
       78  XPC-FLD0091B
           VALUE X'08617201884902925811235356'.
       78  XPC-FLD0091E          VALUE 'N'.
       78  XPC-FLD0092B
           VALUE X'03179100098465547968089595087804'.
       78  XPC-FLD0092E          VALUE 'N'.
       78  XPC-FLD0093B
           VALUE X'0874104194614961116371887328568F'.
       78  XPC-FLD0093E          VALUE 'N'.
       78  XPC-FLD0094B
           VALUE X'053066656460354850645F'.
       78  XPC-FLD0094E          VALUE 'N'.
       78  XPC-FLD0095B
           VALUE X'05167739798081453228562054391361'.
       78  XPC-FLD0095E          VALUE 'N'.
       78  XPC-FLD0096B
           VALUE X'0875053049076218392166026660561328'.
       78  XPC-FLD0096E          VALUE 'N'.
       78  XPC-FLD0097B
           VALUE X'076639044132902548449948199049'.
       78  XPC-FLD0097E          VALUE 'N'.
       78  XPC-FLD0098B
           VALUE X'334130309068'.
       78  XPC-FLD0098E          VALUE 'N'.
       78  XPC-FLD0099B
           VALUE X'30007106715C'.
       78  XPC-FLD0099E          VALUE 'Y'.
       78  XPC-FLD0100B
           VALUE X'053883959962677607717265'.
       78  XPC-FLD0100E          VALUE 'N'.
       78  XPC-FLD0101B
           VALUE X'512112051D'.
       78  XPC-FLD0101E          VALUE 'N'.
       78  XPC-FLD0102B
           VALUE X'062599568832775289662151'.
       78  XPC-FLD0102E          VALUE 'N'.
       78  XPC-FLD0103B
           VALUE X'09'.
       78  XPC-FLD0103E          VALUE 'N'.
       78  XPC-FLD0104B
           VALUE X'0481255505832174334D'.
       78  XPC-FLD0104E          VALUE 'N'.
       78  XPC-FLD0105B
           VALUE X'0152268965'.
       78  XPC-FLD0105E          VALUE 'N'.
       78  XPC-FLD0106B
           VALUE X'02636217829D'.
       78  XPC-FLD0106E          VALUE 'N'.
       78  XPC-FLD0107B
           VALUE X'0491683543555178959039153289'.
       78  XPC-FLD0107E          VALUE 'N'.
       78  XPC-FLD0108B
           VALUE X'02842105319D'.
       78  XPC-FLD0108E          VALUE 'Y'.
       78  XPC-FLD0109B
           VALUE X'00156720262660837374113498299266211F'.
       78  XPC-FLD0109E          VALUE 'N'.
       78  XPC-FLD0110B
           VALUE X'61781025727648194445507101'.
       78  XPC-FLD0110E          VALUE 'N'.
       78  XPC-FLD0111B
           VALUE X'05582373934795217912'.
       78  XPC-FLD0111E          VALUE 'N'.
       78  XPC-FLD0112B
           VALUE X'09837197320D'.
       78  XPC-FLD0112E          VALUE 'N'.
       78  XPC-FLD0113B
           VALUE X'0369'.
       78  XPC-FLD0113E          VALUE 'N'.
       78  XPC-FLD0114B
           VALUE X'176673'.
       78  XPC-FLD0114E          VALUE 'Y'.
       78  XPC-FLD0115B
           VALUE X'30236778644C'.
       78  XPC-FLD0115E          VALUE 'N'.
       78  XPC-FLD0116B
           VALUE X'03'.
       78  XPC-FLD0116E          VALUE 'N'.
       78  XPC-FLD0117B
           VALUE X'013612'.
       78  XPC-FLD0117E          VALUE 'Y'.
       78  XPC-FLD0118B
           VALUE X'806D'.
       78  XPC-FLD0118E          VALUE 'N'.
       78  XPC-FLD0119B
           VALUE X'0253932450'.
       78  XPC-FLD0119E          VALUE 'N'.
       78  XPC-FLD0120B
           VALUE X'007D'.
       78  XPC-FLD0120E          VALUE 'Y'.
       78  XPC-FLD0121B
           VALUE X'0323330267022C'.
       78  XPC-FLD0121E          VALUE 'N'.
       78  XPC-FLD0122B
           VALUE X'2693757152'.
       78  XPC-FLD0122E          VALUE 'N'.
       78  XPC-FLD0123B
           VALUE X'07502022502690824523057244732F'.
       78  XPC-FLD0123E          VALUE 'N'.
       78  XPC-FLD0124B
           VALUE X'04223876720963152C'.
       78  XPC-FLD0124E          VALUE 'N'.
       78  XPC-FLD0125B
           VALUE X'637796016364062257583133'.
       78  XPC-FLD0125E          VALUE 'N'.
       78  XPC-FLD0126B
           VALUE X'14776979'.
       78  XPC-FLD0126E          VALUE 'N'.
       78  XPC-FLD0127B
           VALUE X'0968598991861849889506430599794838'.
       78  XPC-FLD0127E          VALUE 'N'.
       78  XPC-FLD0128B
           VALUE X'7158526709'.
       78  XPC-FLD0128E          VALUE 'N'.
       78  XPC-FLD0129B
           VALUE X'066302536762228508700376'.
       78  XPC-FLD0129E          VALUE 'N'.
       78  XPC-FLD0130B
           VALUE X'030500681275'.
       78  XPC-FLD0130E          VALUE 'N'.
       78  XPC-FLD0131B
           VALUE X'97542725692831921848454612'.
       78  XPC-FLD0131E          VALUE 'N'.
       78  XPC-FLD0132B
           VALUE X'21622287'.
       78  XPC-FLD0132E          VALUE 'N'.
       78  XPC-FLD0133B
           VALUE X'252841208D'.
       78  XPC-FLD0133E          VALUE 'N'.
       78  XPC-FLD0134B
           VALUE X'6035745627324759055021274F'.
       78  XPC-FLD0134E          VALUE 'N'.
       78  XPC-FLD0135B
           VALUE X'0256132197'.
       78  XPC-FLD0135E          VALUE 'Y'.
       78  XPC-FLD0136B
           VALUE X'721064189695820607747975827F'.
       78  XPC-FLD0136E          VALUE 'N'.
       78  XPC-FLD0137B
           VALUE X'39815975038716593768839402400772088F'.
       78  XPC-FLD0137E          VALUE 'N'.
       78  XPC-FLD0138B
           VALUE X'8976142294415691003095503219810780'.
       78  XPC-FLD0138E          VALUE 'Y'.
       78  XPC-FLD0139B
           VALUE X'04629717477620841718762676464393'.
       78  XPC-FLD0139E          VALUE 'N'.
       78  XPC-FLD0140B
           VALUE X'09134502802484925076953459210926666F'.
       78  XPC-FLD0140E          VALUE 'N'.
       78  XPC-FLD0141B
           VALUE X'01980465'.
       78  XPC-FLD0141E          VALUE 'Y'.
       78  XPC-FLD0142B
           VALUE X'00112D'.
       78  XPC-FLD0142E          VALUE 'N'.
       78  XPC-FLD0143B
           VALUE X'04030993'.
       78  XPC-FLD0143E          VALUE 'N'.
       78  XPC-FLD0144B
           VALUE X'21702923'.
       78  XPC-FLD0144E          VALUE 'Y'.
       78  XPC-FLD0145B
           VALUE X'0009479682736520'.
       78  XPC-FLD0145E          VALUE 'N'.
       78  XPC-FLD0146B
           VALUE X'05926753717490164309811F'.
       78  XPC-FLD0146E          VALUE 'N'.
       78  XPC-FLD0147B
           VALUE X'0397442042521838'.
       78  XPC-FLD0147E          VALUE 'N'.
       78  XPC-FLD0148B
           VALUE X'335821179980'.
       78  XPC-FLD0148E          VALUE 'N'.
       78  XPC-FLD0149B
           VALUE X'064C'.
       78  XPC-FLD0149E          VALUE 'N'.
       78  XPC-FLD0150B
           VALUE X'09779789481524289174174668914929497987'.
       78  XPC-FLD0150E          VALUE 'Y'.
       78  XPC-FLD0151B
           VALUE X'03489779895385769491943608024F'.
       78  XPC-FLD0151E          VALUE 'N'.
       78  XPC-FLD0152B
           VALUE X'976189035330467796747200281970435753'.
       78  XPC-FLD0152E          VALUE 'N'.
       78  XPC-FLD0153B
           VALUE X'77001479845998110906890588012F'.
       78  XPC-FLD0153E          VALUE 'Y'.
       78  XPC-FLD0154B
           VALUE X'040490022953226413'.
       78  XPC-FLD0154E          VALUE 'N'.
       78  XPC-FLD0155B
           VALUE X'07822691488762339967770021576143335F'.
       78  XPC-FLD0155E          VALUE 'N'.
       78  XPC-FLD0156B
           VALUE X'8985588062372004625188992577022871'.
       78  XPC-FLD0156E          VALUE 'N'.
       78  XPC-FLD0157B
           VALUE X'5019620727325065'.
       78  XPC-FLD0157E          VALUE 'N'.
       78  XPC-FLD0158B
           VALUE X'19917526243063020197192F'.
       78  XPC-FLD0158E          VALUE 'N'.
       78  XPC-FLD0159B
           VALUE X'0643529357674236912600918F'.
       78  XPC-FLD0159E          VALUE 'N'.
       78  XPC-FLD0160B
           VALUE X'04490300'.
       78  XPC-FLD0160E          VALUE 'N'.
       78  XPC-FLD0161B
           VALUE X'0795897533357509001650242907'.
       78  XPC-FLD0161E          VALUE 'N'.
       78  XPC-FLD0162B
           VALUE X'0566814386458160899086'.
       78  XPC-FLD0162E          VALUE 'N'.
       78  XPC-FLD0163B
           VALUE X'0269208611024764676855618F'.
       78  XPC-FLD0163E          VALUE 'N'.
       78  XPC-FLD0164B
           VALUE X'3000'.
       78  XPC-FLD0164E          VALUE 'N'.
       78  XPC-FLD0165B
           VALUE X'1267'.
       78  XPC-FLD0165E          VALUE 'Y'.
       78  XPC-FLD0166B
           VALUE X'429599'.
       78  XPC-FLD0166E          VALUE 'N'.
       78  XPC-FLD0167B
           VALUE X'00917440942478405142746282763255'.
       78  XPC-FLD0167E          VALUE 'N'.
       78  XPC-FLD0168B
           VALUE X'04326936005661665C'.
       78  XPC-FLD0168E          VALUE 'N'.
       78  XPC-FLD0169B
           VALUE X'71534750846474368213279149'.
       78  XPC-FLD0169E          VALUE 'N'.
       78  XPC-FLD0170B
           VALUE X'02603177530164159092505813954945188016'.
       78  XPC-FLD0170E          VALUE 'N'.
       78  XPC-FLD0171B
           VALUE X'4933823716025802'.
       78  XPC-FLD0171E          VALUE 'N'.
       78  XPC-FLD0172B
           VALUE X'8903776753838588409184495731096831'.
       78  XPC-FLD0172E          VALUE 'N'.
       78  XPC-FLD0173B
           VALUE X'519945412779417204'.
       78  XPC-FLD0173E          VALUE 'N'.
       78  XPC-FLD0174B
           VALUE X'05152585493087611057'.
       78  XPC-FLD0174E          VALUE 'N'.
       78  XPC-FLD0175B
           VALUE X'051C'.
       78  XPC-FLD0175E          VALUE 'N'.
       78  XPC-FLD0176B
           VALUE X'021895219257'.
       78  XPC-FLD0176E          VALUE 'N'.
       78  XPC-FLD0177B
           VALUE X'0999225364'.
       78  XPC-FLD0177E          VALUE 'N'.
       78  XPC-FLD0178B
           VALUE X'24104366112D'.
       78  XPC-FLD0178E          VALUE 'N'.
       78  XPC-FLD0179B
           VALUE X'0663'.
       78  XPC-FLD0179E          VALUE 'N'.
       78  XPC-FLD0180B
           VALUE X'054351034931997414107F'.
       78  XPC-FLD0180E          VALUE 'N'.
       78  XPC-FLD0181B
           VALUE X'0474073583253910868D'.
       78  XPC-FLD0181E          VALUE 'N'.
       78  XPC-FLD0182B
           VALUE X'0417908352338649757839920F'.
       78  XPC-FLD0182E          VALUE 'N'.
       78  XPC-FLD0183B
           VALUE X'005D'.
       78  XPC-FLD0183E          VALUE 'Y'.
       78  XPC-FLD0184B
           VALUE X'036019692D'.
       78  XPC-FLD0184E          VALUE 'N'.
       78  XPC-FLD0185B
           VALUE X'7395132638753716096465495866'.
       78  XPC-FLD0185E          VALUE 'N'.
       78  XPC-FLD0186B
           VALUE X'8407708947119312415452441200613F'.
       78  XPC-FLD0186E          VALUE 'N'.
       78  XPC-FLD0187B
           VALUE X'6497950041934480558403'.
       78  XPC-FLD0187E          VALUE 'N'.
       78  XPC-FLD0188B
           VALUE X'00471158677246608093014401354F'.
       78  XPC-FLD0188E          VALUE 'N'.
       78  XPC-FLD0189B
           VALUE X'0566852467720726727051'.
       78  XPC-FLD0189E          VALUE 'Y'.
       78  XPC-FLD0190B
           VALUE X'062476651140273569806415'.
       78  XPC-FLD0190E          VALUE 'N'.
       78  XPC-FLD0191B
           VALUE X'0817437168989411478996487403492F'.
       78  XPC-FLD0191E          VALUE 'N'.
       78  XPC-FLD0192B
           VALUE X'03580342295012'.
       78  XPC-FLD0192E          VALUE 'N'.
       78  XPC-FLD0193B
           VALUE X'86499232126294976690766F'.
       78  XPC-FLD0193E          VALUE 'N'.
       78  XPC-FLD0194B
           VALUE X'0217285653058917626499679F'.
       78  XPC-FLD0194E          VALUE 'N'.
       78  XPC-FLD0195B
           VALUE X'014921'.
       78  XPC-FLD0195E          VALUE 'Y'.
       78  XPC-FLD0196B
           VALUE X'0180007D'.
       78  XPC-FLD0196E          VALUE 'N'.
       78  XPC-FLD0197B
           VALUE X'14'.
       78  XPC-FLD0197E          VALUE 'N'.
       78  XPC-FLD0198B
           VALUE X'14072C'.
       78  XPC-FLD0198E          VALUE 'Y'.
       78  XPC-FLD0199B
           VALUE X'045232741410605347571106449322'.
       78  XPC-FLD0199E          VALUE 'N'.
       78  XPC-FLD0200B
           VALUE X'095184480153268257'.
       78  XPC-FLD0200E          VALUE 'N'.
       78  XPC-FLD0201B
           VALUE X'0792759590444417882612526682351F'.
       78  XPC-FLD0201E          VALUE 'N'.
       78  XPC-FLD0202B
           VALUE X'037943227555010013122256395945441909'.
       78  XPC-FLD0202E          VALUE 'N'.
       78  XPC-FLD0203B
           VALUE X'05835712416517114804656539879215415F'.
       78  XPC-FLD0203E          VALUE 'N'.
       78  XPC-FLD0204B
           VALUE X'23632655'.
       78  XPC-FLD0204E          VALUE 'N'.
       78  XPC-FLD0205B
           VALUE X'288741127747638715028699'.
       78  XPC-FLD0205E          VALUE 'N'.
       78  XPC-FLD0206B
           VALUE X'70639388766434425840361654'.
       78  XPC-FLD0206E          VALUE 'N'.
       78  XPC-FLD0207B
           VALUE X'07691791385730962560263179739F'.
       78  XPC-FLD0207E          VALUE 'N'.
       78  XPC-FLD0208B
           VALUE X'21514986'.
       78  XPC-FLD0208E          VALUE 'N'.
       78  XPC-FLD0209B
           VALUE X'795271109412971503516143201295'.
       78  XPC-FLD0209E          VALUE 'N'.
       78  XPC-FLD0210B
           VALUE X'00'.
       78  XPC-FLD0210E          VALUE 'Y'.
       78  XPC-FLD0211B
           VALUE X'04421137707554604C'.
       78  XPC-FLD0211E          VALUE 'N'.
       78  XPC-FLD0212B
           VALUE X'026496836026413D'.
       78  XPC-FLD0212E          VALUE 'N'.
       78  XPC-FLD0213B
           VALUE X'07525639770631302875997903356F'.
       78  XPC-FLD0213E          VALUE 'N'.
       78  XPC-FLD0214B
           VALUE X'06668932704655321508369070'.
       78  XPC-FLD0214E          VALUE 'N'.
       78  XPC-FLD0215B
           VALUE X'0173001D'.
       78  XPC-FLD0215E          VALUE 'N'.
       78  XPC-FLD0216B
           VALUE X'5663716874'.
       78  XPC-FLD0216E          VALUE 'N'.
       78  XPC-FLD0217B
           VALUE X'05191266215287888C'.
       78  XPC-FLD0217E          VALUE 'N'.
       78  XPC-FLD0218B
           VALUE X'04467255193327033602201936446363106369'.
       78  XPC-FLD0218E          VALUE 'N'.
       78  XPC-FLD0219B
           VALUE X'58766925082182334127'.
       78  XPC-FLD0219E          VALUE 'N'.
       78  XPC-FLD0220B
           VALUE X'29364D'.
       78  XPC-FLD0220E          VALUE 'N'.
       78  XPC-FLD0221B
           VALUE X'0878910367794605407176788958167890'.
       78  XPC-FLD0221E          VALUE 'N'.
       78  XPC-FLD0222B
           VALUE X'15228D'.
       78  XPC-FLD0222E          VALUE 'Y'.
       78  XPC-FLD0223B
           VALUE X'69950927082806102497158917'.
       78  XPC-FLD0223E          VALUE 'N'.
       78  XPC-FLD0224B
           VALUE X'038300768427666D'.
       78  XPC-FLD0224E          VALUE 'N'.
       78  XPC-FLD0225B
           VALUE X'572612409808938978169F'.
       78  XPC-FLD0225E          VALUE 'N'.
       78  XPC-FLD0226B
           VALUE X'021150954C'.
       78  XPC-FLD0226E          VALUE 'N'.
       78  XPC-FLD0227B
           VALUE X'2038736443582994661522477889957372'.
       78  XPC-FLD0227E          VALUE 'N'.
       78  XPC-FLD0228B
           VALUE X'9739690596877397243957830141880549490F'.
       78  XPC-FLD0228E          VALUE 'Y'.
       78  XPC-FLD0229B
           VALUE X'7383803963255895866131917059'.
       78  XPC-FLD0229E          VALUE 'N'.
       78  XPC-FLD0230B
           VALUE X'098D'.
       78  XPC-FLD0230E          VALUE 'N'.
       78  XPC-FLD0231B
           VALUE X'02709433474D'.
       78  XPC-FLD0231E          VALUE 'N'.
       78  XPC-FLD0232B
           VALUE X'4749842313738054193504353861500F'.
       78  XPC-FLD0232E          VALUE 'N'.
       78  XPC-FLD0233B
           VALUE X'412919251493'.
       78  XPC-FLD0233E          VALUE 'N'.
       78  XPC-FLD0234B
           VALUE X'05600680922670572133253F'.
       78  XPC-FLD0234E          VALUE 'N'.
       78  XPC-FLD0235B
           VALUE X'0480831518719295639D'.
       78  XPC-FLD0235E          VALUE 'N'.
       78  XPC-FLD0236B
           VALUE X'070471341881577547199277944F'.
       78  XPC-FLD0236E          VALUE 'N'.
       78  XPC-FLD0237B
           VALUE X'0885090488581330880890618573175743'.
       78  XPC-FLD0237E          VALUE 'Y'.
       78  XPC-FLD0238B
           VALUE X'03227001'.
       78  XPC-FLD0238E          VALUE 'N'.
       78  XPC-FLD0239B
           VALUE X'29332566026370832101832F'.
       78  XPC-FLD0239E          VALUE 'N'.
       78  XPC-FLD0240B
           VALUE X'8331654817075836438888813972880F'.
       78  XPC-FLD0240E          VALUE 'Y'.
       78  XPC-FLD0241B
           VALUE X'060875735723205993171444'.
       78  XPC-FLD0241E          VALUE 'N'.
       78  XPC-FLD0242B
           VALUE X'1820841D'.
       78  XPC-FLD0242E          VALUE 'N'.
       78  XPC-FLD0243B
           VALUE X'0870255257093214798613800553539476'.
       78  XPC-FLD0243E          VALUE 'N'.
       78  XPC-FLD0244B
           VALUE X'5964541497067354924865'.
       78  XPC-FLD0244E          VALUE 'N'.
       78  XPC-FLD0245B
           VALUE X'264333833210099267317333'.
       78  XPC-FLD0245E          VALUE 'N'.
       78  XPC-FLD0246B
           VALUE X'01209825'.
       78  XPC-FLD0246E          VALUE 'N'.
       78  XPC-FLD0247B
           VALUE X'742067276785553808782225359F'.
       78  XPC-FLD0247E          VALUE 'N'.
       78  XPC-FLD0248B
           VALUE X'0568358594454923286003'.
       78  XPC-FLD0248E          VALUE 'N'.
       78  XPC-FLD0249B
           VALUE X'6731754183146980707874718F'.
       78  XPC-FLD0249E          VALUE 'Y'.
       78  XPC-FLD0250B
           VALUE X'9267251332164047061614164335129317'.
       78  XPC-FLD0250E          VALUE 'N'.
       78  XPC-FLD0251B
           VALUE X'3790591152463825338016431487631F'.
       78  XPC-FLD0251E          VALUE 'N'.
       78  XPC-FLD0252B
           VALUE X'023614266C'.
       78  XPC-FLD0252E          VALUE 'N'.
       78  XPC-FLD0253B
           VALUE X'29824915'.
       78  XPC-FLD0253E          VALUE 'N'.
       78  XPC-FLD0254B
           VALUE X'949043622D'.
       78  XPC-FLD0254E          VALUE 'N'.
       78  XPC-FLD0255B
           VALUE X'054081435076039155115F'.
       78  XPC-FLD0255E          VALUE 'N'.
       78  XPC-FLD0256B
           VALUE X'08751500721603051085707734273455571F'.
       78  XPC-FLD0256E          VALUE 'N'.
       78  XPC-FLD0257B
           VALUE X'407C'.
       78  XPC-FLD0257E          VALUE 'N'.
       78  XPC-FLD0258B
           VALUE X'84978202175808337237583600654033'.
       78  XPC-FLD0258E          VALUE 'Y'.
       78  XPC-FLD0259B
           VALUE X'037466830472593D'.
       78  XPC-FLD0259E          VALUE 'N'.
       78  XPC-FLD0260B
           VALUE X'06017366610583895639607F'.
       78  XPC-FLD0260E          VALUE 'N'.
       78  XPC-FLD0261B
           VALUE X'00567161858323'.
       78  XPC-FLD0261E          VALUE 'N'.
       78  XPC-FLD0262B
           VALUE X'68757658126759821329241049'.
       78  XPC-FLD0262E          VALUE 'N'.
       78  XPC-FLD0263B
           VALUE X'040C'.
       78  XPC-FLD0263E          VALUE 'N'.
       78  XPC-FLD0264B
           VALUE X'166846'.
       78  XPC-FLD0264E          VALUE 'N'.
       78  XPC-FLD0265B
           VALUE X'02298778729177715439249141127220354975'.
       78  XPC-FLD0265E          VALUE 'N'.
       78  XPC-FLD0266B
           VALUE X'0115052360207692161431225486003512427F'.
       78  XPC-FLD0266E          VALUE 'N'.
       78  XPC-FLD0267B
           VALUE X'023489014C'.
       78  XPC-FLD0267E          VALUE 'N'.
       78  XPC-FLD0268B
           VALUE X'8211500957830146774085733341053F'.
       78  XPC-FLD0268E          VALUE 'N'.
       78  XPC-FLD0269B
           VALUE X'05'.
       78  XPC-FLD0269E          VALUE 'N'.
       78  XPC-FLD0270B
           VALUE X'01200C'.
       78  XPC-FLD0270E          VALUE 'Y'.
       78  XPC-FLD0271B
           VALUE X'0052759203'.
       78  XPC-FLD0271E          VALUE 'N'.
       78  XPC-FLD0272B
           VALUE X'0516000696302733685D'.
       78  XPC-FLD0272E          VALUE 'N'.
       78  XPC-FLD0273B
           VALUE X'09036109253095579C'.
       78  XPC-FLD0273E          VALUE 'N'.
       78  XPC-FLD0274B
           VALUE X'52694748208586675958'.
       78  XPC-FLD0274E          VALUE 'N'.
       78  XPC-FLD0275B
           VALUE X'242413794C'.
       78  XPC-FLD0275E          VALUE 'N'.
       78  XPC-FLD0276B
           VALUE X'094591784695476577304873444518307223'.
       78  XPC-FLD0276E          VALUE 'Y'.
       78  XPC-FLD0277B
           VALUE X'499215459576603728'.
       78  XPC-FLD0277E          VALUE 'N'.
       78  XPC-FLD0278B
           VALUE X'07922277502052260016194509262277280F'.
       78  XPC-FLD0278E          VALUE 'N'.
       78  XPC-FLD0279B
           VALUE X'92108160397424898579998853165307082F'.
       78  XPC-FLD0279E          VALUE 'Y'.
       78  XPC-FLD0280B
           VALUE X'686572532054675839148262639F'.
       78  XPC-FLD0280E          VALUE 'N'.
       78  XPC-FLD0281B
           VALUE X'050053214871016073'.
       78  XPC-FLD0281E          VALUE 'N'.
       78  XPC-FLD0282B
           VALUE X'078893043658446049271049105300'.
       78  XPC-FLD0282E          VALUE 'Y'.
       78  XPC-FLD0283B
           VALUE X'0182739D'.
       78  XPC-FLD0283E          VALUE 'N'.
       78  XPC-FLD0284B
           VALUE X'01'.
       78  XPC-FLD0284E          VALUE 'N'.
       78  XPC-FLD0285B
           VALUE X'7369307141179880084957964925'.
       78  XPC-FLD0285E          VALUE 'N'.
       78  XPC-FLD0286B
           VALUE X'82453436'.
       78  XPC-FLD0286E          VALUE 'N'.
       78  XPC-FLD0287B
           VALUE X'362828'.
       78  XPC-FLD0287E          VALUE 'N'.
       78  XPC-FLD0288B
           VALUE X'893692752615119712089608583482913F'.
       78  XPC-FLD0288E          VALUE 'Y'.
       78  XPC-FLD0289B
           VALUE X'0567633089214293657540'.
       78  XPC-FLD0289E          VALUE 'N'.
       78  XPC-FLD0290B
           VALUE X'113C'.
       78  XPC-FLD0290E          VALUE 'N'.
       78  XPC-FLD0291B
           VALUE X'8300179929109657213726070068559F'.
       78  XPC-FLD0291E          VALUE 'N'.
       78  XPC-FLD0292B
           VALUE X'09'.
       78  XPC-FLD0292E          VALUE 'N'.
       78  XPC-FLD0293B
           VALUE X'030744391924'.
       78  XPC-FLD0293E          VALUE 'N'.
       78  XPC-FLD0294B
           VALUE X'00'.
       78  XPC-FLD0294E          VALUE 'Y'.
       78  XPC-FLD0295B
           VALUE X'003641743D'.
       78  XPC-FLD0295E          VALUE 'N'.
       78  XPC-FLD0296B
           VALUE X'574464025736577889141F'.
       78  XPC-FLD0296E          VALUE 'N'.
       78  XPC-FLD0297B
           VALUE X'05211000497602709295'.
       78  XPC-FLD0297E          VALUE 'N'.
       78  XPC-FLD0298B
           VALUE X'09865365009908295859892746193509083241'.
       78  XPC-FLD0298E          VALUE 'N'.
       78  XPC-FLD0299B
           VALUE X'07346908584680565956758964'.
       78  XPC-FLD0299E          VALUE 'N'.
       78  XPC-FLD0300B
           VALUE X'55012674381377925092450F'.
       78  XPC-FLD0300E          VALUE 'N'.
       78  XPC-FLD0301B
           VALUE X'5D'.
       78  XPC-FLD0301E          VALUE 'N'.
       78  XPC-FLD0302B
           VALUE X'4291773342239683'.
       78  XPC-FLD0302E          VALUE 'N'.
       78  XPC-FLD0303B
           VALUE X'09'.
       78  XPC-FLD0303E          VALUE 'N'.
       78  XPC-FLD0304B
           VALUE X'0556573438984127234968'.
       78  XPC-FLD0304E          VALUE 'N'.
       78  XPC-FLD0305B
           VALUE X'4C'.
       78  XPC-FLD0305E          VALUE 'N'.
       78  XPC-FLD0306B
           VALUE X'0493641888717687181D'.
       78  XPC-FLD0306E          VALUE 'N'.
       78  XPC-FLD0307B
           VALUE X'068005145163846554765597747973515652'.
       78  XPC-FLD0307E          VALUE 'N'.
       78  XPC-FLD0308B
           VALUE X'0711937634336942757585120489238761366F'.
       78  XPC-FLD0308E          VALUE 'N'.
       78  XPC-FLD0309B
           VALUE X'093D'.
       78  XPC-FLD0309E          VALUE 'Y'.
       78  XPC-FLD0310B
           VALUE X'0039167648388876'.
       78  XPC-FLD0310E          VALUE 'N'.
       78  XPC-FLD0311B
           VALUE X'3931117203050255914931199185957666486F'.
       78  XPC-FLD0311E          VALUE 'N'.
       78  XPC-FLD0312B
           VALUE X'00'.
       78  XPC-FLD0312E          VALUE 'Y'.
       78  XPC-FLD0313B
           VALUE X'37515306459620'.
       78  XPC-FLD0313E          VALUE 'N'.
       78  XPC-FLD0314B
           VALUE X'69720778107690404600560896'.
       78  XPC-FLD0314E          VALUE 'N'.
       78  XPC-FLD0315B
           VALUE X'69624112217793877932514589'.
       78  XPC-FLD0315E          VALUE 'N'.
       78  XPC-FLD0316B
           VALUE X'561166875766384822086F'.
       78  XPC-FLD0316E          VALUE 'N'.
       78  XPC-FLD0317B
           VALUE X'0314586880144C'.
       78  XPC-FLD0317E          VALUE 'N'.
       78  XPC-FLD0318B
           VALUE X'882534717446214034275442372745601F'.
       78  XPC-FLD0318E          VALUE 'Y'.
       78  XPC-FLD0319B
           VALUE X'0720371110100740574821997F'.
       78  XPC-FLD0319E          VALUE 'N'.
       78  XPC-FLD0320B
           VALUE X'547024228165748174212F'.
       78  XPC-FLD0320E          VALUE 'N'.
       78  XPC-FLD0321B
           VALUE X'6601639210521921263818967F'.
       78  XPC-FLD0321E          VALUE 'Y'.
       78  XPC-FLD0322B
           VALUE X'017591106469607443841432'.
       78  XPC-FLD0322E          VALUE 'N'.
       78  XPC-FLD0323B
           VALUE X'0726633859846741159138616694690426812F'.
       78  XPC-FLD0323E          VALUE 'N'.
       78  XPC-FLD0324B
           VALUE X'002824576327848049573F'.
       78  XPC-FLD0324E          VALUE 'N'.
       78  XPC-FLD0325B
           VALUE X'723337602353324218528882738F'.
       78  XPC-FLD0325E          VALUE 'N'.
       78  XPC-FLD0326B
           VALUE X'049D'.
       78  XPC-FLD0326E          VALUE 'N'.
       78  XPC-FLD0327B
           VALUE X'021224467C'.
       78  XPC-FLD0327E          VALUE 'N'.
       78  XPC-FLD0328B
           VALUE X'046432253464059D'.
       78  XPC-FLD0328E          VALUE 'N'.
       78  XPC-FLD0329B
           VALUE X'0952096907591406971249625712516717612F'.
       78  XPC-FLD0329E          VALUE 'N'.
       78  XPC-FLD0330B
           VALUE X'795524425555017788980194382020'.
       78  XPC-FLD0330E          VALUE 'Y'.
       78  XPC-FLD0331B
           VALUE X'2990286983'.
       78  XPC-FLD0331E          VALUE 'N'.
       78  XPC-FLD0332B
           VALUE X'03558444199192'.
       78  XPC-FLD0332E          VALUE 'N'.
       78  XPC-FLD0333B
           VALUE X'243142895C'.
       78  XPC-FLD0333E          VALUE 'N'.
       78  XPC-FLD0334B
           VALUE X'297044413515'.
       78  XPC-FLD0334E          VALUE 'N'.
       78  XPC-FLD0335B
           VALUE X'05106189445459805064'.
       78  XPC-FLD0335E          VALUE 'N'.
       78  XPC-FLD0336B
           VALUE X'29331698899D'.
       78  XPC-FLD0336E          VALUE 'N'.
       78  XPC-FLD0337B
           VALUE X'434132279525498709915609650F'.
       78  XPC-FLD0337E          VALUE 'N'.
       78  XPC-FLD0338B
           VALUE X'053047689000456310637F'.
       78  XPC-FLD0338E          VALUE 'N'.
       78  XPC-FLD0339B
           VALUE X'05943728837259434154840F'.
       78  XPC-FLD0339E          VALUE 'N'.
       78  XPC-FLD0340B
           VALUE X'3898813490787D'.
       78  XPC-FLD0340E          VALUE 'N'.
       78  XPC-FLD0341B
           VALUE X'248392469156514472666F'.
       78  XPC-FLD0341E          VALUE 'N'.
       78  XPC-FLD0342B
           VALUE X'45329231208135124D'.
       78  XPC-FLD0342E          VALUE 'N'.
       78  XPC-FLD0343B
           VALUE X'00620927'.
       78  XPC-FLD0343E          VALUE 'N'.
       78  XPC-FLD0344B
           VALUE X'606359905437156143820618581230520F'.
       78  XPC-FLD0344E          VALUE 'N'.
       78  XPC-FLD0345B
           VALUE X'0405441574894889'.
       78  XPC-FLD0345E          VALUE 'N'.
       78  XPC-FLD0346B
           VALUE X'6665377278444964848080899F'.
       78  XPC-FLD0346E          VALUE 'N'.
       78  XPC-FLD0347B
           VALUE X'324381'.
       78  XPC-FLD0347E          VALUE 'N'.
       78  XPC-FLD0348B
           VALUE X'0541608383617544100863'.
       78  XPC-FLD0348E          VALUE 'N'.
       78  XPC-FLD0349B
           VALUE X'99162869882943715535583214659709483F'.
       78  XPC-FLD0349E          VALUE 'N'.
       78  XPC-FLD0350B
           VALUE X'08264871389960360762501068165875'.
       78  XPC-FLD0350E          VALUE 'N'.
       78  XPC-FLD0351B
           VALUE X'53884121311052648707'.
       78  XPC-FLD0351E          VALUE 'N'.
       78  XPC-FLD0352B
           VALUE X'01946919'.
       78  XPC-FLD0352E          VALUE 'N'.
       78  XPC-FLD0353B
           VALUE X'94389336945631099347053805104224012F'.
       78  XPC-FLD0353E          VALUE 'N'.
       78  XPC-FLD0354B
           VALUE X'31167660742D'.
       78  XPC-FLD0354E          VALUE 'N'.
       78  XPC-FLD0355B
           VALUE X'93287C'.
       78  XPC-FLD0355E          VALUE 'N'.
       78  XPC-FLD0356B
           VALUE X'83673557978976841628508509529638'.
       78  XPC-FLD0356E          VALUE 'N'.
       78  XPC-FLD0357B
           VALUE X'0079'.
       78  XPC-FLD0357E          VALUE 'Y'.
       78  XPC-FLD0358B
           VALUE X'65874749059638552239264936'.
       78  XPC-FLD0358E          VALUE 'N'.
       78  XPC-FLD0359B
           VALUE X'9526039934819852117442415817981772124F'.
       78  XPC-FLD0359E          VALUE 'N'.
       78  XPC-FLD0360B
           VALUE X'2666622504'.
       78  XPC-FLD0360E          VALUE 'Y'.
       78  XPC-FLD0361B
           VALUE X'07851848643793046811367730697339'.
       78  XPC-FLD0361E          VALUE 'N'.
       78  XPC-FLD0362B
           VALUE X'8970899599407193836242413453874178'.
       78  XPC-FLD0362E          VALUE 'N'.
       78  XPC-FLD0363B
           VALUE X'09034927431796696550847514117776881F'.
       78  XPC-FLD0363E          VALUE 'Y'.
       78  XPC-FLD0364B
           VALUE X'8287940009277749559970516202156F'.
       78  XPC-FLD0364E          VALUE 'N'.
       78  XPC-FLD0365B
           VALUE X'02107493896139311928536102'.
       78  XPC-FLD0365E          VALUE 'N'.
       78  XPC-FLD0366B
           VALUE X'00157659331265924684828405588633'.
       78  XPC-FLD0366E          VALUE 'N'.
       78  XPC-FLD0367B
           VALUE X'7840586C'.
       78  XPC-FLD0367E          VALUE 'N'.
       78  XPC-FLD0368B
           VALUE X'03'.
       78  XPC-FLD0368E          VALUE 'N'.
       78  XPC-FLD0369B
           VALUE X'31224128387C'.
       78  XPC-FLD0369E          VALUE 'N'.
       78  XPC-FLD0370B
           VALUE X'0C'.
       78  XPC-FLD0370E          VALUE 'N'.
       78  XPC-FLD0371B
           VALUE X'082D'.
       78  XPC-FLD0371E          VALUE 'N'.
       78  XPC-FLD0372B
           VALUE X'0049999527433343127F'.
       78  XPC-FLD0372E          VALUE 'N'.
       78  XPC-FLD0373B
           VALUE X'3081708383872C'.
       78  XPC-FLD0373E          VALUE 'N'.
       78  XPC-FLD0374B
           VALUE X'711264497973442155753787119F'.
       78  XPC-FLD0374E          VALUE 'N'.
       78  XPC-FLD0375B
           VALUE X'00'.
       78  XPC-FLD0375E          VALUE 'Y'.
       78  XPC-FLD0376B
           VALUE X'5240009617041836336F'.
       78  XPC-FLD0376E          VALUE 'N'.
       78  XPC-FLD0377B
           VALUE X'78137191821795531497030218303F'.
       78  XPC-FLD0377E          VALUE 'N'.
       78  XPC-FLD0378B
           VALUE X'0163135D'.
       78  XPC-FLD0378E          VALUE 'N'.
       78  XPC-FLD0379B
           VALUE X'04'.
       78  XPC-FLD0379E          VALUE 'N'.
       78  XPC-FLD0380B
           VALUE X'9D'.
       78  XPC-FLD0380E          VALUE 'N'.
       78  XPC-FLD0381B
           VALUE X'0096'.
       78  XPC-FLD0381E          VALUE 'Y'.
       78  XPC-FLD0382B
           VALUE X'1909'.
       78  XPC-FLD0382E          VALUE 'N'.
       78  XPC-FLD0383B
           VALUE X'0810435186395222418864747737642F'.
       78  XPC-FLD0383E          VALUE 'N'.
       78  XPC-FLD0384B
           VALUE X'00'.
       78  XPC-FLD0384E          VALUE 'Y'.
       78  XPC-FLD0385B
           VALUE X'774134932514714546452413131744833F'.
       78  XPC-FLD0385E          VALUE 'N'.
       78  XPC-FLD0386B
           VALUE X'03467992789726692670323751189F'.
       78  XPC-FLD0386E          VALUE 'N'.
       78  XPC-FLD0387B
           VALUE X'6906513656145575095354897F'.
       78  XPC-FLD0387E          VALUE 'N'.
       78  XPC-FLD0388B
           VALUE X'0326'.
       78  XPC-FLD0388E          VALUE 'N'.
       78  XPC-FLD0389B
           VALUE X'0182625981352744592156'.
       78  XPC-FLD0389E          VALUE 'N'.
       78  XPC-FLD0390B
           VALUE X'0102'.
       78  XPC-FLD0390E          VALUE 'N'.
       78  XPC-FLD0391B
           VALUE X'00373737127C'.
       78  XPC-FLD0391E          VALUE 'N'.
       78  XPC-FLD0392B
           VALUE X'046825106292883313'.
       78  XPC-FLD0392E          VALUE 'N'.
       78  XPC-FLD0393B
           VALUE X'9072420163680885991652758093550801'.
       78  XPC-FLD0393E          VALUE 'N'.
       78  XPC-FLD0394B
           VALUE X'0474630481043585892D'.
       78  XPC-FLD0394E          VALUE 'N'.
       78  XPC-FLD0395B
           VALUE X'2C'.
       78  XPC-FLD0395E          VALUE 'N'.
       78  XPC-FLD0396B
           VALUE X'0265476173063916'.
       78  XPC-FLD0396E          VALUE 'N'.
       78  XPC-FLD0397B
           VALUE X'062C'.
       78  XPC-FLD0397E          VALUE 'N'.
       78  XPC-FLD0398B
           VALUE X'02844252852D'.
       78  XPC-FLD0398E          VALUE 'N'.
       78  XPC-FLD0399B
           VALUE X'0256742307'.
       78  XPC-FLD0399E          VALUE 'N'.
       78  XPC-FLD0400B
           VALUE X'08678350299065256532010165028624'.
       78  XPC-FLD0400E          VALUE 'N'.
       78  XPC-FLD0401B
           VALUE X'09'.
       78  XPC-FLD0401E          VALUE 'N'.
       78  XPC-FLD0402B
           VALUE X'69644052220831165210812585'.
       78  XPC-FLD0402E          VALUE 'N'.
       78  XPC-FLD0403B
           VALUE X'012518106356029089448417234962107613'.
       78  XPC-FLD0403E          VALUE 'N'.
       78  XPC-FLD0404B
           VALUE X'4814436782579247780215241F'.
       78  XPC-FLD0404E          VALUE 'N'.
       78  XPC-FLD0405B
           VALUE X'14133C'.
       78  XPC-FLD0405E          VALUE 'Y'.
       78  XPC-FLD0406B
           VALUE X'049908285391730064732712435215'.
       78  XPC-FLD0406E          VALUE 'N'.
       78  XPC-FLD0407B
           VALUE X'08753049482988191082826919955550692975'.
       78  XPC-FLD0407E          VALUE 'N'.
       78  XPC-FLD0408B
           VALUE X'2862678320'.
       78  XPC-FLD0408E          VALUE 'Y'.
       78  XPC-FLD0409B
           VALUE X'0605266450165216657684'.
       78  XPC-FLD0409E          VALUE 'N'.
       78  XPC-FLD0410B
           VALUE X'8786052888992391829545680593582801521F'.
       78  XPC-FLD0410E          VALUE 'N'.
       78  XPC-FLD0411B
           VALUE X'077757784281136710369253250973'.
       78  XPC-FLD0411E          VALUE 'Y'.
       78  XPC-FLD0412B
           VALUE X'7D'.
       78  XPC-FLD0412E          VALUE 'N'.
       78  XPC-FLD0413B
           VALUE X'2C'.
       78  XPC-FLD0413E          VALUE 'N'.
       78  XPC-FLD0414B
           VALUE X'99790D'.
       78  XPC-FLD0414E          VALUE 'N'.
       78  XPC-FLD0415B
           VALUE X'9072627958632073487733476063585840'.
       78  XPC-FLD0415E          VALUE 'N'.
       78  XPC-FLD0416B
           VALUE X'8D'.
       78  XPC-FLD0416E          VALUE 'N'.
       78  XPC-FLD0417B
           VALUE X'988613295763541566341103816739632F'.
       78  XPC-FLD0417E          VALUE 'N'.
       78  XPC-FLD0418B
           VALUE X'00'.
       78  XPC-FLD0418E          VALUE 'N'.
       78  XPC-FLD0419B
           VALUE X'057648646369329730502F'.
       78  XPC-FLD0419E          VALUE 'N'.
       78  XPC-FLD0420B
           VALUE X'9092387304867948216724471421912312'.
       78  XPC-FLD0420E          VALUE 'Y'.
       78  XPC-FLD0421B
           VALUE X'3350912C'.
       78  XPC-FLD0421E          VALUE 'N'.
       78  XPC-FLD0422B
           VALUE X'752582761957935941759741251848172397'.
       78  XPC-FLD0422E          VALUE 'N'.
       78  XPC-FLD0423B
           VALUE X'68952728614626146441679566'.
       78  XPC-FLD0423E          VALUE 'Y'.
       78  XPC-FLD0424B
           VALUE X'0784268490871190770892359433'.
       78  XPC-FLD0424E          VALUE 'N'.
       78  XPC-FLD0425B
           VALUE X'01105207822256892292772F'.
       78  XPC-FLD0425E          VALUE 'N'.
       78  XPC-FLD0426B
           VALUE X'0001958844649331492605'.
       78  XPC-FLD0426E          VALUE 'N'.
       78  XPC-FLD0427B
           VALUE X'030767310512910845380824639505'.
       78  XPC-FLD0427E          VALUE 'N'.
       78  XPC-FLD0428B
           VALUE X'03481765503552540774734325168211935223'.
       78  XPC-FLD0428E          VALUE 'N'.
       78  XPC-FLD0429B
           VALUE X'0423145136880775'.
       78  XPC-FLD0429E          VALUE 'N'.
       78  XPC-FLD0430B
           VALUE X'03147921208448'.
       78  XPC-FLD0430E          VALUE 'N'.
       78  XPC-FLD0431B
           VALUE X'09203928254587173674039490833820309F'.
       78  XPC-FLD0431E          VALUE 'N'.
       78  XPC-FLD0432B
           VALUE X'0161655D'.
       78  XPC-FLD0432E          VALUE 'Y'.
       78  XPC-FLD0433B
           VALUE X'02194579'.
       78  XPC-FLD0433E          VALUE 'N'.
       78  XPC-FLD0434B
           VALUE X'60684270265800283242045907172723673F'.
       78  XPC-FLD0434E          VALUE 'N'.
       78  XPC-FLD0435B
           VALUE X'05848414431863717140299F'.
       78  XPC-FLD0435E          VALUE 'N'.
       78  XPC-FLD0436B
           VALUE X'8307195843004202551185244374210F'.
       78  XPC-FLD0436E          VALUE 'N'.
       78  XPC-FLD0437B
           VALUE X'0276912651674409371338469F'.
       78  XPC-FLD0437E          VALUE 'N'.
       78  XPC-FLD0438B
           VALUE X'874277230957161255453513604152249F'.
       78  XPC-FLD0438E          VALUE 'Y'.
       78  XPC-FLD0439B
           VALUE X'057198557021649332012F'.
       78  XPC-FLD0439E          VALUE 'N'.
       78  XPC-FLD0440B
           VALUE X'045546922388182033'.
       78  XPC-FLD0440E          VALUE 'N'.
       78  XPC-FLD0441B
           VALUE X'04410365507278116C'.
       78  XPC-FLD0441E          VALUE 'N'.
       78  XPC-FLD0442B
           VALUE X'0793246258213504850331787565664854'.
       78  XPC-FLD0442E          VALUE 'N'.
       78  XPC-FLD0443B
           VALUE X'12406922393517515692932F'.
       78  XPC-FLD0443E          VALUE 'N'.
       78  XPC-FLD0444B
           VALUE X'5047752750516173348F'.
       78  XPC-FLD0444E          VALUE 'N'.
       78  XPC-FLD0445B
           VALUE X'07930125790736931C'.
       78  XPC-FLD0445E          VALUE 'N'.
       78  XPC-FLD0446B
           VALUE X'03796915192033033506944203'.
       78  XPC-FLD0446E          VALUE 'N'.
       78  XPC-FLD0447B
           VALUE X'2771730669'.
       78  XPC-FLD0447E          VALUE 'N'.
       78  XPC-FLD0448B
           VALUE X'53731039321367845601'.
       78  XPC-FLD0448E          VALUE 'N'.
       78  XPC-FLD0449B
           VALUE X'0509720778946D'.
       78  XPC-FLD0449E          VALUE 'N'.
       78  XPC-FLD0450B
           VALUE X'0282777568876138030162'.
       78  XPC-FLD0450E          VALUE 'N'.
       78  XPC-FLD0451B
           VALUE X'251739040D'.
       78  XPC-FLD0451E          VALUE 'N'.
       78  XPC-FLD0452B
           VALUE X'0554961704112127562772'.
       78  XPC-FLD0452E          VALUE 'N'.
       78  XPC-FLD0453B
           VALUE X'967573296701221163829131910461001098'.
       78  XPC-FLD0453E          VALUE 'Y'.
       78  XPC-FLD0454B
           VALUE X'0C'.
       78  XPC-FLD0454E          VALUE 'N'.
       78  XPC-FLD0455B
           VALUE X'085105998788168291113720442808698F'.
       78  XPC-FLD0455E          VALUE 'N'.
       78  XPC-FLD0456B
           VALUE X'015602'.
       78  XPC-FLD0456E          VALUE 'N'.
       78  XPC-FLD0457B
           VALUE X'03'.
       78  XPC-FLD0457E          VALUE 'N'.
       78  XPC-FLD0458B
           VALUE X'319507534378'.
       78  XPC-FLD0458E          VALUE 'N'.
       78  XPC-FLD0459B
           VALUE X'563566655806151518188F'.
       78  XPC-FLD0459E          VALUE 'N'.
       78  XPC-FLD0460B
           VALUE X'78345895335320658858790920930F'.
       78  XPC-FLD0460E          VALUE 'N'.
       78  XPC-FLD0461B
           VALUE X'021468392C'.
       78  XPC-FLD0461E          VALUE 'N'.
       78  XPC-FLD0462B
           VALUE X'0952391194548525610308331579290097579F'.
       78  XPC-FLD0462E          VALUE 'Y'.
       78  XPC-FLD0463B
           VALUE X'0407334605648695'.
       78  XPC-FLD0463E          VALUE 'N'.
       78  XPC-FLD0464B
           VALUE X'0151737088129684206390490880'.
       78  XPC-FLD0464E          VALUE 'N'.
       78  XPC-FLD0465B
           VALUE X'08379371800695708527584315561398'.
       78  XPC-FLD0465E          VALUE 'Y'.
       78  XPC-FLD0466B
           VALUE X'066690'.
       78  XPC-FLD0466E          VALUE 'N'.
       78  XPC-FLD0467B
           VALUE X'221674677715112297171629052172647F'.
       78  XPC-FLD0467E          VALUE 'N'.
       78  XPC-FLD0468B
           VALUE X'029592230696'.
       78  XPC-FLD0468E          VALUE 'Y'.
       78  XPC-FLD0469B
           VALUE X'5271081475223874723F'.
       78  XPC-FLD0469E          VALUE 'N'.
       78  XPC-FLD0470B
           VALUE X'038313143686989D'.
       78  XPC-FLD0470E          VALUE 'N'.
       78  XPC-FLD0471B
           VALUE X'00'.
       78  XPC-FLD0471E          VALUE 'Y'.
       78  XPC-FLD0472B
           VALUE X'014747530624073358364549755424378F'.
       78  XPC-FLD0472E          VALUE 'N'.
       78  XPC-FLD0473B
           VALUE X'044510935327360434676791100F'.
       78  XPC-FLD0473E          VALUE 'N'.
       78  XPC-FLD0474B
           VALUE X'13295C'.
       78  XPC-FLD0474E          VALUE 'Y'.
       78  XPC-FLD0475B
           VALUE X'008735531657721C'.
       78  XPC-FLD0475E          VALUE 'N'.
       78  XPC-FLD0476B
           VALUE X'06726269'.
       78  XPC-FLD0476E          VALUE 'N'.
       78  XPC-FLD0477B
           VALUE X'030615161929047D'.
       78  XPC-FLD0477E          VALUE 'N'.
       78  XPC-FLD0478B
           VALUE X'02732554753852'.
       78  XPC-FLD0478E          VALUE 'N'.
       78  XPC-FLD0479B
           VALUE X'3225777432138897276100778981344F'.
       78  XPC-FLD0479E          VALUE 'N'.
       78  XPC-FLD0480B
           VALUE X'7459539941657910502685240317'.
       78  XPC-FLD0480E          VALUE 'N'.
       78  XPC-FLD0481B
           VALUE X'7907459007614364265847939350351225584F'.
       78  XPC-FLD0481E          VALUE 'N'.
       78  XPC-FLD0482B
           VALUE X'0499292594411151590D'.
       78  XPC-FLD0482E          VALUE 'N'.
       78  XPC-FLD0483B
           VALUE X'0323420128144C'.
       78  XPC-FLD0483E          VALUE 'N'.
       78  XPC-FLD0484B
           VALUE X'0577123861473882282524'.
       78  XPC-FLD0484E          VALUE 'N'.
       78  XPC-FLD0485B
           VALUE X'842609'.
       78  XPC-FLD0485E          VALUE 'N'.
       78  XPC-FLD0486B
           VALUE X'045838007534965959'.
       78  XPC-FLD0486E          VALUE 'N'.
       78  XPC-FLD0487B
           VALUE X'070416419749040885946681100F'.
       78  XPC-FLD0487E          VALUE 'N'.
       78  XPC-FLD0488B
           VALUE X'01888589981100687587906874'.
       78  XPC-FLD0488E          VALUE 'N'.
       78  XPC-FLD0489B
           VALUE X'09950567826331271348294649214949458837'.
       78  XPC-FLD0489E          VALUE 'Y'.
       78  XPC-FLD0490B
           VALUE X'2396976320'.
       78  XPC-FLD0490E          VALUE 'N'.
       78  XPC-FLD0491B
           VALUE X'6612864347936019645829430F'.
       78  XPC-FLD0491E          VALUE 'N'.
       78  XPC-FLD0492B
           VALUE X'3423161826574C'.
       78  XPC-FLD0492E          VALUE 'N'.
       78  XPC-FLD0493B
           VALUE X'790696459278862186593528349476'.
       78  XPC-FLD0493E          VALUE 'N'.
       78  XPC-FLD0494B
           VALUE X'5132995328615615201F'.
       78  XPC-FLD0494E          VALUE 'N'.
       78  XPC-FLD0495B
           VALUE X'646882573915106698502768'.
       78  XPC-FLD0495E          VALUE 'N'.
       78  XPC-FLD0496B
           VALUE X'05523D'.
       78  XPC-FLD0496E          VALUE 'N'.
       78  XPC-FLD0497B
           VALUE X'06663282286120654558381204'.
       78  XPC-FLD0497E          VALUE 'N'.
       78  XPC-FLD0498B
           VALUE X'01894494'.
       78  XPC-FLD0498E          VALUE 'Y'.
       78  XPC-FLD0499B
           VALUE X'0634131216402607308791345F'.
       78  XPC-FLD0499E          VALUE 'N'.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           ADD FLD0001A        TO FLD0001B.
           SUBTRACT FLD0002A        FROM FLD0002B.
           ADD FLD0003A        TO FLD0003B
               ON SIZE ERROR MOVE 'Y' TO FLD0003E.
           SUBTRACT FLD0004A        FROM FLD0004B.
           ADD FLD0005A        TO FLD0005B.
           SUBTRACT FLD0006A        FROM FLD0006B
               ON SIZE ERROR MOVE 'Y' TO FLD0006E.
           ADD FLD0007A        TO FLD0007B.
           SUBTRACT FLD0008A        FROM FLD0008B.
           ADD FLD0009A        TO FLD0009B
               ON SIZE ERROR MOVE 'Y' TO FLD0009E.
           SUBTRACT FLD0010A        FROM FLD0010B.
           ADD FLD0011A        TO FLD0011B.
           SUBTRACT FLD0012A        FROM FLD0012B
               ON SIZE ERROR MOVE 'Y' TO FLD0012E.
           ADD FLD0013A        TO FLD0013B.
           SUBTRACT FLD0014A        FROM FLD0014B.
           ADD FLD0015A        TO FLD0015B
               ON SIZE ERROR MOVE 'Y' TO FLD0015E.
           SUBTRACT FLD0016A        FROM FLD0016B.
           ADD FLD0017A        TO FLD0017B.
           SUBTRACT FLD0018A        FROM FLD0018B
               ON SIZE ERROR MOVE 'Y' TO FLD0018E.
           ADD FLD0019A        TO FLD0019B.
           SUBTRACT FLD0020A        FROM FLD0020B.
           ADD FLD0021A        TO FLD0021B
               ON SIZE ERROR MOVE 'Y' TO FLD0021E.
           SUBTRACT FLD0022A        FROM FLD0022B.
           ADD FLD0023A        TO FLD0023B.
           SUBTRACT FLD0024A        FROM FLD0024B
               ON SIZE ERROR MOVE 'Y' TO FLD0024E.
           ADD FLD0025A        TO FLD0025B.
           SUBTRACT FLD0026A        FROM FLD0026B.
           ADD FLD0027A        TO FLD0027B
               ON SIZE ERROR MOVE 'Y' TO FLD0027E.
           SUBTRACT FLD0028A        FROM FLD0028B.
           ADD FLD0029A        TO FLD0029B.
           SUBTRACT FLD0030A        FROM FLD0030B
               ON SIZE ERROR MOVE 'Y' TO FLD0030E.
           ADD FLD0031A        TO FLD0031B.
           SUBTRACT FLD0032A        FROM FLD0032B.
           ADD FLD0033A        TO FLD0033B
               ON SIZE ERROR MOVE 'Y' TO FLD0033E.
           SUBTRACT FLD0034A        FROM FLD0034B.
           ADD FLD0035A        TO FLD0035B.
           SUBTRACT FLD0036A        FROM FLD0036B
               ON SIZE ERROR MOVE 'Y' TO FLD0036E.
           ADD FLD0037A        TO FLD0037B.
           SUBTRACT FLD0038A        FROM FLD0038B.
           ADD FLD0039A        TO FLD0039B
               ON SIZE ERROR MOVE 'Y' TO FLD0039E.
           SUBTRACT FLD0040A        FROM FLD0040B.
           ADD FLD0041A        TO FLD0041B.
           SUBTRACT FLD0042A        FROM FLD0042B
               ON SIZE ERROR MOVE 'Y' TO FLD0042E.
           ADD FLD0043A        TO FLD0043B.
           SUBTRACT FLD0044A        FROM FLD0044B.
           ADD FLD0045A        TO FLD0045B
               ON SIZE ERROR MOVE 'Y' TO FLD0045E.
           SUBTRACT FLD0046A        FROM FLD0046B.
           ADD FLD0047A        TO FLD0047B.
           SUBTRACT FLD0048A        FROM FLD0048B
               ON SIZE ERROR MOVE 'Y' TO FLD0048E.
           ADD FLD0049A        TO FLD0049B.
           SUBTRACT FLD0050A        FROM FLD0050B.
           ADD FLD0051A        TO FLD0051B
               ON SIZE ERROR MOVE 'Y' TO FLD0051E.
           SUBTRACT FLD0052A        FROM FLD0052B.
           ADD FLD0053A        TO FLD0053B.
           SUBTRACT FLD0054A        FROM FLD0054B
               ON SIZE ERROR MOVE 'Y' TO FLD0054E.
           ADD FLD0055A        TO FLD0055B.
           SUBTRACT FLD0056A        FROM FLD0056B.
           ADD FLD0057A        TO FLD0057B
               ON SIZE ERROR MOVE 'Y' TO FLD0057E.
           SUBTRACT FLD0058A        FROM FLD0058B.
           ADD FLD0059A        TO FLD0059B.
           SUBTRACT FLD0060A        FROM FLD0060B
               ON SIZE ERROR MOVE 'Y' TO FLD0060E.
           ADD FLD0061A        TO FLD0061B.
           SUBTRACT FLD0062A        FROM FLD0062B.
           ADD FLD0063A        TO FLD0063B
               ON SIZE ERROR MOVE 'Y' TO FLD0063E.
           SUBTRACT FLD0064A        FROM FLD0064B.
           ADD FLD0065A        TO FLD0065B.
           SUBTRACT FLD0066A        FROM FLD0066B
               ON SIZE ERROR MOVE 'Y' TO FLD0066E.
           ADD FLD0067A        TO FLD0067B.
           SUBTRACT FLD0068A        FROM FLD0068B.
           ADD FLD0069A        TO FLD0069B
               ON SIZE ERROR MOVE 'Y' TO FLD0069E.
           SUBTRACT FLD0070A        FROM FLD0070B.
           ADD FLD0071A        TO FLD0071B.
           SUBTRACT FLD0072A        FROM FLD0072B
               ON SIZE ERROR MOVE 'Y' TO FLD0072E.
           ADD FLD0073A        TO FLD0073B.
           SUBTRACT FLD0074A        FROM FLD0074B.
           ADD FLD0075A        TO FLD0075B
               ON SIZE ERROR MOVE 'Y' TO FLD0075E.
           SUBTRACT FLD0076A        FROM FLD0076B.
           ADD FLD0077A        TO FLD0077B.
           SUBTRACT FLD0078A        FROM FLD0078B
               ON SIZE ERROR MOVE 'Y' TO FLD0078E.
           ADD FLD0079A        TO FLD0079B.
           SUBTRACT FLD0080A        FROM FLD0080B.
           ADD FLD0081A        TO FLD0081B
               ON SIZE ERROR MOVE 'Y' TO FLD0081E.
           SUBTRACT FLD0082A        FROM FLD0082B.
           ADD FLD0083A        TO FLD0083B.
           SUBTRACT FLD0084A        FROM FLD0084B
               ON SIZE ERROR MOVE 'Y' TO FLD0084E.
           ADD FLD0085A        TO FLD0085B.
           SUBTRACT FLD0086A        FROM FLD0086B.
           ADD FLD0087A        TO FLD0087B
               ON SIZE ERROR MOVE 'Y' TO FLD0087E.
           SUBTRACT FLD0088A        FROM FLD0088B.
           ADD FLD0089A        TO FLD0089B.
           SUBTRACT FLD0090A        FROM FLD0090B
               ON SIZE ERROR MOVE 'Y' TO FLD0090E.
           ADD FLD0091A        TO FLD0091B.
           SUBTRACT FLD0092A        FROM FLD0092B.
           ADD FLD0093A        TO FLD0093B
               ON SIZE ERROR MOVE 'Y' TO FLD0093E.
           SUBTRACT FLD0094A        FROM FLD0094B.
           ADD FLD0095A        TO FLD0095B.
           SUBTRACT FLD0096A        FROM FLD0096B
               ON SIZE ERROR MOVE 'Y' TO FLD0096E.
           ADD FLD0097A        TO FLD0097B.
           SUBTRACT FLD0098A        FROM FLD0098B.
           ADD FLD0099A        TO FLD0099B
               ON SIZE ERROR MOVE 'Y' TO FLD0099E.
           SUBTRACT FLD0100A        FROM FLD0100B.
           ADD FLD0101A        TO FLD0101B.
           SUBTRACT FLD0102A        FROM FLD0102B
               ON SIZE ERROR MOVE 'Y' TO FLD0102E.
           ADD FLD0103A        TO FLD0103B.
           SUBTRACT FLD0104A        FROM FLD0104B.
           ADD FLD0105A        TO FLD0105B
               ON SIZE ERROR MOVE 'Y' TO FLD0105E.
           SUBTRACT FLD0106A        FROM FLD0106B.
           ADD FLD0107A        TO FLD0107B.
           SUBTRACT FLD0108A        FROM FLD0108B
               ON SIZE ERROR MOVE 'Y' TO FLD0108E.
           ADD FLD0109A        TO FLD0109B.
           SUBTRACT FLD0110A        FROM FLD0110B.
           ADD FLD0111A        TO FLD0111B
               ON SIZE ERROR MOVE 'Y' TO FLD0111E.
           SUBTRACT FLD0112A        FROM FLD0112B.
           ADD FLD0113A        TO FLD0113B.
           SUBTRACT FLD0114A        FROM FLD0114B
               ON SIZE ERROR MOVE 'Y' TO FLD0114E.
           ADD FLD0115A        TO FLD0115B.
           SUBTRACT FLD0116A        FROM FLD0116B.
           ADD FLD0117A        TO FLD0117B
               ON SIZE ERROR MOVE 'Y' TO FLD0117E.
           SUBTRACT FLD0118A        FROM FLD0118B.
           ADD FLD0119A        TO FLD0119B.
           SUBTRACT FLD0120A        FROM FLD0120B
               ON SIZE ERROR MOVE 'Y' TO FLD0120E.
           ADD FLD0121A        TO FLD0121B.
           SUBTRACT FLD0122A        FROM FLD0122B.
           ADD FLD0123A        TO FLD0123B
               ON SIZE ERROR MOVE 'Y' TO FLD0123E.
           SUBTRACT FLD0124A        FROM FLD0124B.
           ADD FLD0125A        TO FLD0125B.
           SUBTRACT FLD0126A        FROM FLD0126B
               ON SIZE ERROR MOVE 'Y' TO FLD0126E.
           ADD FLD0127A        TO FLD0127B.
           SUBTRACT FLD0128A        FROM FLD0128B.
           ADD FLD0129A        TO FLD0129B
               ON SIZE ERROR MOVE 'Y' TO FLD0129E.
           SUBTRACT FLD0130A        FROM FLD0130B.
           ADD FLD0131A        TO FLD0131B.
           SUBTRACT FLD0132A        FROM FLD0132B
               ON SIZE ERROR MOVE 'Y' TO FLD0132E.
           ADD FLD0133A        TO FLD0133B.
           SUBTRACT FLD0134A        FROM FLD0134B.
           ADD FLD0135A        TO FLD0135B
               ON SIZE ERROR MOVE 'Y' TO FLD0135E.
           SUBTRACT FLD0136A        FROM FLD0136B.
           ADD FLD0137A        TO FLD0137B.
           SUBTRACT FLD0138A        FROM FLD0138B
               ON SIZE ERROR MOVE 'Y' TO FLD0138E.
           ADD FLD0139A        TO FLD0139B.
           SUBTRACT FLD0140A        FROM FLD0140B.
           ADD FLD0141A        TO FLD0141B
               ON SIZE ERROR MOVE 'Y' TO FLD0141E.
           SUBTRACT FLD0142A        FROM FLD0142B.
           ADD FLD0143A        TO FLD0143B.
           SUBTRACT FLD0144A        FROM FLD0144B
               ON SIZE ERROR MOVE 'Y' TO FLD0144E.
           ADD FLD0145A        TO FLD0145B.
           SUBTRACT FLD0146A        FROM FLD0146B.
           ADD FLD0147A        TO FLD0147B
               ON SIZE ERROR MOVE 'Y' TO FLD0147E.
           SUBTRACT FLD0148A        FROM FLD0148B.
           ADD FLD0149A        TO FLD0149B.
           SUBTRACT FLD0150A        FROM FLD0150B
               ON SIZE ERROR MOVE 'Y' TO FLD0150E.
           ADD FLD0151A        TO FLD0151B.
           SUBTRACT FLD0152A        FROM FLD0152B.
           ADD FLD0153A        TO FLD0153B
               ON SIZE ERROR MOVE 'Y' TO FLD0153E.
           SUBTRACT FLD0154A        FROM FLD0154B.
           ADD FLD0155A        TO FLD0155B.
           SUBTRACT FLD0156A        FROM FLD0156B
               ON SIZE ERROR MOVE 'Y' TO FLD0156E.
           ADD FLD0157A        TO FLD0157B.
           SUBTRACT FLD0158A        FROM FLD0158B.
           ADD FLD0159A        TO FLD0159B
               ON SIZE ERROR MOVE 'Y' TO FLD0159E.
           SUBTRACT FLD0160A        FROM FLD0160B.
           ADD FLD0161A        TO FLD0161B.
           SUBTRACT FLD0162A        FROM FLD0162B
               ON SIZE ERROR MOVE 'Y' TO FLD0162E.
           ADD FLD0163A        TO FLD0163B.
           SUBTRACT FLD0164A        FROM FLD0164B.
           ADD FLD0165A        TO FLD0165B
               ON SIZE ERROR MOVE 'Y' TO FLD0165E.
           SUBTRACT FLD0166A        FROM FLD0166B.
           ADD FLD0167A        TO FLD0167B.
           SUBTRACT FLD0168A        FROM FLD0168B
               ON SIZE ERROR MOVE 'Y' TO FLD0168E.
           ADD FLD0169A        TO FLD0169B.
           SUBTRACT FLD0170A        FROM FLD0170B.
           ADD FLD0171A        TO FLD0171B
               ON SIZE ERROR MOVE 'Y' TO FLD0171E.
           SUBTRACT FLD0172A        FROM FLD0172B.
           ADD FLD0173A        TO FLD0173B.
           SUBTRACT FLD0174A        FROM FLD0174B
               ON SIZE ERROR MOVE 'Y' TO FLD0174E.
           ADD FLD0175A        TO FLD0175B.
           SUBTRACT FLD0176A        FROM FLD0176B.
           ADD FLD0177A        TO FLD0177B
               ON SIZE ERROR MOVE 'Y' TO FLD0177E.
           SUBTRACT FLD0178A        FROM FLD0178B.
           ADD FLD0179A        TO FLD0179B.
           SUBTRACT FLD0180A        FROM FLD0180B
               ON SIZE ERROR MOVE 'Y' TO FLD0180E.
           ADD FLD0181A        TO FLD0181B.
           SUBTRACT FLD0182A        FROM FLD0182B.
           ADD FLD0183A        TO FLD0183B
               ON SIZE ERROR MOVE 'Y' TO FLD0183E.
           SUBTRACT FLD0184A        FROM FLD0184B.
           ADD FLD0185A        TO FLD0185B.
           SUBTRACT FLD0186A        FROM FLD0186B
               ON SIZE ERROR MOVE 'Y' TO FLD0186E.
           ADD FLD0187A        TO FLD0187B.
           SUBTRACT FLD0188A        FROM FLD0188B.
           ADD FLD0189A        TO FLD0189B
               ON SIZE ERROR MOVE 'Y' TO FLD0189E.
           SUBTRACT FLD0190A        FROM FLD0190B.
           ADD FLD0191A        TO FLD0191B.
           SUBTRACT FLD0192A        FROM FLD0192B
               ON SIZE ERROR MOVE 'Y' TO FLD0192E.
           ADD FLD0193A        TO FLD0193B.
           SUBTRACT FLD0194A        FROM FLD0194B.
           ADD FLD0195A        TO FLD0195B
               ON SIZE ERROR MOVE 'Y' TO FLD0195E.
           SUBTRACT FLD0196A        FROM FLD0196B.
           ADD FLD0197A        TO FLD0197B.
           SUBTRACT FLD0198A        FROM FLD0198B
               ON SIZE ERROR MOVE 'Y' TO FLD0198E.
           ADD FLD0199A        TO FLD0199B.
           SUBTRACT FLD0200A        FROM FLD0200B.
           ADD FLD0201A        TO FLD0201B
               ON SIZE ERROR MOVE 'Y' TO FLD0201E.
           SUBTRACT FLD0202A        FROM FLD0202B.
           ADD FLD0203A        TO FLD0203B.
           SUBTRACT FLD0204A        FROM FLD0204B
               ON SIZE ERROR MOVE 'Y' TO FLD0204E.
           ADD FLD0205A        TO FLD0205B.
           SUBTRACT FLD0206A        FROM FLD0206B.
           ADD FLD0207A        TO FLD0207B
               ON SIZE ERROR MOVE 'Y' TO FLD0207E.
           SUBTRACT FLD0208A        FROM FLD0208B.
           ADD FLD0209A        TO FLD0209B.
           SUBTRACT FLD0210A        FROM FLD0210B
               ON SIZE ERROR MOVE 'Y' TO FLD0210E.
           ADD FLD0211A        TO FLD0211B.
           SUBTRACT FLD0212A        FROM FLD0212B.
           ADD FLD0213A        TO FLD0213B
               ON SIZE ERROR MOVE 'Y' TO FLD0213E.
           SUBTRACT FLD0214A        FROM FLD0214B.
           ADD FLD0215A        TO FLD0215B.
           SUBTRACT FLD0216A        FROM FLD0216B
               ON SIZE ERROR MOVE 'Y' TO FLD0216E.
           ADD FLD0217A        TO FLD0217B.
           SUBTRACT FLD0218A        FROM FLD0218B.
           ADD FLD0219A        TO FLD0219B
               ON SIZE ERROR MOVE 'Y' TO FLD0219E.
           SUBTRACT FLD0220A        FROM FLD0220B.
           ADD FLD0221A        TO FLD0221B.
           SUBTRACT FLD0222A        FROM FLD0222B
               ON SIZE ERROR MOVE 'Y' TO FLD0222E.
           ADD FLD0223A        TO FLD0223B.
           SUBTRACT FLD0224A        FROM FLD0224B.
           ADD FLD0225A        TO FLD0225B
               ON SIZE ERROR MOVE 'Y' TO FLD0225E.
           SUBTRACT FLD0226A        FROM FLD0226B.
           ADD FLD0227A        TO FLD0227B.
           SUBTRACT FLD0228A        FROM FLD0228B
               ON SIZE ERROR MOVE 'Y' TO FLD0228E.
           ADD FLD0229A        TO FLD0229B.
           SUBTRACT FLD0230A        FROM FLD0230B.
           ADD FLD0231A        TO FLD0231B
               ON SIZE ERROR MOVE 'Y' TO FLD0231E.
           SUBTRACT FLD0232A        FROM FLD0232B.
           ADD FLD0233A        TO FLD0233B.
           SUBTRACT FLD0234A        FROM FLD0234B
               ON SIZE ERROR MOVE 'Y' TO FLD0234E.
           ADD FLD0235A        TO FLD0235B.
           SUBTRACT FLD0236A        FROM FLD0236B.
           ADD FLD0237A        TO FLD0237B
               ON SIZE ERROR MOVE 'Y' TO FLD0237E.
           SUBTRACT FLD0238A        FROM FLD0238B.
           ADD FLD0239A        TO FLD0239B.
           SUBTRACT FLD0240A        FROM FLD0240B
               ON SIZE ERROR MOVE 'Y' TO FLD0240E.
           ADD FLD0241A        TO FLD0241B.
           SUBTRACT FLD0242A        FROM FLD0242B.
           ADD FLD0243A        TO FLD0243B
               ON SIZE ERROR MOVE 'Y' TO FLD0243E.
           SUBTRACT FLD0244A        FROM FLD0244B.
           ADD FLD0245A        TO FLD0245B.
           SUBTRACT FLD0246A        FROM FLD0246B
               ON SIZE ERROR MOVE 'Y' TO FLD0246E.
           ADD FLD0247A        TO FLD0247B.
           SUBTRACT FLD0248A        FROM FLD0248B.
           ADD FLD0249A        TO FLD0249B
               ON SIZE ERROR MOVE 'Y' TO FLD0249E.
           SUBTRACT FLD0250A        FROM FLD0250B.
           ADD FLD0251A        TO FLD0251B.
           SUBTRACT FLD0252A        FROM FLD0252B
               ON SIZE ERROR MOVE 'Y' TO FLD0252E.
           ADD FLD0253A        TO FLD0253B.
           SUBTRACT FLD0254A        FROM FLD0254B.
           ADD FLD0255A        TO FLD0255B
               ON SIZE ERROR MOVE 'Y' TO FLD0255E.
           SUBTRACT FLD0256A        FROM FLD0256B.
           ADD FLD0257A        TO FLD0257B.
           SUBTRACT FLD0258A        FROM FLD0258B
               ON SIZE ERROR MOVE 'Y' TO FLD0258E.
           ADD FLD0259A        TO FLD0259B.
           SUBTRACT FLD0260A        FROM FLD0260B.
           ADD FLD0261A        TO FLD0261B
               ON SIZE ERROR MOVE 'Y' TO FLD0261E.
           SUBTRACT FLD0262A        FROM FLD0262B.
           ADD FLD0263A        TO FLD0263B.
           SUBTRACT FLD0264A        FROM FLD0264B
               ON SIZE ERROR MOVE 'Y' TO FLD0264E.
           ADD FLD0265A        TO FLD0265B.
           SUBTRACT FLD0266A        FROM FLD0266B.
           ADD FLD0267A        TO FLD0267B
               ON SIZE ERROR MOVE 'Y' TO FLD0267E.
           SUBTRACT FLD0268A        FROM FLD0268B.
           ADD FLD0269A        TO FLD0269B.
           SUBTRACT FLD0270A        FROM FLD0270B
               ON SIZE ERROR MOVE 'Y' TO FLD0270E.
           ADD FLD0271A        TO FLD0271B.
           SUBTRACT FLD0272A        FROM FLD0272B.
           ADD FLD0273A        TO FLD0273B
               ON SIZE ERROR MOVE 'Y' TO FLD0273E.
           SUBTRACT FLD0274A        FROM FLD0274B.
           ADD FLD0275A        TO FLD0275B.
           SUBTRACT FLD0276A        FROM FLD0276B
               ON SIZE ERROR MOVE 'Y' TO FLD0276E.
           ADD FLD0277A        TO FLD0277B.
           SUBTRACT FLD0278A        FROM FLD0278B.
           ADD FLD0279A        TO FLD0279B
               ON SIZE ERROR MOVE 'Y' TO FLD0279E.
           SUBTRACT FLD0280A        FROM FLD0280B.
           ADD FLD0281A        TO FLD0281B.
           SUBTRACT FLD0282A        FROM FLD0282B
               ON SIZE ERROR MOVE 'Y' TO FLD0282E.
           ADD FLD0283A        TO FLD0283B.
           SUBTRACT FLD0284A        FROM FLD0284B.
           ADD FLD0285A        TO FLD0285B
               ON SIZE ERROR MOVE 'Y' TO FLD0285E.
           SUBTRACT FLD0286A        FROM FLD0286B.
           ADD FLD0287A        TO FLD0287B.
           SUBTRACT FLD0288A        FROM FLD0288B
               ON SIZE ERROR MOVE 'Y' TO FLD0288E.
           ADD FLD0289A        TO FLD0289B.
           SUBTRACT FLD0290A        FROM FLD0290B.
           ADD FLD0291A        TO FLD0291B
               ON SIZE ERROR MOVE 'Y' TO FLD0291E.
           SUBTRACT FLD0292A        FROM FLD0292B.
           ADD FLD0293A        TO FLD0293B.
           SUBTRACT FLD0294A        FROM FLD0294B
               ON SIZE ERROR MOVE 'Y' TO FLD0294E.
           ADD FLD0295A        TO FLD0295B.
           SUBTRACT FLD0296A        FROM FLD0296B.
           ADD FLD0297A        TO FLD0297B
               ON SIZE ERROR MOVE 'Y' TO FLD0297E.
           SUBTRACT FLD0298A        FROM FLD0298B.
           ADD FLD0299A        TO FLD0299B.
           SUBTRACT FLD0300A        FROM FLD0300B
               ON SIZE ERROR MOVE 'Y' TO FLD0300E.
           ADD FLD0301A        TO FLD0301B.
           SUBTRACT FLD0302A        FROM FLD0302B.
           ADD FLD0303A        TO FLD0303B
               ON SIZE ERROR MOVE 'Y' TO FLD0303E.
           SUBTRACT FLD0304A        FROM FLD0304B.
           ADD FLD0305A        TO FLD0305B.
           SUBTRACT FLD0306A        FROM FLD0306B
               ON SIZE ERROR MOVE 'Y' TO FLD0306E.
           ADD FLD0307A        TO FLD0307B.
           SUBTRACT FLD0308A        FROM FLD0308B.
           ADD FLD0309A        TO FLD0309B
               ON SIZE ERROR MOVE 'Y' TO FLD0309E.
           SUBTRACT FLD0310A        FROM FLD0310B.
           ADD FLD0311A        TO FLD0311B.
           SUBTRACT FLD0312A        FROM FLD0312B
               ON SIZE ERROR MOVE 'Y' TO FLD0312E.
           ADD FLD0313A        TO FLD0313B.
           SUBTRACT FLD0314A        FROM FLD0314B.
           ADD FLD0315A        TO FLD0315B
               ON SIZE ERROR MOVE 'Y' TO FLD0315E.
           SUBTRACT FLD0316A        FROM FLD0316B.
           ADD FLD0317A        TO FLD0317B.
           SUBTRACT FLD0318A        FROM FLD0318B
               ON SIZE ERROR MOVE 'Y' TO FLD0318E.
           ADD FLD0319A        TO FLD0319B.
           SUBTRACT FLD0320A        FROM FLD0320B.
           ADD FLD0321A        TO FLD0321B
               ON SIZE ERROR MOVE 'Y' TO FLD0321E.
           SUBTRACT FLD0322A        FROM FLD0322B.
           ADD FLD0323A        TO FLD0323B.
           SUBTRACT FLD0324A        FROM FLD0324B
               ON SIZE ERROR MOVE 'Y' TO FLD0324E.
           ADD FLD0325A        TO FLD0325B.
           SUBTRACT FLD0326A        FROM FLD0326B.
           ADD FLD0327A        TO FLD0327B
               ON SIZE ERROR MOVE 'Y' TO FLD0327E.
           SUBTRACT FLD0328A        FROM FLD0328B.
           ADD FLD0329A        TO FLD0329B.
           SUBTRACT FLD0330A        FROM FLD0330B
               ON SIZE ERROR MOVE 'Y' TO FLD0330E.
           ADD FLD0331A        TO FLD0331B.
           SUBTRACT FLD0332A        FROM FLD0332B.
           ADD FLD0333A        TO FLD0333B
               ON SIZE ERROR MOVE 'Y' TO FLD0333E.
           SUBTRACT FLD0334A        FROM FLD0334B.
           ADD FLD0335A        TO FLD0335B.
           SUBTRACT FLD0336A        FROM FLD0336B
               ON SIZE ERROR MOVE 'Y' TO FLD0336E.
           ADD FLD0337A        TO FLD0337B.
           SUBTRACT FLD0338A        FROM FLD0338B.
           ADD FLD0339A        TO FLD0339B
               ON SIZE ERROR MOVE 'Y' TO FLD0339E.
           SUBTRACT FLD0340A        FROM FLD0340B.
           ADD FLD0341A        TO FLD0341B.
           SUBTRACT FLD0342A        FROM FLD0342B
               ON SIZE ERROR MOVE 'Y' TO FLD0342E.
           ADD FLD0343A        TO FLD0343B.
           SUBTRACT FLD0344A        FROM FLD0344B.
           ADD FLD0345A        TO FLD0345B
               ON SIZE ERROR MOVE 'Y' TO FLD0345E.
           SUBTRACT FLD0346A        FROM FLD0346B.
           ADD FLD0347A        TO FLD0347B.
           SUBTRACT FLD0348A        FROM FLD0348B
               ON SIZE ERROR MOVE 'Y' TO FLD0348E.
           ADD FLD0349A        TO FLD0349B.
           SUBTRACT FLD0350A        FROM FLD0350B.
           ADD FLD0351A        TO FLD0351B
               ON SIZE ERROR MOVE 'Y' TO FLD0351E.
           SUBTRACT FLD0352A        FROM FLD0352B.
           ADD FLD0353A        TO FLD0353B.
           SUBTRACT FLD0354A        FROM FLD0354B
               ON SIZE ERROR MOVE 'Y' TO FLD0354E.
           ADD FLD0355A        TO FLD0355B.
           SUBTRACT FLD0356A        FROM FLD0356B.
           ADD FLD0357A        TO FLD0357B
               ON SIZE ERROR MOVE 'Y' TO FLD0357E.
           SUBTRACT FLD0358A        FROM FLD0358B.
           ADD FLD0359A        TO FLD0359B.
           SUBTRACT FLD0360A        FROM FLD0360B
               ON SIZE ERROR MOVE 'Y' TO FLD0360E.
           ADD FLD0361A        TO FLD0361B.
           SUBTRACT FLD0362A        FROM FLD0362B.
           ADD FLD0363A        TO FLD0363B
               ON SIZE ERROR MOVE 'Y' TO FLD0363E.
           SUBTRACT FLD0364A        FROM FLD0364B.
           ADD FLD0365A        TO FLD0365B.
           SUBTRACT FLD0366A        FROM FLD0366B
               ON SIZE ERROR MOVE 'Y' TO FLD0366E.
           ADD FLD0367A        TO FLD0367B.
           SUBTRACT FLD0368A        FROM FLD0368B.
           ADD FLD0369A        TO FLD0369B
               ON SIZE ERROR MOVE 'Y' TO FLD0369E.
           SUBTRACT FLD0370A        FROM FLD0370B.
           ADD FLD0371A        TO FLD0371B.
           SUBTRACT FLD0372A        FROM FLD0372B
               ON SIZE ERROR MOVE 'Y' TO FLD0372E.
           ADD FLD0373A        TO FLD0373B.
           SUBTRACT FLD0374A        FROM FLD0374B.
           ADD FLD0375A        TO FLD0375B
               ON SIZE ERROR MOVE 'Y' TO FLD0375E.
           SUBTRACT FLD0376A        FROM FLD0376B.
           ADD FLD0377A        TO FLD0377B.
           SUBTRACT FLD0378A        FROM FLD0378B
               ON SIZE ERROR MOVE 'Y' TO FLD0378E.
           ADD FLD0379A        TO FLD0379B.
           SUBTRACT FLD0380A        FROM FLD0380B.
           ADD FLD0381A        TO FLD0381B
               ON SIZE ERROR MOVE 'Y' TO FLD0381E.
           SUBTRACT FLD0382A        FROM FLD0382B.
           ADD FLD0383A        TO FLD0383B.
           SUBTRACT FLD0384A        FROM FLD0384B
               ON SIZE ERROR MOVE 'Y' TO FLD0384E.
           ADD FLD0385A        TO FLD0385B.
           SUBTRACT FLD0386A        FROM FLD0386B.
           ADD FLD0387A        TO FLD0387B
               ON SIZE ERROR MOVE 'Y' TO FLD0387E.
           SUBTRACT FLD0388A        FROM FLD0388B.
           ADD FLD0389A        TO FLD0389B.
           SUBTRACT FLD0390A        FROM FLD0390B
               ON SIZE ERROR MOVE 'Y' TO FLD0390E.
           ADD FLD0391A        TO FLD0391B.
           SUBTRACT FLD0392A        FROM FLD0392B.
           ADD FLD0393A        TO FLD0393B
               ON SIZE ERROR MOVE 'Y' TO FLD0393E.
           SUBTRACT FLD0394A        FROM FLD0394B.
           ADD FLD0395A        TO FLD0395B.
           SUBTRACT FLD0396A        FROM FLD0396B
               ON SIZE ERROR MOVE 'Y' TO FLD0396E.
           ADD FLD0397A        TO FLD0397B.
           SUBTRACT FLD0398A        FROM FLD0398B.
           ADD FLD0399A        TO FLD0399B
               ON SIZE ERROR MOVE 'Y' TO FLD0399E.
           SUBTRACT FLD0400A        FROM FLD0400B.
           ADD FLD0401A        TO FLD0401B.
           SUBTRACT FLD0402A        FROM FLD0402B
               ON SIZE ERROR MOVE 'Y' TO FLD0402E.
           ADD FLD0403A        TO FLD0403B.
           SUBTRACT FLD0404A        FROM FLD0404B.
           ADD FLD0405A        TO FLD0405B
               ON SIZE ERROR MOVE 'Y' TO FLD0405E.
           SUBTRACT FLD0406A        FROM FLD0406B.
           ADD FLD0407A        TO FLD0407B.
           SUBTRACT FLD0408A        FROM FLD0408B
               ON SIZE ERROR MOVE 'Y' TO FLD0408E.
           ADD FLD0409A        TO FLD0409B.
           SUBTRACT FLD0410A        FROM FLD0410B.
           ADD FLD0411A        TO FLD0411B
               ON SIZE ERROR MOVE 'Y' TO FLD0411E.
           SUBTRACT FLD0412A        FROM FLD0412B.
           ADD FLD0413A        TO FLD0413B.
           SUBTRACT FLD0414A        FROM FLD0414B
               ON SIZE ERROR MOVE 'Y' TO FLD0414E.
           ADD FLD0415A        TO FLD0415B.
           SUBTRACT FLD0416A        FROM FLD0416B.
           ADD FLD0417A        TO FLD0417B
               ON SIZE ERROR MOVE 'Y' TO FLD0417E.
           SUBTRACT FLD0418A        FROM FLD0418B.
           ADD FLD0419A        TO FLD0419B.
           SUBTRACT FLD0420A        FROM FLD0420B
               ON SIZE ERROR MOVE 'Y' TO FLD0420E.
           ADD FLD0421A        TO FLD0421B.
           SUBTRACT FLD0422A        FROM FLD0422B.
           ADD FLD0423A        TO FLD0423B
               ON SIZE ERROR MOVE 'Y' TO FLD0423E.
           SUBTRACT FLD0424A        FROM FLD0424B.
           ADD FLD0425A        TO FLD0425B.
           SUBTRACT FLD0426A        FROM FLD0426B
               ON SIZE ERROR MOVE 'Y' TO FLD0426E.
           ADD FLD0427A        TO FLD0427B.
           SUBTRACT FLD0428A        FROM FLD0428B.
           ADD FLD0429A        TO FLD0429B
               ON SIZE ERROR MOVE 'Y' TO FLD0429E.
           SUBTRACT FLD0430A        FROM FLD0430B.
           ADD FLD0431A        TO FLD0431B.
           SUBTRACT FLD0432A        FROM FLD0432B
               ON SIZE ERROR MOVE 'Y' TO FLD0432E.
           ADD FLD0433A        TO FLD0433B.
           SUBTRACT FLD0434A        FROM FLD0434B.
           ADD FLD0435A        TO FLD0435B
               ON SIZE ERROR MOVE 'Y' TO FLD0435E.
           SUBTRACT FLD0436A        FROM FLD0436B.
           ADD FLD0437A        TO FLD0437B.
           SUBTRACT FLD0438A        FROM FLD0438B
               ON SIZE ERROR MOVE 'Y' TO FLD0438E.
           ADD FLD0439A        TO FLD0439B.
           SUBTRACT FLD0440A        FROM FLD0440B.
           ADD FLD0441A        TO FLD0441B
               ON SIZE ERROR MOVE 'Y' TO FLD0441E.
           SUBTRACT FLD0442A        FROM FLD0442B.
           ADD FLD0443A        TO FLD0443B.
           SUBTRACT FLD0444A        FROM FLD0444B
               ON SIZE ERROR MOVE 'Y' TO FLD0444E.
           ADD FLD0445A        TO FLD0445B.
           SUBTRACT FLD0446A        FROM FLD0446B.
           ADD FLD0447A        TO FLD0447B
               ON SIZE ERROR MOVE 'Y' TO FLD0447E.
           SUBTRACT FLD0448A        FROM FLD0448B.
           ADD FLD0449A        TO FLD0449B.
           SUBTRACT FLD0450A        FROM FLD0450B
               ON SIZE ERROR MOVE 'Y' TO FLD0450E.
           ADD FLD0451A        TO FLD0451B.
           SUBTRACT FLD0452A        FROM FLD0452B.
           ADD FLD0453A        TO FLD0453B
               ON SIZE ERROR MOVE 'Y' TO FLD0453E.
           SUBTRACT FLD0454A        FROM FLD0454B.
           ADD FLD0455A        TO FLD0455B.
           SUBTRACT FLD0456A        FROM FLD0456B
               ON SIZE ERROR MOVE 'Y' TO FLD0456E.
           ADD FLD0457A        TO FLD0457B.
           SUBTRACT FLD0458A        FROM FLD0458B.
           ADD FLD0459A        TO FLD0459B
               ON SIZE ERROR MOVE 'Y' TO FLD0459E.
           SUBTRACT FLD0460A        FROM FLD0460B.
           ADD FLD0461A        TO FLD0461B.
           SUBTRACT FLD0462A        FROM FLD0462B
               ON SIZE ERROR MOVE 'Y' TO FLD0462E.
           ADD FLD0463A        TO FLD0463B.
           SUBTRACT FLD0464A        FROM FLD0464B.
           ADD FLD0465A        TO FLD0465B
               ON SIZE ERROR MOVE 'Y' TO FLD0465E.
           SUBTRACT FLD0466A        FROM FLD0466B.
           ADD FLD0467A        TO FLD0467B.
           SUBTRACT FLD0468A        FROM FLD0468B
               ON SIZE ERROR MOVE 'Y' TO FLD0468E.
           ADD FLD0469A        TO FLD0469B.
           SUBTRACT FLD0470A        FROM FLD0470B.
           ADD FLD0471A        TO FLD0471B
               ON SIZE ERROR MOVE 'Y' TO FLD0471E.
           SUBTRACT FLD0472A        FROM FLD0472B.
           ADD FLD0473A        TO FLD0473B.
           SUBTRACT FLD0474A        FROM FLD0474B
               ON SIZE ERROR MOVE 'Y' TO FLD0474E.
           ADD FLD0475A        TO FLD0475B.
           SUBTRACT FLD0476A        FROM FLD0476B.
           ADD FLD0477A        TO FLD0477B
               ON SIZE ERROR MOVE 'Y' TO FLD0477E.
           SUBTRACT FLD0478A        FROM FLD0478B.
           ADD FLD0479A        TO FLD0479B.
           SUBTRACT FLD0480A        FROM FLD0480B
               ON SIZE ERROR MOVE 'Y' TO FLD0480E.
           ADD FLD0481A        TO FLD0481B.
           SUBTRACT FLD0482A        FROM FLD0482B.
           ADD FLD0483A        TO FLD0483B
               ON SIZE ERROR MOVE 'Y' TO FLD0483E.
           SUBTRACT FLD0484A        FROM FLD0484B.
           ADD FLD0485A        TO FLD0485B.
           SUBTRACT FLD0486A        FROM FLD0486B
               ON SIZE ERROR MOVE 'Y' TO FLD0486E.
           ADD FLD0487A        TO FLD0487B.
           SUBTRACT FLD0488A        FROM FLD0488B.
           ADD FLD0489A        TO FLD0489B
               ON SIZE ERROR MOVE 'Y' TO FLD0489E.
           SUBTRACT FLD0490A        FROM FLD0490B.
           ADD FLD0491A        TO FLD0491B.
           SUBTRACT FLD0492A        FROM FLD0492B
               ON SIZE ERROR MOVE 'Y' TO FLD0492E.
           ADD FLD0493A        TO FLD0493B.
           SUBTRACT FLD0494A        FROM FLD0494B.
           ADD FLD0495A        TO FLD0495B
               ON SIZE ERROR MOVE 'Y' TO FLD0495E.
           SUBTRACT FLD0496A        FROM FLD0496B.
           ADD FLD0497A        TO FLD0497B.
           SUBTRACT FLD0498A        FROM FLD0498B
               ON SIZE ERROR MOVE 'Y' TO FLD0498E.
           ADD FLD0499A        TO FLD0499B.

      *4000-COMPARE.

           IF FLD0001B (1:)    NOT EQUAL XPC-FLD0001B
              DISPLAY 'FLD0001B ==> ' HEX-OF (FLD0001B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0001B).
           IF FLD0001E   NOT EQUAL XPC-FLD0001E
              DISPLAY 'FLD0001E  ==> ' FLD0001E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0001E.
           IF FLD0002B (1:)    NOT EQUAL XPC-FLD0002B
              DISPLAY 'FLD0002B ==> ' HEX-OF (FLD0002B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0002B).
           IF FLD0002E   NOT EQUAL XPC-FLD0002E
              DISPLAY 'FLD0002E  ==> ' FLD0002E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0002E.
           IF FLD0003B (1:)    NOT EQUAL XPC-FLD0003B
              DISPLAY 'FLD0003B ==> ' HEX-OF (FLD0003B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0003B).
           IF FLD0003E   NOT EQUAL XPC-FLD0003E
              DISPLAY 'FLD0003E  ==> ' FLD0003E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0003E.
           IF FLD0004B (1:)    NOT EQUAL XPC-FLD0004B
              DISPLAY 'FLD0004B ==> ' HEX-OF (FLD0004B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0004B).
           IF FLD0004E   NOT EQUAL XPC-FLD0004E
              DISPLAY 'FLD0004E  ==> ' FLD0004E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0004E.
           IF FLD0005B (1:)    NOT EQUAL XPC-FLD0005B
              DISPLAY 'FLD0005B ==> ' HEX-OF (FLD0005B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0005B).
           IF FLD0005E   NOT EQUAL XPC-FLD0005E
              DISPLAY 'FLD0005E  ==> ' FLD0005E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0005E.
           IF FLD0006B (1:)    NOT EQUAL XPC-FLD0006B
              DISPLAY 'FLD0006B ==> ' HEX-OF (FLD0006B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0006B).
           IF FLD0006E   NOT EQUAL XPC-FLD0006E
              DISPLAY 'FLD0006E  ==> ' FLD0006E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0006E.
           IF FLD0007B (1:)    NOT EQUAL XPC-FLD0007B
              DISPLAY 'FLD0007B ==> ' HEX-OF (FLD0007B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0007B).
           IF FLD0007E   NOT EQUAL XPC-FLD0007E
              DISPLAY 'FLD0007E  ==> ' FLD0007E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0007E.
           IF FLD0008B (1:)    NOT EQUAL XPC-FLD0008B
              DISPLAY 'FLD0008B ==> ' HEX-OF (FLD0008B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0008B).
           IF FLD0008E   NOT EQUAL XPC-FLD0008E
              DISPLAY 'FLD0008E  ==> ' FLD0008E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0008E.
           IF FLD0009B (1:)    NOT EQUAL XPC-FLD0009B
              DISPLAY 'FLD0009B ==> ' HEX-OF (FLD0009B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0009B).
           IF FLD0009E   NOT EQUAL XPC-FLD0009E
              DISPLAY 'FLD0009E  ==> ' FLD0009E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0009E.
           IF FLD0010B (1:)    NOT EQUAL XPC-FLD0010B
              DISPLAY 'FLD0010B ==> ' HEX-OF (FLD0010B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0010B).
           IF FLD0010E   NOT EQUAL XPC-FLD0010E
              DISPLAY 'FLD0010E  ==> ' FLD0010E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0010E.
           IF FLD0011B (1:)    NOT EQUAL XPC-FLD0011B
              DISPLAY 'FLD0011B ==> ' HEX-OF (FLD0011B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0011B).
           IF FLD0011E   NOT EQUAL XPC-FLD0011E
              DISPLAY 'FLD0011E  ==> ' FLD0011E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0011E.
           IF FLD0012B (1:)    NOT EQUAL XPC-FLD0012B
              DISPLAY 'FLD0012B ==> ' HEX-OF (FLD0012B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0012B).
           IF FLD0012E   NOT EQUAL XPC-FLD0012E
              DISPLAY 'FLD0012E  ==> ' FLD0012E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0012E.
           IF FLD0013B (1:)    NOT EQUAL XPC-FLD0013B
              DISPLAY 'FLD0013B ==> ' HEX-OF (FLD0013B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0013B).
           IF FLD0013E   NOT EQUAL XPC-FLD0013E
              DISPLAY 'FLD0013E  ==> ' FLD0013E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0013E.
           IF FLD0014B (1:)    NOT EQUAL XPC-FLD0014B
              DISPLAY 'FLD0014B ==> ' HEX-OF (FLD0014B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0014B).
           IF FLD0014E   NOT EQUAL XPC-FLD0014E
              DISPLAY 'FLD0014E  ==> ' FLD0014E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0014E.
           IF FLD0015B (1:)    NOT EQUAL XPC-FLD0015B
              DISPLAY 'FLD0015B ==> ' HEX-OF (FLD0015B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0015B).
           IF FLD0015E   NOT EQUAL XPC-FLD0015E
              DISPLAY 'FLD0015E  ==> ' FLD0015E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0015E.
           IF FLD0016B (1:)    NOT EQUAL XPC-FLD0016B
              DISPLAY 'FLD0016B ==> ' HEX-OF (FLD0016B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0016B).
           IF FLD0016E   NOT EQUAL XPC-FLD0016E
              DISPLAY 'FLD0016E  ==> ' FLD0016E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0016E.
           IF FLD0017B (1:)    NOT EQUAL XPC-FLD0017B
              DISPLAY 'FLD0017B ==> ' HEX-OF (FLD0017B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0017B).
           IF FLD0017E   NOT EQUAL XPC-FLD0017E
              DISPLAY 'FLD0017E  ==> ' FLD0017E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0017E.
           IF FLD0018B (1:)    NOT EQUAL XPC-FLD0018B
              DISPLAY 'FLD0018B ==> ' HEX-OF (FLD0018B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0018B).
           IF FLD0018E   NOT EQUAL XPC-FLD0018E
              DISPLAY 'FLD0018E  ==> ' FLD0018E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0018E.
           IF FLD0019B (1:)    NOT EQUAL XPC-FLD0019B
              DISPLAY 'FLD0019B ==> ' HEX-OF (FLD0019B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0019B).
           IF FLD0019E   NOT EQUAL XPC-FLD0019E
              DISPLAY 'FLD0019E  ==> ' FLD0019E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0019E.
           IF FLD0020B (1:)    NOT EQUAL XPC-FLD0020B
              DISPLAY 'FLD0020B ==> ' HEX-OF (FLD0020B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0020B).
           IF FLD0020E   NOT EQUAL XPC-FLD0020E
              DISPLAY 'FLD0020E  ==> ' FLD0020E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0020E.
           IF FLD0021B (1:)    NOT EQUAL XPC-FLD0021B
              DISPLAY 'FLD0021B ==> ' HEX-OF (FLD0021B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0021B).
           IF FLD0021E   NOT EQUAL XPC-FLD0021E
              DISPLAY 'FLD0021E  ==> ' FLD0021E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0021E.
           IF FLD0022B (1:)    NOT EQUAL XPC-FLD0022B
              DISPLAY 'FLD0022B ==> ' HEX-OF (FLD0022B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0022B).
           IF FLD0022E   NOT EQUAL XPC-FLD0022E
              DISPLAY 'FLD0022E  ==> ' FLD0022E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0022E.
           IF FLD0023B (1:)    NOT EQUAL XPC-FLD0023B
              DISPLAY 'FLD0023B ==> ' HEX-OF (FLD0023B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0023B).
           IF FLD0023E   NOT EQUAL XPC-FLD0023E
              DISPLAY 'FLD0023E  ==> ' FLD0023E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0023E.
           IF FLD0024B (1:)    NOT EQUAL XPC-FLD0024B
              DISPLAY 'FLD0024B ==> ' HEX-OF (FLD0024B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0024B).
           IF FLD0024E   NOT EQUAL XPC-FLD0024E
              DISPLAY 'FLD0024E  ==> ' FLD0024E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0024E.
           IF FLD0025B (1:)    NOT EQUAL XPC-FLD0025B
              DISPLAY 'FLD0025B ==> ' HEX-OF (FLD0025B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0025B).
           IF FLD0025E   NOT EQUAL XPC-FLD0025E
              DISPLAY 'FLD0025E  ==> ' FLD0025E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0025E.
           IF FLD0026B (1:)    NOT EQUAL XPC-FLD0026B
              DISPLAY 'FLD0026B ==> ' HEX-OF (FLD0026B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0026B).
           IF FLD0026E   NOT EQUAL XPC-FLD0026E
              DISPLAY 'FLD0026E  ==> ' FLD0026E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0026E.
           IF FLD0027B (1:)    NOT EQUAL XPC-FLD0027B
              DISPLAY 'FLD0027B ==> ' HEX-OF (FLD0027B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0027B).
           IF FLD0027E   NOT EQUAL XPC-FLD0027E
              DISPLAY 'FLD0027E  ==> ' FLD0027E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0027E.
           IF FLD0028B (1:)    NOT EQUAL XPC-FLD0028B
              DISPLAY 'FLD0028B ==> ' HEX-OF (FLD0028B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0028B).
           IF FLD0028E   NOT EQUAL XPC-FLD0028E
              DISPLAY 'FLD0028E  ==> ' FLD0028E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0028E.
           IF FLD0029B (1:)    NOT EQUAL XPC-FLD0029B
              DISPLAY 'FLD0029B ==> ' HEX-OF (FLD0029B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0029B).
           IF FLD0029E   NOT EQUAL XPC-FLD0029E
              DISPLAY 'FLD0029E  ==> ' FLD0029E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0029E.
           IF FLD0030B (1:)    NOT EQUAL XPC-FLD0030B
              DISPLAY 'FLD0030B ==> ' HEX-OF (FLD0030B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0030B).
           IF FLD0030E   NOT EQUAL XPC-FLD0030E
              DISPLAY 'FLD0030E  ==> ' FLD0030E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0030E.
           IF FLD0031B (1:)    NOT EQUAL XPC-FLD0031B
              DISPLAY 'FLD0031B ==> ' HEX-OF (FLD0031B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0031B).
           IF FLD0031E   NOT EQUAL XPC-FLD0031E
              DISPLAY 'FLD0031E  ==> ' FLD0031E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0031E.
           IF FLD0032B (1:)    NOT EQUAL XPC-FLD0032B
              DISPLAY 'FLD0032B ==> ' HEX-OF (FLD0032B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0032B).
           IF FLD0032E   NOT EQUAL XPC-FLD0032E
              DISPLAY 'FLD0032E  ==> ' FLD0032E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0032E.
           IF FLD0033B (1:)    NOT EQUAL XPC-FLD0033B
              DISPLAY 'FLD0033B ==> ' HEX-OF (FLD0033B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0033B).
           IF FLD0033E   NOT EQUAL XPC-FLD0033E
              DISPLAY 'FLD0033E  ==> ' FLD0033E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0033E.
           IF FLD0034B (1:)    NOT EQUAL XPC-FLD0034B
              DISPLAY 'FLD0034B ==> ' HEX-OF (FLD0034B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0034B).
           IF FLD0034E   NOT EQUAL XPC-FLD0034E
              DISPLAY 'FLD0034E  ==> ' FLD0034E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0034E.
           IF FLD0035B (1:)    NOT EQUAL XPC-FLD0035B
              DISPLAY 'FLD0035B ==> ' HEX-OF (FLD0035B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0035B).
           IF FLD0035E   NOT EQUAL XPC-FLD0035E
              DISPLAY 'FLD0035E  ==> ' FLD0035E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0035E.
           IF FLD0036B (1:)    NOT EQUAL XPC-FLD0036B
              DISPLAY 'FLD0036B ==> ' HEX-OF (FLD0036B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0036B).
           IF FLD0036E   NOT EQUAL XPC-FLD0036E
              DISPLAY 'FLD0036E  ==> ' FLD0036E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0036E.
           IF FLD0037B (1:)    NOT EQUAL XPC-FLD0037B
              DISPLAY 'FLD0037B ==> ' HEX-OF (FLD0037B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0037B).
           IF FLD0037E   NOT EQUAL XPC-FLD0037E
              DISPLAY 'FLD0037E  ==> ' FLD0037E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0037E.
           IF FLD0038B (1:)    NOT EQUAL XPC-FLD0038B
              DISPLAY 'FLD0038B ==> ' HEX-OF (FLD0038B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0038B).
           IF FLD0038E   NOT EQUAL XPC-FLD0038E
              DISPLAY 'FLD0038E  ==> ' FLD0038E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0038E.
           IF FLD0039B (1:)    NOT EQUAL XPC-FLD0039B
              DISPLAY 'FLD0039B ==> ' HEX-OF (FLD0039B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0039B).
           IF FLD0039E   NOT EQUAL XPC-FLD0039E
              DISPLAY 'FLD0039E  ==> ' FLD0039E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0039E.
           IF FLD0040B (1:)    NOT EQUAL XPC-FLD0040B
              DISPLAY 'FLD0040B ==> ' HEX-OF (FLD0040B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0040B).
           IF FLD0040E   NOT EQUAL XPC-FLD0040E
              DISPLAY 'FLD0040E  ==> ' FLD0040E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0040E.
           IF FLD0041B (1:)    NOT EQUAL XPC-FLD0041B
              DISPLAY 'FLD0041B ==> ' HEX-OF (FLD0041B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0041B).
           IF FLD0041E   NOT EQUAL XPC-FLD0041E
              DISPLAY 'FLD0041E  ==> ' FLD0041E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0041E.
           IF FLD0042B (1:)    NOT EQUAL XPC-FLD0042B
              DISPLAY 'FLD0042B ==> ' HEX-OF (FLD0042B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0042B).
           IF FLD0042E   NOT EQUAL XPC-FLD0042E
              DISPLAY 'FLD0042E  ==> ' FLD0042E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0042E.
           IF FLD0043B (1:)    NOT EQUAL XPC-FLD0043B
              DISPLAY 'FLD0043B ==> ' HEX-OF (FLD0043B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0043B).
           IF FLD0043E   NOT EQUAL XPC-FLD0043E
              DISPLAY 'FLD0043E  ==> ' FLD0043E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0043E.
           IF FLD0044B (1:)    NOT EQUAL XPC-FLD0044B
              DISPLAY 'FLD0044B ==> ' HEX-OF (FLD0044B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0044B).
           IF FLD0044E   NOT EQUAL XPC-FLD0044E
              DISPLAY 'FLD0044E  ==> ' FLD0044E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0044E.
           IF FLD0045B (1:)    NOT EQUAL XPC-FLD0045B
              DISPLAY 'FLD0045B ==> ' HEX-OF (FLD0045B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0045B).
           IF FLD0045E   NOT EQUAL XPC-FLD0045E
              DISPLAY 'FLD0045E  ==> ' FLD0045E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0045E.
           IF FLD0046B (1:)    NOT EQUAL XPC-FLD0046B
              DISPLAY 'FLD0046B ==> ' HEX-OF (FLD0046B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0046B).
           IF FLD0046E   NOT EQUAL XPC-FLD0046E
              DISPLAY 'FLD0046E  ==> ' FLD0046E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0046E.
           IF FLD0047B (1:)    NOT EQUAL XPC-FLD0047B
              DISPLAY 'FLD0047B ==> ' HEX-OF (FLD0047B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0047B).
           IF FLD0047E   NOT EQUAL XPC-FLD0047E
              DISPLAY 'FLD0047E  ==> ' FLD0047E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0047E.
           IF FLD0048B (1:)    NOT EQUAL XPC-FLD0048B
              DISPLAY 'FLD0048B ==> ' HEX-OF (FLD0048B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0048B).
           IF FLD0048E   NOT EQUAL XPC-FLD0048E
              DISPLAY 'FLD0048E  ==> ' FLD0048E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0048E.
           IF FLD0049B (1:)    NOT EQUAL XPC-FLD0049B
              DISPLAY 'FLD0049B ==> ' HEX-OF (FLD0049B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0049B).
           IF FLD0049E   NOT EQUAL XPC-FLD0049E
              DISPLAY 'FLD0049E  ==> ' FLD0049E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0049E.
           IF FLD0050B (1:)    NOT EQUAL XPC-FLD0050B
              DISPLAY 'FLD0050B ==> ' HEX-OF (FLD0050B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0050B).
           IF FLD0050E   NOT EQUAL XPC-FLD0050E
              DISPLAY 'FLD0050E  ==> ' FLD0050E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0050E.
           IF FLD0051B (1:)    NOT EQUAL XPC-FLD0051B
              DISPLAY 'FLD0051B ==> ' HEX-OF (FLD0051B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0051B).
           IF FLD0051E   NOT EQUAL XPC-FLD0051E
              DISPLAY 'FLD0051E  ==> ' FLD0051E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0051E.
           IF FLD0052B (1:)    NOT EQUAL XPC-FLD0052B
              DISPLAY 'FLD0052B ==> ' HEX-OF (FLD0052B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0052B).
           IF FLD0052E   NOT EQUAL XPC-FLD0052E
              DISPLAY 'FLD0052E  ==> ' FLD0052E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0052E.
           IF FLD0053B (1:)    NOT EQUAL XPC-FLD0053B
              DISPLAY 'FLD0053B ==> ' HEX-OF (FLD0053B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0053B).
           IF FLD0053E   NOT EQUAL XPC-FLD0053E
              DISPLAY 'FLD0053E  ==> ' FLD0053E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0053E.
           IF FLD0054B (1:)    NOT EQUAL XPC-FLD0054B
              DISPLAY 'FLD0054B ==> ' HEX-OF (FLD0054B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0054B).
           IF FLD0054E   NOT EQUAL XPC-FLD0054E
              DISPLAY 'FLD0054E  ==> ' FLD0054E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0054E.
           IF FLD0055B (1:)    NOT EQUAL XPC-FLD0055B
              DISPLAY 'FLD0055B ==> ' HEX-OF (FLD0055B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0055B).
           IF FLD0055E   NOT EQUAL XPC-FLD0055E
              DISPLAY 'FLD0055E  ==> ' FLD0055E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0055E.
           IF FLD0056B (1:)    NOT EQUAL XPC-FLD0056B
              DISPLAY 'FLD0056B ==> ' HEX-OF (FLD0056B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0056B).
           IF FLD0056E   NOT EQUAL XPC-FLD0056E
              DISPLAY 'FLD0056E  ==> ' FLD0056E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0056E.
           IF FLD0057B (1:)    NOT EQUAL XPC-FLD0057B
              DISPLAY 'FLD0057B ==> ' HEX-OF (FLD0057B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0057B).
           IF FLD0057E   NOT EQUAL XPC-FLD0057E
              DISPLAY 'FLD0057E  ==> ' FLD0057E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0057E.
           IF FLD0058B (1:)    NOT EQUAL XPC-FLD0058B
              DISPLAY 'FLD0058B ==> ' HEX-OF (FLD0058B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0058B).
           IF FLD0058E   NOT EQUAL XPC-FLD0058E
              DISPLAY 'FLD0058E  ==> ' FLD0058E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0058E.
           IF FLD0059B (1:)    NOT EQUAL XPC-FLD0059B
              DISPLAY 'FLD0059B ==> ' HEX-OF (FLD0059B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0059B).
           IF FLD0059E   NOT EQUAL XPC-FLD0059E
              DISPLAY 'FLD0059E  ==> ' FLD0059E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0059E.
           IF FLD0060B (1:)    NOT EQUAL XPC-FLD0060B
              DISPLAY 'FLD0060B ==> ' HEX-OF (FLD0060B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0060B).
           IF FLD0060E   NOT EQUAL XPC-FLD0060E
              DISPLAY 'FLD0060E  ==> ' FLD0060E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0060E.
           IF FLD0061B (1:)    NOT EQUAL XPC-FLD0061B
              DISPLAY 'FLD0061B ==> ' HEX-OF (FLD0061B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0061B).
           IF FLD0061E   NOT EQUAL XPC-FLD0061E
              DISPLAY 'FLD0061E  ==> ' FLD0061E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0061E.
           IF FLD0062B (1:)    NOT EQUAL XPC-FLD0062B
              DISPLAY 'FLD0062B ==> ' HEX-OF (FLD0062B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0062B).
           IF FLD0062E   NOT EQUAL XPC-FLD0062E
              DISPLAY 'FLD0062E  ==> ' FLD0062E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0062E.
           IF FLD0063B (1:)    NOT EQUAL XPC-FLD0063B
              DISPLAY 'FLD0063B ==> ' HEX-OF (FLD0063B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0063B).
           IF FLD0063E   NOT EQUAL XPC-FLD0063E
              DISPLAY 'FLD0063E  ==> ' FLD0063E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0063E.
           IF FLD0064B (1:)    NOT EQUAL XPC-FLD0064B
              DISPLAY 'FLD0064B ==> ' HEX-OF (FLD0064B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0064B).
           IF FLD0064E   NOT EQUAL XPC-FLD0064E
              DISPLAY 'FLD0064E  ==> ' FLD0064E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0064E.
           IF FLD0065B (1:)    NOT EQUAL XPC-FLD0065B
              DISPLAY 'FLD0065B ==> ' HEX-OF (FLD0065B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0065B).
           IF FLD0065E   NOT EQUAL XPC-FLD0065E
              DISPLAY 'FLD0065E  ==> ' FLD0065E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0065E.
           IF FLD0066B (1:)    NOT EQUAL XPC-FLD0066B
              DISPLAY 'FLD0066B ==> ' HEX-OF (FLD0066B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0066B).
           IF FLD0066E   NOT EQUAL XPC-FLD0066E
              DISPLAY 'FLD0066E  ==> ' FLD0066E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0066E.
           IF FLD0067B (1:)    NOT EQUAL XPC-FLD0067B
              DISPLAY 'FLD0067B ==> ' HEX-OF (FLD0067B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0067B).
           IF FLD0067E   NOT EQUAL XPC-FLD0067E
              DISPLAY 'FLD0067E  ==> ' FLD0067E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0067E.
           IF FLD0068B (1:)    NOT EQUAL XPC-FLD0068B
              DISPLAY 'FLD0068B ==> ' HEX-OF (FLD0068B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0068B).
           IF FLD0068E   NOT EQUAL XPC-FLD0068E
              DISPLAY 'FLD0068E  ==> ' FLD0068E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0068E.
           IF FLD0069B (1:)    NOT EQUAL XPC-FLD0069B
              DISPLAY 'FLD0069B ==> ' HEX-OF (FLD0069B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0069B).
           IF FLD0069E   NOT EQUAL XPC-FLD0069E
              DISPLAY 'FLD0069E  ==> ' FLD0069E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0069E.
           IF FLD0070B (1:)    NOT EQUAL XPC-FLD0070B
              DISPLAY 'FLD0070B ==> ' HEX-OF (FLD0070B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0070B).
           IF FLD0070E   NOT EQUAL XPC-FLD0070E
              DISPLAY 'FLD0070E  ==> ' FLD0070E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0070E.
           IF FLD0071B (1:)    NOT EQUAL XPC-FLD0071B
              DISPLAY 'FLD0071B ==> ' HEX-OF (FLD0071B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0071B).
           IF FLD0071E   NOT EQUAL XPC-FLD0071E
              DISPLAY 'FLD0071E  ==> ' FLD0071E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0071E.
           IF FLD0072B (1:)    NOT EQUAL XPC-FLD0072B
              DISPLAY 'FLD0072B ==> ' HEX-OF (FLD0072B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0072B).
           IF FLD0072E   NOT EQUAL XPC-FLD0072E
              DISPLAY 'FLD0072E  ==> ' FLD0072E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0072E.
           IF FLD0073B (1:)    NOT EQUAL XPC-FLD0073B
              DISPLAY 'FLD0073B ==> ' HEX-OF (FLD0073B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0073B).
           IF FLD0073E   NOT EQUAL XPC-FLD0073E
              DISPLAY 'FLD0073E  ==> ' FLD0073E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0073E.
           IF FLD0074B (1:)    NOT EQUAL XPC-FLD0074B
              DISPLAY 'FLD0074B ==> ' HEX-OF (FLD0074B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0074B).
           IF FLD0074E   NOT EQUAL XPC-FLD0074E
              DISPLAY 'FLD0074E  ==> ' FLD0074E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0074E.
           IF FLD0075B (1:)    NOT EQUAL XPC-FLD0075B
              DISPLAY 'FLD0075B ==> ' HEX-OF (FLD0075B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0075B).
           IF FLD0075E   NOT EQUAL XPC-FLD0075E
              DISPLAY 'FLD0075E  ==> ' FLD0075E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0075E.
           IF FLD0076B (1:)    NOT EQUAL XPC-FLD0076B
              DISPLAY 'FLD0076B ==> ' HEX-OF (FLD0076B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0076B).
           IF FLD0076E   NOT EQUAL XPC-FLD0076E
              DISPLAY 'FLD0076E  ==> ' FLD0076E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0076E.
           IF FLD0077B (1:)    NOT EQUAL XPC-FLD0077B
              DISPLAY 'FLD0077B ==> ' HEX-OF (FLD0077B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0077B).
           IF FLD0077E   NOT EQUAL XPC-FLD0077E
              DISPLAY 'FLD0077E  ==> ' FLD0077E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0077E.
           IF FLD0078B (1:)    NOT EQUAL XPC-FLD0078B
              DISPLAY 'FLD0078B ==> ' HEX-OF (FLD0078B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0078B).
           IF FLD0078E   NOT EQUAL XPC-FLD0078E
              DISPLAY 'FLD0078E  ==> ' FLD0078E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0078E.
           IF FLD0079B (1:)    NOT EQUAL XPC-FLD0079B
              DISPLAY 'FLD0079B ==> ' HEX-OF (FLD0079B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0079B).
           IF FLD0079E   NOT EQUAL XPC-FLD0079E
              DISPLAY 'FLD0079E  ==> ' FLD0079E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0079E.
           IF FLD0080B (1:)    NOT EQUAL XPC-FLD0080B
              DISPLAY 'FLD0080B ==> ' HEX-OF (FLD0080B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0080B).
           IF FLD0080E   NOT EQUAL XPC-FLD0080E
              DISPLAY 'FLD0080E  ==> ' FLD0080E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0080E.
           IF FLD0081B (1:)    NOT EQUAL XPC-FLD0081B
              DISPLAY 'FLD0081B ==> ' HEX-OF (FLD0081B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0081B).
           IF FLD0081E   NOT EQUAL XPC-FLD0081E
              DISPLAY 'FLD0081E  ==> ' FLD0081E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0081E.
           IF FLD0082B (1:)    NOT EQUAL XPC-FLD0082B
              DISPLAY 'FLD0082B ==> ' HEX-OF (FLD0082B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0082B).
           IF FLD0082E   NOT EQUAL XPC-FLD0082E
              DISPLAY 'FLD0082E  ==> ' FLD0082E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0082E.
           IF FLD0083B (1:)    NOT EQUAL XPC-FLD0083B
              DISPLAY 'FLD0083B ==> ' HEX-OF (FLD0083B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0083B).
           IF FLD0083E   NOT EQUAL XPC-FLD0083E
              DISPLAY 'FLD0083E  ==> ' FLD0083E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0083E.
           IF FLD0084B (1:)    NOT EQUAL XPC-FLD0084B
              DISPLAY 'FLD0084B ==> ' HEX-OF (FLD0084B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0084B).
           IF FLD0084E   NOT EQUAL XPC-FLD0084E
              DISPLAY 'FLD0084E  ==> ' FLD0084E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0084E.
           IF FLD0085B (1:)    NOT EQUAL XPC-FLD0085B
              DISPLAY 'FLD0085B ==> ' HEX-OF (FLD0085B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0085B).
           IF FLD0085E   NOT EQUAL XPC-FLD0085E
              DISPLAY 'FLD0085E  ==> ' FLD0085E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0085E.
           IF FLD0086B (1:)    NOT EQUAL XPC-FLD0086B
              DISPLAY 'FLD0086B ==> ' HEX-OF (FLD0086B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0086B).
           IF FLD0086E   NOT EQUAL XPC-FLD0086E
              DISPLAY 'FLD0086E  ==> ' FLD0086E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0086E.
           IF FLD0087B (1:)    NOT EQUAL XPC-FLD0087B
              DISPLAY 'FLD0087B ==> ' HEX-OF (FLD0087B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0087B).
           IF FLD0087E   NOT EQUAL XPC-FLD0087E
              DISPLAY 'FLD0087E  ==> ' FLD0087E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0087E.
           IF FLD0088B (1:)    NOT EQUAL XPC-FLD0088B
              DISPLAY 'FLD0088B ==> ' HEX-OF (FLD0088B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0088B).
           IF FLD0088E   NOT EQUAL XPC-FLD0088E
              DISPLAY 'FLD0088E  ==> ' FLD0088E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0088E.
           IF FLD0089B (1:)    NOT EQUAL XPC-FLD0089B
              DISPLAY 'FLD0089B ==> ' HEX-OF (FLD0089B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0089B).
           IF FLD0089E   NOT EQUAL XPC-FLD0089E
              DISPLAY 'FLD0089E  ==> ' FLD0089E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0089E.
           IF FLD0090B (1:)    NOT EQUAL XPC-FLD0090B
              DISPLAY 'FLD0090B ==> ' HEX-OF (FLD0090B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0090B).
           IF FLD0090E   NOT EQUAL XPC-FLD0090E
              DISPLAY 'FLD0090E  ==> ' FLD0090E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0090E.
           IF FLD0091B (1:)    NOT EQUAL XPC-FLD0091B
              DISPLAY 'FLD0091B ==> ' HEX-OF (FLD0091B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0091B).
           IF FLD0091E   NOT EQUAL XPC-FLD0091E
              DISPLAY 'FLD0091E  ==> ' FLD0091E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0091E.
           IF FLD0092B (1:)    NOT EQUAL XPC-FLD0092B
              DISPLAY 'FLD0092B ==> ' HEX-OF (FLD0092B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0092B).
           IF FLD0092E   NOT EQUAL XPC-FLD0092E
              DISPLAY 'FLD0092E  ==> ' FLD0092E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0092E.
           IF FLD0093B (1:)    NOT EQUAL XPC-FLD0093B
              DISPLAY 'FLD0093B ==> ' HEX-OF (FLD0093B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0093B).
           IF FLD0093E   NOT EQUAL XPC-FLD0093E
              DISPLAY 'FLD0093E  ==> ' FLD0093E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0093E.
           IF FLD0094B (1:)    NOT EQUAL XPC-FLD0094B
              DISPLAY 'FLD0094B ==> ' HEX-OF (FLD0094B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0094B).
           IF FLD0094E   NOT EQUAL XPC-FLD0094E
              DISPLAY 'FLD0094E  ==> ' FLD0094E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0094E.
           IF FLD0095B (1:)    NOT EQUAL XPC-FLD0095B
              DISPLAY 'FLD0095B ==> ' HEX-OF (FLD0095B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0095B).
           IF FLD0095E   NOT EQUAL XPC-FLD0095E
              DISPLAY 'FLD0095E  ==> ' FLD0095E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0095E.
           IF FLD0096B (1:)    NOT EQUAL XPC-FLD0096B
              DISPLAY 'FLD0096B ==> ' HEX-OF (FLD0096B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0096B).
           IF FLD0096E   NOT EQUAL XPC-FLD0096E
              DISPLAY 'FLD0096E  ==> ' FLD0096E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0096E.
           IF FLD0097B (1:)    NOT EQUAL XPC-FLD0097B
              DISPLAY 'FLD0097B ==> ' HEX-OF (FLD0097B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0097B).
           IF FLD0097E   NOT EQUAL XPC-FLD0097E
              DISPLAY 'FLD0097E  ==> ' FLD0097E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0097E.
           IF FLD0098B (1:)    NOT EQUAL XPC-FLD0098B
              DISPLAY 'FLD0098B ==> ' HEX-OF (FLD0098B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0098B).
           IF FLD0098E   NOT EQUAL XPC-FLD0098E
              DISPLAY 'FLD0098E  ==> ' FLD0098E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0098E.
           IF FLD0099B (1:)    NOT EQUAL XPC-FLD0099B
              DISPLAY 'FLD0099B ==> ' HEX-OF (FLD0099B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0099B).
           IF FLD0099E   NOT EQUAL XPC-FLD0099E
              DISPLAY 'FLD0099E  ==> ' FLD0099E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0099E.
           IF FLD0100B (1:)    NOT EQUAL XPC-FLD0100B
              DISPLAY 'FLD0100B ==> ' HEX-OF (FLD0100B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0100B).
           IF FLD0100E   NOT EQUAL XPC-FLD0100E
              DISPLAY 'FLD0100E  ==> ' FLD0100E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0100E.
           IF FLD0101B (1:)    NOT EQUAL XPC-FLD0101B
              DISPLAY 'FLD0101B ==> ' HEX-OF (FLD0101B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0101B).
           IF FLD0101E   NOT EQUAL XPC-FLD0101E
              DISPLAY 'FLD0101E  ==> ' FLD0101E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0101E.
           IF FLD0102B (1:)    NOT EQUAL XPC-FLD0102B
              DISPLAY 'FLD0102B ==> ' HEX-OF (FLD0102B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0102B).
           IF FLD0102E   NOT EQUAL XPC-FLD0102E
              DISPLAY 'FLD0102E  ==> ' FLD0102E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0102E.
           IF FLD0103B (1:)    NOT EQUAL XPC-FLD0103B
              DISPLAY 'FLD0103B ==> ' HEX-OF (FLD0103B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0103B).
           IF FLD0103E   NOT EQUAL XPC-FLD0103E
              DISPLAY 'FLD0103E  ==> ' FLD0103E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0103E.
           IF FLD0104B (1:)    NOT EQUAL XPC-FLD0104B
              DISPLAY 'FLD0104B ==> ' HEX-OF (FLD0104B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0104B).
           IF FLD0104E   NOT EQUAL XPC-FLD0104E
              DISPLAY 'FLD0104E  ==> ' FLD0104E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0104E.
           IF FLD0105B (1:)    NOT EQUAL XPC-FLD0105B
              DISPLAY 'FLD0105B ==> ' HEX-OF (FLD0105B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0105B).
           IF FLD0105E   NOT EQUAL XPC-FLD0105E
              DISPLAY 'FLD0105E  ==> ' FLD0105E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0105E.
           IF FLD0106B (1:)    NOT EQUAL XPC-FLD0106B
              DISPLAY 'FLD0106B ==> ' HEX-OF (FLD0106B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0106B).
           IF FLD0106E   NOT EQUAL XPC-FLD0106E
              DISPLAY 'FLD0106E  ==> ' FLD0106E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0106E.
           IF FLD0107B (1:)    NOT EQUAL XPC-FLD0107B
              DISPLAY 'FLD0107B ==> ' HEX-OF (FLD0107B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0107B).
           IF FLD0107E   NOT EQUAL XPC-FLD0107E
              DISPLAY 'FLD0107E  ==> ' FLD0107E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0107E.
           IF FLD0108B (1:)    NOT EQUAL XPC-FLD0108B
              DISPLAY 'FLD0108B ==> ' HEX-OF (FLD0108B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0108B).
           IF FLD0108E   NOT EQUAL XPC-FLD0108E
              DISPLAY 'FLD0108E  ==> ' FLD0108E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0108E.
           IF FLD0109B (1:)    NOT EQUAL XPC-FLD0109B
              DISPLAY 'FLD0109B ==> ' HEX-OF (FLD0109B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0109B).
           IF FLD0109E   NOT EQUAL XPC-FLD0109E
              DISPLAY 'FLD0109E  ==> ' FLD0109E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0109E.
           IF FLD0110B (1:)    NOT EQUAL XPC-FLD0110B
              DISPLAY 'FLD0110B ==> ' HEX-OF (FLD0110B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0110B).
           IF FLD0110E   NOT EQUAL XPC-FLD0110E
              DISPLAY 'FLD0110E  ==> ' FLD0110E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0110E.
           IF FLD0111B (1:)    NOT EQUAL XPC-FLD0111B
              DISPLAY 'FLD0111B ==> ' HEX-OF (FLD0111B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0111B).
           IF FLD0111E   NOT EQUAL XPC-FLD0111E
              DISPLAY 'FLD0111E  ==> ' FLD0111E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0111E.
           IF FLD0112B (1:)    NOT EQUAL XPC-FLD0112B
              DISPLAY 'FLD0112B ==> ' HEX-OF (FLD0112B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0112B).
           IF FLD0112E   NOT EQUAL XPC-FLD0112E
              DISPLAY 'FLD0112E  ==> ' FLD0112E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0112E.
           IF FLD0113B (1:)    NOT EQUAL XPC-FLD0113B
              DISPLAY 'FLD0113B ==> ' HEX-OF (FLD0113B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0113B).
           IF FLD0113E   NOT EQUAL XPC-FLD0113E
              DISPLAY 'FLD0113E  ==> ' FLD0113E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0113E.
           IF FLD0114B (1:)    NOT EQUAL XPC-FLD0114B
              DISPLAY 'FLD0114B ==> ' HEX-OF (FLD0114B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0114B).
           IF FLD0114E   NOT EQUAL XPC-FLD0114E
              DISPLAY 'FLD0114E  ==> ' FLD0114E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0114E.
           IF FLD0115B (1:)    NOT EQUAL XPC-FLD0115B
              DISPLAY 'FLD0115B ==> ' HEX-OF (FLD0115B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0115B).
           IF FLD0115E   NOT EQUAL XPC-FLD0115E
              DISPLAY 'FLD0115E  ==> ' FLD0115E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0115E.
           IF FLD0116B (1:)    NOT EQUAL XPC-FLD0116B
              DISPLAY 'FLD0116B ==> ' HEX-OF (FLD0116B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0116B).
           IF FLD0116E   NOT EQUAL XPC-FLD0116E
              DISPLAY 'FLD0116E  ==> ' FLD0116E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0116E.
           IF FLD0117B (1:)    NOT EQUAL XPC-FLD0117B
              DISPLAY 'FLD0117B ==> ' HEX-OF (FLD0117B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0117B).
           IF FLD0117E   NOT EQUAL XPC-FLD0117E
              DISPLAY 'FLD0117E  ==> ' FLD0117E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0117E.
           IF FLD0118B (1:)    NOT EQUAL XPC-FLD0118B
              DISPLAY 'FLD0118B ==> ' HEX-OF (FLD0118B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0118B).
           IF FLD0118E   NOT EQUAL XPC-FLD0118E
              DISPLAY 'FLD0118E  ==> ' FLD0118E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0118E.
           IF FLD0119B (1:)    NOT EQUAL XPC-FLD0119B
              DISPLAY 'FLD0119B ==> ' HEX-OF (FLD0119B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0119B).
           IF FLD0119E   NOT EQUAL XPC-FLD0119E
              DISPLAY 'FLD0119E  ==> ' FLD0119E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0119E.
           IF FLD0120B (1:)    NOT EQUAL XPC-FLD0120B
              DISPLAY 'FLD0120B ==> ' HEX-OF (FLD0120B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0120B).
           IF FLD0120E   NOT EQUAL XPC-FLD0120E
              DISPLAY 'FLD0120E  ==> ' FLD0120E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0120E.
           IF FLD0121B (1:)    NOT EQUAL XPC-FLD0121B
              DISPLAY 'FLD0121B ==> ' HEX-OF (FLD0121B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0121B).
           IF FLD0121E   NOT EQUAL XPC-FLD0121E
              DISPLAY 'FLD0121E  ==> ' FLD0121E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0121E.
           IF FLD0122B (1:)    NOT EQUAL XPC-FLD0122B
              DISPLAY 'FLD0122B ==> ' HEX-OF (FLD0122B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0122B).
           IF FLD0122E   NOT EQUAL XPC-FLD0122E
              DISPLAY 'FLD0122E  ==> ' FLD0122E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0122E.
           IF FLD0123B (1:)    NOT EQUAL XPC-FLD0123B
              DISPLAY 'FLD0123B ==> ' HEX-OF (FLD0123B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0123B).
           IF FLD0123E   NOT EQUAL XPC-FLD0123E
              DISPLAY 'FLD0123E  ==> ' FLD0123E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0123E.
           IF FLD0124B (1:)    NOT EQUAL XPC-FLD0124B
              DISPLAY 'FLD0124B ==> ' HEX-OF (FLD0124B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0124B).
           IF FLD0124E   NOT EQUAL XPC-FLD0124E
              DISPLAY 'FLD0124E  ==> ' FLD0124E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0124E.
           IF FLD0125B (1:)    NOT EQUAL XPC-FLD0125B
              DISPLAY 'FLD0125B ==> ' HEX-OF (FLD0125B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0125B).
           IF FLD0125E   NOT EQUAL XPC-FLD0125E
              DISPLAY 'FLD0125E  ==> ' FLD0125E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0125E.
           IF FLD0126B (1:)    NOT EQUAL XPC-FLD0126B
              DISPLAY 'FLD0126B ==> ' HEX-OF (FLD0126B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0126B).
           IF FLD0126E   NOT EQUAL XPC-FLD0126E
              DISPLAY 'FLD0126E  ==> ' FLD0126E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0126E.
           IF FLD0127B (1:)    NOT EQUAL XPC-FLD0127B
              DISPLAY 'FLD0127B ==> ' HEX-OF (FLD0127B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0127B).
           IF FLD0127E   NOT EQUAL XPC-FLD0127E
              DISPLAY 'FLD0127E  ==> ' FLD0127E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0127E.
           IF FLD0128B (1:)    NOT EQUAL XPC-FLD0128B
              DISPLAY 'FLD0128B ==> ' HEX-OF (FLD0128B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0128B).
           IF FLD0128E   NOT EQUAL XPC-FLD0128E
              DISPLAY 'FLD0128E  ==> ' FLD0128E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0128E.
           IF FLD0129B (1:)    NOT EQUAL XPC-FLD0129B
              DISPLAY 'FLD0129B ==> ' HEX-OF (FLD0129B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0129B).
           IF FLD0129E   NOT EQUAL XPC-FLD0129E
              DISPLAY 'FLD0129E  ==> ' FLD0129E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0129E.
           IF FLD0130B (1:)    NOT EQUAL XPC-FLD0130B
              DISPLAY 'FLD0130B ==> ' HEX-OF (FLD0130B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0130B).
           IF FLD0130E   NOT EQUAL XPC-FLD0130E
              DISPLAY 'FLD0130E  ==> ' FLD0130E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0130E.
           IF FLD0131B (1:)    NOT EQUAL XPC-FLD0131B
              DISPLAY 'FLD0131B ==> ' HEX-OF (FLD0131B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0131B).
           IF FLD0131E   NOT EQUAL XPC-FLD0131E
              DISPLAY 'FLD0131E  ==> ' FLD0131E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0131E.
           IF FLD0132B (1:)    NOT EQUAL XPC-FLD0132B
              DISPLAY 'FLD0132B ==> ' HEX-OF (FLD0132B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0132B).
           IF FLD0132E   NOT EQUAL XPC-FLD0132E
              DISPLAY 'FLD0132E  ==> ' FLD0132E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0132E.
           IF FLD0133B (1:)    NOT EQUAL XPC-FLD0133B
              DISPLAY 'FLD0133B ==> ' HEX-OF (FLD0133B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0133B).
           IF FLD0133E   NOT EQUAL XPC-FLD0133E
              DISPLAY 'FLD0133E  ==> ' FLD0133E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0133E.
           IF FLD0134B (1:)    NOT EQUAL XPC-FLD0134B
              DISPLAY 'FLD0134B ==> ' HEX-OF (FLD0134B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0134B).
           IF FLD0134E   NOT EQUAL XPC-FLD0134E
              DISPLAY 'FLD0134E  ==> ' FLD0134E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0134E.
           IF FLD0135B (1:)    NOT EQUAL XPC-FLD0135B
              DISPLAY 'FLD0135B ==> ' HEX-OF (FLD0135B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0135B).
           IF FLD0135E   NOT EQUAL XPC-FLD0135E
              DISPLAY 'FLD0135E  ==> ' FLD0135E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0135E.
           IF FLD0136B (1:)    NOT EQUAL XPC-FLD0136B
              DISPLAY 'FLD0136B ==> ' HEX-OF (FLD0136B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0136B).
           IF FLD0136E   NOT EQUAL XPC-FLD0136E
              DISPLAY 'FLD0136E  ==> ' FLD0136E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0136E.
           IF FLD0137B (1:)    NOT EQUAL XPC-FLD0137B
              DISPLAY 'FLD0137B ==> ' HEX-OF (FLD0137B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0137B).
           IF FLD0137E   NOT EQUAL XPC-FLD0137E
              DISPLAY 'FLD0137E  ==> ' FLD0137E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0137E.
           IF FLD0138B (1:)    NOT EQUAL XPC-FLD0138B
              DISPLAY 'FLD0138B ==> ' HEX-OF (FLD0138B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0138B).
           IF FLD0138E   NOT EQUAL XPC-FLD0138E
              DISPLAY 'FLD0138E  ==> ' FLD0138E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0138E.
           IF FLD0139B (1:)    NOT EQUAL XPC-FLD0139B
              DISPLAY 'FLD0139B ==> ' HEX-OF (FLD0139B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0139B).
           IF FLD0139E   NOT EQUAL XPC-FLD0139E
              DISPLAY 'FLD0139E  ==> ' FLD0139E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0139E.
           IF FLD0140B (1:)    NOT EQUAL XPC-FLD0140B
              DISPLAY 'FLD0140B ==> ' HEX-OF (FLD0140B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0140B).
           IF FLD0140E   NOT EQUAL XPC-FLD0140E
              DISPLAY 'FLD0140E  ==> ' FLD0140E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0140E.
           IF FLD0141B (1:)    NOT EQUAL XPC-FLD0141B
              DISPLAY 'FLD0141B ==> ' HEX-OF (FLD0141B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0141B).
           IF FLD0141E   NOT EQUAL XPC-FLD0141E
              DISPLAY 'FLD0141E  ==> ' FLD0141E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0141E.
           IF FLD0142B (1:)    NOT EQUAL XPC-FLD0142B
              DISPLAY 'FLD0142B ==> ' HEX-OF (FLD0142B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0142B).
           IF FLD0142E   NOT EQUAL XPC-FLD0142E
              DISPLAY 'FLD0142E  ==> ' FLD0142E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0142E.
           IF FLD0143B (1:)    NOT EQUAL XPC-FLD0143B
              DISPLAY 'FLD0143B ==> ' HEX-OF (FLD0143B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0143B).
           IF FLD0143E   NOT EQUAL XPC-FLD0143E
              DISPLAY 'FLD0143E  ==> ' FLD0143E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0143E.
           IF FLD0144B (1:)    NOT EQUAL XPC-FLD0144B
              DISPLAY 'FLD0144B ==> ' HEX-OF (FLD0144B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0144B).
           IF FLD0144E   NOT EQUAL XPC-FLD0144E
              DISPLAY 'FLD0144E  ==> ' FLD0144E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0144E.
           IF FLD0145B (1:)    NOT EQUAL XPC-FLD0145B
              DISPLAY 'FLD0145B ==> ' HEX-OF (FLD0145B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0145B).
           IF FLD0145E   NOT EQUAL XPC-FLD0145E
              DISPLAY 'FLD0145E  ==> ' FLD0145E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0145E.
           IF FLD0146B (1:)    NOT EQUAL XPC-FLD0146B
              DISPLAY 'FLD0146B ==> ' HEX-OF (FLD0146B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0146B).
           IF FLD0146E   NOT EQUAL XPC-FLD0146E
              DISPLAY 'FLD0146E  ==> ' FLD0146E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0146E.
           IF FLD0147B (1:)    NOT EQUAL XPC-FLD0147B
              DISPLAY 'FLD0147B ==> ' HEX-OF (FLD0147B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0147B).
           IF FLD0147E   NOT EQUAL XPC-FLD0147E
              DISPLAY 'FLD0147E  ==> ' FLD0147E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0147E.
           IF FLD0148B (1:)    NOT EQUAL XPC-FLD0148B
              DISPLAY 'FLD0148B ==> ' HEX-OF (FLD0148B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0148B).
           IF FLD0148E   NOT EQUAL XPC-FLD0148E
              DISPLAY 'FLD0148E  ==> ' FLD0148E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0148E.
           IF FLD0149B (1:)    NOT EQUAL XPC-FLD0149B
              DISPLAY 'FLD0149B ==> ' HEX-OF (FLD0149B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0149B).
           IF FLD0149E   NOT EQUAL XPC-FLD0149E
              DISPLAY 'FLD0149E  ==> ' FLD0149E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0149E.
           IF FLD0150B (1:)    NOT EQUAL XPC-FLD0150B
              DISPLAY 'FLD0150B ==> ' HEX-OF (FLD0150B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0150B).
           IF FLD0150E   NOT EQUAL XPC-FLD0150E
              DISPLAY 'FLD0150E  ==> ' FLD0150E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0150E.
           IF FLD0151B (1:)    NOT EQUAL XPC-FLD0151B
              DISPLAY 'FLD0151B ==> ' HEX-OF (FLD0151B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0151B).
           IF FLD0151E   NOT EQUAL XPC-FLD0151E
              DISPLAY 'FLD0151E  ==> ' FLD0151E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0151E.
           IF FLD0152B (1:)    NOT EQUAL XPC-FLD0152B
              DISPLAY 'FLD0152B ==> ' HEX-OF (FLD0152B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0152B).
           IF FLD0152E   NOT EQUAL XPC-FLD0152E
              DISPLAY 'FLD0152E  ==> ' FLD0152E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0152E.
           IF FLD0153B (1:)    NOT EQUAL XPC-FLD0153B
              DISPLAY 'FLD0153B ==> ' HEX-OF (FLD0153B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0153B).
           IF FLD0153E   NOT EQUAL XPC-FLD0153E
              DISPLAY 'FLD0153E  ==> ' FLD0153E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0153E.
           IF FLD0154B (1:)    NOT EQUAL XPC-FLD0154B
              DISPLAY 'FLD0154B ==> ' HEX-OF (FLD0154B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0154B).
           IF FLD0154E   NOT EQUAL XPC-FLD0154E
              DISPLAY 'FLD0154E  ==> ' FLD0154E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0154E.
           IF FLD0155B (1:)    NOT EQUAL XPC-FLD0155B
              DISPLAY 'FLD0155B ==> ' HEX-OF (FLD0155B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0155B).
           IF FLD0155E   NOT EQUAL XPC-FLD0155E
              DISPLAY 'FLD0155E  ==> ' FLD0155E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0155E.
           IF FLD0156B (1:)    NOT EQUAL XPC-FLD0156B
              DISPLAY 'FLD0156B ==> ' HEX-OF (FLD0156B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0156B).
           IF FLD0156E   NOT EQUAL XPC-FLD0156E
              DISPLAY 'FLD0156E  ==> ' FLD0156E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0156E.
           IF FLD0157B (1:)    NOT EQUAL XPC-FLD0157B
              DISPLAY 'FLD0157B ==> ' HEX-OF (FLD0157B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0157B).
           IF FLD0157E   NOT EQUAL XPC-FLD0157E
              DISPLAY 'FLD0157E  ==> ' FLD0157E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0157E.
           IF FLD0158B (1:)    NOT EQUAL XPC-FLD0158B
              DISPLAY 'FLD0158B ==> ' HEX-OF (FLD0158B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0158B).
           IF FLD0158E   NOT EQUAL XPC-FLD0158E
              DISPLAY 'FLD0158E  ==> ' FLD0158E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0158E.
           IF FLD0159B (1:)    NOT EQUAL XPC-FLD0159B
              DISPLAY 'FLD0159B ==> ' HEX-OF (FLD0159B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0159B).
           IF FLD0159E   NOT EQUAL XPC-FLD0159E
              DISPLAY 'FLD0159E  ==> ' FLD0159E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0159E.
           IF FLD0160B (1:)    NOT EQUAL XPC-FLD0160B
              DISPLAY 'FLD0160B ==> ' HEX-OF (FLD0160B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0160B).
           IF FLD0160E   NOT EQUAL XPC-FLD0160E
              DISPLAY 'FLD0160E  ==> ' FLD0160E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0160E.
           IF FLD0161B (1:)    NOT EQUAL XPC-FLD0161B
              DISPLAY 'FLD0161B ==> ' HEX-OF (FLD0161B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0161B).
           IF FLD0161E   NOT EQUAL XPC-FLD0161E
              DISPLAY 'FLD0161E  ==> ' FLD0161E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0161E.
           IF FLD0162B (1:)    NOT EQUAL XPC-FLD0162B
              DISPLAY 'FLD0162B ==> ' HEX-OF (FLD0162B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0162B).
           IF FLD0162E   NOT EQUAL XPC-FLD0162E
              DISPLAY 'FLD0162E  ==> ' FLD0162E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0162E.
           IF FLD0163B (1:)    NOT EQUAL XPC-FLD0163B
              DISPLAY 'FLD0163B ==> ' HEX-OF (FLD0163B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0163B).
           IF FLD0163E   NOT EQUAL XPC-FLD0163E
              DISPLAY 'FLD0163E  ==> ' FLD0163E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0163E.
           IF FLD0164B (1:)    NOT EQUAL XPC-FLD0164B
              DISPLAY 'FLD0164B ==> ' HEX-OF (FLD0164B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0164B).
           IF FLD0164E   NOT EQUAL XPC-FLD0164E
              DISPLAY 'FLD0164E  ==> ' FLD0164E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0164E.
           IF FLD0165B (1:)    NOT EQUAL XPC-FLD0165B
              DISPLAY 'FLD0165B ==> ' HEX-OF (FLD0165B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0165B).
           IF FLD0165E   NOT EQUAL XPC-FLD0165E
              DISPLAY 'FLD0165E  ==> ' FLD0165E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0165E.
           IF FLD0166B (1:)    NOT EQUAL XPC-FLD0166B
              DISPLAY 'FLD0166B ==> ' HEX-OF (FLD0166B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0166B).
           IF FLD0166E   NOT EQUAL XPC-FLD0166E
              DISPLAY 'FLD0166E  ==> ' FLD0166E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0166E.
           IF FLD0167B (1:)    NOT EQUAL XPC-FLD0167B
              DISPLAY 'FLD0167B ==> ' HEX-OF (FLD0167B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0167B).
           IF FLD0167E   NOT EQUAL XPC-FLD0167E
              DISPLAY 'FLD0167E  ==> ' FLD0167E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0167E.
           IF FLD0168B (1:)    NOT EQUAL XPC-FLD0168B
              DISPLAY 'FLD0168B ==> ' HEX-OF (FLD0168B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0168B).
           IF FLD0168E   NOT EQUAL XPC-FLD0168E
              DISPLAY 'FLD0168E  ==> ' FLD0168E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0168E.
           IF FLD0169B (1:)    NOT EQUAL XPC-FLD0169B
              DISPLAY 'FLD0169B ==> ' HEX-OF (FLD0169B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0169B).
           IF FLD0169E   NOT EQUAL XPC-FLD0169E
              DISPLAY 'FLD0169E  ==> ' FLD0169E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0169E.
           IF FLD0170B (1:)    NOT EQUAL XPC-FLD0170B
              DISPLAY 'FLD0170B ==> ' HEX-OF (FLD0170B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0170B).
           IF FLD0170E   NOT EQUAL XPC-FLD0170E
              DISPLAY 'FLD0170E  ==> ' FLD0170E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0170E.
           IF FLD0171B (1:)    NOT EQUAL XPC-FLD0171B
              DISPLAY 'FLD0171B ==> ' HEX-OF (FLD0171B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0171B).
           IF FLD0171E   NOT EQUAL XPC-FLD0171E
              DISPLAY 'FLD0171E  ==> ' FLD0171E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0171E.
           IF FLD0172B (1:)    NOT EQUAL XPC-FLD0172B
              DISPLAY 'FLD0172B ==> ' HEX-OF (FLD0172B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0172B).
           IF FLD0172E   NOT EQUAL XPC-FLD0172E
              DISPLAY 'FLD0172E  ==> ' FLD0172E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0172E.
           IF FLD0173B (1:)    NOT EQUAL XPC-FLD0173B
              DISPLAY 'FLD0173B ==> ' HEX-OF (FLD0173B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0173B).
           IF FLD0173E   NOT EQUAL XPC-FLD0173E
              DISPLAY 'FLD0173E  ==> ' FLD0173E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0173E.
           IF FLD0174B (1:)    NOT EQUAL XPC-FLD0174B
              DISPLAY 'FLD0174B ==> ' HEX-OF (FLD0174B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0174B).
           IF FLD0174E   NOT EQUAL XPC-FLD0174E
              DISPLAY 'FLD0174E  ==> ' FLD0174E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0174E.
           IF FLD0175B (1:)    NOT EQUAL XPC-FLD0175B
              DISPLAY 'FLD0175B ==> ' HEX-OF (FLD0175B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0175B).
           IF FLD0175E   NOT EQUAL XPC-FLD0175E
              DISPLAY 'FLD0175E  ==> ' FLD0175E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0175E.
           IF FLD0176B (1:)    NOT EQUAL XPC-FLD0176B
              DISPLAY 'FLD0176B ==> ' HEX-OF (FLD0176B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0176B).
           IF FLD0176E   NOT EQUAL XPC-FLD0176E
              DISPLAY 'FLD0176E  ==> ' FLD0176E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0176E.
           IF FLD0177B (1:)    NOT EQUAL XPC-FLD0177B
              DISPLAY 'FLD0177B ==> ' HEX-OF (FLD0177B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0177B).
           IF FLD0177E   NOT EQUAL XPC-FLD0177E
              DISPLAY 'FLD0177E  ==> ' FLD0177E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0177E.
           IF FLD0178B (1:)    NOT EQUAL XPC-FLD0178B
              DISPLAY 'FLD0178B ==> ' HEX-OF (FLD0178B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0178B).
           IF FLD0178E   NOT EQUAL XPC-FLD0178E
              DISPLAY 'FLD0178E  ==> ' FLD0178E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0178E.
           IF FLD0179B (1:)    NOT EQUAL XPC-FLD0179B
              DISPLAY 'FLD0179B ==> ' HEX-OF (FLD0179B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0179B).
           IF FLD0179E   NOT EQUAL XPC-FLD0179E
              DISPLAY 'FLD0179E  ==> ' FLD0179E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0179E.
           IF FLD0180B (1:)    NOT EQUAL XPC-FLD0180B
              DISPLAY 'FLD0180B ==> ' HEX-OF (FLD0180B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0180B).
           IF FLD0180E   NOT EQUAL XPC-FLD0180E
              DISPLAY 'FLD0180E  ==> ' FLD0180E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0180E.
           IF FLD0181B (1:)    NOT EQUAL XPC-FLD0181B
              DISPLAY 'FLD0181B ==> ' HEX-OF (FLD0181B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0181B).
           IF FLD0181E   NOT EQUAL XPC-FLD0181E
              DISPLAY 'FLD0181E  ==> ' FLD0181E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0181E.
           IF FLD0182B (1:)    NOT EQUAL XPC-FLD0182B
              DISPLAY 'FLD0182B ==> ' HEX-OF (FLD0182B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0182B).
           IF FLD0182E   NOT EQUAL XPC-FLD0182E
              DISPLAY 'FLD0182E  ==> ' FLD0182E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0182E.
           IF FLD0183B (1:)    NOT EQUAL XPC-FLD0183B
              DISPLAY 'FLD0183B ==> ' HEX-OF (FLD0183B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0183B).
           IF FLD0183E   NOT EQUAL XPC-FLD0183E
              DISPLAY 'FLD0183E  ==> ' FLD0183E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0183E.
           IF FLD0184B (1:)    NOT EQUAL XPC-FLD0184B
              DISPLAY 'FLD0184B ==> ' HEX-OF (FLD0184B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0184B).
           IF FLD0184E   NOT EQUAL XPC-FLD0184E
              DISPLAY 'FLD0184E  ==> ' FLD0184E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0184E.
           IF FLD0185B (1:)    NOT EQUAL XPC-FLD0185B
              DISPLAY 'FLD0185B ==> ' HEX-OF (FLD0185B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0185B).
           IF FLD0185E   NOT EQUAL XPC-FLD0185E
              DISPLAY 'FLD0185E  ==> ' FLD0185E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0185E.
           IF FLD0186B (1:)    NOT EQUAL XPC-FLD0186B
              DISPLAY 'FLD0186B ==> ' HEX-OF (FLD0186B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0186B).
           IF FLD0186E   NOT EQUAL XPC-FLD0186E
              DISPLAY 'FLD0186E  ==> ' FLD0186E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0186E.
           IF FLD0187B (1:)    NOT EQUAL XPC-FLD0187B
              DISPLAY 'FLD0187B ==> ' HEX-OF (FLD0187B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0187B).
           IF FLD0187E   NOT EQUAL XPC-FLD0187E
              DISPLAY 'FLD0187E  ==> ' FLD0187E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0187E.
           IF FLD0188B (1:)    NOT EQUAL XPC-FLD0188B
              DISPLAY 'FLD0188B ==> ' HEX-OF (FLD0188B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0188B).
           IF FLD0188E   NOT EQUAL XPC-FLD0188E
              DISPLAY 'FLD0188E  ==> ' FLD0188E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0188E.
           IF FLD0189B (1:)    NOT EQUAL XPC-FLD0189B
              DISPLAY 'FLD0189B ==> ' HEX-OF (FLD0189B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0189B).
           IF FLD0189E   NOT EQUAL XPC-FLD0189E
              DISPLAY 'FLD0189E  ==> ' FLD0189E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0189E.
           IF FLD0190B (1:)    NOT EQUAL XPC-FLD0190B
              DISPLAY 'FLD0190B ==> ' HEX-OF (FLD0190B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0190B).
           IF FLD0190E   NOT EQUAL XPC-FLD0190E
              DISPLAY 'FLD0190E  ==> ' FLD0190E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0190E.
           IF FLD0191B (1:)    NOT EQUAL XPC-FLD0191B
              DISPLAY 'FLD0191B ==> ' HEX-OF (FLD0191B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0191B).
           IF FLD0191E   NOT EQUAL XPC-FLD0191E
              DISPLAY 'FLD0191E  ==> ' FLD0191E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0191E.
           IF FLD0192B (1:)    NOT EQUAL XPC-FLD0192B
              DISPLAY 'FLD0192B ==> ' HEX-OF (FLD0192B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0192B).
           IF FLD0192E   NOT EQUAL XPC-FLD0192E
              DISPLAY 'FLD0192E  ==> ' FLD0192E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0192E.
           IF FLD0193B (1:)    NOT EQUAL XPC-FLD0193B
              DISPLAY 'FLD0193B ==> ' HEX-OF (FLD0193B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0193B).
           IF FLD0193E   NOT EQUAL XPC-FLD0193E
              DISPLAY 'FLD0193E  ==> ' FLD0193E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0193E.
           IF FLD0194B (1:)    NOT EQUAL XPC-FLD0194B
              DISPLAY 'FLD0194B ==> ' HEX-OF (FLD0194B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0194B).
           IF FLD0194E   NOT EQUAL XPC-FLD0194E
              DISPLAY 'FLD0194E  ==> ' FLD0194E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0194E.
           IF FLD0195B (1:)    NOT EQUAL XPC-FLD0195B
              DISPLAY 'FLD0195B ==> ' HEX-OF (FLD0195B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0195B).
           IF FLD0195E   NOT EQUAL XPC-FLD0195E
              DISPLAY 'FLD0195E  ==> ' FLD0195E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0195E.
           IF FLD0196B (1:)    NOT EQUAL XPC-FLD0196B
              DISPLAY 'FLD0196B ==> ' HEX-OF (FLD0196B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0196B).
           IF FLD0196E   NOT EQUAL XPC-FLD0196E
              DISPLAY 'FLD0196E  ==> ' FLD0196E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0196E.
           IF FLD0197B (1:)    NOT EQUAL XPC-FLD0197B
              DISPLAY 'FLD0197B ==> ' HEX-OF (FLD0197B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0197B).
           IF FLD0197E   NOT EQUAL XPC-FLD0197E
              DISPLAY 'FLD0197E  ==> ' FLD0197E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0197E.
           IF FLD0198B (1:)    NOT EQUAL XPC-FLD0198B
              DISPLAY 'FLD0198B ==> ' HEX-OF (FLD0198B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0198B).
           IF FLD0198E   NOT EQUAL XPC-FLD0198E
              DISPLAY 'FLD0198E  ==> ' FLD0198E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0198E.
           IF FLD0199B (1:)    NOT EQUAL XPC-FLD0199B
              DISPLAY 'FLD0199B ==> ' HEX-OF (FLD0199B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0199B).
           IF FLD0199E   NOT EQUAL XPC-FLD0199E
              DISPLAY 'FLD0199E  ==> ' FLD0199E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0199E.
           IF FLD0200B (1:)    NOT EQUAL XPC-FLD0200B
              DISPLAY 'FLD0200B ==> ' HEX-OF (FLD0200B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0200B).
           IF FLD0200E   NOT EQUAL XPC-FLD0200E
              DISPLAY 'FLD0200E  ==> ' FLD0200E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0200E.
           IF FLD0201B (1:)    NOT EQUAL XPC-FLD0201B
              DISPLAY 'FLD0201B ==> ' HEX-OF (FLD0201B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0201B).
           IF FLD0201E   NOT EQUAL XPC-FLD0201E
              DISPLAY 'FLD0201E  ==> ' FLD0201E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0201E.
           IF FLD0202B (1:)    NOT EQUAL XPC-FLD0202B
              DISPLAY 'FLD0202B ==> ' HEX-OF (FLD0202B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0202B).
           IF FLD0202E   NOT EQUAL XPC-FLD0202E
              DISPLAY 'FLD0202E  ==> ' FLD0202E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0202E.
           IF FLD0203B (1:)    NOT EQUAL XPC-FLD0203B
              DISPLAY 'FLD0203B ==> ' HEX-OF (FLD0203B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0203B).
           IF FLD0203E   NOT EQUAL XPC-FLD0203E
              DISPLAY 'FLD0203E  ==> ' FLD0203E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0203E.
           IF FLD0204B (1:)    NOT EQUAL XPC-FLD0204B
              DISPLAY 'FLD0204B ==> ' HEX-OF (FLD0204B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0204B).
           IF FLD0204E   NOT EQUAL XPC-FLD0204E
              DISPLAY 'FLD0204E  ==> ' FLD0204E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0204E.
           IF FLD0205B (1:)    NOT EQUAL XPC-FLD0205B
              DISPLAY 'FLD0205B ==> ' HEX-OF (FLD0205B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0205B).
           IF FLD0205E   NOT EQUAL XPC-FLD0205E
              DISPLAY 'FLD0205E  ==> ' FLD0205E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0205E.
           IF FLD0206B (1:)    NOT EQUAL XPC-FLD0206B
              DISPLAY 'FLD0206B ==> ' HEX-OF (FLD0206B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0206B).
           IF FLD0206E   NOT EQUAL XPC-FLD0206E
              DISPLAY 'FLD0206E  ==> ' FLD0206E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0206E.
           IF FLD0207B (1:)    NOT EQUAL XPC-FLD0207B
              DISPLAY 'FLD0207B ==> ' HEX-OF (FLD0207B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0207B).
           IF FLD0207E   NOT EQUAL XPC-FLD0207E
              DISPLAY 'FLD0207E  ==> ' FLD0207E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0207E.
           IF FLD0208B (1:)    NOT EQUAL XPC-FLD0208B
              DISPLAY 'FLD0208B ==> ' HEX-OF (FLD0208B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0208B).
           IF FLD0208E   NOT EQUAL XPC-FLD0208E
              DISPLAY 'FLD0208E  ==> ' FLD0208E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0208E.
           IF FLD0209B (1:)    NOT EQUAL XPC-FLD0209B
              DISPLAY 'FLD0209B ==> ' HEX-OF (FLD0209B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0209B).
           IF FLD0209E   NOT EQUAL XPC-FLD0209E
              DISPLAY 'FLD0209E  ==> ' FLD0209E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0209E.
           IF FLD0210B (1:)    NOT EQUAL XPC-FLD0210B
              DISPLAY 'FLD0210B ==> ' HEX-OF (FLD0210B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0210B).
           IF FLD0210E   NOT EQUAL XPC-FLD0210E
              DISPLAY 'FLD0210E  ==> ' FLD0210E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0210E.
           IF FLD0211B (1:)    NOT EQUAL XPC-FLD0211B
              DISPLAY 'FLD0211B ==> ' HEX-OF (FLD0211B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0211B).
           IF FLD0211E   NOT EQUAL XPC-FLD0211E
              DISPLAY 'FLD0211E  ==> ' FLD0211E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0211E.
           IF FLD0212B (1:)    NOT EQUAL XPC-FLD0212B
              DISPLAY 'FLD0212B ==> ' HEX-OF (FLD0212B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0212B).
           IF FLD0212E   NOT EQUAL XPC-FLD0212E
              DISPLAY 'FLD0212E  ==> ' FLD0212E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0212E.
           IF FLD0213B (1:)    NOT EQUAL XPC-FLD0213B
              DISPLAY 'FLD0213B ==> ' HEX-OF (FLD0213B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0213B).
           IF FLD0213E   NOT EQUAL XPC-FLD0213E
              DISPLAY 'FLD0213E  ==> ' FLD0213E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0213E.
           IF FLD0214B (1:)    NOT EQUAL XPC-FLD0214B
              DISPLAY 'FLD0214B ==> ' HEX-OF (FLD0214B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0214B).
           IF FLD0214E   NOT EQUAL XPC-FLD0214E
              DISPLAY 'FLD0214E  ==> ' FLD0214E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0214E.
           IF FLD0215B (1:)    NOT EQUAL XPC-FLD0215B
              DISPLAY 'FLD0215B ==> ' HEX-OF (FLD0215B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0215B).
           IF FLD0215E   NOT EQUAL XPC-FLD0215E
              DISPLAY 'FLD0215E  ==> ' FLD0215E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0215E.
           IF FLD0216B (1:)    NOT EQUAL XPC-FLD0216B
              DISPLAY 'FLD0216B ==> ' HEX-OF (FLD0216B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0216B).
           IF FLD0216E   NOT EQUAL XPC-FLD0216E
              DISPLAY 'FLD0216E  ==> ' FLD0216E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0216E.
           IF FLD0217B (1:)    NOT EQUAL XPC-FLD0217B
              DISPLAY 'FLD0217B ==> ' HEX-OF (FLD0217B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0217B).
           IF FLD0217E   NOT EQUAL XPC-FLD0217E
              DISPLAY 'FLD0217E  ==> ' FLD0217E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0217E.
           IF FLD0218B (1:)    NOT EQUAL XPC-FLD0218B
              DISPLAY 'FLD0218B ==> ' HEX-OF (FLD0218B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0218B).
           IF FLD0218E   NOT EQUAL XPC-FLD0218E
              DISPLAY 'FLD0218E  ==> ' FLD0218E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0218E.
           IF FLD0219B (1:)    NOT EQUAL XPC-FLD0219B
              DISPLAY 'FLD0219B ==> ' HEX-OF (FLD0219B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0219B).
           IF FLD0219E   NOT EQUAL XPC-FLD0219E
              DISPLAY 'FLD0219E  ==> ' FLD0219E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0219E.
           IF FLD0220B (1:)    NOT EQUAL XPC-FLD0220B
              DISPLAY 'FLD0220B ==> ' HEX-OF (FLD0220B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0220B).
           IF FLD0220E   NOT EQUAL XPC-FLD0220E
              DISPLAY 'FLD0220E  ==> ' FLD0220E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0220E.
           IF FLD0221B (1:)    NOT EQUAL XPC-FLD0221B
              DISPLAY 'FLD0221B ==> ' HEX-OF (FLD0221B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0221B).
           IF FLD0221E   NOT EQUAL XPC-FLD0221E
              DISPLAY 'FLD0221E  ==> ' FLD0221E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0221E.
           IF FLD0222B (1:)    NOT EQUAL XPC-FLD0222B
              DISPLAY 'FLD0222B ==> ' HEX-OF (FLD0222B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0222B).
           IF FLD0222E   NOT EQUAL XPC-FLD0222E
              DISPLAY 'FLD0222E  ==> ' FLD0222E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0222E.
           IF FLD0223B (1:)    NOT EQUAL XPC-FLD0223B
              DISPLAY 'FLD0223B ==> ' HEX-OF (FLD0223B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0223B).
           IF FLD0223E   NOT EQUAL XPC-FLD0223E
              DISPLAY 'FLD0223E  ==> ' FLD0223E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0223E.
           IF FLD0224B (1:)    NOT EQUAL XPC-FLD0224B
              DISPLAY 'FLD0224B ==> ' HEX-OF (FLD0224B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0224B).
           IF FLD0224E   NOT EQUAL XPC-FLD0224E
              DISPLAY 'FLD0224E  ==> ' FLD0224E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0224E.
           IF FLD0225B (1:)    NOT EQUAL XPC-FLD0225B
              DISPLAY 'FLD0225B ==> ' HEX-OF (FLD0225B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0225B).
           IF FLD0225E   NOT EQUAL XPC-FLD0225E
              DISPLAY 'FLD0225E  ==> ' FLD0225E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0225E.
           IF FLD0226B (1:)    NOT EQUAL XPC-FLD0226B
              DISPLAY 'FLD0226B ==> ' HEX-OF (FLD0226B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0226B).
           IF FLD0226E   NOT EQUAL XPC-FLD0226E
              DISPLAY 'FLD0226E  ==> ' FLD0226E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0226E.
           IF FLD0227B (1:)    NOT EQUAL XPC-FLD0227B
              DISPLAY 'FLD0227B ==> ' HEX-OF (FLD0227B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0227B).
           IF FLD0227E   NOT EQUAL XPC-FLD0227E
              DISPLAY 'FLD0227E  ==> ' FLD0227E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0227E.
           IF FLD0228B (1:)    NOT EQUAL XPC-FLD0228B
              DISPLAY 'FLD0228B ==> ' HEX-OF (FLD0228B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0228B).
           IF FLD0228E   NOT EQUAL XPC-FLD0228E
              DISPLAY 'FLD0228E  ==> ' FLD0228E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0228E.
           IF FLD0229B (1:)    NOT EQUAL XPC-FLD0229B
              DISPLAY 'FLD0229B ==> ' HEX-OF (FLD0229B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0229B).
           IF FLD0229E   NOT EQUAL XPC-FLD0229E
              DISPLAY 'FLD0229E  ==> ' FLD0229E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0229E.
           IF FLD0230B (1:)    NOT EQUAL XPC-FLD0230B
              DISPLAY 'FLD0230B ==> ' HEX-OF (FLD0230B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0230B).
           IF FLD0230E   NOT EQUAL XPC-FLD0230E
              DISPLAY 'FLD0230E  ==> ' FLD0230E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0230E.
           IF FLD0231B (1:)    NOT EQUAL XPC-FLD0231B
              DISPLAY 'FLD0231B ==> ' HEX-OF (FLD0231B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0231B).
           IF FLD0231E   NOT EQUAL XPC-FLD0231E
              DISPLAY 'FLD0231E  ==> ' FLD0231E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0231E.
           IF FLD0232B (1:)    NOT EQUAL XPC-FLD0232B
              DISPLAY 'FLD0232B ==> ' HEX-OF (FLD0232B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0232B).
           IF FLD0232E   NOT EQUAL XPC-FLD0232E
              DISPLAY 'FLD0232E  ==> ' FLD0232E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0232E.
           IF FLD0233B (1:)    NOT EQUAL XPC-FLD0233B
              DISPLAY 'FLD0233B ==> ' HEX-OF (FLD0233B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0233B).
           IF FLD0233E   NOT EQUAL XPC-FLD0233E
              DISPLAY 'FLD0233E  ==> ' FLD0233E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0233E.
           IF FLD0234B (1:)    NOT EQUAL XPC-FLD0234B
              DISPLAY 'FLD0234B ==> ' HEX-OF (FLD0234B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0234B).
           IF FLD0234E   NOT EQUAL XPC-FLD0234E
              DISPLAY 'FLD0234E  ==> ' FLD0234E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0234E.
           IF FLD0235B (1:)    NOT EQUAL XPC-FLD0235B
              DISPLAY 'FLD0235B ==> ' HEX-OF (FLD0235B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0235B).
           IF FLD0235E   NOT EQUAL XPC-FLD0235E
              DISPLAY 'FLD0235E  ==> ' FLD0235E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0235E.
           IF FLD0236B (1:)    NOT EQUAL XPC-FLD0236B
              DISPLAY 'FLD0236B ==> ' HEX-OF (FLD0236B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0236B).
           IF FLD0236E   NOT EQUAL XPC-FLD0236E
              DISPLAY 'FLD0236E  ==> ' FLD0236E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0236E.
           IF FLD0237B (1:)    NOT EQUAL XPC-FLD0237B
              DISPLAY 'FLD0237B ==> ' HEX-OF (FLD0237B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0237B).
           IF FLD0237E   NOT EQUAL XPC-FLD0237E
              DISPLAY 'FLD0237E  ==> ' FLD0237E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0237E.
           IF FLD0238B (1:)    NOT EQUAL XPC-FLD0238B
              DISPLAY 'FLD0238B ==> ' HEX-OF (FLD0238B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0238B).
           IF FLD0238E   NOT EQUAL XPC-FLD0238E
              DISPLAY 'FLD0238E  ==> ' FLD0238E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0238E.
           IF FLD0239B (1:)    NOT EQUAL XPC-FLD0239B
              DISPLAY 'FLD0239B ==> ' HEX-OF (FLD0239B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0239B).
           IF FLD0239E   NOT EQUAL XPC-FLD0239E
              DISPLAY 'FLD0239E  ==> ' FLD0239E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0239E.
           IF FLD0240B (1:)    NOT EQUAL XPC-FLD0240B
              DISPLAY 'FLD0240B ==> ' HEX-OF (FLD0240B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0240B).
           IF FLD0240E   NOT EQUAL XPC-FLD0240E
              DISPLAY 'FLD0240E  ==> ' FLD0240E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0240E.
           IF FLD0241B (1:)    NOT EQUAL XPC-FLD0241B
              DISPLAY 'FLD0241B ==> ' HEX-OF (FLD0241B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0241B).
           IF FLD0241E   NOT EQUAL XPC-FLD0241E
              DISPLAY 'FLD0241E  ==> ' FLD0241E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0241E.
           IF FLD0242B (1:)    NOT EQUAL XPC-FLD0242B
              DISPLAY 'FLD0242B ==> ' HEX-OF (FLD0242B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0242B).
           IF FLD0242E   NOT EQUAL XPC-FLD0242E
              DISPLAY 'FLD0242E  ==> ' FLD0242E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0242E.
           IF FLD0243B (1:)    NOT EQUAL XPC-FLD0243B
              DISPLAY 'FLD0243B ==> ' HEX-OF (FLD0243B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0243B).
           IF FLD0243E   NOT EQUAL XPC-FLD0243E
              DISPLAY 'FLD0243E  ==> ' FLD0243E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0243E.
           IF FLD0244B (1:)    NOT EQUAL XPC-FLD0244B
              DISPLAY 'FLD0244B ==> ' HEX-OF (FLD0244B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0244B).
           IF FLD0244E   NOT EQUAL XPC-FLD0244E
              DISPLAY 'FLD0244E  ==> ' FLD0244E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0244E.
           IF FLD0245B (1:)    NOT EQUAL XPC-FLD0245B
              DISPLAY 'FLD0245B ==> ' HEX-OF (FLD0245B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0245B).
           IF FLD0245E   NOT EQUAL XPC-FLD0245E
              DISPLAY 'FLD0245E  ==> ' FLD0245E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0245E.
           IF FLD0246B (1:)    NOT EQUAL XPC-FLD0246B
              DISPLAY 'FLD0246B ==> ' HEX-OF (FLD0246B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0246B).
           IF FLD0246E   NOT EQUAL XPC-FLD0246E
              DISPLAY 'FLD0246E  ==> ' FLD0246E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0246E.
           IF FLD0247B (1:)    NOT EQUAL XPC-FLD0247B
              DISPLAY 'FLD0247B ==> ' HEX-OF (FLD0247B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0247B).
           IF FLD0247E   NOT EQUAL XPC-FLD0247E
              DISPLAY 'FLD0247E  ==> ' FLD0247E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0247E.
           IF FLD0248B (1:)    NOT EQUAL XPC-FLD0248B
              DISPLAY 'FLD0248B ==> ' HEX-OF (FLD0248B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0248B).
           IF FLD0248E   NOT EQUAL XPC-FLD0248E
              DISPLAY 'FLD0248E  ==> ' FLD0248E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0248E.
           IF FLD0249B (1:)    NOT EQUAL XPC-FLD0249B
              DISPLAY 'FLD0249B ==> ' HEX-OF (FLD0249B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0249B).
           IF FLD0249E   NOT EQUAL XPC-FLD0249E
              DISPLAY 'FLD0249E  ==> ' FLD0249E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0249E.
           IF FLD0250B (1:)    NOT EQUAL XPC-FLD0250B
              DISPLAY 'FLD0250B ==> ' HEX-OF (FLD0250B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0250B).
           IF FLD0250E   NOT EQUAL XPC-FLD0250E
              DISPLAY 'FLD0250E  ==> ' FLD0250E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0250E.
           IF FLD0251B (1:)    NOT EQUAL XPC-FLD0251B
              DISPLAY 'FLD0251B ==> ' HEX-OF (FLD0251B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0251B).
           IF FLD0251E   NOT EQUAL XPC-FLD0251E
              DISPLAY 'FLD0251E  ==> ' FLD0251E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0251E.
           IF FLD0252B (1:)    NOT EQUAL XPC-FLD0252B
              DISPLAY 'FLD0252B ==> ' HEX-OF (FLD0252B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0252B).
           IF FLD0252E   NOT EQUAL XPC-FLD0252E
              DISPLAY 'FLD0252E  ==> ' FLD0252E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0252E.
           IF FLD0253B (1:)    NOT EQUAL XPC-FLD0253B
              DISPLAY 'FLD0253B ==> ' HEX-OF (FLD0253B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0253B).
           IF FLD0253E   NOT EQUAL XPC-FLD0253E
              DISPLAY 'FLD0253E  ==> ' FLD0253E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0253E.
           IF FLD0254B (1:)    NOT EQUAL XPC-FLD0254B
              DISPLAY 'FLD0254B ==> ' HEX-OF (FLD0254B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0254B).
           IF FLD0254E   NOT EQUAL XPC-FLD0254E
              DISPLAY 'FLD0254E  ==> ' FLD0254E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0254E.
           IF FLD0255B (1:)    NOT EQUAL XPC-FLD0255B
              DISPLAY 'FLD0255B ==> ' HEX-OF (FLD0255B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0255B).
           IF FLD0255E   NOT EQUAL XPC-FLD0255E
              DISPLAY 'FLD0255E  ==> ' FLD0255E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0255E.
           IF FLD0256B (1:)    NOT EQUAL XPC-FLD0256B
              DISPLAY 'FLD0256B ==> ' HEX-OF (FLD0256B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0256B).
           IF FLD0256E   NOT EQUAL XPC-FLD0256E
              DISPLAY 'FLD0256E  ==> ' FLD0256E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0256E.
           IF FLD0257B (1:)    NOT EQUAL XPC-FLD0257B
              DISPLAY 'FLD0257B ==> ' HEX-OF (FLD0257B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0257B).
           IF FLD0257E   NOT EQUAL XPC-FLD0257E
              DISPLAY 'FLD0257E  ==> ' FLD0257E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0257E.
           IF FLD0258B (1:)    NOT EQUAL XPC-FLD0258B
              DISPLAY 'FLD0258B ==> ' HEX-OF (FLD0258B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0258B).
           IF FLD0258E   NOT EQUAL XPC-FLD0258E
              DISPLAY 'FLD0258E  ==> ' FLD0258E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0258E.
           IF FLD0259B (1:)    NOT EQUAL XPC-FLD0259B
              DISPLAY 'FLD0259B ==> ' HEX-OF (FLD0259B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0259B).
           IF FLD0259E   NOT EQUAL XPC-FLD0259E
              DISPLAY 'FLD0259E  ==> ' FLD0259E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0259E.
           IF FLD0260B (1:)    NOT EQUAL XPC-FLD0260B
              DISPLAY 'FLD0260B ==> ' HEX-OF (FLD0260B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0260B).
           IF FLD0260E   NOT EQUAL XPC-FLD0260E
              DISPLAY 'FLD0260E  ==> ' FLD0260E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0260E.
           IF FLD0261B (1:)    NOT EQUAL XPC-FLD0261B
              DISPLAY 'FLD0261B ==> ' HEX-OF (FLD0261B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0261B).
           IF FLD0261E   NOT EQUAL XPC-FLD0261E
              DISPLAY 'FLD0261E  ==> ' FLD0261E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0261E.
           IF FLD0262B (1:)    NOT EQUAL XPC-FLD0262B
              DISPLAY 'FLD0262B ==> ' HEX-OF (FLD0262B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0262B).
           IF FLD0262E   NOT EQUAL XPC-FLD0262E
              DISPLAY 'FLD0262E  ==> ' FLD0262E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0262E.
           IF FLD0263B (1:)    NOT EQUAL XPC-FLD0263B
              DISPLAY 'FLD0263B ==> ' HEX-OF (FLD0263B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0263B).
           IF FLD0263E   NOT EQUAL XPC-FLD0263E
              DISPLAY 'FLD0263E  ==> ' FLD0263E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0263E.
           IF FLD0264B (1:)    NOT EQUAL XPC-FLD0264B
              DISPLAY 'FLD0264B ==> ' HEX-OF (FLD0264B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0264B).
           IF FLD0264E   NOT EQUAL XPC-FLD0264E
              DISPLAY 'FLD0264E  ==> ' FLD0264E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0264E.
           IF FLD0265B (1:)    NOT EQUAL XPC-FLD0265B
              DISPLAY 'FLD0265B ==> ' HEX-OF (FLD0265B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0265B).
           IF FLD0265E   NOT EQUAL XPC-FLD0265E
              DISPLAY 'FLD0265E  ==> ' FLD0265E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0265E.
           IF FLD0266B (1:)    NOT EQUAL XPC-FLD0266B
              DISPLAY 'FLD0266B ==> ' HEX-OF (FLD0266B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0266B).
           IF FLD0266E   NOT EQUAL XPC-FLD0266E
              DISPLAY 'FLD0266E  ==> ' FLD0266E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0266E.
           IF FLD0267B (1:)    NOT EQUAL XPC-FLD0267B
              DISPLAY 'FLD0267B ==> ' HEX-OF (FLD0267B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0267B).
           IF FLD0267E   NOT EQUAL XPC-FLD0267E
              DISPLAY 'FLD0267E  ==> ' FLD0267E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0267E.
           IF FLD0268B (1:)    NOT EQUAL XPC-FLD0268B
              DISPLAY 'FLD0268B ==> ' HEX-OF (FLD0268B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0268B).
           IF FLD0268E   NOT EQUAL XPC-FLD0268E
              DISPLAY 'FLD0268E  ==> ' FLD0268E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0268E.
           IF FLD0269B (1:)    NOT EQUAL XPC-FLD0269B
              DISPLAY 'FLD0269B ==> ' HEX-OF (FLD0269B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0269B).
           IF FLD0269E   NOT EQUAL XPC-FLD0269E
              DISPLAY 'FLD0269E  ==> ' FLD0269E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0269E.
           IF FLD0270B (1:)    NOT EQUAL XPC-FLD0270B
              DISPLAY 'FLD0270B ==> ' HEX-OF (FLD0270B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0270B).
           IF FLD0270E   NOT EQUAL XPC-FLD0270E
              DISPLAY 'FLD0270E  ==> ' FLD0270E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0270E.
           IF FLD0271B (1:)    NOT EQUAL XPC-FLD0271B
              DISPLAY 'FLD0271B ==> ' HEX-OF (FLD0271B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0271B).
           IF FLD0271E   NOT EQUAL XPC-FLD0271E
              DISPLAY 'FLD0271E  ==> ' FLD0271E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0271E.
           IF FLD0272B (1:)    NOT EQUAL XPC-FLD0272B
              DISPLAY 'FLD0272B ==> ' HEX-OF (FLD0272B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0272B).
           IF FLD0272E   NOT EQUAL XPC-FLD0272E
              DISPLAY 'FLD0272E  ==> ' FLD0272E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0272E.
           IF FLD0273B (1:)    NOT EQUAL XPC-FLD0273B
              DISPLAY 'FLD0273B ==> ' HEX-OF (FLD0273B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0273B).
           IF FLD0273E   NOT EQUAL XPC-FLD0273E
              DISPLAY 'FLD0273E  ==> ' FLD0273E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0273E.
           IF FLD0274B (1:)    NOT EQUAL XPC-FLD0274B
              DISPLAY 'FLD0274B ==> ' HEX-OF (FLD0274B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0274B).
           IF FLD0274E   NOT EQUAL XPC-FLD0274E
              DISPLAY 'FLD0274E  ==> ' FLD0274E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0274E.
           IF FLD0275B (1:)    NOT EQUAL XPC-FLD0275B
              DISPLAY 'FLD0275B ==> ' HEX-OF (FLD0275B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0275B).
           IF FLD0275E   NOT EQUAL XPC-FLD0275E
              DISPLAY 'FLD0275E  ==> ' FLD0275E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0275E.
           IF FLD0276B (1:)    NOT EQUAL XPC-FLD0276B
              DISPLAY 'FLD0276B ==> ' HEX-OF (FLD0276B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0276B).
           IF FLD0276E   NOT EQUAL XPC-FLD0276E
              DISPLAY 'FLD0276E  ==> ' FLD0276E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0276E.
           IF FLD0277B (1:)    NOT EQUAL XPC-FLD0277B
              DISPLAY 'FLD0277B ==> ' HEX-OF (FLD0277B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0277B).
           IF FLD0277E   NOT EQUAL XPC-FLD0277E
              DISPLAY 'FLD0277E  ==> ' FLD0277E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0277E.
           IF FLD0278B (1:)    NOT EQUAL XPC-FLD0278B
              DISPLAY 'FLD0278B ==> ' HEX-OF (FLD0278B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0278B).
           IF FLD0278E   NOT EQUAL XPC-FLD0278E
              DISPLAY 'FLD0278E  ==> ' FLD0278E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0278E.
           IF FLD0279B (1:)    NOT EQUAL XPC-FLD0279B
              DISPLAY 'FLD0279B ==> ' HEX-OF (FLD0279B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0279B).
           IF FLD0279E   NOT EQUAL XPC-FLD0279E
              DISPLAY 'FLD0279E  ==> ' FLD0279E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0279E.
           IF FLD0280B (1:)    NOT EQUAL XPC-FLD0280B
              DISPLAY 'FLD0280B ==> ' HEX-OF (FLD0280B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0280B).
           IF FLD0280E   NOT EQUAL XPC-FLD0280E
              DISPLAY 'FLD0280E  ==> ' FLD0280E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0280E.
           IF FLD0281B (1:)    NOT EQUAL XPC-FLD0281B
              DISPLAY 'FLD0281B ==> ' HEX-OF (FLD0281B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0281B).
           IF FLD0281E   NOT EQUAL XPC-FLD0281E
              DISPLAY 'FLD0281E  ==> ' FLD0281E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0281E.
           IF FLD0282B (1:)    NOT EQUAL XPC-FLD0282B
              DISPLAY 'FLD0282B ==> ' HEX-OF (FLD0282B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0282B).
           IF FLD0282E   NOT EQUAL XPC-FLD0282E
              DISPLAY 'FLD0282E  ==> ' FLD0282E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0282E.
           IF FLD0283B (1:)    NOT EQUAL XPC-FLD0283B
              DISPLAY 'FLD0283B ==> ' HEX-OF (FLD0283B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0283B).
           IF FLD0283E   NOT EQUAL XPC-FLD0283E
              DISPLAY 'FLD0283E  ==> ' FLD0283E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0283E.
           IF FLD0284B (1:)    NOT EQUAL XPC-FLD0284B
              DISPLAY 'FLD0284B ==> ' HEX-OF (FLD0284B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0284B).
           IF FLD0284E   NOT EQUAL XPC-FLD0284E
              DISPLAY 'FLD0284E  ==> ' FLD0284E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0284E.
           IF FLD0285B (1:)    NOT EQUAL XPC-FLD0285B
              DISPLAY 'FLD0285B ==> ' HEX-OF (FLD0285B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0285B).
           IF FLD0285E   NOT EQUAL XPC-FLD0285E
              DISPLAY 'FLD0285E  ==> ' FLD0285E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0285E.
           IF FLD0286B (1:)    NOT EQUAL XPC-FLD0286B
              DISPLAY 'FLD0286B ==> ' HEX-OF (FLD0286B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0286B).
           IF FLD0286E   NOT EQUAL XPC-FLD0286E
              DISPLAY 'FLD0286E  ==> ' FLD0286E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0286E.
           IF FLD0287B (1:)    NOT EQUAL XPC-FLD0287B
              DISPLAY 'FLD0287B ==> ' HEX-OF (FLD0287B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0287B).
           IF FLD0287E   NOT EQUAL XPC-FLD0287E
              DISPLAY 'FLD0287E  ==> ' FLD0287E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0287E.
           IF FLD0288B (1:)    NOT EQUAL XPC-FLD0288B
              DISPLAY 'FLD0288B ==> ' HEX-OF (FLD0288B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0288B).
           IF FLD0288E   NOT EQUAL XPC-FLD0288E
              DISPLAY 'FLD0288E  ==> ' FLD0288E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0288E.
           IF FLD0289B (1:)    NOT EQUAL XPC-FLD0289B
              DISPLAY 'FLD0289B ==> ' HEX-OF (FLD0289B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0289B).
           IF FLD0289E   NOT EQUAL XPC-FLD0289E
              DISPLAY 'FLD0289E  ==> ' FLD0289E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0289E.
           IF FLD0290B (1:)    NOT EQUAL XPC-FLD0290B
              DISPLAY 'FLD0290B ==> ' HEX-OF (FLD0290B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0290B).
           IF FLD0290E   NOT EQUAL XPC-FLD0290E
              DISPLAY 'FLD0290E  ==> ' FLD0290E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0290E.
           IF FLD0291B (1:)    NOT EQUAL XPC-FLD0291B
              DISPLAY 'FLD0291B ==> ' HEX-OF (FLD0291B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0291B).
           IF FLD0291E   NOT EQUAL XPC-FLD0291E
              DISPLAY 'FLD0291E  ==> ' FLD0291E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0291E.
           IF FLD0292B (1:)    NOT EQUAL XPC-FLD0292B
              DISPLAY 'FLD0292B ==> ' HEX-OF (FLD0292B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0292B).
           IF FLD0292E   NOT EQUAL XPC-FLD0292E
              DISPLAY 'FLD0292E  ==> ' FLD0292E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0292E.
           IF FLD0293B (1:)    NOT EQUAL XPC-FLD0293B
              DISPLAY 'FLD0293B ==> ' HEX-OF (FLD0293B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0293B).
           IF FLD0293E   NOT EQUAL XPC-FLD0293E
              DISPLAY 'FLD0293E  ==> ' FLD0293E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0293E.
           IF FLD0294B (1:)    NOT EQUAL XPC-FLD0294B
              DISPLAY 'FLD0294B ==> ' HEX-OF (FLD0294B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0294B).
           IF FLD0294E   NOT EQUAL XPC-FLD0294E
              DISPLAY 'FLD0294E  ==> ' FLD0294E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0294E.
           IF FLD0295B (1:)    NOT EQUAL XPC-FLD0295B
              DISPLAY 'FLD0295B ==> ' HEX-OF (FLD0295B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0295B).
           IF FLD0295E   NOT EQUAL XPC-FLD0295E
              DISPLAY 'FLD0295E  ==> ' FLD0295E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0295E.
           IF FLD0296B (1:)    NOT EQUAL XPC-FLD0296B
              DISPLAY 'FLD0296B ==> ' HEX-OF (FLD0296B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0296B).
           IF FLD0296E   NOT EQUAL XPC-FLD0296E
              DISPLAY 'FLD0296E  ==> ' FLD0296E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0296E.
           IF FLD0297B (1:)    NOT EQUAL XPC-FLD0297B
              DISPLAY 'FLD0297B ==> ' HEX-OF (FLD0297B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0297B).
           IF FLD0297E   NOT EQUAL XPC-FLD0297E
              DISPLAY 'FLD0297E  ==> ' FLD0297E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0297E.
           IF FLD0298B (1:)    NOT EQUAL XPC-FLD0298B
              DISPLAY 'FLD0298B ==> ' HEX-OF (FLD0298B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0298B).
           IF FLD0298E   NOT EQUAL XPC-FLD0298E
              DISPLAY 'FLD0298E  ==> ' FLD0298E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0298E.
           IF FLD0299B (1:)    NOT EQUAL XPC-FLD0299B
              DISPLAY 'FLD0299B ==> ' HEX-OF (FLD0299B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0299B).
           IF FLD0299E   NOT EQUAL XPC-FLD0299E
              DISPLAY 'FLD0299E  ==> ' FLD0299E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0299E.
           IF FLD0300B (1:)    NOT EQUAL XPC-FLD0300B
              DISPLAY 'FLD0300B ==> ' HEX-OF (FLD0300B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0300B).
           IF FLD0300E   NOT EQUAL XPC-FLD0300E
              DISPLAY 'FLD0300E  ==> ' FLD0300E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0300E.
           IF FLD0301B (1:)    NOT EQUAL XPC-FLD0301B
              DISPLAY 'FLD0301B ==> ' HEX-OF (FLD0301B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0301B).
           IF FLD0301E   NOT EQUAL XPC-FLD0301E
              DISPLAY 'FLD0301E  ==> ' FLD0301E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0301E.
           IF FLD0302B (1:)    NOT EQUAL XPC-FLD0302B
              DISPLAY 'FLD0302B ==> ' HEX-OF (FLD0302B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0302B).
           IF FLD0302E   NOT EQUAL XPC-FLD0302E
              DISPLAY 'FLD0302E  ==> ' FLD0302E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0302E.
           IF FLD0303B (1:)    NOT EQUAL XPC-FLD0303B
              DISPLAY 'FLD0303B ==> ' HEX-OF (FLD0303B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0303B).
           IF FLD0303E   NOT EQUAL XPC-FLD0303E
              DISPLAY 'FLD0303E  ==> ' FLD0303E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0303E.
           IF FLD0304B (1:)    NOT EQUAL XPC-FLD0304B
              DISPLAY 'FLD0304B ==> ' HEX-OF (FLD0304B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0304B).
           IF FLD0304E   NOT EQUAL XPC-FLD0304E
              DISPLAY 'FLD0304E  ==> ' FLD0304E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0304E.
           IF FLD0305B (1:)    NOT EQUAL XPC-FLD0305B
              DISPLAY 'FLD0305B ==> ' HEX-OF (FLD0305B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0305B).
           IF FLD0305E   NOT EQUAL XPC-FLD0305E
              DISPLAY 'FLD0305E  ==> ' FLD0305E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0305E.
           IF FLD0306B (1:)    NOT EQUAL XPC-FLD0306B
              DISPLAY 'FLD0306B ==> ' HEX-OF (FLD0306B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0306B).
           IF FLD0306E   NOT EQUAL XPC-FLD0306E
              DISPLAY 'FLD0306E  ==> ' FLD0306E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0306E.
           IF FLD0307B (1:)    NOT EQUAL XPC-FLD0307B
              DISPLAY 'FLD0307B ==> ' HEX-OF (FLD0307B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0307B).
           IF FLD0307E   NOT EQUAL XPC-FLD0307E
              DISPLAY 'FLD0307E  ==> ' FLD0307E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0307E.
           IF FLD0308B (1:)    NOT EQUAL XPC-FLD0308B
              DISPLAY 'FLD0308B ==> ' HEX-OF (FLD0308B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0308B).
           IF FLD0308E   NOT EQUAL XPC-FLD0308E
              DISPLAY 'FLD0308E  ==> ' FLD0308E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0308E.
           IF FLD0309B (1:)    NOT EQUAL XPC-FLD0309B
              DISPLAY 'FLD0309B ==> ' HEX-OF (FLD0309B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0309B).
           IF FLD0309E   NOT EQUAL XPC-FLD0309E
              DISPLAY 'FLD0309E  ==> ' FLD0309E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0309E.
           IF FLD0310B (1:)    NOT EQUAL XPC-FLD0310B
              DISPLAY 'FLD0310B ==> ' HEX-OF (FLD0310B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0310B).
           IF FLD0310E   NOT EQUAL XPC-FLD0310E
              DISPLAY 'FLD0310E  ==> ' FLD0310E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0310E.
           IF FLD0311B (1:)    NOT EQUAL XPC-FLD0311B
              DISPLAY 'FLD0311B ==> ' HEX-OF (FLD0311B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0311B).
           IF FLD0311E   NOT EQUAL XPC-FLD0311E
              DISPLAY 'FLD0311E  ==> ' FLD0311E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0311E.
           IF FLD0312B (1:)    NOT EQUAL XPC-FLD0312B
              DISPLAY 'FLD0312B ==> ' HEX-OF (FLD0312B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0312B).
           IF FLD0312E   NOT EQUAL XPC-FLD0312E
              DISPLAY 'FLD0312E  ==> ' FLD0312E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0312E.
           IF FLD0313B (1:)    NOT EQUAL XPC-FLD0313B
              DISPLAY 'FLD0313B ==> ' HEX-OF (FLD0313B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0313B).
           IF FLD0313E   NOT EQUAL XPC-FLD0313E
              DISPLAY 'FLD0313E  ==> ' FLD0313E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0313E.
           IF FLD0314B (1:)    NOT EQUAL XPC-FLD0314B
              DISPLAY 'FLD0314B ==> ' HEX-OF (FLD0314B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0314B).
           IF FLD0314E   NOT EQUAL XPC-FLD0314E
              DISPLAY 'FLD0314E  ==> ' FLD0314E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0314E.
           IF FLD0315B (1:)    NOT EQUAL XPC-FLD0315B
              DISPLAY 'FLD0315B ==> ' HEX-OF (FLD0315B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0315B).
           IF FLD0315E   NOT EQUAL XPC-FLD0315E
              DISPLAY 'FLD0315E  ==> ' FLD0315E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0315E.
           IF FLD0316B (1:)    NOT EQUAL XPC-FLD0316B
              DISPLAY 'FLD0316B ==> ' HEX-OF (FLD0316B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0316B).
           IF FLD0316E   NOT EQUAL XPC-FLD0316E
              DISPLAY 'FLD0316E  ==> ' FLD0316E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0316E.
           IF FLD0317B (1:)    NOT EQUAL XPC-FLD0317B
              DISPLAY 'FLD0317B ==> ' HEX-OF (FLD0317B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0317B).
           IF FLD0317E   NOT EQUAL XPC-FLD0317E
              DISPLAY 'FLD0317E  ==> ' FLD0317E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0317E.
           IF FLD0318B (1:)    NOT EQUAL XPC-FLD0318B
              DISPLAY 'FLD0318B ==> ' HEX-OF (FLD0318B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0318B).
           IF FLD0318E   NOT EQUAL XPC-FLD0318E
              DISPLAY 'FLD0318E  ==> ' FLD0318E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0318E.
           IF FLD0319B (1:)    NOT EQUAL XPC-FLD0319B
              DISPLAY 'FLD0319B ==> ' HEX-OF (FLD0319B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0319B).
           IF FLD0319E   NOT EQUAL XPC-FLD0319E
              DISPLAY 'FLD0319E  ==> ' FLD0319E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0319E.
           IF FLD0320B (1:)    NOT EQUAL XPC-FLD0320B
              DISPLAY 'FLD0320B ==> ' HEX-OF (FLD0320B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0320B).
           IF FLD0320E   NOT EQUAL XPC-FLD0320E
              DISPLAY 'FLD0320E  ==> ' FLD0320E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0320E.
           IF FLD0321B (1:)    NOT EQUAL XPC-FLD0321B
              DISPLAY 'FLD0321B ==> ' HEX-OF (FLD0321B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0321B).
           IF FLD0321E   NOT EQUAL XPC-FLD0321E
              DISPLAY 'FLD0321E  ==> ' FLD0321E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0321E.
           IF FLD0322B (1:)    NOT EQUAL XPC-FLD0322B
              DISPLAY 'FLD0322B ==> ' HEX-OF (FLD0322B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0322B).
           IF FLD0322E   NOT EQUAL XPC-FLD0322E
              DISPLAY 'FLD0322E  ==> ' FLD0322E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0322E.
           IF FLD0323B (1:)    NOT EQUAL XPC-FLD0323B
              DISPLAY 'FLD0323B ==> ' HEX-OF (FLD0323B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0323B).
           IF FLD0323E   NOT EQUAL XPC-FLD0323E
              DISPLAY 'FLD0323E  ==> ' FLD0323E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0323E.
           IF FLD0324B (1:)    NOT EQUAL XPC-FLD0324B
              DISPLAY 'FLD0324B ==> ' HEX-OF (FLD0324B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0324B).
           IF FLD0324E   NOT EQUAL XPC-FLD0324E
              DISPLAY 'FLD0324E  ==> ' FLD0324E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0324E.
           IF FLD0325B (1:)    NOT EQUAL XPC-FLD0325B
              DISPLAY 'FLD0325B ==> ' HEX-OF (FLD0325B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0325B).
           IF FLD0325E   NOT EQUAL XPC-FLD0325E
              DISPLAY 'FLD0325E  ==> ' FLD0325E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0325E.
           IF FLD0326B (1:)    NOT EQUAL XPC-FLD0326B
              DISPLAY 'FLD0326B ==> ' HEX-OF (FLD0326B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0326B).
           IF FLD0326E   NOT EQUAL XPC-FLD0326E
              DISPLAY 'FLD0326E  ==> ' FLD0326E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0326E.
           IF FLD0327B (1:)    NOT EQUAL XPC-FLD0327B
              DISPLAY 'FLD0327B ==> ' HEX-OF (FLD0327B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0327B).
           IF FLD0327E   NOT EQUAL XPC-FLD0327E
              DISPLAY 'FLD0327E  ==> ' FLD0327E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0327E.
           IF FLD0328B (1:)    NOT EQUAL XPC-FLD0328B
              DISPLAY 'FLD0328B ==> ' HEX-OF (FLD0328B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0328B).
           IF FLD0328E   NOT EQUAL XPC-FLD0328E
              DISPLAY 'FLD0328E  ==> ' FLD0328E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0328E.
           IF FLD0329B (1:)    NOT EQUAL XPC-FLD0329B
              DISPLAY 'FLD0329B ==> ' HEX-OF (FLD0329B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0329B).
           IF FLD0329E   NOT EQUAL XPC-FLD0329E
              DISPLAY 'FLD0329E  ==> ' FLD0329E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0329E.
           IF FLD0330B (1:)    NOT EQUAL XPC-FLD0330B
              DISPLAY 'FLD0330B ==> ' HEX-OF (FLD0330B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0330B).
           IF FLD0330E   NOT EQUAL XPC-FLD0330E
              DISPLAY 'FLD0330E  ==> ' FLD0330E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0330E.
           IF FLD0331B (1:)    NOT EQUAL XPC-FLD0331B
              DISPLAY 'FLD0331B ==> ' HEX-OF (FLD0331B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0331B).
           IF FLD0331E   NOT EQUAL XPC-FLD0331E
              DISPLAY 'FLD0331E  ==> ' FLD0331E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0331E.
           IF FLD0332B (1:)    NOT EQUAL XPC-FLD0332B
              DISPLAY 'FLD0332B ==> ' HEX-OF (FLD0332B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0332B).
           IF FLD0332E   NOT EQUAL XPC-FLD0332E
              DISPLAY 'FLD0332E  ==> ' FLD0332E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0332E.
           IF FLD0333B (1:)    NOT EQUAL XPC-FLD0333B
              DISPLAY 'FLD0333B ==> ' HEX-OF (FLD0333B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0333B).
           IF FLD0333E   NOT EQUAL XPC-FLD0333E
              DISPLAY 'FLD0333E  ==> ' FLD0333E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0333E.
           IF FLD0334B (1:)    NOT EQUAL XPC-FLD0334B
              DISPLAY 'FLD0334B ==> ' HEX-OF (FLD0334B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0334B).
           IF FLD0334E   NOT EQUAL XPC-FLD0334E
              DISPLAY 'FLD0334E  ==> ' FLD0334E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0334E.
           IF FLD0335B (1:)    NOT EQUAL XPC-FLD0335B
              DISPLAY 'FLD0335B ==> ' HEX-OF (FLD0335B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0335B).
           IF FLD0335E   NOT EQUAL XPC-FLD0335E
              DISPLAY 'FLD0335E  ==> ' FLD0335E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0335E.
           IF FLD0336B (1:)    NOT EQUAL XPC-FLD0336B
              DISPLAY 'FLD0336B ==> ' HEX-OF (FLD0336B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0336B).
           IF FLD0336E   NOT EQUAL XPC-FLD0336E
              DISPLAY 'FLD0336E  ==> ' FLD0336E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0336E.
           IF FLD0337B (1:)    NOT EQUAL XPC-FLD0337B
              DISPLAY 'FLD0337B ==> ' HEX-OF (FLD0337B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0337B).
           IF FLD0337E   NOT EQUAL XPC-FLD0337E
              DISPLAY 'FLD0337E  ==> ' FLD0337E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0337E.
           IF FLD0338B (1:)    NOT EQUAL XPC-FLD0338B
              DISPLAY 'FLD0338B ==> ' HEX-OF (FLD0338B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0338B).
           IF FLD0338E   NOT EQUAL XPC-FLD0338E
              DISPLAY 'FLD0338E  ==> ' FLD0338E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0338E.
           IF FLD0339B (1:)    NOT EQUAL XPC-FLD0339B
              DISPLAY 'FLD0339B ==> ' HEX-OF (FLD0339B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0339B).
           IF FLD0339E   NOT EQUAL XPC-FLD0339E
              DISPLAY 'FLD0339E  ==> ' FLD0339E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0339E.
           IF FLD0340B (1:)    NOT EQUAL XPC-FLD0340B
              DISPLAY 'FLD0340B ==> ' HEX-OF (FLD0340B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0340B).
           IF FLD0340E   NOT EQUAL XPC-FLD0340E
              DISPLAY 'FLD0340E  ==> ' FLD0340E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0340E.
           IF FLD0341B (1:)    NOT EQUAL XPC-FLD0341B
              DISPLAY 'FLD0341B ==> ' HEX-OF (FLD0341B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0341B).
           IF FLD0341E   NOT EQUAL XPC-FLD0341E
              DISPLAY 'FLD0341E  ==> ' FLD0341E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0341E.
           IF FLD0342B (1:)    NOT EQUAL XPC-FLD0342B
              DISPLAY 'FLD0342B ==> ' HEX-OF (FLD0342B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0342B).
           IF FLD0342E   NOT EQUAL XPC-FLD0342E
              DISPLAY 'FLD0342E  ==> ' FLD0342E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0342E.
           IF FLD0343B (1:)    NOT EQUAL XPC-FLD0343B
              DISPLAY 'FLD0343B ==> ' HEX-OF (FLD0343B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0343B).
           IF FLD0343E   NOT EQUAL XPC-FLD0343E
              DISPLAY 'FLD0343E  ==> ' FLD0343E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0343E.
           IF FLD0344B (1:)    NOT EQUAL XPC-FLD0344B
              DISPLAY 'FLD0344B ==> ' HEX-OF (FLD0344B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0344B).
           IF FLD0344E   NOT EQUAL XPC-FLD0344E
              DISPLAY 'FLD0344E  ==> ' FLD0344E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0344E.
           IF FLD0345B (1:)    NOT EQUAL XPC-FLD0345B
              DISPLAY 'FLD0345B ==> ' HEX-OF (FLD0345B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0345B).
           IF FLD0345E   NOT EQUAL XPC-FLD0345E
              DISPLAY 'FLD0345E  ==> ' FLD0345E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0345E.
           IF FLD0346B (1:)    NOT EQUAL XPC-FLD0346B
              DISPLAY 'FLD0346B ==> ' HEX-OF (FLD0346B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0346B).
           IF FLD0346E   NOT EQUAL XPC-FLD0346E
              DISPLAY 'FLD0346E  ==> ' FLD0346E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0346E.
           IF FLD0347B (1:)    NOT EQUAL XPC-FLD0347B
              DISPLAY 'FLD0347B ==> ' HEX-OF (FLD0347B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0347B).
           IF FLD0347E   NOT EQUAL XPC-FLD0347E
              DISPLAY 'FLD0347E  ==> ' FLD0347E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0347E.
           IF FLD0348B (1:)    NOT EQUAL XPC-FLD0348B
              DISPLAY 'FLD0348B ==> ' HEX-OF (FLD0348B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0348B).
           IF FLD0348E   NOT EQUAL XPC-FLD0348E
              DISPLAY 'FLD0348E  ==> ' FLD0348E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0348E.
           IF FLD0349B (1:)    NOT EQUAL XPC-FLD0349B
              DISPLAY 'FLD0349B ==> ' HEX-OF (FLD0349B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0349B).
           IF FLD0349E   NOT EQUAL XPC-FLD0349E
              DISPLAY 'FLD0349E  ==> ' FLD0349E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0349E.
           IF FLD0350B (1:)    NOT EQUAL XPC-FLD0350B
              DISPLAY 'FLD0350B ==> ' HEX-OF (FLD0350B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0350B).
           IF FLD0350E   NOT EQUAL XPC-FLD0350E
              DISPLAY 'FLD0350E  ==> ' FLD0350E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0350E.
           IF FLD0351B (1:)    NOT EQUAL XPC-FLD0351B
              DISPLAY 'FLD0351B ==> ' HEX-OF (FLD0351B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0351B).
           IF FLD0351E   NOT EQUAL XPC-FLD0351E
              DISPLAY 'FLD0351E  ==> ' FLD0351E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0351E.
           IF FLD0352B (1:)    NOT EQUAL XPC-FLD0352B
              DISPLAY 'FLD0352B ==> ' HEX-OF (FLD0352B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0352B).
           IF FLD0352E   NOT EQUAL XPC-FLD0352E
              DISPLAY 'FLD0352E  ==> ' FLD0352E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0352E.
           IF FLD0353B (1:)    NOT EQUAL XPC-FLD0353B
              DISPLAY 'FLD0353B ==> ' HEX-OF (FLD0353B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0353B).
           IF FLD0353E   NOT EQUAL XPC-FLD0353E
              DISPLAY 'FLD0353E  ==> ' FLD0353E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0353E.
           IF FLD0354B (1:)    NOT EQUAL XPC-FLD0354B
              DISPLAY 'FLD0354B ==> ' HEX-OF (FLD0354B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0354B).
           IF FLD0354E   NOT EQUAL XPC-FLD0354E
              DISPLAY 'FLD0354E  ==> ' FLD0354E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0354E.
           IF FLD0355B (1:)    NOT EQUAL XPC-FLD0355B
              DISPLAY 'FLD0355B ==> ' HEX-OF (FLD0355B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0355B).
           IF FLD0355E   NOT EQUAL XPC-FLD0355E
              DISPLAY 'FLD0355E  ==> ' FLD0355E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0355E.
           IF FLD0356B (1:)    NOT EQUAL XPC-FLD0356B
              DISPLAY 'FLD0356B ==> ' HEX-OF (FLD0356B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0356B).
           IF FLD0356E   NOT EQUAL XPC-FLD0356E
              DISPLAY 'FLD0356E  ==> ' FLD0356E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0356E.
           IF FLD0357B (1:)    NOT EQUAL XPC-FLD0357B
              DISPLAY 'FLD0357B ==> ' HEX-OF (FLD0357B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0357B).
           IF FLD0357E   NOT EQUAL XPC-FLD0357E
              DISPLAY 'FLD0357E  ==> ' FLD0357E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0357E.
           IF FLD0358B (1:)    NOT EQUAL XPC-FLD0358B
              DISPLAY 'FLD0358B ==> ' HEX-OF (FLD0358B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0358B).
           IF FLD0358E   NOT EQUAL XPC-FLD0358E
              DISPLAY 'FLD0358E  ==> ' FLD0358E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0358E.
           IF FLD0359B (1:)    NOT EQUAL XPC-FLD0359B
              DISPLAY 'FLD0359B ==> ' HEX-OF (FLD0359B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0359B).
           IF FLD0359E   NOT EQUAL XPC-FLD0359E
              DISPLAY 'FLD0359E  ==> ' FLD0359E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0359E.
           IF FLD0360B (1:)    NOT EQUAL XPC-FLD0360B
              DISPLAY 'FLD0360B ==> ' HEX-OF (FLD0360B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0360B).
           IF FLD0360E   NOT EQUAL XPC-FLD0360E
              DISPLAY 'FLD0360E  ==> ' FLD0360E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0360E.
           IF FLD0361B (1:)    NOT EQUAL XPC-FLD0361B
              DISPLAY 'FLD0361B ==> ' HEX-OF (FLD0361B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0361B).
           IF FLD0361E   NOT EQUAL XPC-FLD0361E
              DISPLAY 'FLD0361E  ==> ' FLD0361E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0361E.
           IF FLD0362B (1:)    NOT EQUAL XPC-FLD0362B
              DISPLAY 'FLD0362B ==> ' HEX-OF (FLD0362B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0362B).
           IF FLD0362E   NOT EQUAL XPC-FLD0362E
              DISPLAY 'FLD0362E  ==> ' FLD0362E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0362E.
           IF FLD0363B (1:)    NOT EQUAL XPC-FLD0363B
              DISPLAY 'FLD0363B ==> ' HEX-OF (FLD0363B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0363B).
           IF FLD0363E   NOT EQUAL XPC-FLD0363E
              DISPLAY 'FLD0363E  ==> ' FLD0363E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0363E.
           IF FLD0364B (1:)    NOT EQUAL XPC-FLD0364B
              DISPLAY 'FLD0364B ==> ' HEX-OF (FLD0364B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0364B).
           IF FLD0364E   NOT EQUAL XPC-FLD0364E
              DISPLAY 'FLD0364E  ==> ' FLD0364E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0364E.
           IF FLD0365B (1:)    NOT EQUAL XPC-FLD0365B
              DISPLAY 'FLD0365B ==> ' HEX-OF (FLD0365B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0365B).
           IF FLD0365E   NOT EQUAL XPC-FLD0365E
              DISPLAY 'FLD0365E  ==> ' FLD0365E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0365E.
           IF FLD0366B (1:)    NOT EQUAL XPC-FLD0366B
              DISPLAY 'FLD0366B ==> ' HEX-OF (FLD0366B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0366B).
           IF FLD0366E   NOT EQUAL XPC-FLD0366E
              DISPLAY 'FLD0366E  ==> ' FLD0366E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0366E.
           IF FLD0367B (1:)    NOT EQUAL XPC-FLD0367B
              DISPLAY 'FLD0367B ==> ' HEX-OF (FLD0367B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0367B).
           IF FLD0367E   NOT EQUAL XPC-FLD0367E
              DISPLAY 'FLD0367E  ==> ' FLD0367E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0367E.
           IF FLD0368B (1:)    NOT EQUAL XPC-FLD0368B
              DISPLAY 'FLD0368B ==> ' HEX-OF (FLD0368B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0368B).
           IF FLD0368E   NOT EQUAL XPC-FLD0368E
              DISPLAY 'FLD0368E  ==> ' FLD0368E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0368E.
           IF FLD0369B (1:)    NOT EQUAL XPC-FLD0369B
              DISPLAY 'FLD0369B ==> ' HEX-OF (FLD0369B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0369B).
           IF FLD0369E   NOT EQUAL XPC-FLD0369E
              DISPLAY 'FLD0369E  ==> ' FLD0369E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0369E.
           IF FLD0370B (1:)    NOT EQUAL XPC-FLD0370B
              DISPLAY 'FLD0370B ==> ' HEX-OF (FLD0370B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0370B).
           IF FLD0370E   NOT EQUAL XPC-FLD0370E
              DISPLAY 'FLD0370E  ==> ' FLD0370E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0370E.
           IF FLD0371B (1:)    NOT EQUAL XPC-FLD0371B
              DISPLAY 'FLD0371B ==> ' HEX-OF (FLD0371B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0371B).
           IF FLD0371E   NOT EQUAL XPC-FLD0371E
              DISPLAY 'FLD0371E  ==> ' FLD0371E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0371E.
           IF FLD0372B (1:)    NOT EQUAL XPC-FLD0372B
              DISPLAY 'FLD0372B ==> ' HEX-OF (FLD0372B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0372B).
           IF FLD0372E   NOT EQUAL XPC-FLD0372E
              DISPLAY 'FLD0372E  ==> ' FLD0372E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0372E.
           IF FLD0373B (1:)    NOT EQUAL XPC-FLD0373B
              DISPLAY 'FLD0373B ==> ' HEX-OF (FLD0373B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0373B).
           IF FLD0373E   NOT EQUAL XPC-FLD0373E
              DISPLAY 'FLD0373E  ==> ' FLD0373E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0373E.
           IF FLD0374B (1:)    NOT EQUAL XPC-FLD0374B
              DISPLAY 'FLD0374B ==> ' HEX-OF (FLD0374B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0374B).
           IF FLD0374E   NOT EQUAL XPC-FLD0374E
              DISPLAY 'FLD0374E  ==> ' FLD0374E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0374E.
           IF FLD0375B (1:)    NOT EQUAL XPC-FLD0375B
              DISPLAY 'FLD0375B ==> ' HEX-OF (FLD0375B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0375B).
           IF FLD0375E   NOT EQUAL XPC-FLD0375E
              DISPLAY 'FLD0375E  ==> ' FLD0375E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0375E.
           IF FLD0376B (1:)    NOT EQUAL XPC-FLD0376B
              DISPLAY 'FLD0376B ==> ' HEX-OF (FLD0376B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0376B).
           IF FLD0376E   NOT EQUAL XPC-FLD0376E
              DISPLAY 'FLD0376E  ==> ' FLD0376E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0376E.
           IF FLD0377B (1:)    NOT EQUAL XPC-FLD0377B
              DISPLAY 'FLD0377B ==> ' HEX-OF (FLD0377B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0377B).
           IF FLD0377E   NOT EQUAL XPC-FLD0377E
              DISPLAY 'FLD0377E  ==> ' FLD0377E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0377E.
           IF FLD0378B (1:)    NOT EQUAL XPC-FLD0378B
              DISPLAY 'FLD0378B ==> ' HEX-OF (FLD0378B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0378B).
           IF FLD0378E   NOT EQUAL XPC-FLD0378E
              DISPLAY 'FLD0378E  ==> ' FLD0378E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0378E.
           IF FLD0379B (1:)    NOT EQUAL XPC-FLD0379B
              DISPLAY 'FLD0379B ==> ' HEX-OF (FLD0379B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0379B).
           IF FLD0379E   NOT EQUAL XPC-FLD0379E
              DISPLAY 'FLD0379E  ==> ' FLD0379E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0379E.
           IF FLD0380B (1:)    NOT EQUAL XPC-FLD0380B
              DISPLAY 'FLD0380B ==> ' HEX-OF (FLD0380B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0380B).
           IF FLD0380E   NOT EQUAL XPC-FLD0380E
              DISPLAY 'FLD0380E  ==> ' FLD0380E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0380E.
           IF FLD0381B (1:)    NOT EQUAL XPC-FLD0381B
              DISPLAY 'FLD0381B ==> ' HEX-OF (FLD0381B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0381B).
           IF FLD0381E   NOT EQUAL XPC-FLD0381E
              DISPLAY 'FLD0381E  ==> ' FLD0381E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0381E.
           IF FLD0382B (1:)    NOT EQUAL XPC-FLD0382B
              DISPLAY 'FLD0382B ==> ' HEX-OF (FLD0382B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0382B).
           IF FLD0382E   NOT EQUAL XPC-FLD0382E
              DISPLAY 'FLD0382E  ==> ' FLD0382E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0382E.
           IF FLD0383B (1:)    NOT EQUAL XPC-FLD0383B
              DISPLAY 'FLD0383B ==> ' HEX-OF (FLD0383B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0383B).
           IF FLD0383E   NOT EQUAL XPC-FLD0383E
              DISPLAY 'FLD0383E  ==> ' FLD0383E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0383E.
           IF FLD0384B (1:)    NOT EQUAL XPC-FLD0384B
              DISPLAY 'FLD0384B ==> ' HEX-OF (FLD0384B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0384B).
           IF FLD0384E   NOT EQUAL XPC-FLD0384E
              DISPLAY 'FLD0384E  ==> ' FLD0384E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0384E.
           IF FLD0385B (1:)    NOT EQUAL XPC-FLD0385B
              DISPLAY 'FLD0385B ==> ' HEX-OF (FLD0385B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0385B).
           IF FLD0385E   NOT EQUAL XPC-FLD0385E
              DISPLAY 'FLD0385E  ==> ' FLD0385E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0385E.
           IF FLD0386B (1:)    NOT EQUAL XPC-FLD0386B
              DISPLAY 'FLD0386B ==> ' HEX-OF (FLD0386B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0386B).
           IF FLD0386E   NOT EQUAL XPC-FLD0386E
              DISPLAY 'FLD0386E  ==> ' FLD0386E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0386E.
           IF FLD0387B (1:)    NOT EQUAL XPC-FLD0387B
              DISPLAY 'FLD0387B ==> ' HEX-OF (FLD0387B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0387B).
           IF FLD0387E   NOT EQUAL XPC-FLD0387E
              DISPLAY 'FLD0387E  ==> ' FLD0387E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0387E.
           IF FLD0388B (1:)    NOT EQUAL XPC-FLD0388B
              DISPLAY 'FLD0388B ==> ' HEX-OF (FLD0388B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0388B).
           IF FLD0388E   NOT EQUAL XPC-FLD0388E
              DISPLAY 'FLD0388E  ==> ' FLD0388E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0388E.
           IF FLD0389B (1:)    NOT EQUAL XPC-FLD0389B
              DISPLAY 'FLD0389B ==> ' HEX-OF (FLD0389B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0389B).
           IF FLD0389E   NOT EQUAL XPC-FLD0389E
              DISPLAY 'FLD0389E  ==> ' FLD0389E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0389E.
           IF FLD0390B (1:)    NOT EQUAL XPC-FLD0390B
              DISPLAY 'FLD0390B ==> ' HEX-OF (FLD0390B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0390B).
           IF FLD0390E   NOT EQUAL XPC-FLD0390E
              DISPLAY 'FLD0390E  ==> ' FLD0390E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0390E.
           IF FLD0391B (1:)    NOT EQUAL XPC-FLD0391B
              DISPLAY 'FLD0391B ==> ' HEX-OF (FLD0391B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0391B).
           IF FLD0391E   NOT EQUAL XPC-FLD0391E
              DISPLAY 'FLD0391E  ==> ' FLD0391E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0391E.
           IF FLD0392B (1:)    NOT EQUAL XPC-FLD0392B
              DISPLAY 'FLD0392B ==> ' HEX-OF (FLD0392B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0392B).
           IF FLD0392E   NOT EQUAL XPC-FLD0392E
              DISPLAY 'FLD0392E  ==> ' FLD0392E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0392E.
           IF FLD0393B (1:)    NOT EQUAL XPC-FLD0393B
              DISPLAY 'FLD0393B ==> ' HEX-OF (FLD0393B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0393B).
           IF FLD0393E   NOT EQUAL XPC-FLD0393E
              DISPLAY 'FLD0393E  ==> ' FLD0393E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0393E.
           IF FLD0394B (1:)    NOT EQUAL XPC-FLD0394B
              DISPLAY 'FLD0394B ==> ' HEX-OF (FLD0394B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0394B).
           IF FLD0394E   NOT EQUAL XPC-FLD0394E
              DISPLAY 'FLD0394E  ==> ' FLD0394E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0394E.
           IF FLD0395B (1:)    NOT EQUAL XPC-FLD0395B
              DISPLAY 'FLD0395B ==> ' HEX-OF (FLD0395B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0395B).
           IF FLD0395E   NOT EQUAL XPC-FLD0395E
              DISPLAY 'FLD0395E  ==> ' FLD0395E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0395E.
           IF FLD0396B (1:)    NOT EQUAL XPC-FLD0396B
              DISPLAY 'FLD0396B ==> ' HEX-OF (FLD0396B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0396B).
           IF FLD0396E   NOT EQUAL XPC-FLD0396E
              DISPLAY 'FLD0396E  ==> ' FLD0396E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0396E.
           IF FLD0397B (1:)    NOT EQUAL XPC-FLD0397B
              DISPLAY 'FLD0397B ==> ' HEX-OF (FLD0397B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0397B).
           IF FLD0397E   NOT EQUAL XPC-FLD0397E
              DISPLAY 'FLD0397E  ==> ' FLD0397E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0397E.
           IF FLD0398B (1:)    NOT EQUAL XPC-FLD0398B
              DISPLAY 'FLD0398B ==> ' HEX-OF (FLD0398B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0398B).
           IF FLD0398E   NOT EQUAL XPC-FLD0398E
              DISPLAY 'FLD0398E  ==> ' FLD0398E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0398E.
           IF FLD0399B (1:)    NOT EQUAL XPC-FLD0399B
              DISPLAY 'FLD0399B ==> ' HEX-OF (FLD0399B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0399B).
           IF FLD0399E   NOT EQUAL XPC-FLD0399E
              DISPLAY 'FLD0399E  ==> ' FLD0399E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0399E.
           IF FLD0400B (1:)    NOT EQUAL XPC-FLD0400B
              DISPLAY 'FLD0400B ==> ' HEX-OF (FLD0400B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0400B).
           IF FLD0400E   NOT EQUAL XPC-FLD0400E
              DISPLAY 'FLD0400E  ==> ' FLD0400E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0400E.
           IF FLD0401B (1:)    NOT EQUAL XPC-FLD0401B
              DISPLAY 'FLD0401B ==> ' HEX-OF (FLD0401B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0401B).
           IF FLD0401E   NOT EQUAL XPC-FLD0401E
              DISPLAY 'FLD0401E  ==> ' FLD0401E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0401E.
           IF FLD0402B (1:)    NOT EQUAL XPC-FLD0402B
              DISPLAY 'FLD0402B ==> ' HEX-OF (FLD0402B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0402B).
           IF FLD0402E   NOT EQUAL XPC-FLD0402E
              DISPLAY 'FLD0402E  ==> ' FLD0402E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0402E.
           IF FLD0403B (1:)    NOT EQUAL XPC-FLD0403B
              DISPLAY 'FLD0403B ==> ' HEX-OF (FLD0403B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0403B).
           IF FLD0403E   NOT EQUAL XPC-FLD0403E
              DISPLAY 'FLD0403E  ==> ' FLD0403E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0403E.
           IF FLD0404B (1:)    NOT EQUAL XPC-FLD0404B
              DISPLAY 'FLD0404B ==> ' HEX-OF (FLD0404B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0404B).
           IF FLD0404E   NOT EQUAL XPC-FLD0404E
              DISPLAY 'FLD0404E  ==> ' FLD0404E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0404E.
           IF FLD0405B (1:)    NOT EQUAL XPC-FLD0405B
              DISPLAY 'FLD0405B ==> ' HEX-OF (FLD0405B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0405B).
           IF FLD0405E   NOT EQUAL XPC-FLD0405E
              DISPLAY 'FLD0405E  ==> ' FLD0405E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0405E.
           IF FLD0406B (1:)    NOT EQUAL XPC-FLD0406B
              DISPLAY 'FLD0406B ==> ' HEX-OF (FLD0406B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0406B).
           IF FLD0406E   NOT EQUAL XPC-FLD0406E
              DISPLAY 'FLD0406E  ==> ' FLD0406E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0406E.
           IF FLD0407B (1:)    NOT EQUAL XPC-FLD0407B
              DISPLAY 'FLD0407B ==> ' HEX-OF (FLD0407B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0407B).
           IF FLD0407E   NOT EQUAL XPC-FLD0407E
              DISPLAY 'FLD0407E  ==> ' FLD0407E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0407E.
           IF FLD0408B (1:)    NOT EQUAL XPC-FLD0408B
              DISPLAY 'FLD0408B ==> ' HEX-OF (FLD0408B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0408B).
           IF FLD0408E   NOT EQUAL XPC-FLD0408E
              DISPLAY 'FLD0408E  ==> ' FLD0408E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0408E.
           IF FLD0409B (1:)    NOT EQUAL XPC-FLD0409B
              DISPLAY 'FLD0409B ==> ' HEX-OF (FLD0409B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0409B).
           IF FLD0409E   NOT EQUAL XPC-FLD0409E
              DISPLAY 'FLD0409E  ==> ' FLD0409E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0409E.
           IF FLD0410B (1:)    NOT EQUAL XPC-FLD0410B
              DISPLAY 'FLD0410B ==> ' HEX-OF (FLD0410B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0410B).
           IF FLD0410E   NOT EQUAL XPC-FLD0410E
              DISPLAY 'FLD0410E  ==> ' FLD0410E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0410E.
           IF FLD0411B (1:)    NOT EQUAL XPC-FLD0411B
              DISPLAY 'FLD0411B ==> ' HEX-OF (FLD0411B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0411B).
           IF FLD0411E   NOT EQUAL XPC-FLD0411E
              DISPLAY 'FLD0411E  ==> ' FLD0411E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0411E.
           IF FLD0412B (1:)    NOT EQUAL XPC-FLD0412B
              DISPLAY 'FLD0412B ==> ' HEX-OF (FLD0412B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0412B).
           IF FLD0412E   NOT EQUAL XPC-FLD0412E
              DISPLAY 'FLD0412E  ==> ' FLD0412E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0412E.
           IF FLD0413B (1:)    NOT EQUAL XPC-FLD0413B
              DISPLAY 'FLD0413B ==> ' HEX-OF (FLD0413B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0413B).
           IF FLD0413E   NOT EQUAL XPC-FLD0413E
              DISPLAY 'FLD0413E  ==> ' FLD0413E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0413E.
           IF FLD0414B (1:)    NOT EQUAL XPC-FLD0414B
              DISPLAY 'FLD0414B ==> ' HEX-OF (FLD0414B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0414B).
           IF FLD0414E   NOT EQUAL XPC-FLD0414E
              DISPLAY 'FLD0414E  ==> ' FLD0414E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0414E.
           IF FLD0415B (1:)    NOT EQUAL XPC-FLD0415B
              DISPLAY 'FLD0415B ==> ' HEX-OF (FLD0415B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0415B).
           IF FLD0415E   NOT EQUAL XPC-FLD0415E
              DISPLAY 'FLD0415E  ==> ' FLD0415E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0415E.
           IF FLD0416B (1:)    NOT EQUAL XPC-FLD0416B
              DISPLAY 'FLD0416B ==> ' HEX-OF (FLD0416B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0416B).
           IF FLD0416E   NOT EQUAL XPC-FLD0416E
              DISPLAY 'FLD0416E  ==> ' FLD0416E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0416E.
           IF FLD0417B (1:)    NOT EQUAL XPC-FLD0417B
              DISPLAY 'FLD0417B ==> ' HEX-OF (FLD0417B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0417B).
           IF FLD0417E   NOT EQUAL XPC-FLD0417E
              DISPLAY 'FLD0417E  ==> ' FLD0417E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0417E.
           IF FLD0418B (1:)    NOT EQUAL XPC-FLD0418B
              DISPLAY 'FLD0418B ==> ' HEX-OF (FLD0418B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0418B).
           IF FLD0418E   NOT EQUAL XPC-FLD0418E
              DISPLAY 'FLD0418E  ==> ' FLD0418E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0418E.
           IF FLD0419B (1:)    NOT EQUAL XPC-FLD0419B
              DISPLAY 'FLD0419B ==> ' HEX-OF (FLD0419B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0419B).
           IF FLD0419E   NOT EQUAL XPC-FLD0419E
              DISPLAY 'FLD0419E  ==> ' FLD0419E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0419E.
           IF FLD0420B (1:)    NOT EQUAL XPC-FLD0420B
              DISPLAY 'FLD0420B ==> ' HEX-OF (FLD0420B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0420B).
           IF FLD0420E   NOT EQUAL XPC-FLD0420E
              DISPLAY 'FLD0420E  ==> ' FLD0420E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0420E.
           IF FLD0421B (1:)    NOT EQUAL XPC-FLD0421B
              DISPLAY 'FLD0421B ==> ' HEX-OF (FLD0421B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0421B).
           IF FLD0421E   NOT EQUAL XPC-FLD0421E
              DISPLAY 'FLD0421E  ==> ' FLD0421E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0421E.
           IF FLD0422B (1:)    NOT EQUAL XPC-FLD0422B
              DISPLAY 'FLD0422B ==> ' HEX-OF (FLD0422B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0422B).
           IF FLD0422E   NOT EQUAL XPC-FLD0422E
              DISPLAY 'FLD0422E  ==> ' FLD0422E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0422E.
           IF FLD0423B (1:)    NOT EQUAL XPC-FLD0423B
              DISPLAY 'FLD0423B ==> ' HEX-OF (FLD0423B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0423B).
           IF FLD0423E   NOT EQUAL XPC-FLD0423E
              DISPLAY 'FLD0423E  ==> ' FLD0423E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0423E.
           IF FLD0424B (1:)    NOT EQUAL XPC-FLD0424B
              DISPLAY 'FLD0424B ==> ' HEX-OF (FLD0424B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0424B).
           IF FLD0424E   NOT EQUAL XPC-FLD0424E
              DISPLAY 'FLD0424E  ==> ' FLD0424E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0424E.
           IF FLD0425B (1:)    NOT EQUAL XPC-FLD0425B
              DISPLAY 'FLD0425B ==> ' HEX-OF (FLD0425B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0425B).
           IF FLD0425E   NOT EQUAL XPC-FLD0425E
              DISPLAY 'FLD0425E  ==> ' FLD0425E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0425E.
           IF FLD0426B (1:)    NOT EQUAL XPC-FLD0426B
              DISPLAY 'FLD0426B ==> ' HEX-OF (FLD0426B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0426B).
           IF FLD0426E   NOT EQUAL XPC-FLD0426E
              DISPLAY 'FLD0426E  ==> ' FLD0426E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0426E.
           IF FLD0427B (1:)    NOT EQUAL XPC-FLD0427B
              DISPLAY 'FLD0427B ==> ' HEX-OF (FLD0427B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0427B).
           IF FLD0427E   NOT EQUAL XPC-FLD0427E
              DISPLAY 'FLD0427E  ==> ' FLD0427E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0427E.
           IF FLD0428B (1:)    NOT EQUAL XPC-FLD0428B
              DISPLAY 'FLD0428B ==> ' HEX-OF (FLD0428B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0428B).
           IF FLD0428E   NOT EQUAL XPC-FLD0428E
              DISPLAY 'FLD0428E  ==> ' FLD0428E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0428E.
           IF FLD0429B (1:)    NOT EQUAL XPC-FLD0429B
              DISPLAY 'FLD0429B ==> ' HEX-OF (FLD0429B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0429B).
           IF FLD0429E   NOT EQUAL XPC-FLD0429E
              DISPLAY 'FLD0429E  ==> ' FLD0429E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0429E.
           IF FLD0430B (1:)    NOT EQUAL XPC-FLD0430B
              DISPLAY 'FLD0430B ==> ' HEX-OF (FLD0430B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0430B).
           IF FLD0430E   NOT EQUAL XPC-FLD0430E
              DISPLAY 'FLD0430E  ==> ' FLD0430E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0430E.
           IF FLD0431B (1:)    NOT EQUAL XPC-FLD0431B
              DISPLAY 'FLD0431B ==> ' HEX-OF (FLD0431B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0431B).
           IF FLD0431E   NOT EQUAL XPC-FLD0431E
              DISPLAY 'FLD0431E  ==> ' FLD0431E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0431E.
           IF FLD0432B (1:)    NOT EQUAL XPC-FLD0432B
              DISPLAY 'FLD0432B ==> ' HEX-OF (FLD0432B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0432B).
           IF FLD0432E   NOT EQUAL XPC-FLD0432E
              DISPLAY 'FLD0432E  ==> ' FLD0432E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0432E.
           IF FLD0433B (1:)    NOT EQUAL XPC-FLD0433B
              DISPLAY 'FLD0433B ==> ' HEX-OF (FLD0433B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0433B).
           IF FLD0433E   NOT EQUAL XPC-FLD0433E
              DISPLAY 'FLD0433E  ==> ' FLD0433E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0433E.
           IF FLD0434B (1:)    NOT EQUAL XPC-FLD0434B
              DISPLAY 'FLD0434B ==> ' HEX-OF (FLD0434B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0434B).
           IF FLD0434E   NOT EQUAL XPC-FLD0434E
              DISPLAY 'FLD0434E  ==> ' FLD0434E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0434E.
           IF FLD0435B (1:)    NOT EQUAL XPC-FLD0435B
              DISPLAY 'FLD0435B ==> ' HEX-OF (FLD0435B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0435B).
           IF FLD0435E   NOT EQUAL XPC-FLD0435E
              DISPLAY 'FLD0435E  ==> ' FLD0435E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0435E.
           IF FLD0436B (1:)    NOT EQUAL XPC-FLD0436B
              DISPLAY 'FLD0436B ==> ' HEX-OF (FLD0436B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0436B).
           IF FLD0436E   NOT EQUAL XPC-FLD0436E
              DISPLAY 'FLD0436E  ==> ' FLD0436E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0436E.
           IF FLD0437B (1:)    NOT EQUAL XPC-FLD0437B
              DISPLAY 'FLD0437B ==> ' HEX-OF (FLD0437B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0437B).
           IF FLD0437E   NOT EQUAL XPC-FLD0437E
              DISPLAY 'FLD0437E  ==> ' FLD0437E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0437E.
           IF FLD0438B (1:)    NOT EQUAL XPC-FLD0438B
              DISPLAY 'FLD0438B ==> ' HEX-OF (FLD0438B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0438B).
           IF FLD0438E   NOT EQUAL XPC-FLD0438E
              DISPLAY 'FLD0438E  ==> ' FLD0438E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0438E.
           IF FLD0439B (1:)    NOT EQUAL XPC-FLD0439B
              DISPLAY 'FLD0439B ==> ' HEX-OF (FLD0439B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0439B).
           IF FLD0439E   NOT EQUAL XPC-FLD0439E
              DISPLAY 'FLD0439E  ==> ' FLD0439E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0439E.
           IF FLD0440B (1:)    NOT EQUAL XPC-FLD0440B
              DISPLAY 'FLD0440B ==> ' HEX-OF (FLD0440B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0440B).
           IF FLD0440E   NOT EQUAL XPC-FLD0440E
              DISPLAY 'FLD0440E  ==> ' FLD0440E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0440E.
           IF FLD0441B (1:)    NOT EQUAL XPC-FLD0441B
              DISPLAY 'FLD0441B ==> ' HEX-OF (FLD0441B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0441B).
           IF FLD0441E   NOT EQUAL XPC-FLD0441E
              DISPLAY 'FLD0441E  ==> ' FLD0441E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0441E.
           IF FLD0442B (1:)    NOT EQUAL XPC-FLD0442B
              DISPLAY 'FLD0442B ==> ' HEX-OF (FLD0442B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0442B).
           IF FLD0442E   NOT EQUAL XPC-FLD0442E
              DISPLAY 'FLD0442E  ==> ' FLD0442E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0442E.
           IF FLD0443B (1:)    NOT EQUAL XPC-FLD0443B
              DISPLAY 'FLD0443B ==> ' HEX-OF (FLD0443B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0443B).
           IF FLD0443E   NOT EQUAL XPC-FLD0443E
              DISPLAY 'FLD0443E  ==> ' FLD0443E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0443E.
           IF FLD0444B (1:)    NOT EQUAL XPC-FLD0444B
              DISPLAY 'FLD0444B ==> ' HEX-OF (FLD0444B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0444B).
           IF FLD0444E   NOT EQUAL XPC-FLD0444E
              DISPLAY 'FLD0444E  ==> ' FLD0444E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0444E.
           IF FLD0445B (1:)    NOT EQUAL XPC-FLD0445B
              DISPLAY 'FLD0445B ==> ' HEX-OF (FLD0445B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0445B).
           IF FLD0445E   NOT EQUAL XPC-FLD0445E
              DISPLAY 'FLD0445E  ==> ' FLD0445E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0445E.
           IF FLD0446B (1:)    NOT EQUAL XPC-FLD0446B
              DISPLAY 'FLD0446B ==> ' HEX-OF (FLD0446B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0446B).
           IF FLD0446E   NOT EQUAL XPC-FLD0446E
              DISPLAY 'FLD0446E  ==> ' FLD0446E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0446E.
           IF FLD0447B (1:)    NOT EQUAL XPC-FLD0447B
              DISPLAY 'FLD0447B ==> ' HEX-OF (FLD0447B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0447B).
           IF FLD0447E   NOT EQUAL XPC-FLD0447E
              DISPLAY 'FLD0447E  ==> ' FLD0447E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0447E.
           IF FLD0448B (1:)    NOT EQUAL XPC-FLD0448B
              DISPLAY 'FLD0448B ==> ' HEX-OF (FLD0448B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0448B).
           IF FLD0448E   NOT EQUAL XPC-FLD0448E
              DISPLAY 'FLD0448E  ==> ' FLD0448E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0448E.
           IF FLD0449B (1:)    NOT EQUAL XPC-FLD0449B
              DISPLAY 'FLD0449B ==> ' HEX-OF (FLD0449B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0449B).
           IF FLD0449E   NOT EQUAL XPC-FLD0449E
              DISPLAY 'FLD0449E  ==> ' FLD0449E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0449E.
           IF FLD0450B (1:)    NOT EQUAL XPC-FLD0450B
              DISPLAY 'FLD0450B ==> ' HEX-OF (FLD0450B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0450B).
           IF FLD0450E   NOT EQUAL XPC-FLD0450E
              DISPLAY 'FLD0450E  ==> ' FLD0450E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0450E.
           IF FLD0451B (1:)    NOT EQUAL XPC-FLD0451B
              DISPLAY 'FLD0451B ==> ' HEX-OF (FLD0451B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0451B).
           IF FLD0451E   NOT EQUAL XPC-FLD0451E
              DISPLAY 'FLD0451E  ==> ' FLD0451E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0451E.
           IF FLD0452B (1:)    NOT EQUAL XPC-FLD0452B
              DISPLAY 'FLD0452B ==> ' HEX-OF (FLD0452B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0452B).
           IF FLD0452E   NOT EQUAL XPC-FLD0452E
              DISPLAY 'FLD0452E  ==> ' FLD0452E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0452E.
           IF FLD0453B (1:)    NOT EQUAL XPC-FLD0453B
              DISPLAY 'FLD0453B ==> ' HEX-OF (FLD0453B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0453B).
           IF FLD0453E   NOT EQUAL XPC-FLD0453E
              DISPLAY 'FLD0453E  ==> ' FLD0453E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0453E.
           IF FLD0454B (1:)    NOT EQUAL XPC-FLD0454B
              DISPLAY 'FLD0454B ==> ' HEX-OF (FLD0454B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0454B).
           IF FLD0454E   NOT EQUAL XPC-FLD0454E
              DISPLAY 'FLD0454E  ==> ' FLD0454E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0454E.
           IF FLD0455B (1:)    NOT EQUAL XPC-FLD0455B
              DISPLAY 'FLD0455B ==> ' HEX-OF (FLD0455B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0455B).
           IF FLD0455E   NOT EQUAL XPC-FLD0455E
              DISPLAY 'FLD0455E  ==> ' FLD0455E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0455E.
           IF FLD0456B (1:)    NOT EQUAL XPC-FLD0456B
              DISPLAY 'FLD0456B ==> ' HEX-OF (FLD0456B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0456B).
           IF FLD0456E   NOT EQUAL XPC-FLD0456E
              DISPLAY 'FLD0456E  ==> ' FLD0456E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0456E.
           IF FLD0457B (1:)    NOT EQUAL XPC-FLD0457B
              DISPLAY 'FLD0457B ==> ' HEX-OF (FLD0457B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0457B).
           IF FLD0457E   NOT EQUAL XPC-FLD0457E
              DISPLAY 'FLD0457E  ==> ' FLD0457E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0457E.
           IF FLD0458B (1:)    NOT EQUAL XPC-FLD0458B
              DISPLAY 'FLD0458B ==> ' HEX-OF (FLD0458B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0458B).
           IF FLD0458E   NOT EQUAL XPC-FLD0458E
              DISPLAY 'FLD0458E  ==> ' FLD0458E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0458E.
           IF FLD0459B (1:)    NOT EQUAL XPC-FLD0459B
              DISPLAY 'FLD0459B ==> ' HEX-OF (FLD0459B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0459B).
           IF FLD0459E   NOT EQUAL XPC-FLD0459E
              DISPLAY 'FLD0459E  ==> ' FLD0459E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0459E.
           IF FLD0460B (1:)    NOT EQUAL XPC-FLD0460B
              DISPLAY 'FLD0460B ==> ' HEX-OF (FLD0460B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0460B).
           IF FLD0460E   NOT EQUAL XPC-FLD0460E
              DISPLAY 'FLD0460E  ==> ' FLD0460E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0460E.
           IF FLD0461B (1:)    NOT EQUAL XPC-FLD0461B
              DISPLAY 'FLD0461B ==> ' HEX-OF (FLD0461B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0461B).
           IF FLD0461E   NOT EQUAL XPC-FLD0461E
              DISPLAY 'FLD0461E  ==> ' FLD0461E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0461E.
           IF FLD0462B (1:)    NOT EQUAL XPC-FLD0462B
              DISPLAY 'FLD0462B ==> ' HEX-OF (FLD0462B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0462B).
           IF FLD0462E   NOT EQUAL XPC-FLD0462E
              DISPLAY 'FLD0462E  ==> ' FLD0462E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0462E.
           IF FLD0463B (1:)    NOT EQUAL XPC-FLD0463B
              DISPLAY 'FLD0463B ==> ' HEX-OF (FLD0463B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0463B).
           IF FLD0463E   NOT EQUAL XPC-FLD0463E
              DISPLAY 'FLD0463E  ==> ' FLD0463E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0463E.
           IF FLD0464B (1:)    NOT EQUAL XPC-FLD0464B
              DISPLAY 'FLD0464B ==> ' HEX-OF (FLD0464B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0464B).
           IF FLD0464E   NOT EQUAL XPC-FLD0464E
              DISPLAY 'FLD0464E  ==> ' FLD0464E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0464E.
           IF FLD0465B (1:)    NOT EQUAL XPC-FLD0465B
              DISPLAY 'FLD0465B ==> ' HEX-OF (FLD0465B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0465B).
           IF FLD0465E   NOT EQUAL XPC-FLD0465E
              DISPLAY 'FLD0465E  ==> ' FLD0465E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0465E.
           IF FLD0466B (1:)    NOT EQUAL XPC-FLD0466B
              DISPLAY 'FLD0466B ==> ' HEX-OF (FLD0466B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0466B).
           IF FLD0466E   NOT EQUAL XPC-FLD0466E
              DISPLAY 'FLD0466E  ==> ' FLD0466E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0466E.
           IF FLD0467B (1:)    NOT EQUAL XPC-FLD0467B
              DISPLAY 'FLD0467B ==> ' HEX-OF (FLD0467B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0467B).
           IF FLD0467E   NOT EQUAL XPC-FLD0467E
              DISPLAY 'FLD0467E  ==> ' FLD0467E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0467E.
           IF FLD0468B (1:)    NOT EQUAL XPC-FLD0468B
              DISPLAY 'FLD0468B ==> ' HEX-OF (FLD0468B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0468B).
           IF FLD0468E   NOT EQUAL XPC-FLD0468E
              DISPLAY 'FLD0468E  ==> ' FLD0468E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0468E.
           IF FLD0469B (1:)    NOT EQUAL XPC-FLD0469B
              DISPLAY 'FLD0469B ==> ' HEX-OF (FLD0469B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0469B).
           IF FLD0469E   NOT EQUAL XPC-FLD0469E
              DISPLAY 'FLD0469E  ==> ' FLD0469E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0469E.
           IF FLD0470B (1:)    NOT EQUAL XPC-FLD0470B
              DISPLAY 'FLD0470B ==> ' HEX-OF (FLD0470B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0470B).
           IF FLD0470E   NOT EQUAL XPC-FLD0470E
              DISPLAY 'FLD0470E  ==> ' FLD0470E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0470E.
           IF FLD0471B (1:)    NOT EQUAL XPC-FLD0471B
              DISPLAY 'FLD0471B ==> ' HEX-OF (FLD0471B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0471B).
           IF FLD0471E   NOT EQUAL XPC-FLD0471E
              DISPLAY 'FLD0471E  ==> ' FLD0471E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0471E.
           IF FLD0472B (1:)    NOT EQUAL XPC-FLD0472B
              DISPLAY 'FLD0472B ==> ' HEX-OF (FLD0472B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0472B).
           IF FLD0472E   NOT EQUAL XPC-FLD0472E
              DISPLAY 'FLD0472E  ==> ' FLD0472E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0472E.
           IF FLD0473B (1:)    NOT EQUAL XPC-FLD0473B
              DISPLAY 'FLD0473B ==> ' HEX-OF (FLD0473B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0473B).
           IF FLD0473E   NOT EQUAL XPC-FLD0473E
              DISPLAY 'FLD0473E  ==> ' FLD0473E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0473E.
           IF FLD0474B (1:)    NOT EQUAL XPC-FLD0474B
              DISPLAY 'FLD0474B ==> ' HEX-OF (FLD0474B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0474B).
           IF FLD0474E   NOT EQUAL XPC-FLD0474E
              DISPLAY 'FLD0474E  ==> ' FLD0474E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0474E.
           IF FLD0475B (1:)    NOT EQUAL XPC-FLD0475B
              DISPLAY 'FLD0475B ==> ' HEX-OF (FLD0475B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0475B).
           IF FLD0475E   NOT EQUAL XPC-FLD0475E
              DISPLAY 'FLD0475E  ==> ' FLD0475E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0475E.
           IF FLD0476B (1:)    NOT EQUAL XPC-FLD0476B
              DISPLAY 'FLD0476B ==> ' HEX-OF (FLD0476B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0476B).
           IF FLD0476E   NOT EQUAL XPC-FLD0476E
              DISPLAY 'FLD0476E  ==> ' FLD0476E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0476E.
           IF FLD0477B (1:)    NOT EQUAL XPC-FLD0477B
              DISPLAY 'FLD0477B ==> ' HEX-OF (FLD0477B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0477B).
           IF FLD0477E   NOT EQUAL XPC-FLD0477E
              DISPLAY 'FLD0477E  ==> ' FLD0477E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0477E.
           IF FLD0478B (1:)    NOT EQUAL XPC-FLD0478B
              DISPLAY 'FLD0478B ==> ' HEX-OF (FLD0478B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0478B).
           IF FLD0478E   NOT EQUAL XPC-FLD0478E
              DISPLAY 'FLD0478E  ==> ' FLD0478E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0478E.
           IF FLD0479B (1:)    NOT EQUAL XPC-FLD0479B
              DISPLAY 'FLD0479B ==> ' HEX-OF (FLD0479B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0479B).
           IF FLD0479E   NOT EQUAL XPC-FLD0479E
              DISPLAY 'FLD0479E  ==> ' FLD0479E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0479E.
           IF FLD0480B (1:)    NOT EQUAL XPC-FLD0480B
              DISPLAY 'FLD0480B ==> ' HEX-OF (FLD0480B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0480B).
           IF FLD0480E   NOT EQUAL XPC-FLD0480E
              DISPLAY 'FLD0480E  ==> ' FLD0480E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0480E.
           IF FLD0481B (1:)    NOT EQUAL XPC-FLD0481B
              DISPLAY 'FLD0481B ==> ' HEX-OF (FLD0481B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0481B).
           IF FLD0481E   NOT EQUAL XPC-FLD0481E
              DISPLAY 'FLD0481E  ==> ' FLD0481E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0481E.
           IF FLD0482B (1:)    NOT EQUAL XPC-FLD0482B
              DISPLAY 'FLD0482B ==> ' HEX-OF (FLD0482B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0482B).
           IF FLD0482E   NOT EQUAL XPC-FLD0482E
              DISPLAY 'FLD0482E  ==> ' FLD0482E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0482E.
           IF FLD0483B (1:)    NOT EQUAL XPC-FLD0483B
              DISPLAY 'FLD0483B ==> ' HEX-OF (FLD0483B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0483B).
           IF FLD0483E   NOT EQUAL XPC-FLD0483E
              DISPLAY 'FLD0483E  ==> ' FLD0483E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0483E.
           IF FLD0484B (1:)    NOT EQUAL XPC-FLD0484B
              DISPLAY 'FLD0484B ==> ' HEX-OF (FLD0484B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0484B).
           IF FLD0484E   NOT EQUAL XPC-FLD0484E
              DISPLAY 'FLD0484E  ==> ' FLD0484E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0484E.
           IF FLD0485B (1:)    NOT EQUAL XPC-FLD0485B
              DISPLAY 'FLD0485B ==> ' HEX-OF (FLD0485B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0485B).
           IF FLD0485E   NOT EQUAL XPC-FLD0485E
              DISPLAY 'FLD0485E  ==> ' FLD0485E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0485E.
           IF FLD0486B (1:)    NOT EQUAL XPC-FLD0486B
              DISPLAY 'FLD0486B ==> ' HEX-OF (FLD0486B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0486B).
           IF FLD0486E   NOT EQUAL XPC-FLD0486E
              DISPLAY 'FLD0486E  ==> ' FLD0486E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0486E.
           IF FLD0487B (1:)    NOT EQUAL XPC-FLD0487B
              DISPLAY 'FLD0487B ==> ' HEX-OF (FLD0487B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0487B).
           IF FLD0487E   NOT EQUAL XPC-FLD0487E
              DISPLAY 'FLD0487E  ==> ' FLD0487E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0487E.
           IF FLD0488B (1:)    NOT EQUAL XPC-FLD0488B
              DISPLAY 'FLD0488B ==> ' HEX-OF (FLD0488B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0488B).
           IF FLD0488E   NOT EQUAL XPC-FLD0488E
              DISPLAY 'FLD0488E  ==> ' FLD0488E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0488E.
           IF FLD0489B (1:)    NOT EQUAL XPC-FLD0489B
              DISPLAY 'FLD0489B ==> ' HEX-OF (FLD0489B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0489B).
           IF FLD0489E   NOT EQUAL XPC-FLD0489E
              DISPLAY 'FLD0489E  ==> ' FLD0489E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0489E.
           IF FLD0490B (1:)    NOT EQUAL XPC-FLD0490B
              DISPLAY 'FLD0490B ==> ' HEX-OF (FLD0490B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0490B).
           IF FLD0490E   NOT EQUAL XPC-FLD0490E
              DISPLAY 'FLD0490E  ==> ' FLD0490E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0490E.
           IF FLD0491B (1:)    NOT EQUAL XPC-FLD0491B
              DISPLAY 'FLD0491B ==> ' HEX-OF (FLD0491B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0491B).
           IF FLD0491E   NOT EQUAL XPC-FLD0491E
              DISPLAY 'FLD0491E  ==> ' FLD0491E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0491E.
           IF FLD0492B (1:)    NOT EQUAL XPC-FLD0492B
              DISPLAY 'FLD0492B ==> ' HEX-OF (FLD0492B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0492B).
           IF FLD0492E   NOT EQUAL XPC-FLD0492E
              DISPLAY 'FLD0492E  ==> ' FLD0492E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0492E.
           IF FLD0493B (1:)    NOT EQUAL XPC-FLD0493B
              DISPLAY 'FLD0493B ==> ' HEX-OF (FLD0493B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0493B).
           IF FLD0493E   NOT EQUAL XPC-FLD0493E
              DISPLAY 'FLD0493E  ==> ' FLD0493E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0493E.
           IF FLD0494B (1:)    NOT EQUAL XPC-FLD0494B
              DISPLAY 'FLD0494B ==> ' HEX-OF (FLD0494B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0494B).
           IF FLD0494E   NOT EQUAL XPC-FLD0494E
              DISPLAY 'FLD0494E  ==> ' FLD0494E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0494E.
           IF FLD0495B (1:)    NOT EQUAL XPC-FLD0495B
              DISPLAY 'FLD0495B ==> ' HEX-OF (FLD0495B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0495B).
           IF FLD0495E   NOT EQUAL XPC-FLD0495E
              DISPLAY 'FLD0495E  ==> ' FLD0495E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0495E.
           IF FLD0496B (1:)    NOT EQUAL XPC-FLD0496B
              DISPLAY 'FLD0496B ==> ' HEX-OF (FLD0496B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0496B).
           IF FLD0496E   NOT EQUAL XPC-FLD0496E
              DISPLAY 'FLD0496E  ==> ' FLD0496E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0496E.
           IF FLD0497B (1:)    NOT EQUAL XPC-FLD0497B
              DISPLAY 'FLD0497B ==> ' HEX-OF (FLD0497B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0497B).
           IF FLD0497E   NOT EQUAL XPC-FLD0497E
              DISPLAY 'FLD0497E  ==> ' FLD0497E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0497E.
           IF FLD0498B (1:)    NOT EQUAL XPC-FLD0498B
              DISPLAY 'FLD0498B ==> ' HEX-OF (FLD0498B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0498B).
           IF FLD0498E   NOT EQUAL XPC-FLD0498E
              DISPLAY 'FLD0498E  ==> ' FLD0498E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0498E.
           IF FLD0499B (1:)    NOT EQUAL XPC-FLD0499B
              DISPLAY 'FLD0499B ==> ' HEX-OF (FLD0499B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0499B).
           IF FLD0499E   NOT EQUAL XPC-FLD0499E
              DISPLAY 'FLD0499E  ==> ' FLD0499E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0499E.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:20531: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:20531"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:20531"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:20532: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:20532"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:20532"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTNR2.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

       77  FLD0500A                       PIC S9(10)V9(08) COMP-3
           VALUE -4830218621.81680639.
       77  FLD0500B                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0500E                       PIC X  VALUE 'N'.

       77  FLD0501A                       PIC  9(09)V9(15) COMP-3
           VALUE  652910855.370784748430423.
       77  FLD0501B                       PIC  9(09)V9(14) COMP-6
           VALUE  628093348.73677369337485.
       77  FLD0501E                       PIC X  VALUE 'N'.

       77  FLD0502A                       PIC  9(03)       COMP-6
           VALUE  079.
       77  FLD0502B                       PIC  9(07)V9(22) COMP-6
           VALUE  7893241.6286150020034995122841.
       77  FLD0502E                       PIC X  VALUE 'N'.

       77  FLD0503A                       PIC  9(10)V9(11) COMP-6
           VALUE  5662523582.77427925159.
       77  FLD0503B                       PIC  9(04)V9(29) COMP-3
           VALUE  8834.70722999726620905391882843105.
       77  FLD0503E                       PIC X  VALUE 'N'.

       77  FLD0504A                       PIC S9(08)V9(02) COMP-3
           VALUE -28360864.01.
       77  FLD0504B                       PIC  9(10)V9(09) COMP-3
           VALUE  5000570062.577901486.
       77  FLD0504E                       PIC X  VALUE 'N'.

       77  FLD0505A                       PIC  9(04)V9(30) COMP-3
           VALUE  9110.332843503369248949752545740921.
       77  FLD0505B                       PIC  9(10)V9(10) COMP-3
           VALUE  5407979633.7587637822.
       77  FLD0505E                       PIC X  VALUE 'N'.

       77  FLD0506A                       PIC  9(10)V9(11) COMP-3
           VALUE  5546838940.35467472960.
       77  FLD0506B                       PIC S9(07)V9(01) COMP-3
           VALUE +2340559.3.
       77  FLD0506E                       PIC X  VALUE 'N'.

       77  FLD0507A                       PIC  9(08)V9(18) COMP-6
           VALUE  70736506.262277043521891073.
       77  FLD0507B                       PIC  9(10)V9(09) COMP-3
           VALUE  5205430142.820132166.
       77  FLD0507E                       PIC X  VALUE 'N'.

       77  FLD0508A                       PIC  9(09)V9(16) COMP-6
           VALUE  658855971.9467786957025623.
       77  FLD0508B                       PIC S9(09)V9(07) COMP-3
           VALUE +444447149.8618901.
       77  FLD0508E                       PIC X  VALUE 'N'.

       77  FLD0509A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0509B                       PIC  9(10)V9(08) COMP-6
           VALUE  4889373386.26299289.
       77  FLD0509E                       PIC X  VALUE 'N'.

       77  FLD0510A                       PIC  9(04)       COMP-6
           VALUE  1295.
       77  FLD0510B                       PIC S9(03)       COMP-3
           VALUE -092.
       77  FLD0510E                       PIC X  VALUE 'N'.

       77  FLD0511A                       PIC  9(06)V9(25) COMP-6
           VALUE  815863.7850571600624860479911149.
       77  FLD0511B                       PIC  9(10)V9(09) COMP-6
           VALUE  5256921146.480894035.
       77  FLD0511E                       PIC X  VALUE 'N'.

       77  FLD0512A                       PIC  9(05)       COMP-6
           VALUE  13945.
       77  FLD0512B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.908282031313487836499120930966455489.
       77  FLD0512E                       PIC X  VALUE 'N'.

       77  FLD0513A                       PIC  9(09)V9(15) COMP-3
           VALUE  653773832.246937192103075.
       77  FLD0513B                       PIC  9(08)V9(20) COMP-3
           VALUE  74124087.47450585089211472222.
       77  FLD0513E                       PIC X  VALUE 'N'.

       77  FLD0514A                       PIC  9(08)V9(18) COMP-3
           VALUE  70109343.593910689040882289.
       77  FLD0514B                       PIC  9(09)V9(04) COMP-6
           VALUE  348891343.2762.
       77  FLD0514E                       PIC X  VALUE 'N'.

       77  FLD0515A                       PIC  9(09)V9(16) COMP-6
           VALUE  658210435.7548693718271692.
       77  FLD0515B                       PIC  9(03)V9(32) COMP-3
           VALUE  941.14524908048735607479784448514692.
       77  FLD0515E                       PIC X  VALUE 'N'.

       77  FLD0516A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.884403805479323734672902901365887373.
       77  FLD0516B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0516E                       PIC X  VALUE 'N'.

       77  FLD0517A                       PIC  9(10)V9(07) COMP-6
           VALUE  4497620438.0577999.
       77  FLD0517B                       PIC S9(10)V9(08) COMP-3
           VALUE -4811021778.48490686.
       77  FLD0517E                       PIC X  VALUE 'N'.

       77  FLD0518A                       PIC  9(09)V9(16) COMP-3
           VALUE  664556684.1155496895510168.
       77  FLD0518B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0518E                       PIC X  VALUE 'N'.

       77  FLD0519A                       PIC  9(09)V9(14) COMP-3
           VALUE  630097608.79846921088898.
       77  FLD0519B                       PIC  9(08)V9(17) COMP-3
           VALUE  68412596.06583623975595287.
       77  FLD0519E                       PIC X  VALUE 'N'.

       77  FLD0520A                       PIC  9(04)V9(30) COMP-6
           VALUE  9052.329380117529744609328190563246.
       77  FLD0520B                       PIC  9(09)V9(14) COMP-3
           VALUE  610604586.65389061305717.
       77  FLD0520E                       PIC X  VALUE 'N'.

       77  FLD0521A                       PIC  9(05)       COMP-6
           VALUE  13956.
       77  FLD0521B                       PIC S9(05)       COMP-3
           VALUE +14099.
       77  FLD0521E                       PIC X  VALUE 'N'.

       77  FLD0522A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0522B                       PIC S9(09)V9(04) COMP-3
           VALUE -351067614.4076.
       77  FLD0522E                       PIC X  VALUE 'N'.

       77  FLD0523A                       PIC  9(08)V9(18) COMP-6
           VALUE  70807149.512639711019801325.
       77  FLD0523B                       PIC S9(08)V9(02) COMP-3
           VALUE -28004002.44.
       77  FLD0523E                       PIC X  VALUE 'N'.

       77  FLD0524A                       PIC S9(06)V9(01) COMP-3
           VALUE +201515.3.
       77  FLD0524B                       PIC  9(10)V9(09) COMP-3
           VALUE  5046210377.505329081.
       77  FLD0524E                       PIC X  VALUE 'N'.

       77  FLD0525A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0525B                       PIC  9(04)V9(29) COMP-6
           VALUE  8873.36156634660588871099662355845.
       77  FLD0525E                       PIC X  VALUE 'N'.

       77  FLD0526A                       PIC  9(07)V9(22) COMP-3
           VALUE  7812896.0072540409864672028561.
       77  FLD0526B                       PIC  9(07)V9(02) COMP-6
           VALUE  2461308.93.
       77  FLD0526E                       PIC X  VALUE 'N'.

       77  FLD0527A                       PIC  9(10)V9(12) COMP-6
           VALUE  5853770318.384275972434.
       77  FLD0527B                       PIC  9(10)V9(09) COMP-3
           VALUE  5140096263.891610339.
       77  FLD0527E                       PIC X  VALUE 'N'.

       77  FLD0528A                       PIC  9(10)V9(08) COMP-6
           VALUE  4856797949.89136714.
       77  FLD0528B                       PIC S9(04)       COMP-3
           VALUE +1207.
       77  FLD0528E                       PIC X  VALUE 'N'.

       77  FLD0529A                       PIC  9(10)V9(10) COMP-6
           VALUE  5298570971.4885653731.
       77  FLD0529B                       PIC S9(10)V9(07) COMP-3
           VALUE -4613280273.7797717.
       77  FLD0529E                       PIC X  VALUE 'N'.

       77  FLD0530A                       PIC  9(05)V9(28) COMP-6
           VALUE  87536.5484141958027919372398173436.
       77  FLD0530B                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0530E                       PIC X  VALUE 'N'.

       77  FLD0531A                       PIC  9(09)V9(03) COMP-6
           VALUE  317487049.751.
       77  FLD0531B                       PIC S9(07)V9(01) COMP-3
           VALUE +2322772.2.
       77  FLD0531E                       PIC X  VALUE 'N'.

       77  FLD0532A                       PIC  9(09)V9(15) COMP-3
           VALUE  653250626.044252880042506.
       77  FLD0532B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0532E                       PIC X  VALUE 'N'.

       77  FLD0533A                       PIC  9(07)V9(02) COMP-6
           VALUE  2559928.55.
       77  FLD0533B                       PIC  9(03)       COMP-6
           VALUE  086.
       77  FLD0533E                       PIC X  VALUE 'N'.

       77  FLD0534A                       PIC  9(09)V9(06) COMP-6
           VALUE  408226706.354108.
       77  FLD0534B                       PIC  9(10)V9(09) COMP-3
           VALUE  5204512753.981520578.
       77  FLD0534E                       PIC X  VALUE 'N'.

       77  FLD0535A                       PIC  9(10)V9(11) COMP-6
           VALUE  5556101599.27967472981.
       77  FLD0535B                       PIC  9(05)V9(27) COMP-3
           VALUE  85335.564071638048133650045201648.
       77  FLD0535E                       PIC X  VALUE 'N'.

       77  FLD0536A                       PIC S9(08)V9(03) COMP-3
           VALUE -29061270.882.
       77  FLD0536B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0536E                       PIC X  VALUE 'N'.

       77  FLD0537A                       PIC  9(08)V9(03) COMP-6
           VALUE  29943354.242.
       77  FLD0537B                       PIC  9(04)       COMP-6
           VALUE  1199.
       77  FLD0537E                       PIC X  VALUE 'N'.

       77  FLD0538A                       PIC  9(03)V9(32) COMP-3
           VALUE  922.29859860523566439383102988358587.
       77  FLD0538B                       PIC  9(04)V9(29) COMP-6
           VALUE  8861.76614320458799767266100388951.
       77  FLD0538E                       PIC X  VALUE 'N'.

       77  FLD0539A                       PIC  9(05)V9(27) COMP-6
           VALUE  85666.721070025741990860979058197.
       77  FLD0539B                       PIC  9(05)V9(27) COMP-3
           VALUE  84375.338828007329095015620623598.
       77  FLD0539E                       PIC X  VALUE 'N'.

       77  FLD0540A                       PIC S9(04)       COMP-3
           VALUE +1227.
       77  FLD0540B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0540E                       PIC X  VALUE 'N'.

       77  FLD0541A                       PIC  9(09)V9(05) COMP-6
           VALUE  387240740.80744.
       77  FLD0541B                       PIC  9(07)V9(22) COMP-6
           VALUE  7676023.3773886621388982121061.
       77  FLD0541E                       PIC X  VALUE 'N'.

       77  FLD0542A                       PIC  9(06)V9(25) COMP-3
           VALUE  831706.5789473143677668076634290.
       77  FLD0542B                       PIC  9(10)V9(11) COMP-3
           VALUE  5532908670.51828949563.
       77  FLD0542E                       PIC X  VALUE 'N'.

       77  FLD0543A                       PIC  9(06)V9(01) COMP-6
           VALUE  188772.9.
       77  FLD0543B                       PIC  9(07)V9(02) COMP-6
           VALUE  2581387.79.
       77  FLD0543E                       PIC X  VALUE 'N'.

       77  FLD0544A                       PIC  9(10)V9(09) COMP-3
           VALUE  5241766194.366106468.
       77  FLD0544B                       PIC  9(08)V9(02) COMP-6
           VALUE  27953166.13.
       77  FLD0544E                       PIC X  VALUE 'N'.

       77  FLD0545A                       PIC  9(09)V9(14) COMP-3
           VALUE  622229285.46684597161942.
       77  FLD0545B                       PIC  9(08)V9(19) COMP-3
           VALUE  72256359.1476747091313370674.
       77  FLD0545E                       PIC X  VALUE 'N'.

       77  FLD0546A                       PIC  9(06)V9(25) COMP-3
           VALUE  820358.8689269564193651262939965.
       77  FLD0546B                       PIC  9(09)V9(14) COMP-3
           VALUE  610779194.05314462508727.
       77  FLD0546E                       PIC X  VALUE 'N'.

       77  FLD0547A                       PIC  9(06)V9(25) COMP-3
           VALUE  821925.7242001770658035297856258.
       77  FLD0547B                       PIC S9(09)V9(04) COMP-3
           VALUE -360691511.9302.
       77  FLD0547E                       PIC X  VALUE 'N'.

       77  FLD0548A                       PIC  9(07)V9(23) COMP-6
           VALUE  7955385.78445739497091437897324.
       77  FLD0548B                       PIC  9(09)V9(17) COMP-6
           VALUE  689149957.90453892343663255.
       77  FLD0548E                       PIC X  VALUE 'N'.

       77  FLD0549A                       PIC  9(07)V9(01) COMP-6
           VALUE  2367856.7.
       77  FLD0549B                       PIC  9(09)V9(06) COMP-6
           VALUE  415548355.051954.
       77  FLD0549E                       PIC X  VALUE 'N'.

       77  FLD0550A                       PIC  9(09)V9(15) COMP-6
           VALUE  656651700.520587522369453.
       77  FLD0550B                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0550E                       PIC X  VALUE 'N'.

       77  FLD0551A                       PIC  9(07)V9(02) COMP-6
           VALUE  2589973.73.
       77  FLD0551B                       PIC  9(09)V9(15) COMP-3
           VALUE  652529070.867454263904505.
       77  FLD0551E                       PIC X  VALUE 'N'.

       77  FLD0552A                       PIC  9(10)V9(07) COMP-6
           VALUE  4579590761.6898545.
       77  FLD0552B                       PIC  9(05)       COMP-6
           VALUE  14745.
       77  FLD0552E                       PIC X  VALUE 'N'.

       77  FLD0553A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0553B                       PIC S9(09)V9(04) COMP-3
           VALUE -360871096.9090.
       77  FLD0553E                       PIC X  VALUE 'N'.

       77  FLD0554A                       PIC  9(07)V9(02) COMP-6
           VALUE  2568219.15.
       77  FLD0554B                       PIC  9(03)V9(32) COMP-3
           VALUE  932.99236247731820448336748086148872.
       77  FLD0554E                       PIC X  VALUE 'N'.

       77  FLD0555A                       PIC  9(09)V9(05) COMP-6
           VALUE  388184875.66560.
       77  FLD0555B                       PIC  9(10)V9(09) COMP-3
           VALUE  5217501857.988002811.
       77  FLD0555E                       PIC X  VALUE 'N'.

       77  FLD0556A                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.209260005348140154524116951506.
       77  FLD0556B                       PIC  9(10)V9(11) COMP-6
           VALUE  5685562200.43860527368.
       77  FLD0556E                       PIC X  VALUE 'N'.

       77  FLD0557A                       PIC  9(09)V9(15) COMP-3
           VALUE  650877011.601572519339242.
       77  FLD0557B                       PIC S9(05)       COMP-3
           VALUE +13329.
       77  FLD0557E                       PIC X  VALUE 'N'.

       77  FLD0558A                       PIC  9(09)V9(13) COMP-6
           VALUE  595830550.3266489999703.
       77  FLD0558B                       PIC  9(06)V9(01) COMP-6
           VALUE  209604.9.
       77  FLD0558E                       PIC X  VALUE 'N'.

       77  FLD0559A                       PIC  9(10)V9(09) COMP-3
           VALUE  5242032248.235551916.
       77  FLD0559B                       PIC  9(07)V9(22) COMP-6
           VALUE  7882034.1791675385678672682843.
       77  FLD0559E                       PIC X  VALUE 'N'.

       77  FLD0560A                       PIC S9(09)V9(06) COMP-3
           VALUE +403640603.914505.
       77  FLD0560B                       PIC  9(09)V9(07) COMP-6
           VALUE  438743115.5223073.
       77  FLD0560E                       PIC X  VALUE 'N'.

       77  FLD0561A                       PIC  9(05)       COMP-6
           VALUE  14931.
       77  FLD0561B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0561E                       PIC X  VALUE 'N'.

       77  FLD0562A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0562B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.8208334412512741096179524902254343.
       77  FLD0562E                       PIC X  VALUE 'N'.

       77  FLD0563A                       PIC  9(10)V9(09) COMP-3
           VALUE  5040974749.501065943.
       77  FLD0563B                       PIC S9(08)V9(03) COMP-3
           VALUE +31252590.212.
       77  FLD0563E                       PIC X  VALUE 'N'.

       77  FLD0564A                       PIC  9(09)V9(16) COMP-6
           VALUE  666123633.8391588462926051.
       77  FLD0564B                       PIC  9(03)V9(32) COMP-6
           VALUE  925.73034981753798966508384182816371.
       77  FLD0564E                       PIC X  VALUE 'N'.

       77  FLD0565A                       PIC  9(04)V9(30) COMP-6
           VALUE  8999.472704059103822515908177592791.
       77  FLD0565B                       PIC  9(06)V9(01) COMP-6
           VALUE  209088.7.
       77  FLD0565E                       PIC X  VALUE 'N'.

       77  FLD0566A                       PIC  9(10)V9(10) COMP-6
           VALUE  5451645287.6426646501.
       77  FLD0566B                       PIC  9(09)V9(03) COMP-6
           VALUE  317445075.017.
       77  FLD0566E                       PIC X  VALUE 'N'.

       77  FLD0567A                       PIC S9(07)V9(02) COMP-3
           VALUE -2621767.34.
       77  FLD0567B                       PIC  9(04)V9(29) COMP-6
           VALUE  8789.70351596639054569948257267242.
       77  FLD0567E                       PIC X  VALUE 'N'.

       77  FLD0568A                       PIC S9(08)V9(02) COMP-3
           VALUE -28119737.76.
       77  FLD0568B                       PIC  9(09)V9(14) COMP-6
           VALUE  616894259.97583058336459.
       77  FLD0568E                       PIC X  VALUE 'N'.

       77  FLD0569A                       PIC  9(10)V9(10) COMP-3
           VALUE  5301098669.5201622875.
       77  FLD0569B                       PIC S9(09)V9(06) COMP-3
           VALUE +421009403.834593.
       77  FLD0569E                       PIC X  VALUE 'N'.

       77  FLD0570A                       PIC  9(05)       COMP-6
           VALUE  13775.
       77  FLD0570B                       PIC  9(08)V9(19) COMP-3
           VALUE  72019797.5322646066764775696.
       77  FLD0570E                       PIC X  VALUE 'N'.

       77  FLD0571A                       PIC  9(10)V9(08) COMP-6
           VALUE  4995844884.12155025.
       77  FLD0571B                       PIC  9(09)V9(16) COMP-6
           VALUE  666328034.4715885039619251.
       77  FLD0571E                       PIC X  VALUE 'N'.

       77  FLD0572A                       PIC  9(06)V9(01) COMP-6
           VALUE  199648.9.
       77  FLD0572B                       PIC S9(06)       COMP-3
           VALUE -163410.
       77  FLD0572E                       PIC X  VALUE 'N'.

       77  FLD0573A                       PIC  9(10)V9(11) COMP-6
           VALUE  5579051586.61930800079.
       77  FLD0573B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.908582147727897915245875992695800960.
       77  FLD0573E                       PIC X  VALUE 'N'.

       77  FLD0574A                       PIC  9(10)V9(09) COMP-3
           VALUE  5021035726.447702352.
       77  FLD0574B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0574E                       PIC X  VALUE 'N'.

       77  FLD0575A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.0495649054037059499933093320578336.
       77  FLD0575B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0575E                       PIC X  VALUE 'N'.

       77  FLD0576A                       PIC  9(09)V9(11) COMP-3
           VALUE  551289746.02273483895.
       77  FLD0576B                       PIC  9(10)V9(10) COMP-6
           VALUE  5275129807.0789420791.
       77  FLD0576E                       PIC X  VALUE 'N'.

       77  FLD0577A                       PIC S9(10)V9(06) COMP-3
           VALUE +4245433083.607936.
       77  FLD0577B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8922152301445405164770363626303151.
       77  FLD0577E                       PIC X  VALUE 'N'.

       77  FLD0578A                       PIC S9(07)V9(02) COMP-3
           VALUE +2444375.29.
       77  FLD0578B                       PIC  9(05)V9(01) COMP-6
           VALUE  16994.3.
       77  FLD0578E                       PIC X  VALUE 'N'.

       77  FLD0579A                       PIC  9(09)V9(17) COMP-6
           VALUE  688719854.55414208576740975.
       77  FLD0579B                       PIC  9(10)V9(09) COMP-3
           VALUE  5219660742.233359629.
       77  FLD0579E                       PIC X  VALUE 'N'.

       77  FLD0580A                       PIC S9(08)V9(04) COMP-3
           VALUE +33455460.0291.
       77  FLD0580B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3840741032953354228141051862621679.
       77  FLD0580E                       PIC X  VALUE 'N'.

       77  FLD0581A                       PIC S9(08)V9(02) COMP-3
           VALUE -28271118.43.
       77  FLD0581B                       PIC  9(09)V9(15) COMP-6
           VALUE  638334092.073881143036828.
       77  FLD0581E                       PIC X  VALUE 'N'.

       77  FLD0582A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.0957041455027018983514608407858759.
       77  FLD0582B                       PIC  9(09)V9(14) COMP-6
           VALUE  628562844.11633944753106.
       77  FLD0582E                       PIC X  VALUE 'N'.

       77  FLD0583A                       PIC  9(04)V9(30) COMP-3
           VALUE  9004.015213488590907431330379040446.
       77  FLD0583B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0583E                       PIC X  VALUE 'N'.

       77  FLD0584A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0584B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5867594557756605766485336062032729.
       77  FLD0584E                       PIC X  VALUE 'N'.

       77  FLD0585A                       PIC S9(10)V9(06) COMP-3
           VALUE +4326355872.600766.
       77  FLD0585B                       PIC  9(03)V9(32) COMP-6
           VALUE  926.67442032915370297985191427869722.
       77  FLD0585E                       PIC X  VALUE 'N'.

       77  FLD0586A                       PIC  9(05)V9(27) COMP-6
           VALUE  85722.001340062370378092282408033.
       77  FLD0586B                       PIC  9(07)V9(22) COMP-6
           VALUE  7865140.9974229868904416207442.
       77  FLD0586E                       PIC X  VALUE 'N'.

       77  FLD0587A                       PIC S9(09)V9(05) COMP-3
           VALUE -381433349.51035.
       77  FLD0587B                       PIC S9(04)       COMP-3
           VALUE +1221.
       77  FLD0587E                       PIC X  VALUE 'N'.

       77  FLD0588A                       PIC  9(10)V9(09) COMP-6
           VALUE  5181115773.570048599.
       77  FLD0588B                       PIC  9(04)V9(30) COMP-3
           VALUE  9002.074772136551272794235956098418.
       77  FLD0588E                       PIC X  VALUE 'N'.

       77  FLD0589A                       PIC S9(09)V9(06) COMP-3
           VALUE +401102073.275349.
       77  FLD0589B                       PIC S9(04)       COMP-3
           VALUE +1219.
       77  FLD0589E                       PIC X  VALUE 'N'.

       77  FLD0590A                       PIC  9(08)V9(18) COMP-3
           VALUE  70309799.830174168899787900.
       77  FLD0590B                       PIC S9(06)V9(01) COMP-3
           VALUE +203587.9.
       77  FLD0590E                       PIC X  VALUE 'N'.

       77  FLD0591A                       PIC  9(09)V9(12) COMP-6
           VALUE  576933255.371857245386.
       77  FLD0591B                       PIC  9(10)V9(09) COMP-3
           VALUE  5123728162.782491546.
       77  FLD0591E                       PIC X  VALUE 'N'.

       77  FLD0592A                       PIC  9(09)V9(15) COMP-3
           VALUE  644514829.253344467829833.
       77  FLD0592B                       PIC S9(08)V9(03) COMP-3
           VALUE -29392268.940.
       77  FLD0592E                       PIC X  VALUE 'N'.

       77  FLD0593A                       PIC  9(08)V9(19) COMP-3
           VALUE  72063942.4137167527995018190.
       77  FLD0593B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0593E                       PIC X  VALUE 'N'.

       77  FLD0594A                       PIC S9(08)V9(02) COMP-3
           VALUE -27405154.91.
       77  FLD0594B                       PIC  9(07)V9(22) COMP-3
           VALUE  7738893.5043103479483050932685.
       77  FLD0594E                       PIC X  VALUE 'N'.

       77  FLD0595A                       PIC  9(08)V9(18) COMP-3
           VALUE  70489201.749069052560514592.
       77  FLD0595B                       PIC  9(06)V9(25) COMP-3
           VALUE  830535.6563477365172687427730124.
       77  FLD0595E                       PIC X  VALUE 'N'.

       77  FLD0596A                       PIC  9(04)V9(30) COMP-6
           VALUE  9050.358418523600789740157779306173.
       77  FLD0596B                       PIC  9(09)V9(15) COMP-6
           VALUE  657865013.656926733709440.
       77  FLD0596E                       PIC X  VALUE 'N'.

       77  FLD0597A                       PIC S9(10)V9(07) COMP-3
           VALUE -4611492066.1642122.
       77  FLD0597B                       PIC  9(06)V9(25) COMP-6
           VALUE  816255.9991782142310157155407068.
       77  FLD0597E                       PIC X  VALUE 'N'.

       77  FLD0598A                       PIC  9(10)V9(12) COMP-6
           VALUE  5888650589.753158248740.
       77  FLD0598B                       PIC S9(09)V9(06) COMP-3
           VALUE +420172956.568651.
       77  FLD0598E                       PIC X  VALUE 'N'.

       77  FLD0599A                       PIC  9(05)V9(27) COMP-6
           VALUE  85689.140306102984379066356268594.
       77  FLD0599B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0599E                       PIC X  VALUE 'N'.

       77  FLD0600A                       PIC S9(09)V9(06) COMP-3
           VALUE +401694362.049109.
       77  FLD0600B                       PIC  9(06)V9(24) COMP-3
           VALUE  804504.375985138686644404515391.
       77  FLD0600E                       PIC X  VALUE 'N'.

       77  FLD0601A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.763793413809590537866256454435642808.
       77  FLD0601B                       PIC  9(08)V9(03) COMP-6
           VALUE  29749803.347.
       77  FLD0601E                       PIC X  VALUE 'N'.

       77  FLD0602A                       PIC  9(09)V9(17) COMP-6
           VALUE  685435627.00727922454291274.
       77  FLD0602B                       PIC  9(07)V9(02) COMP-6
           VALUE  2399467.62.
       77  FLD0602E                       PIC X  VALUE 'N'.

       77  FLD0603A                       PIC  9(09)V9(16) COMP-6
           VALUE  679265807.5584466770280300.
       77  FLD0603B                       PIC S9(05)V9(01) COMP-3
           VALUE -17089.6.
       77  FLD0603E                       PIC X  VALUE 'N'.

       77  FLD0604A                       PIC  9(08)V9(19) COMP-6
           VALUE  72862711.3591577502127449861.
       77  FLD0604B                       PIC  9(10)V9(11) COMP-6
           VALUE  5587264166.34705347341.
       77  FLD0604E                       PIC X  VALUE 'N'.

       77  FLD0605A                       PIC  9(04)       COMP-6
           VALUE  1194.
       77  FLD0605B                       PIC  9(10)V9(06) COMP-6
           VALUE  4256956703.307752.
       77  FLD0605E                       PIC X  VALUE 'N'.

       77  FLD0606A                       PIC  9(07)V9(23) COMP-6
           VALUE  7955557.56926823565144957228767.
       77  FLD0606B                       PIC S9(08)V9(04) COMP-3
           VALUE +33373395.9174.
       77  FLD0606E                       PIC X  VALUE 'N'.

       77  FLD0607A                       PIC  9(10)V9(08) COMP-6
           VALUE  4950511846.00309279.
       77  FLD0607B                       PIC  9(05)       COMP-6
           VALUE  13935.
       77  FLD0607E                       PIC X  VALUE 'N'.

       77  FLD0608A                       PIC  9(09)V9(03) COMP-6
           VALUE  328182518.441.
       77  FLD0608B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.9183130416232931914066739409463480.
       77  FLD0608E                       PIC X  VALUE 'N'.

       77  FLD0609A                       PIC  9(08)V9(04) COMP-6
           VALUE  33948712.4475.
       77  FLD0609B                       PIC  9(10)V9(07) COMP-6
           VALUE  4478674210.4372267.
       77  FLD0609E                       PIC X  VALUE 'N'.

       77  FLD0610A                       PIC  9(06)V9(24) COMP-6
           VALUE  807988.537497822956190418608457.
       77  FLD0610B                       PIC  9(08)V9(02) COMP-6
           VALUE  28672541.25.
       77  FLD0610E                       PIC X  VALUE 'N'.

       77  FLD0611A                       PIC  9(07)V9(22) COMP-3
           VALUE  7747853.4043620861382350994972.
       77  FLD0611B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0611E                       PIC X  VALUE 'N'.

       77  FLD0612A                       PIC  9(10)V9(11) COMP-3
           VALUE  5644161799.14422944108.
       77  FLD0612B                       PIC  9(07)V9(22) COMP-6
           VALUE  7874462.2890006543691754359315.
       77  FLD0612E                       PIC X  VALUE 'N'.

       77  FLD0613A                       PIC  9(05)       COMP-6
           VALUE  15551.
       77  FLD0613B                       PIC S9(07)V9(01) COMP-3
           VALUE +2249276.6.
       77  FLD0613E                       PIC X  VALUE 'N'.

       77  FLD0614A                       PIC  9(10)V9(09) COMP-3
           VALUE  5201647014.630440546.
       77  FLD0614B                       PIC  9(09)V9(13) COMP-6
           VALUE  596348860.2168276475623.
       77  FLD0614E                       PIC X  VALUE 'N'.

       77  FLD0615A                       PIC S9(03)       COMP-3
           VALUE +101.
       77  FLD0615B                       PIC S9(07)V9(01) COMP-3
           VALUE +2334095.1.
       77  FLD0615E                       PIC X  VALUE 'N'.

       77  FLD0616A                       PIC  9(07)V9(22) COMP-3
           VALUE  7639230.3574527464782306651613.
       77  FLD0616B                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0616E                       PIC X  VALUE 'N'.

       77  FLD0617A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0617B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0617E                       PIC X  VALUE 'N'.

       77  FLD0618A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.817148549708982763206677191192284226.
       77  FLD0618B                       PIC  9(03)       COMP-6
           VALUE  089.
       77  FLD0618E                       PIC X  VALUE 'N'.

       77  FLD0619A                       PIC  9(06)V9(24) COMP-3
           VALUE  801850.998363624500875346257089.
       77  FLD0619B                       PIC  9(10)V9(10) COMP-3
           VALUE  5342180526.7555677598.
       77  FLD0619E                       PIC X  VALUE 'N'.

       77  FLD0620A                       PIC  9(08)V9(19) COMP-6
           VALUE  71717267.3810957062023874186.
       77  FLD0620B                       PIC  9(09)V9(15) COMP-6
           VALUE  655677089.730182127702562.
       77  FLD0620E                       PIC X  VALUE 'N'.

       77  FLD0621A                       PIC  9(04)V9(30) COMP-3
           VALUE  9035.013690395441443570234696380794.
       77  FLD0621B                       PIC  9(08)V9(19) COMP-3
           VALUE  73424367.1686218957184166811.
       77  FLD0621E                       PIC X  VALUE 'N'.

       77  FLD0622A                       PIC  9(09)V9(13) COMP-3
           VALUE  592420192.5737704321761.
       77  FLD0622B                       PIC S9(09)V9(04) COMP-3
           VALUE -361821982.1111.
       77  FLD0622E                       PIC X  VALUE 'N'.

       77  FLD0623A                       PIC S9(03)       COMP-3
           VALUE +104.
       77  FLD0623B                       PIC  9(09)V9(15) COMP-3
           VALUE  641616818.896418195095066.
       77  FLD0623E                       PIC X  VALUE 'N'.

       77  FLD0624A                       PIC S9(06)       COMP-3
           VALUE -162056.
       77  FLD0624B                       PIC  9(10)V9(06) COMP-6
           VALUE  4356343039.582531.
       77  FLD0624E                       PIC X  VALUE 'N'.

       77  FLD0625A                       PIC  9(04)       COMP-6
           VALUE  1296.
       77  FLD0625B                       PIC  9(07)V9(22) COMP-3
           VALUE  7829547.5769811728739000500354.
       77  FLD0625E                       PIC X  VALUE 'N'.

       77  FLD0626A                       PIC  9(04)V9(29) COMP-3
           VALUE  8839.60373056715265072114107169909.
       77  FLD0626B                       PIC S9(09)V9(05) COMP-3
           VALUE -374265939.71690.
       77  FLD0626E                       PIC X  VALUE 'N'.

       77  FLD0627A                       PIC  9(04)       COMP-6
           VALUE  1093.
       77  FLD0627B                       PIC S9(07)V9(01) COMP-3
           VALUE +2323895.2.
       77  FLD0627E                       PIC X  VALUE 'N'.

       77  FLD0628A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.943034041886028573387079632084351032.
       77  FLD0628B                       PIC  9(08)V9(03) COMP-6
           VALUE  29681737.673.
       77  FLD0628E                       PIC X  VALUE 'N'.

       77  FLD0629A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.54391942612090904418664649710990.
       77  FLD0629B                       PIC  9(05)V9(28) COMP-3
           VALUE  87091.5644969416202769707524566911.
       77  FLD0629E                       PIC X  VALUE 'N'.

       77  FLD0630A                       PIC S9(09)V9(06) COMP-3
           VALUE +400669561.119235.
       77  FLD0630B                       PIC  9(09)V9(12) COMP-6
           VALUE  575188656.368988304734.
       77  FLD0630E                       PIC X  VALUE 'N'.

       77  FLD0631A                       PIC  9(09)V9(15) COMP-3
           VALUE  644864894.904831453814608.
       77  FLD0631B                       PIC  9(05)V9(01) COMP-6
           VALUE  17568.5.
       77  FLD0631E                       PIC X  VALUE 'N'.

       77  FLD0632A                       PIC  9(08)V9(18) COMP-6
           VALUE  69998401.036213298009869276.
       77  FLD0632B                       PIC  9(10)V9(09) COMP-6
           VALUE  5082278856.741135886.
       77  FLD0632E                       PIC X  VALUE 'N'.

       77  FLD0633A                       PIC  9(08)V9(19) COMP-3
           VALUE  72186800.0789349095747127194.
       77  FLD0633B                       PIC S9(09)V9(03) COMP-3
           VALUE +332989951.149.
       77  FLD0633E                       PIC X  VALUE 'N'.

       77  FLD0634A                       PIC S9(10)V9(06) COMP-3
           VALUE +4236607402.255205.
       77  FLD0634B                       PIC  9(07)V9(23) COMP-3
           VALUE  7926419.75404680843020344127580.
       77  FLD0634E                       PIC X  VALUE 'N'.

       77  FLD0635A                       PIC S9(06)V9(01) COMP-3
           VALUE -190863.2.
       77  FLD0635B                       PIC  9(10)V9(11) COMP-6
           VALUE  5580856572.20784292498.
       77  FLD0635E                       PIC X  VALUE 'N'.

       77  FLD0636A                       PIC S9(07)V9(01) COMP-3
           VALUE +2326055.8.
       77  FLD0636B                       PIC  9(05)       COMP-6
           VALUE  15706.
       77  FLD0636E                       PIC X  VALUE 'N'.

       77  FLD0637A                       PIC  9(08)V9(19) COMP-3
           VALUE  73470187.3111827330475875896.
       77  FLD0637B                       PIC  9(10)V9(10) COMP-3
           VALUE  5305678545.6603405837.
       77  FLD0637E                       PIC X  VALUE 'N'.

       77  FLD0638A                       PIC  9(07)V9(22) COMP-6
           VALUE  7752451.2041246673721417437263.
       77  FLD0638B                       PIC  9(06)V9(25) COMP-3
           VALUE  822351.5027967045476486873667454.
       77  FLD0638E                       PIC X  VALUE 'N'.

       77  FLD0639A                       PIC S9(09)V9(03) COMP-3
           VALUE +320313574.327.
       77  FLD0639B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.751092072024196699686626743641681969.
       77  FLD0639E                       PIC X  VALUE 'N'.

       77  FLD0640A                       PIC  9(04)V9(29) COMP-3
           VALUE  8818.61493829378950692898797569796.
       77  FLD0640B                       PIC  9(03)V9(32) COMP-3
           VALUE  921.50555740058603948483550993842072.
       77  FLD0640E                       PIC X  VALUE 'N'.

       77  FLD0641A                       PIC  9(07)V9(22) COMP-6
           VALUE  7672056.2697199168322725881807.
       77  FLD0641B                       PIC  9(08)V9(19) COMP-6
           VALUE  72539277.3386829170512157816.
       77  FLD0641E                       PIC X  VALUE 'N'.

       77  FLD0642A                       PIC  9(08)V9(18) COMP-6
           VALUE  70806494.663622721041917884.
       77  FLD0642B                       PIC  9(09)V9(13) COMP-3
           VALUE  592898946.8504934912118.
       77  FLD0642E                       PIC X  VALUE 'N'.

       77  FLD0643A                       PIC  9(07)V9(01) COMP-6
           VALUE  2194714.9.
       77  FLD0643B                       PIC  9(08)V9(02) COMP-6
           VALUE  26711153.59.
       77  FLD0643E                       PIC X  VALUE 'N'.

       77  FLD0644A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0644B                       PIC  9(03)V9(32) COMP-6
           VALUE  936.97460492260109532480782945640385.
       77  FLD0644E                       PIC X  VALUE 'N'.

       77  FLD0645A                       PIC  9(03)V9(31) COMP-3
           VALUE  913.1000502995376688630813077907077.
       77  FLD0645B                       PIC  9(07)V9(02) COMP-6
           VALUE  2467302.34.
       77  FLD0645E                       PIC X  VALUE 'N'.

       77  FLD0646A                       PIC  9(07)V9(21) COMP-3
           VALUE  7520596.805608434909373727350.
       77  FLD0646B                       PIC  9(09)V9(13) COMP-6
           VALUE  595843790.0187590896550.
       77  FLD0646E                       PIC X  VALUE 'N'.

       77  FLD0647A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0647B                       PIC  9(09)V9(16) COMP-6
           VALUE  659893156.1456289340839020.
       77  FLD0647E                       PIC X  VALUE 'N'.

       77  FLD0648A                       PIC S9(04)       COMP-3
           VALUE +1149.
       77  FLD0648B                       PIC  9(09)V9(15) COMP-3
           VALUE  634287010.942461315643470.
       77  FLD0648E                       PIC X  VALUE 'N'.

       77  FLD0649A                       PIC  9(07)V9(23) COMP-3
           VALUE  7912687.10466688007798552462190.
       77  FLD0649B                       PIC  9(10)V9(09) COMP-3
           VALUE  5026519944.429308495.
       77  FLD0649E                       PIC X  VALUE 'N'.

       77  FLD0650A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.878734262172308433491707546636462211.
       77  FLD0650B                       PIC  9(09)V9(16) COMP-3
           VALUE  671574601.9768447094833163.
       77  FLD0650E                       PIC X  VALUE 'N'.

       77  FLD0651A                       PIC  9(08)V9(18) COMP-6
           VALUE  69993795.648145529231243244.
       77  FLD0651B                       PIC S9(09)V9(05) COMP-3
           VALUE -390933259.39761.
       77  FLD0651E                       PIC X  VALUE 'N'.

       77  FLD0652A                       PIC  9(05)V9(01) COMP-6
           VALUE  16676.6.
       77  FLD0652B                       PIC S9(07)V9(01) COMP-3
           VALUE +2109381.3.
       77  FLD0652E                       PIC X  VALUE 'N'.

       77  FLD0653A                       PIC  9(09)V9(14) COMP-3
           VALUE  620233215.83922497168828.
       77  FLD0653B                       PIC  9(06)       COMP-6
           VALUE  165087.
       77  FLD0653E                       PIC X  VALUE 'N'.

       77  FLD0654A                       PIC  9(09)V9(15) COMP-6
           VALUE  639337130.284049814932245.
       77  FLD0654B                       PIC  9(08)V9(02) COMP-6
           VALUE  27813223.51.
       77  FLD0654E                       PIC X  VALUE 'N'.

       77  FLD0655A                       PIC  9(06)V9(25) COMP-6
           VALUE  818013.3890362937254536745967925.
       77  FLD0655B                       PIC  9(09)V9(13) COMP-3
           VALUE  594166317.4495728227952.
       77  FLD0655E                       PIC X  VALUE 'N'.

       77  FLD0656A                       PIC S9(06)V9(01) COMP-3
           VALUE +200859.7.
       77  FLD0656B                       PIC  9(09)V9(15) COMP-3
           VALUE  650208537.267117914204561.
       77  FLD0656E                       PIC X  VALUE 'N'.

       77  FLD0657A                       PIC  9(03)V9(32) COMP-6
           VALUE  936.17194619070143168926279031438753.
       77  FLD0657B                       PIC  9(08)V9(18) COMP-3
           VALUE  70468283.988380520099781278.
       77  FLD0657E                       PIC X  VALUE 'N'.

       77  FLD0658A                       PIC  9(08)V9(18) COMP-3
           VALUE  70069365.832955088357891781.
       77  FLD0658B                       PIC  9(10)V9(10) COMP-3
           VALUE  5438086690.5335789596.
       77  FLD0658E                       PIC X  VALUE 'N'.

       77  FLD0659A                       PIC  9(04)V9(30) COMP-3
           VALUE  9044.337793801533464943531726021319.
       77  FLD0659B                       PIC  9(08)V9(19) COMP-6
           VALUE  71946522.3294514011342926096.
       77  FLD0659E                       PIC X  VALUE 'N'.

       77  FLD0660A                       PIC  9(10)V9(09) COMP-3
           VALUE  5240012407.843260833.
       77  FLD0660B                       PIC S9(05)       COMP-3
           VALUE -15464.
       77  FLD0660E                       PIC X  VALUE 'N'.

       77  FLD0661A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.5581569624071600621562083688331767.
       77  FLD0661B                       PIC  9(10)V9(11) COMP-3
           VALUE  5705409453.15247127744.
       77  FLD0661E                       PIC X  VALUE 'N'.

       77  FLD0662A                       PIC S9(07)V9(01) COMP-3
           VALUE +2131985.0.
       77  FLD0662B                       PIC  9(09)V9(16) COMP-6
           VALUE  669960203.6476681732324323.
       77  FLD0662E                       PIC X  VALUE 'N'.

       77  FLD0663A                       PIC  9(05)       COMP-6
           VALUE  15788.
       77  FLD0663B                       PIC  9(04)V9(29) COMP-6
           VALUE  8894.69232052811142885673234559362.
       77  FLD0663E                       PIC X  VALUE 'N'.

       77  FLD0664A                       PIC S9(05)       COMP-3
           VALUE +14371.
       77  FLD0664B                       PIC S9(09)V9(07) COMP-3
           VALUE +440580330.5288489.
       77  FLD0664E                       PIC X  VALUE 'N'.

       77  FLD0665A                       PIC  9(07)V9(02) COMP-6
           VALUE  2455875.37.
       77  FLD0665B                       PIC  9(09)V9(16) COMP-3
           VALUE  674160289.5706166886924393.
       77  FLD0665E                       PIC X  VALUE 'N'.

       77  FLD0666A                       PIC  9(05)V9(27) COMP-3
           VALUE  86015.549175288641414738322055200.
       77  FLD0666B                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0666E                       PIC X  VALUE 'N'.

       77  FLD0667A                       PIC  9(02)V9(33) COMP-3
           VALUE  94.482499794694274619644147605868056.
       77  FLD0667B                       PIC  9(09)V9(15) COMP-3
           VALUE  632143875.790169951223163.
       77  FLD0667E                       PIC X  VALUE 'N'.

       77  FLD0668A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.15331845029669999291854765033349.
       77  FLD0668B                       PIC  9(10)V9(09) COMP-3
           VALUE  5144629393.825745911.
       77  FLD0668E                       PIC X  VALUE 'N'.

       77  FLD0669A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.937328225295053441001869032334070652.
       77  FLD0669B                       PIC  9(10)V9(05) COMP-6
           VALUE  3959366397.86081.
       77  FLD0669E                       PIC X  VALUE 'N'.

       77  FLD0670A                       PIC  9(07)V9(02) COMP-6
           VALUE  2567113.54.
       77  FLD0670B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.1019073438902258210703166696475818.
       77  FLD0670E                       PIC X  VALUE 'N'.

       77  FLD0671A                       PIC  9(09)V9(03) COMP-6
           VALUE  326622169.718.
       77  FLD0671B                       PIC  9(06)V9(01) COMP-6
           VALUE  186874.6.
       77  FLD0671E                       PIC X  VALUE 'N'.

       77  FLD0672A                       PIC  9(10)V9(07) COMP-6
           VALUE  4564917934.3294549.
       77  FLD0672B                       PIC  9(09)V9(15) COMP-6
           VALUE  637002039.815689924395769.
       77  FLD0672E                       PIC X  VALUE 'N'.

       77  FLD0673A                       PIC  9(10)V9(06) COMP-6
           VALUE  4285002333.462958.
       77  FLD0673B                       PIC  9(07)V9(02) COMP-6
           VALUE  2489778.77.
       77  FLD0673E                       PIC X  VALUE 'N'.

       77  FLD0674A                       PIC  9(10)V9(10) COMP-6
           VALUE  5491650640.0821929467.
       77  FLD0674B                       PIC  9(06)V9(25) COMP-6
           VALUE  828061.3110769976525915581078152.
       77  FLD0674E                       PIC X  VALUE 'N'.

       77  FLD0675A                       PIC  9(05)V9(27) COMP-6
           VALUE  84609.285471017914304070473008323.
       77  FLD0675B                       PIC  9(10)V9(09) COMP-6
           VALUE  5083540664.870341840.
       77  FLD0675E                       PIC X  VALUE 'N'.

       77  FLD0676A                       PIC  9(03)       COMP-6
           VALUE  096.
       77  FLD0676B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.4664170342459437179627457226160913.
       77  FLD0676E                       PIC X  VALUE 'N'.

       77  FLD0677A                       PIC S9(07)V9(01) COMP-3
           VALUE +2248183.1.
       77  FLD0677B                       PIC  9(04)V9(29) COMP-3
           VALUE  8903.66445455624266891447859961772.
       77  FLD0677E                       PIC X  VALUE 'N'.

       77  FLD0678A                       PIC S9(03)       COMP-3
           VALUE -092.
       77  FLD0678B                       PIC  9(05)V9(27) COMP-6
           VALUE  85887.366357613359468814451247453.
       77  FLD0678E                       PIC X  VALUE 'N'.

       77  FLD0679A                       PIC S9(03)       COMP-3
           VALUE -080.
       77  FLD0679B                       PIC  9(10)V9(07) COMP-6
           VALUE  4490278235.6612852.
       77  FLD0679E                       PIC X  VALUE 'N'.

       77  FLD0680A                       PIC S9(08)V9(02) COMP-3
           VALUE -28119381.66.
       77  FLD0680B                       PIC  9(10)V9(11) COMP-3
           VALUE  5617591008.16083600804.
       77  FLD0680E                       PIC X  VALUE 'N'.

       77  FLD0681A                       PIC  9(08)V9(17) COMP-3
           VALUE  68244115.95644890304868113.
       77  FLD0681B                       PIC  9(06)V9(25) COMP-3
           VALUE  821371.7547801553386932482681004.
       77  FLD0681E                       PIC X  VALUE 'N'.

       77  FLD0682A                       PIC S9(10)V9(08) COMP-3
           VALUE -4949729784.45772315.
       77  FLD0682B                       PIC  9(06)V9(25) COMP-3
           VALUE  831097.0812489861803129542749957.
       77  FLD0682E                       PIC X  VALUE 'N'.

       77  FLD0683A                       PIC  9(05)V9(28) COMP-6
           VALUE  86894.3068817851549390240961656672.
       77  FLD0683B                       PIC  9(10)V9(12) COMP-3
           VALUE  5829735573.963021888488.
       77  FLD0683E                       PIC X  VALUE 'N'.

       77  FLD0684A                       PIC  9(10)V9(13) COMP-6
           VALUE  6059233373.6406744915115.
       77  FLD0684B                       PIC  9(09)V9(07) COMP-6
           VALUE  438339473.7646870.
       77  FLD0684E                       PIC X  VALUE 'N'.

       77  FLD0685A                       PIC S9(07)V9(02) COMP-3
           VALUE -2545714.99.
       77  FLD0685B                       PIC  9(07)V9(23) COMP-3
           VALUE  7915567.03876752143500539204978.
       77  FLD0685E                       PIC X  VALUE 'N'.

       77  FLD0686A                       PIC  9(09)V9(14) COMP-3
           VALUE  621044693.11257093355749.
       77  FLD0686B                       PIC  9(09)V9(13) COMP-3
           VALUE  602970496.8531952591348.
       77  FLD0686E                       PIC X  VALUE 'N'.

       77  FLD0687A                       PIC S9(09)V9(05) COMP-3
           VALUE -394005874.76898.
       77  FLD0687B                       PIC  9(10)V9(08) COMP-6
           VALUE  4960980508.03440715.
       77  FLD0687E                       PIC X  VALUE 'N'.

       77  FLD0688A                       PIC  9(03)V9(32) COMP-3
           VALUE  932.26844955554755145499257196206599.
       77  FLD0688B                       PIC  9(04)       COMP-6
           VALUE  1064.
       77  FLD0688E                       PIC X  VALUE 'N'.

       77  FLD0689A                       PIC  9(10)V9(07) COMP-6
           VALUE  4559306991.4341932.
       77  FLD0689B                       PIC S9(08)V9(04) COMP-3
           VALUE +34024840.8710.
       77  FLD0689E                       PIC X  VALUE 'N'.

       77  FLD0690A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.793660005922469879990899244148749858.
       77  FLD0690B                       PIC S9(08)V9(02) COMP-3
           VALUE -28078949.75.
       77  FLD0690E                       PIC X  VALUE 'N'.

       77  FLD0691A                       PIC  9(09)V9(07) COMP-6
           VALUE  439500550.5938089.
       77  FLD0691B                       PIC S9(10)V9(06) COMP-3
           VALUE +4308484639.535531.
       77  FLD0691E                       PIC X  VALUE 'N'.

       77  FLD0692A                       PIC  9(09)V9(04) COMP-6
           VALUE  358382577.7464.
       77  FLD0692B                       PIC  9(09)V9(15) COMP-6
           VALUE  636450165.553045121846764.
       77  FLD0692E                       PIC X  VALUE 'N'.

       77  FLD0693A                       PIC S9(07)V9(01) COMP-3
           VALUE +2127399.6.
       77  FLD0693B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0693E                       PIC X  VALUE 'N'.

       77  FLD0694A                       PIC  9(09)V9(05) COMP-6
           VALUE  378019656.01658.
       77  FLD0694B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0694E                       PIC X  VALUE 'N'.

       77  FLD0695A                       PIC S9(09)V9(04) COMP-3
           VALUE -354304867.1111.
       77  FLD0695B                       PIC  9(09)V9(15) COMP-6
           VALUE  639721730.127885357397587.
       77  FLD0695E                       PIC X  VALUE 'N'.

       77  FLD0696A                       PIC  9(04)V9(30) COMP-6
           VALUE  9067.945209731629319094281527213752.
       77  FLD0696B                       PIC  9(09)V9(03) COMP-6
           VALUE  318871778.848.
       77  FLD0696E                       PIC X  VALUE 'N'.

       77  FLD0697A                       PIC S9(09)V9(06) COMP-3
           VALUE +414586353.841170.
       77  FLD0697B                       PIC  9(10)V9(09) COMP-6
           VALUE  5161837194.897523906.
       77  FLD0697E                       PIC X  VALUE 'N'.

       77  FLD0698A                       PIC  9(08)V9(18) COMP-3
           VALUE  69447533.832122987362822641.
       77  FLD0698B                       PIC S9(03)       COMP-3
           VALUE -080.
       77  FLD0698E                       PIC X  VALUE 'N'.

       77  FLD0699A                       PIC  9(09)V9(13) COMP-6
           VALUE  597064952.5204202445749.
       77  FLD0699B                       PIC  9(09)V9(14) COMP-3
           VALUE  630288401.27729701681147.
       77  FLD0699E                       PIC X  VALUE 'N'.

       77  FLD0700A                       PIC  9(06)V9(25) COMP-3
           VALUE  820234.3139012789885455845251271.
       77  FLD0700B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0700E                       PIC X  VALUE 'N'.

       77  FLD0701A                       PIC  9(06)V9(24) COMP-6
           VALUE  809485.363390515577641792788199.
       77  FLD0701B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0800419877562270620785511709982529.
       77  FLD0701E                       PIC X  VALUE 'N'.

       77  FLD0702A                       PIC  9(04)V9(30) COMP-3
           VALUE  9021.848589518318695112952809722628.
       77  FLD0702B                       PIC  9(07)V9(01) COMP-6
           VALUE  2351439.7.
       77  FLD0702E                       PIC X  VALUE 'N'.

       77  FLD0703A                       PIC S9(04)       COMP-3
           VALUE +1126.
       77  FLD0703B                       PIC  9(08)V9(04) COMP-6
           VALUE  33525578.1235.
       77  FLD0703E                       PIC X  VALUE 'N'.

       77  FLD0704A                       PIC  9(10)V9(07) COMP-6
           VALUE  4696322933.5995404.
       77  FLD0704B                       PIC  9(09)V9(14) COMP-3
           VALUE  611168884.71092423174013.
       77  FLD0704E                       PIC X  VALUE 'N'.

       77  FLD0705A                       PIC  9(10)V9(10) COMP-6
           VALUE  5381864238.0664638569.
       77  FLD0705B                       PIC  9(10)V9(07) COMP-6
           VALUE  4699950479.7278301.
       77  FLD0705E                       PIC X  VALUE 'N'.

       77  FLD0706A                       PIC  9(07)V9(22) COMP-3
           VALUE  7815442.4104873465584120140192.
       77  FLD0706B                       PIC S9(05)V9(01) COMP-3
           VALUE -17297.4.
       77  FLD0706E                       PIC X  VALUE 'N'.

       77  FLD0707A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0707B                       PIC  9(10)V9(09) COMP-3
           VALUE  5129442198.407349051.
       77  FLD0707E                       PIC X  VALUE 'N'.

       77  FLD0708A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1225570140109555339336111501324921.
       77  FLD0708B                       PIC  9(08)V9(04) COMP-6
           VALUE  33834894.3169.
       77  FLD0708E                       PIC X  VALUE 'N'.

       77  FLD0709A                       PIC S9(04)       COMP-3
           VALUE +1124.
       77  FLD0709B                       PIC  9(09)V9(05) COMP-6
           VALUE  379344826.68404.
       77  FLD0709E                       PIC X  VALUE 'N'.

       77  FLD0710A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.946833086486408515014545628218911588.
       77  FLD0710B                       PIC S9(09)V9(03) COMP-3
           VALUE +322996298.459.
       77  FLD0710E                       PIC X  VALUE 'N'.

       77  FLD0711A                       PIC  9(09)V9(16) COMP-6
           VALUE  677754067.1912668512888444.
       77  FLD0711B                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0711E                       PIC X  VALUE 'N'.

       77  FLD0712A                       PIC  9(09)V9(14) COMP-3
           VALUE  610433230.32745544498567.
       77  FLD0712B                       PIC S9(10)V9(08) COMP-3
           VALUE -4947392148.88603839.
       77  FLD0712E                       PIC X  VALUE 'N'.

       77  FLD0713A                       PIC S9(08)V9(03) COMP-3
           VALUE -29280564.557.
       77  FLD0713B                       PIC  9(07)V9(01) COMP-6
           VALUE  2168463.7.
       77  FLD0713E                       PIC X  VALUE 'N'.

       77  FLD0714A                       PIC  9(10)V9(07) COMP-6
           VALUE  4593980567.3719869.
       77  FLD0714B                       PIC  9(09)V9(04) COMP-6
           VALUE  347385951.5252.
       77  FLD0714E                       PIC X  VALUE 'N'.

       77  FLD0715A                       PIC  9(09)V9(06) COMP-6
           VALUE  406643755.503527.
       77  FLD0715B                       PIC  9(10)V9(10) COMP-6
           VALUE  5480282475.3098877685.
       77  FLD0715E                       PIC X  VALUE 'N'.

       77  FLD0716A                       PIC S9(08)V9(03) COMP-3
           VALUE -29497495.128.
       77  FLD0716B                       PIC  9(03)V9(31) COMP-3
           VALUE  914.3056916239737930141018296126276.
       77  FLD0716E                       PIC X  VALUE 'N'.

       77  FLD0717A                       PIC  9(05)V9(28) COMP-6
           VALUE  86936.9843469434133709228262887336.
       77  FLD0717B                       PIC  9(07)V9(21) COMP-6
           VALUE  7570171.861371541854879296806.
       77  FLD0717E                       PIC X  VALUE 'N'.

       77  FLD0718A                       PIC  9(06)       COMP-6
           VALUE  158746.
       77  FLD0718B                       PIC  9(10)V9(06) COMP-6
           VALUE  4283417063.648062.
       77  FLD0718E                       PIC X  VALUE 'N'.

       77  FLD0719A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0719B                       PIC  9(07)V9(02) COMP-6
           VALUE  2390904.61.
       77  FLD0719E                       PIC X  VALUE 'N'.

       77  FLD0720A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0720B                       PIC S9(09)V9(06) COMP-3
           VALUE +404886316.426392.
       77  FLD0720E                       PIC X  VALUE 'N'.

       77  FLD0721A                       PIC S9(09)V9(03) COMP-3
           VALUE +332294869.962.
       77  FLD0721B                       PIC  9(07)V9(01) COMP-6
           VALUE  2285954.3.
       77  FLD0721E                       PIC X  VALUE 'N'.

       77  FLD0722A                       PIC S9(05)V9(01) COMP-3
           VALUE -17094.9.
       77  FLD0722B                       PIC  9(07)V9(21) COMP-3
           VALUE  7607809.920924922808538326535.
       77  FLD0722E                       PIC X  VALUE 'N'.

       77  FLD0723A                       PIC  9(05)V9(28) COMP-3
           VALUE  87349.0901765646254872876852459739.
       77  FLD0723B                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0723E                       PIC X  VALUE 'N'.

       77  FLD0724A                       PIC  9(09)V9(03) COMP-6
           VALUE  317474559.928.
       77  FLD0724B                       PIC  9(10)V9(09) COMP-6
           VALUE  5251486411.115240393.
       77  FLD0724E                       PIC X  VALUE 'N'.

       77  FLD0725A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.1169879467740964074096154945436.
       77  FLD0725B                       PIC S9(09)V9(07) COMP-3
           VALUE +444412819.1361023.
       77  FLD0725E                       PIC X  VALUE 'N'.

       77  FLD0726A                       PIC  9(05)       COMP-6
           VALUE  14771.
       77  FLD0726B                       PIC S9(09)V9(06) COMP-3
           VALUE +401835639.675800.
       77  FLD0726E                       PIC X  VALUE 'N'.

       77  FLD0727A                       PIC  9(10)V9(10) COMP-3
           VALUE  5412169008.2113094177.
       77  FLD0727B                       PIC  9(09)V9(16) COMP-6
           VALUE  677439277.9021225496904889.
       77  FLD0727E                       PIC X  VALUE 'N'.

       77  FLD0728A                       PIC  9(09)V9(07) COMP-6
           VALUE  439411444.5456123.
       77  FLD0728B                       PIC S9(09)V9(05) COMP-3
           VALUE -371357711.97684.
       77  FLD0728E                       PIC X  VALUE 'N'.

       77  FLD0729A                       PIC  9(02)V9(33) COMP-6
           VALUE  94.514768998125520127473464526701718.
       77  FLD0729B                       PIC  9(07)V9(23) COMP-6
           VALUE  7959700.26538914909863819957536.
       77  FLD0729E                       PIC X  VALUE 'N'.

       77  FLD0730A                       PIC  9(06)V9(25) COMP-3
           VALUE  822685.8594490329412707296796725.
       77  FLD0730B                       PIC  9(09)V9(14) COMP-3
           VALUE  630270988.23946403616247.
       77  FLD0730E                       PIC X  VALUE 'N'.

       77  FLD0731A                       PIC  9(10)V9(12) COMP-3
           VALUE  5808279049.356201984011.
       77  FLD0731B                       PIC  9(09)V9(13) COMP-3
           VALUE  600372700.6085320949679.
       77  FLD0731E                       PIC X  VALUE 'N'.

       77  FLD0732A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.5080332184045710519626481982413.
       77  FLD0732B                       PIC S9(04)       COMP-3
           VALUE +1229.
       77  FLD0732E                       PIC X  VALUE 'N'.

       77  FLD0733A                       PIC  9(09)V9(03) COMP-6
           VALUE  328019305.824.
       77  FLD0733B                       PIC  9(09)V9(15) COMP-6
           VALUE  637621846.224700750127567.
       77  FLD0733E                       PIC X  VALUE 'N'.

       77  FLD0734A                       PIC S9(06)       COMP-3
           VALUE -164821.
       77  FLD0734B                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0734E                       PIC X  VALUE 'N'.

       77  FLD0735A                       PIC S9(06)V9(01) COMP-3
           VALUE -190229.8.
       77  FLD0735B                       PIC  9(09)V9(15) COMP-3
           VALUE  641899075.827484955070190.
       77  FLD0735E                       PIC X  VALUE 'N'.

       77  FLD0736A                       PIC  9(10)V9(09) COMP-3
           VALUE  5128678158.202983894.
       77  FLD0736B                       PIC  9(07)V9(23) COMP-6
           VALUE  7952260.56216242538354777025233.
       77  FLD0736E                       PIC X  VALUE 'N'.

       77  FLD0737A                       PIC S9(07)V9(02) COMP-3
           VALUE -2601084.10.
       77  FLD0737B                       PIC S9(07)V9(02) COMP-3
           VALUE -2623355.12.
       77  FLD0737E                       PIC X  VALUE 'N'.

       77  FLD0738A                       PIC  9(10)V9(09) COMP-6
           VALUE  5071467647.954436275.
       77  FLD0738B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7470462418068333221299326396547257.
       77  FLD0738E                       PIC X  VALUE 'N'.

       77  FLD0739A                       PIC S9(09)V9(03) COMP-3
           VALUE +324797211.447.
       77  FLD0739B                       PIC S9(10)V9(08) COMP-3
           VALUE -4916417996.38161292.
       77  FLD0739E                       PIC X  VALUE 'N'.

       77  FLD0740A                       PIC S9(08)V9(03) COMP-3
           VALUE +30394739.303.
       77  FLD0740B                       PIC  9(05)V9(28) COMP-3
           VALUE  87461.9397808273024708114462555386.
       77  FLD0740E                       PIC X  VALUE 'N'.

       77  FLD0741A                       PIC S9(09)V9(03) COMP-3
           VALUE +322386723.831.
       77  FLD0741B                       PIC S9(09)V9(03) COMP-3
           VALUE +321782512.880.
       77  FLD0741E                       PIC X  VALUE 'N'.

       77  FLD0742A                       PIC  9(09)V9(06) COMP-6
           VALUE  419367234.713135.
       77  FLD0742B                       PIC S9(08)V9(03) COMP-3
           VALUE +30468212.851.
       77  FLD0742E                       PIC X  VALUE 'N'.

       77  FLD0743A                       PIC  9(05)V9(27) COMP-6
           VALUE  85864.867305029812794003873932524.
       77  FLD0743B                       PIC  9(06)V9(01) COMP-6
           VALUE  209820.2.
       77  FLD0743E                       PIC X  VALUE 'N'.

       77  FLD0744A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0744B                       PIC  9(08)V9(02) COMP-6
           VALUE  26956228.79.
       77  FLD0744E                       PIC X  VALUE 'N'.

       77  FLD0745A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.759709501186564217789509712019935250.
       77  FLD0745B                       PIC  9(05)       COMP-6
           VALUE  13548.
       77  FLD0745E                       PIC X  VALUE 'N'.

       77  FLD0746A                       PIC  9(10)V9(10) COMP-3
           VALUE  5435731573.3552813430.
       77  FLD0746B                       PIC  9(10)V9(09) COMP-3
           VALUE  5204204473.599284286.
       77  FLD0746E                       PIC X  VALUE 'N'.

       77  FLD0747A                       PIC  9(10)V9(11) COMP-6
           VALUE  5681676571.07930934579.
       77  FLD0747B                       PIC  9(03)V9(31) COMP-6
           VALUE  916.9159297409485986918298294767737.
       77  FLD0747E                       PIC X  VALUE 'N'.

       77  FLD0748A                       PIC  9(03)       COMP-6
           VALUE  086.
       77  FLD0748B                       PIC S9(05)V9(01) COMP-3
           VALUE -18032.7.
       77  FLD0748E                       PIC X  VALUE 'N'.

       77  FLD0749A                       PIC S9(10)V9(07) COMP-3
           VALUE -4609096560.3942379.
       77  FLD0749B                       PIC  9(06)V9(25) COMP-3
           VALUE  820519.2560948625368766329302161.
       77  FLD0749E                       PIC X  VALUE 'N'.

       77  FLD0750A                       PIC  9(07)V9(22) COMP-6
           VALUE  7666736.3171436386792834127845.
       77  FLD0750B                       PIC  9(08)V9(04) COMP-6
           VALUE  33966692.5145.
       77  FLD0750E                       PIC X  VALUE 'N'.

       77  FLD0751A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0751B                       PIC S9(05)       COMP-3
           VALUE -15176.
       77  FLD0751E                       PIC X  VALUE 'N'.

       77  FLD0752A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0752B                       PIC  9(03)V9(32) COMP-3
           VALUE  922.38508268330654527034084821934811.
       77  FLD0752E                       PIC X  VALUE 'N'.

       77  FLD0753A                       PIC  9(08)V9(19) COMP-3
           VALUE  73379118.3872512742247806727.
       77  FLD0753B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0753E                       PIC X  VALUE 'N'.

       77  FLD0754A                       PIC S9(09)V9(03) COMP-3
           VALUE +322061792.108.
       77  FLD0754B                       PIC  9(07)V9(02) COMP-6
           VALUE  2450066.21.
       77  FLD0754E                       PIC X  VALUE 'N'.

       77  FLD0755A                       PIC  9(06)V9(25) COMP-6
           VALUE  835592.8333445592492978448717622.
       77  FLD0755B                       PIC  9(10)V9(10) COMP-3
           VALUE  5346301002.0417645051.
       77  FLD0755E                       PIC X  VALUE 'N'.

       77  FLD0756A                       PIC  9(09)V9(04) COMP-6
           VALUE  366295057.8421.
       77  FLD0756B                       PIC S9(05)       COMP-3
           VALUE -15366.
       77  FLD0756E                       PIC X  VALUE 'N'.

       77  FLD0757A                       PIC  9(08)V9(19) COMP-3
           VALUE  71466976.1113856494283425035.
       77  FLD0757B                       PIC S9(07)V9(02) COMP-3
           VALUE +2429438.31.
       77  FLD0757E                       PIC X  VALUE 'N'.

       77  FLD0758A                       PIC  9(07)V9(01) COMP-6
           VALUE  2293699.9.
       77  FLD0758B                       PIC S9(06)       COMP-3
           VALUE -162229.
       77  FLD0758E                       PIC X  VALUE 'N'.

       77  FLD0759A                       PIC  9(03)V9(32) COMP-3
           VALUE  931.38963166127219928114300273591652.
       77  FLD0759B                       PIC  9(07)V9(21) COMP-3
           VALUE  7621303.882836163445801958005.
       77  FLD0759E                       PIC X  VALUE 'N'.

       77  FLD0760A                       PIC  9(06)V9(01) COMP-6
           VALUE  188511.3.
       77  FLD0760B                       PIC  9(04)V9(30) COMP-3
           VALUE  9041.413390221895163278986728982999.
       77  FLD0760E                       PIC X  VALUE 'N'.

       77  FLD0761A                       PIC  9(09)V9(17) COMP-3
           VALUE  690006529.44346418937726639.
       77  FLD0761B                       PIC  9(09)V9(14) COMP-6
           VALUE  629261290.31917010792085.
       77  FLD0761E                       PIC X  VALUE 'N'.

       77  FLD0762A                       PIC  9(09)V9(16) COMP-3
           VALUE  671435372.9957326377686399.
       77  FLD0762B                       PIC  9(07)V9(02) COMP-6
           VALUE  2591343.61.
       77  FLD0762E                       PIC X  VALUE 'N'.

       77  FLD0763A                       PIC  9(08)V9(19) COMP-3
           VALUE  71468145.3175585401638159055.
       77  FLD0763B                       PIC  9(06)V9(24) COMP-6
           VALUE  815545.608346078032546699887461.
       77  FLD0763E                       PIC X  VALUE 'N'.

       77  FLD0764A                       PIC  9(10)V9(11) COMP-3
           VALUE  5535007698.50315821329.
       77  FLD0764B                       PIC  9(10)V9(08) COMP-6
           VALUE  4979398183.62831021.
       77  FLD0764E                       PIC X  VALUE 'N'.

       77  FLD0765A                       PIC  9(04)V9(29) COMP-6
           VALUE  8855.80582773889624093044403707608.
       77  FLD0765B                       PIC S9(04)       COMP-3
           VALUE +1212.
       77  FLD0765E                       PIC X  VALUE 'N'.

       77  FLD0766A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0766B                       PIC  9(07)V9(01) COMP-6
           VALUE  2294943.2.
       77  FLD0766E                       PIC X  VALUE 'N'.

       77  FLD0767A                       PIC S9(10)V9(08) COMP-3
           VALUE -4848285740.27346248.
       77  FLD0767B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0767E                       PIC X  VALUE 'N'.

       77  FLD0768A                       PIC  9(09)V9(17) COMP-3
           VALUE  684230789.92735519854306858.
       77  FLD0768B                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0768E                       PIC X  VALUE 'N'.

       77  FLD0769A                       PIC  9(07)V9(02) COMP-6
           VALUE  2565731.27.
       77  FLD0769B                       PIC  9(09)V9(04) COMP-6
           VALUE  356094054.4649.
       77  FLD0769E                       PIC X  VALUE 'N'.

       77  FLD0770A                       PIC  9(09)V9(12) COMP-3
           VALUE  574214303.174467532997.
       77  FLD0770B                       PIC  9(10)V9(13) COMP-6
           VALUE  6057194691.9895736094474.
       77  FLD0770E                       PIC X  VALUE 'N'.

       77  FLD0771A                       PIC  9(08)V9(18) COMP-6
           VALUE  69721614.519732855175249142.
       77  FLD0771B                       PIC  9(09)V9(17) COMP-3
           VALUE  690190375.47148320843604096.
       77  FLD0771E                       PIC X  VALUE 'N'.

       77  FLD0772A                       PIC  9(10)V9(08) COMP-6
           VALUE  4868623585.10471993.
       77  FLD0772B                       PIC  9(10)V9(05) COMP-6
           VALUE  3959689116.24786.
       77  FLD0772E                       PIC X  VALUE 'N'.

       77  FLD0773A                       PIC S9(07)V9(01) COMP-3
           VALUE +2339835.9.
       77  FLD0773B                       PIC  9(03)V9(32) COMP-3
           VALUE  931.93997423560348547511011929600499.
       77  FLD0773E                       PIC X  VALUE 'N'.

       77  FLD0774A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0774B                       PIC S9(07)V9(02) COMP-3
           VALUE +2425891.04.
       77  FLD0774E                       PIC X  VALUE 'N'.

       77  FLD0775A                       PIC  9(09)V9(06) COMP-6
           VALUE  418947899.183504.
       77  FLD0775B                       PIC  9(03)V9(32) COMP-3
           VALUE  930.87735098341006789723905967548489.
       77  FLD0775E                       PIC X  VALUE 'N'.

       77  FLD0776A                       PIC  9(09)V9(06) COMP-6
           VALUE  418950765.017868.
       77  FLD0776B                       PIC  9(05)V9(27) COMP-6
           VALUE  84781.081485203291236985023715533.
       77  FLD0776E                       PIC X  VALUE 'N'.

       77  FLD0777A                       PIC S9(08)V9(03) COMP-3
           VALUE +31438250.184.
       77  FLD0777B                       PIC  9(10)V9(11) COMP-3
           VALUE  5606560858.83416754889.
       77  FLD0777E                       PIC X  VALUE 'N'.

       77  FLD0778A                       PIC S9(06)V9(01) COMP-3
           VALUE -192739.4.
       77  FLD0778B                       PIC  9(03)V9(31) COMP-6
           VALUE  916.8465464730475300569878527312539.
       77  FLD0778E                       PIC X  VALUE 'N'.

       77  FLD0779A                       PIC  9(04)V9(30) COMP-3
           VALUE  9029.333248069044692840634525055065.
       77  FLD0779B                       PIC S9(10)V9(08) COMP-3
           VALUE -4740907582.59428035.
       77  FLD0779E                       PIC X  VALUE 'N'.

       77  FLD0780A                       PIC  9(09)V9(03) COMP-6
           VALUE  318241207.749.
       77  FLD0780B                       PIC  9(06)V9(25) COMP-3
           VALUE  822759.6235369002419801631731388.
       77  FLD0780E                       PIC X  VALUE 'N'.

       77  FLD0781A                       PIC  9(10)V9(08) COMP-6
           VALUE  4967153543.73054196.
       77  FLD0781B                       PIC  9(08)V9(03) COMP-6
           VALUE  29720911.669.
       77  FLD0781E                       PIC X  VALUE 'N'.

       77  FLD0782A                       PIC  9(05)       COMP-6
           VALUE  13793.
       77  FLD0782B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5158015091007617236584792408393695.
       77  FLD0782E                       PIC X  VALUE 'N'.

       77  FLD0783A                       PIC  9(04)V9(29) COMP-3
           VALUE  8813.39219378433402773964644438819.
       77  FLD0783B                       PIC S9(10)V9(06) COMP-3
           VALUE +4236433759.282261.
       77  FLD0783E                       PIC X  VALUE 'N'.

       77  FLD0784A                       PIC  9(09)V9(15) COMP-3
           VALUE  641964802.793786426526878.
       77  FLD0784B                       PIC  9(06)V9(25) COMP-3
           VALUE  824637.3935062285553954097849782.
       77  FLD0784E                       PIC X  VALUE 'N'.

       77  FLD0785A                       PIC  9(08)V9(17) COMP-3
           VALUE  68097654.34600172362422654.
       77  FLD0785B                       PIC  9(09)V9(03) COMP-6
           VALUE  325202869.704.
       77  FLD0785E                       PIC X  VALUE 'N'.

       77  FLD0786A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.820249933224565186407062356011010706.
       77  FLD0786B                       PIC  9(05)V9(27) COMP-3
           VALUE  85417.725929538756979297886573476.
       77  FLD0786E                       PIC X  VALUE 'N'.

       77  FLD0787A                       PIC  9(10)V9(11) COMP-6
           VALUE  5592847098.07636559730.
       77  FLD0787B                       PIC  9(06)V9(01) COMP-6
           VALUE  199330.4.
       77  FLD0787E                       PIC X  VALUE 'N'.

       77  FLD0788A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6557531637097668841818176588276401.
       77  FLD0788B                       PIC  9(07)V9(22) COMP-6
           VALUE  7789929.3063459995600794627534.
       77  FLD0788E                       PIC X  VALUE 'N'.

       77  FLD0789A                       PIC S9(05)V9(01) COMP-3
           VALUE -17101.7.
       77  FLD0789B                       PIC  9(09)V9(16) COMP-3
           VALUE  660444958.2132847496040994.
       77  FLD0789E                       PIC X  VALUE 'N'.

       77  FLD0790A                       PIC  9(07)V9(02) COMP-6
           VALUE  2384369.54.
       77  FLD0790B                       PIC S9(08)V9(03) COMP-3
           VALUE -29309999.122.
       77  FLD0790E                       PIC X  VALUE 'N'.

       77  FLD0791A                       PIC  9(03)       COMP-6
           VALUE  088.
       77  FLD0791B                       PIC  9(08)V9(20) COMP-6
           VALUE  73827325.48868294886190710712.
       77  FLD0791E                       PIC X  VALUE 'N'.

       77  FLD0792A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5230059106088935649836457741912454.
       77  FLD0792B                       PIC  9(09)V9(05) COMP-6
           VALUE  379824535.06313.
       77  FLD0792E                       PIC X  VALUE 'N'.

       77  FLD0793A                       PIC  9(06)V9(01) COMP-6
           VALUE  199221.9.
       77  FLD0793B                       PIC  9(10)V9(11) COMP-6
           VALUE  5591577156.30166807230.
       77  FLD0793E                       PIC X  VALUE 'N'.

       77  FLD0794A                       PIC S9(08)V9(04) COMP-3
           VALUE +33437009.5807.
       77  FLD0794B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0794E                       PIC X  VALUE 'N'.

       77  FLD0795A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0795B                       PIC S9(08)V9(04) COMP-3
           VALUE +33494400.6958.
       77  FLD0795E                       PIC X  VALUE 'N'.

       77  FLD0796A                       PIC  9(07)V9(21) COMP-6
           VALUE  7565685.006144580171394409262.
       77  FLD0796B                       PIC  9(08)V9(19) COMP-6
           VALUE  72949831.5977354816475042298.
       77  FLD0796E                       PIC X  VALUE 'N'.

       77  FLD0797A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0797B                       PIC  9(09)V9(04) COMP-6
           VALUE  348777486.0252.
       77  FLD0797E                       PIC X  VALUE 'N'.

       77  FLD0798A                       PIC S9(09)V9(03) COMP-3
           VALUE +332243375.906.
       77  FLD0798B                       PIC  9(09)V9(16) COMP-3
           VALUE  673821443.1439371043808250.
       77  FLD0798E                       PIC X  VALUE 'N'.

       77  FLD0799A                       PIC  9(09)V9(17) COMP-3
           VALUE  690866271.33683375934225523.
       77  FLD0799B                       PIC  9(09)V9(11) COMP-3
           VALUE  551526790.74963362193.
       77  FLD0799E                       PIC X  VALUE 'N'.

       77  FLD0800A                       PIC  9(08)V9(18) COMP-3
           VALUE  70036112.416705975647346349.
       77  FLD0800B                       PIC  9(08)V9(02) COMP-6
           VALUE  26662512.18.
       77  FLD0800E                       PIC X  VALUE 'N'.

       77  FLD0801A                       PIC S9(09)V9(07) COMP-3
           VALUE +443093279.8052367.
       77  FLD0801B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.827967002397862694706986985693220049.
       77  FLD0801E                       PIC X  VALUE 'N'.

       77  FLD0802A                       PIC S9(07)V9(02) COMP-3
           VALUE +2449505.23.
       77  FLD0802B                       PIC  9(04)V9(29) COMP-3
           VALUE  8911.32090012832223102634543465683.
       77  FLD0802E                       PIC X  VALUE 'N'.

       77  FLD0803A                       PIC S9(05)V9(01) COMP-3
           VALUE -17467.0.
       77  FLD0803B                       PIC  9(10)V9(11) COMP-6
           VALUE  5556247901.99399698487.
       77  FLD0803E                       PIC X  VALUE 'N'.

       77  FLD0804A                       PIC  9(07)V9(02) COMP-6
           VALUE  2599541.84.
       77  FLD0804B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0804E                       PIC X  VALUE 'N'.

       77  FLD0805A                       PIC  9(07)V9(01) COMP-6
           VALUE  2358341.0.
       77  FLD0805B                       PIC  9(10)V9(08) COMP-6
           VALUE  4796323563.66873291.
       77  FLD0805E                       PIC X  VALUE 'N'.

       77  FLD0806A                       PIC  9(10)V9(11) COMP-3
           VALUE  5703927562.80738821850.
       77  FLD0806B                       PIC  9(09)V9(07) COMP-6
           VALUE  445849105.9648416.
       77  FLD0806E                       PIC X  VALUE 'N'.

       77  FLD0807A                       PIC  9(09)V9(17) COMP-6
           VALUE  689326682.16034242991696601.
       77  FLD0807B                       PIC S9(03)       COMP-3
           VALUE -090.
       77  FLD0807E                       PIC X  VALUE 'N'.

       77  FLD0808A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0808B                       PIC  9(10)V9(07) COMP-6
           VALUE  4574455047.5690953.
       77  FLD0808E                       PIC X  VALUE 'N'.

       77  FLD0809A                       PIC  9(05)V9(28) COMP-6
           VALUE  86873.4196996681751201663246320094.
       77  FLD0809B                       PIC S9(09)V9(07) COMP-3
           VALUE +440334288.3961999.
       77  FLD0809E                       PIC X  VALUE 'N'.

       77  FLD0810A                       PIC S9(04)       COMP-3
           VALUE +1129.
       77  FLD0810B                       PIC S9(07)V9(01) COMP-3
           VALUE +2130584.0.
       77  FLD0810E                       PIC X  VALUE 'N'.

       77  FLD0811A                       PIC  9(09)V9(15) COMP-6
           VALUE  648943185.643321429623142.
       77  FLD0811B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.811592432324195423021251372119877487.
       77  FLD0811E                       PIC X  VALUE 'N'.

       77  FLD0812A                       PIC S9(08)V9(03) COMP-3
           VALUE -29270905.795.
       77  FLD0812B                       PIC  9(08)V9(02) COMP-6
           VALUE  27514068.39.
       77  FLD0812E                       PIC X  VALUE 'N'.

       77  FLD0813A                       PIC  9(10)V9(08) COMP-6
           VALUE  4881724662.84412076.
       77  FLD0813B                       PIC S9(08)V9(03) COMP-3
           VALUE -29113136.400.
       77  FLD0813E                       PIC X  VALUE 'N'.

       77  FLD0814A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0814B                       PIC  9(07)V9(21) COMP-3
           VALUE  7525112.595496631362479433846.
       77  FLD0814E                       PIC X  VALUE 'N'.

       77  FLD0815A                       PIC  9(06)V9(25) COMP-6
           VALUE  838676.0467962863785373883729334.
       77  FLD0815B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3836598694868031955707010638434439.
       77  FLD0815E                       PIC X  VALUE 'N'.

       77  FLD0816A                       PIC  9(08)V9(18) COMP-6
           VALUE  70774184.783492177786001775.
       77  FLD0816B                       PIC  9(04)V9(29) COMP-6
           VALUE  8859.15144904112161761133847903693.
       77  FLD0816E                       PIC X  VALUE 'N'.

       77  FLD0817A                       PIC  9(10)V9(09) COMP-6
           VALUE  5163345142.860672476.
       77  FLD0817B                       PIC  9(10)V9(09) COMP-6
           VALUE  5158922133.304477686.
       77  FLD0817E                       PIC X  VALUE 'N'.

       77  FLD0818A                       PIC  9(08)V9(03) COMP-6
           VALUE  30586164.664.
       77  FLD0818B                       PIC  9(08)V9(19) COMP-6
           VALUE  71565910.0751609544843745425.
       77  FLD0818E                       PIC X  VALUE 'N'.

       77  FLD0819A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.844708607145921108738662042014766484.
       77  FLD0819B                       PIC S9(03)       COMP-3
           VALUE -092.
       77  FLD0819E                       PIC X  VALUE 'N'.

       77  FLD0820A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0820B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6537139953218984445015848905313760.
       77  FLD0820E                       PIC X  VALUE 'N'.

       77  FLD0821A                       PIC  9(09)V9(11) COMP-3
           VALUE  550576956.44832715942.
       77  FLD0821B                       PIC S9(09)V9(05) COMP-3
           VALUE -383656536.39422.
       77  FLD0821E                       PIC X  VALUE 'N'.

       77  FLD0822A                       PIC S9(05)       COMP-3
           VALUE +14037.
       77  FLD0822B                       PIC  9(04)       COMP-6
           VALUE  1092.
       77  FLD0822E                       PIC X  VALUE 'N'.

       77  FLD0823A                       PIC  9(08)V9(20) COMP-6
           VALUE  73880168.20028298070610617287.
       77  FLD0823B                       PIC S9(09)V9(06) COMP-3
           VALUE +410430433.569272.
       77  FLD0823E                       PIC X  VALUE 'N'.

       77  FLD0824A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351534260.3280557920.
       77  FLD0824B                       PIC  9(09)V9(14) COMP-6
           VALUE  619637811.24301098301998.
       77  FLD0824E                       PIC X  VALUE 'N'.

       77  FLD0825A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0825B                       PIC S9(05)V9(01) COMP-3
           VALUE -17069.2.
       77  FLD0825E                       PIC X  VALUE 'N'.

       77  FLD0826A                       PIC S9(06)V9(01) COMP-3
           VALUE -190786.5.
       77  FLD0826B                       PIC S9(10)V9(08) COMP-3
           VALUE -4805976358.59735916.
       77  FLD0826E                       PIC X  VALUE 'N'.

       77  FLD0827A                       PIC  9(07)V9(22) COMP-6
           VALUE  7763847.1978375678261841130733.
       77  FLD0827B                       PIC  9(10)V9(07) COMP-6
           VALUE  4683286251.1747114.
       77  FLD0827E                       PIC X  VALUE 'N'.

       77  FLD0828A                       PIC S9(10)V9(07) COMP-3
           VALUE -4530916009.2405642.
       77  FLD0828B                       PIC S9(05)       COMP-3
           VALUE -15016.
       77  FLD0828E                       PIC X  VALUE 'N'.

       77  FLD0829A                       PIC  9(09)V9(17) COMP-3
           VALUE  691486534.21926165041355716.
       77  FLD0829B                       PIC  9(07)V9(23) COMP-6
           VALUE  7963194.44710118728991687930829.
       77  FLD0829E                       PIC X  VALUE 'N'.

       77  FLD0830A                       PIC  9(04)V9(30) COMP-6
           VALUE  8965.722935126121395654763546190224.
       77  FLD0830B                       PIC  9(10)V9(11) COMP-6
           VALUE  5655358049.53465004452.
       77  FLD0830E                       PIC X  VALUE 'N'.

       77  FLD0831A                       PIC  9(04)V9(30) COMP-6
           VALUE  8956.555580996397036841472072410397.
       77  FLD0831B                       PIC  9(09)V9(16) COMP-3
           VALUE  660284490.9595845246386147.
       77  FLD0831E                       PIC X  VALUE 'N'.

       77  FLD0832A                       PIC  9(04)       COMP-6
           VALUE  1185.
       77  FLD0832B                       PIC  9(09)V9(06) COMP-6
           VALUE  419049138.539795.
       77  FLD0832E                       PIC X  VALUE 'N'.

       77  FLD0833A                       PIC  9(06)V9(24) COMP-3
           VALUE  804859.798300300854911881742737.
       77  FLD0833B                       PIC  9(09)V9(16) COMP-3
           VALUE  664990588.4825918489511309.
       77  FLD0833E                       PIC X  VALUE 'N'.

       77  FLD0834A                       PIC  9(09)V9(04) COMP-6
           VALUE  349209744.2881.
       77  FLD0834B                       PIC  9(08)V9(19) COMP-3
           VALUE  71191898.1740956136050613167.
       77  FLD0834E                       PIC X  VALUE 'N'.

       77  FLD0835A                       PIC  9(08)V9(19) COMP-3
           VALUE  71178359.2779248075466114187.
       77  FLD0835B                       PIC  9(07)V9(22) COMP-6
           VALUE  7891261.8513661014763016510187.
       77  FLD0835E                       PIC X  VALUE 'N'.

       77  FLD0836A                       PIC  9(09)V9(07) COMP-6
           VALUE  446141389.3412962.
       77  FLD0836B                       PIC  9(09)V9(13) COMP-3
           VALUE  594066179.3005866941896.
       77  FLD0836E                       PIC X  VALUE 'N'.

       77  FLD0837A                       PIC  9(04)V9(30) COMP-6
           VALUE  8982.008694278872384941792006429750.
       77  FLD0837B                       PIC S9(08)V9(03) COMP-3
           VALUE -29146758.519.
       77  FLD0837E                       PIC X  VALUE 'N'.

       77  FLD0838A                       PIC  9(10)V9(12) COMP-6
           VALUE  5873188106.793812979233.
       77  FLD0838B                       PIC  9(07)V9(22) COMP-3
           VALUE  7748686.2151072521953665273031.
       77  FLD0838E                       PIC X  VALUE 'N'.

       77  FLD0839A                       PIC  9(08)V9(19) COMP-3
           VALUE  71324671.8649382605015318858.
       77  FLD0839B                       PIC  9(06)V9(01) COMP-6
           VALUE  205379.6.
       77  FLD0839E                       PIC X  VALUE 'N'.

       77  FLD0840A                       PIC S9(03)       COMP-3
           VALUE -094.
       77  FLD0840B                       PIC  9(04)       COMP-6
           VALUE  1059.
       77  FLD0840E                       PIC X  VALUE 'N'.

       77  FLD0841A                       PIC  9(08)V9(18) COMP-3
           VALUE  70179428.042996372383299785.
       77  FLD0841B                       PIC  9(06)V9(24) COMP-3
           VALUE  813553.693586876014443021176703.
       77  FLD0841E                       PIC X  VALUE 'N'.

       77  FLD0842A                       PIC  9(09)V9(16) COMP-3
           VALUE  661649948.5739699704112126.
       77  FLD0842B                       PIC  9(02)V9(33) COMP-6
           VALUE  94.543261545044898763734408930758945.
       77  FLD0842E                       PIC X  VALUE 'N'.

       77  FLD0843A                       PIC  9(06)V9(25) COMP-6
           VALUE  818928.0761087860405211813485948.
       77  FLD0843B                       PIC S9(08)V9(03) COMP-3
           VALUE +30347988.647.
       77  FLD0843E                       PIC X  VALUE 'N'.

       77  FLD0844A                       PIC  9(07)V9(22) COMP-6
           VALUE  7754458.9142564990247308287507.
       77  FLD0844B                       PIC  9(10)V9(07) COMP-6
           VALUE  4487113046.2525055.
       77  FLD0844E                       PIC X  VALUE 'N'.

       77  FLD0845A                       PIC  9(10)V9(12) COMP-3
           VALUE  5903835745.060688200425.
       77  FLD0845B                       PIC  9(09)V9(15) COMP-3
           VALUE  651184321.418812994686220.
       77  FLD0845E                       PIC X  VALUE 'N'.

       77  FLD0846A                       PIC  9(08)V9(03) COMP-6
           VALUE  29802576.878.
       77  FLD0846B                       PIC  9(10)V9(07) COMP-6
           VALUE  4580030325.9646085.
       77  FLD0846E                       PIC X  VALUE 'N'.

       77  FLD0847A                       PIC  9(05)V9(26) COMP-3
           VALUE  84041.42690564196938041163775778.
       77  FLD0847B                       PIC  9(08)V9(03) COMP-6
           VALUE  29618694.346.
       77  FLD0847E                       PIC X  VALUE 'N'.

       77  FLD0848A                       PIC  9(07)V9(23) COMP-3
           VALUE  7949747.62786875510656159349309.
       77  FLD0848B                       PIC  9(08)V9(19) COMP-3
           VALUE  71130247.7845018432667245633.
       77  FLD0848E                       PIC X  VALUE 'N'.

       77  FLD0849A                       PIC  9(09)V9(13) COMP-6
           VALUE  595598045.8961575019216.
       77  FLD0849B                       PIC  9(07)V9(21) COMP-3
           VALUE  7527838.155592773139446194363.
       77  FLD0849E                       PIC X  VALUE 'N'.

       77  FLD0850A                       PIC  9(09)V9(06) COMP-6
           VALUE  418716850.605351.
       77  FLD0850B                       PIC  9(09)V9(15) COMP-3
           VALUE  631787055.454641532925563.
       77  FLD0850E                       PIC X  VALUE 'N'.

       77  FLD0851A                       PIC S9(03)       COMP-3
           VALUE -082.
       77  FLD0851B                       PIC  9(07)V9(01) COMP-6
           VALUE  2252059.3.
       77  FLD0851E                       PIC X  VALUE 'N'.

       77  FLD0852A                       PIC  9(10)V9(11) COMP-3
           VALUE  5643399909.75319838462.
       77  FLD0852B                       PIC  9(08)V9(02) COMP-6
           VALUE  28682579.88.
       77  FLD0852E                       PIC X  VALUE 'N'.

       77  FLD0853A                       PIC  9(06)V9(24) COMP-3
           VALUE  801200.590406665469345171004533.
       77  FLD0853B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0853E                       PIC X  VALUE 'N'.

       77  FLD0854A                       PIC  9(01)V9(35) COMP-3
           VALUE  9.72377885073923198255840816273121163.
       77  FLD0854B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0854E                       PIC X  VALUE 'N'.

       77  FLD0855A                       PIC  9(08)V9(19) COMP-6
           VALUE  73562901.0042854747375429269.
       77  FLD0855B                       PIC  9(05)V9(01) COMP-6
           VALUE  16705.4.
       77  FLD0855E                       PIC X  VALUE 'N'.

       77  FLD0856A                       PIC  9(09)V9(04) COMP-6
           VALUE  356144099.6704.
       77  FLD0856B                       PIC S9(05)       COMP-3
           VALUE +13257.
       77  FLD0856E                       PIC X  VALUE 'N'.

       77  FLD0857A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.3286634102202334872799838194623.
       77  FLD0857B                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0857E                       PIC X  VALUE 'N'.

       77  FLD0858A                       PIC  9(10)V9(11) COMP-6
           VALUE  5560594458.08950059131.
       77  FLD0858B                       PIC  9(08)V9(03) COMP-6
           VALUE  30966624.473.
       77  FLD0858E                       PIC X  VALUE 'N'.

       77  FLD0859A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0859B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.1628168143447767945986015547532588.
       77  FLD0859E                       PIC X  VALUE 'N'.

       77  FLD0860A                       PIC  9(07)V9(02) COMP-6
           VALUE  2576407.94.
       77  FLD0860B                       PIC  9(08)V9(04) COMP-6
           VALUE  33654706.3315.
       77  FLD0860E                       PIC X  VALUE 'N'.

       77  FLD0861A                       PIC S9(10)V9(07) COMP-3
           VALUE -4605509961.3842453.
       77  FLD0861B                       PIC  9(04)       COMP-6
           VALUE  1091.
       77  FLD0861E                       PIC X  VALUE 'N'.

       77  FLD0862A                       PIC  9(07)V9(22) COMP-6
           VALUE  7652464.2157409383802502134130.
       77  FLD0862B                       PIC  9(09)V9(12) COMP-6
           VALUE  576630833.581719182134.
       77  FLD0862E                       PIC X  VALUE 'N'.

       77  FLD0863A                       PIC  9(05)V9(27) COMP-3
           VALUE  85070.091557533766835064170663827.
       77  FLD0863B                       PIC  9(10)V9(09) COMP-6
           VALUE  5171260723.603198217.
       77  FLD0863E                       PIC X  VALUE 'N'.

       77  FLD0864A                       PIC  9(10)V9(11) COMP-3
           VALUE  5711242885.34377577697.
       77  FLD0864B                       PIC  9(04)V9(29) COMP-6
           VALUE  8791.30787212824560405977081245509.
       77  FLD0864E                       PIC X  VALUE 'N'.

       77  FLD0865A                       PIC  9(06)V9(24) COMP-6
           VALUE  807409.725415061507725056344497.
       77  FLD0865B                       PIC S9(03)       COMP-3
           VALUE -082.
       77  FLD0865E                       PIC X  VALUE 'N'.

       77  FLD0866A                       PIC  9(09)V9(05) COMP-6
           VALUE  376060050.51851.
       77  FLD0866B                       PIC  9(04)V9(30) COMP-6
           VALUE  9076.867019798932068042063292523380.
       77  FLD0866E                       PIC X  VALUE 'N'.

       77  FLD0867A                       PIC S9(05)       COMP-3
           VALUE +14084.
       77  FLD0867B                       PIC  9(08)V9(19) COMP-6
           VALUE  72879777.6966572774526298417.
       77  FLD0867E                       PIC X  VALUE 'N'.

       77  FLD0868A                       PIC  9(07)V9(22) COMP-3
           VALUE  7648419.8420910554094831468319.
       77  FLD0868B                       PIC  9(10)V9(12) COMP-3
           VALUE  5849128371.667725589944.
       77  FLD0868E                       PIC X  VALUE 'N'.

       77  FLD0869A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0869B                       PIC  9(08)V9(17) COMP-3
           VALUE  68157822.06919422936408636.
       77  FLD0869E                       PIC X  VALUE 'N'.

       77  FLD0870A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0870B                       PIC  9(09)V9(15) COMP-6
           VALUE  657570531.523696821807334.
       77  FLD0870E                       PIC X  VALUE 'N'.

       77  FLD0871A                       PIC  9(09)V9(14) COMP-6
           VALUE  609764683.38536315982878.
       77  FLD0871B                       PIC  9(10)V9(09) COMP-3
           VALUE  5134836781.377033476.
       77  FLD0871E                       PIC X  VALUE 'N'.

       77  FLD0872A                       PIC  9(04)V9(29) COMP-3
           VALUE  8816.31176263962479389135751262074.
       77  FLD0872B                       PIC  9(10)V9(07) COMP-6
           VALUE  4591409950.7884903.
       77  FLD0872E                       PIC X  VALUE 'N'.

       77  FLD0873A                       PIC  9(07)V9(21) COMP-6
           VALUE  7561255.223942077163812314211.
       77  FLD0873B                       PIC  9(05)       COMP-6
           VALUE  15597.
       77  FLD0873E                       PIC X  VALUE 'N'.

       77  FLD0874A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0874B                       PIC  9(06)V9(01) COMP-6
           VALUE  188106.3.
       77  FLD0874E                       PIC X  VALUE 'N'.

       77  FLD0875A                       PIC S9(06)V9(01) COMP-3
           VALUE +204126.0.
       77  FLD0875B                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0875E                       PIC X  VALUE 'N'.

       77  FLD0876A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0876B                       PIC  9(07)V9(23) COMP-3
           VALUE  7928238.87607293276147402139031.
       77  FLD0876E                       PIC X  VALUE 'N'.

       77  FLD0877A                       PIC  9(08)V9(18) COMP-6
           VALUE  69924605.886404200827399790.
       77  FLD0877B                       PIC  9(09)V9(15) COMP-3
           VALUE  651975862.412979334514773.
       77  FLD0877E                       PIC X  VALUE 'N'.

       77  FLD0878A                       PIC  9(07)V9(22) COMP-3
           VALUE  7831260.9220719830993573395971.
       77  FLD0878B                       PIC  9(04)V9(29) COMP-3
           VALUE  8832.64528360225620318146866338793.
       77  FLD0878E                       PIC X  VALUE 'N'.

       77  FLD0879A                       PIC  9(07)V9(02) COMP-6
           VALUE  2371533.81.
       77  FLD0879B                       PIC  9(05)V9(27) COMP-3
           VALUE  85230.962794591269560129376259283.
       77  FLD0879E                       PIC X  VALUE 'N'.

       77  FLD0880A                       PIC S9(10)V9(06) COMP-3
           VALUE +4237732309.742536.
       77  FLD0880B                       PIC  9(05)V9(26) COMP-6
           VALUE  83915.37539577657023315282458497.
       77  FLD0880E                       PIC X  VALUE 'N'.

       77  FLD0881A                       PIC  9(10)V9(11) COMP-6
           VALUE  5571129514.90407404264.
       77  FLD0881B                       PIC S9(09)V9(04) COMP-3
           VALUE -360610120.1846.
       77  FLD0881E                       PIC X  VALUE 'N'.

       77  FLD0882A                       PIC  9(10)V9(12) COMP-6
           VALUE  5888713345.878072713546.
       77  FLD0882B                       PIC  9(09)V9(16) COMP-6
           VALUE  677832951.8186110291821933.
       77  FLD0882E                       PIC X  VALUE 'N'.

       77  FLD0883A                       PIC  9(09)V9(16) COMP-3
           VALUE  672192258.1526228457349247.
       77  FLD0883B                       PIC  9(07)V9(21) COMP-6
           VALUE  7561874.624389478549701948395.
       77  FLD0883E                       PIC X  VALUE 'N'.

       77  FLD0884A                       PIC  9(10)V9(08) COMP-6
           VALUE  4954020911.85092596.
       77  FLD0884B                       PIC  9(07)V9(21) COMP-3
           VALUE  7530519.818486510752464369033.
       77  FLD0884E                       PIC X  VALUE 'N'.

       77  FLD0885A                       PIC S9(05)       COMP-3
           VALUE +13360.
       77  FLD0885B                       PIC S9(05)       COMP-3
           VALUE -15432.
       77  FLD0885E                       PIC X  VALUE 'N'.

       77  FLD0886A                       PIC S9(09)V9(05) COMP-3
           VALUE -374529584.88504.
       77  FLD0886B                       PIC S9(09)V9(05) COMP-3
           VALUE -380480275.58811.
       77  FLD0886E                       PIC X  VALUE 'N'.

       77  FLD0887A                       PIC S9(07)V9(01) COMP-3
           VALUE +2114795.5.
       77  FLD0887B                       PIC  9(06)V9(25) COMP-6
           VALUE  815821.3018675709582439026235078.
       77  FLD0887E                       PIC X  VALUE 'N'.

       77  FLD0888A                       PIC  9(08)V9(19) COMP-6
           VALUE  73580519.1914812417586233550.
       77  FLD0888B                       PIC  9(07)V9(02) COMP-6
           VALUE  2394446.18.
       77  FLD0888E                       PIC X  VALUE 'N'.

       77  FLD0889A                       PIC S9(05)       COMP-3
           VALUE -15225.
       77  FLD0889B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.3719675610497206186266794247785583.
       77  FLD0889E                       PIC X  VALUE 'N'.

       77  FLD0890A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0890B                       PIC  9(08)V9(19) COMP-3
           VALUE  72161358.3480198661490589984.
       77  FLD0890E                       PIC X  VALUE 'N'.

       77  FLD0891A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7956124985634538404610793804749846.
       77  FLD0891B                       PIC  9(08)V9(19) COMP-6
           VALUE  73526985.6204998628612656830.
       77  FLD0891E                       PIC X  VALUE 'N'.

       77  FLD0892A                       PIC  9(10)V9(09) COMP-6
           VALUE  5079027644.377075434.
       77  FLD0892B                       PIC  9(03)       COMP-6
           VALUE  088.
       77  FLD0892E                       PIC X  VALUE 'N'.

       77  FLD0893A                       PIC  9(10)V9(12) COMP-3
           VALUE  5900775083.003402254888.
       77  FLD0893B                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0893E                       PIC X  VALUE 'N'.

       77  FLD0894A                       PIC  9(06)V9(25) COMP-6
           VALUE  819872.1409522375935807758651208.
       77  FLD0894B                       PIC  9(09)V9(15) COMP-6
           VALUE  655129000.141700390535959.
       77  FLD0894E                       PIC X  VALUE 'N'.

       77  FLD0895A                       PIC  9(10)V9(09) COMP-6
           VALUE  5099949658.575000377.
       77  FLD0895B                       PIC  9(08)V9(02) COMP-6
           VALUE  28944204.51.
       77  FLD0895E                       PIC X  VALUE 'N'.

       77  FLD0896A                       PIC  9(10)V9(07) COMP-6
           VALUE  4576511370.6787369.
       77  FLD0896B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0896E                       PIC X  VALUE 'N'.

       77  FLD0897A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.997543976245016894566219889384228736.
       77  FLD0897B                       PIC S9(09)V9(07) COMP-3
           VALUE +440492210.0858147.
       77  FLD0897E                       PIC X  VALUE 'N'.

       77  FLD0898A                       PIC  9(09)V9(05) COMP-6
           VALUE  378033726.09171.
       77  FLD0898B                       PIC  9(06)V9(01) COMP-6
           VALUE  199374.1.
       77  FLD0898E                       PIC X  VALUE 'N'.

       77  FLD0899A                       PIC  9(08)V9(20) COMP-6
           VALUE  74918436.40783237834313013081.
       77  FLD0899B                       PIC  9(09)V9(07) COMP-6
           VALUE  438142184.6749312.
       77  FLD0899E                       PIC X  VALUE 'N'.

       77  FLD0900A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.41329164379282712360463847289793.
       77  FLD0900B                       PIC  9(06)V9(01) COMP-6
           VALUE  185639.8.
       77  FLD0900E                       PIC X  VALUE 'N'.

       77  FLD0901A                       PIC  9(10)V9(07) COMP-6
           VALUE  4563598931.5070740.
       77  FLD0901B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.782322298369796609307513790554367005.
       77  FLD0901E                       PIC X  VALUE 'N'.

       77  FLD0902A                       PIC  9(05)V9(28) COMP-3
           VALUE  87405.6741908566081633580324705690.
       77  FLD0902B                       PIC  9(10)V9(09) COMP-3
           VALUE  5131137190.755751253.
       77  FLD0902E                       PIC X  VALUE 'N'.

       77  FLD0903A                       PIC  9(08)V9(02) COMP-6
           VALUE  28616952.10.
       77  FLD0903B                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0903E                       PIC X  VALUE 'N'.

       77  FLD0904A                       PIC S9(04)       COMP-3
           VALUE +1137.
       77  FLD0904B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0904E                       PIC X  VALUE 'N'.

       77  FLD0905A                       PIC  9(09)V9(04) COMP-6
           VALUE  357938124.4724.
       77  FLD0905B                       PIC  9(09)V9(04) COMP-6
           VALUE  349599231.9688.
       77  FLD0905E                       PIC X  VALUE 'N'.

       77  FLD0906A                       PIC  9(09)V9(16) COMP-6
           VALUE  669388906.6218295935684068.
       77  FLD0906B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0906E                       PIC X  VALUE 'N'.

       77  FLD0907A                       PIC S9(09)V9(05) COMP-3
           VALUE -390800584.69506.
       77  FLD0907B                       PIC  9(10)V9(11) COMP-6
           VALUE  5692874702.16027324809.
       77  FLD0907E                       PIC X  VALUE 'N'.

       77  FLD0908A                       PIC S9(10)V9(06) COMP-3
           VALUE +4306350776.286586.
       77  FLD0908B                       PIC  9(03)V9(31) COMP-3
           VALUE  912.0472776451683527554337160836439.
       77  FLD0908E                       PIC X  VALUE 'N'.

       77  FLD0909A                       PIC  9(08)V9(03) COMP-6
           VALUE  30663800.453.
       77  FLD0909B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0909E                       PIC X  VALUE 'N'.

       77  FLD0910A                       PIC S9(06)V9(01) COMP-3
           VALUE -193158.9.
       77  FLD0910B                       PIC  9(04)V9(30) COMP-6
           VALUE  9098.433765600096867487422969134058.
       77  FLD0910E                       PIC X  VALUE 'N'.

       77  FLD0911A                       PIC S9(10)V9(07) COMP-3
           VALUE -4611964452.0728980.
       77  FLD0911B                       PIC  9(08)V9(20) COMP-3
           VALUE  74305071.04102702653491974160.
       77  FLD0911E                       PIC X  VALUE 'N'.

       77  FLD0912A                       PIC  9(10)V9(09) COMP-3
           VALUE  5000191930.396378214.
       77  FLD0912B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0912E                       PIC X  VALUE 'N'.

       77  FLD0913A                       PIC S9(04)       COMP-3
           VALUE +1246.
       77  FLD0913B                       PIC  9(03)       COMP-6
           VALUE  079.
       77  FLD0913E                       PIC X  VALUE 'N'.

       77  FLD0914A                       PIC  9(03)V9(31) COMP-6
           VALUE  917.2012666333545505281676923914346.
       77  FLD0914B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.801144784183424274459639491396956145.
       77  FLD0914E                       PIC X  VALUE 'N'.

       77  FLD0915A                       PIC  9(08)V9(20) COMP-6
           VALUE  74750906.49492384109464637731.
       77  FLD0915B                       PIC S9(04)       COMP-3
           VALUE +1130.
       77  FLD0915E                       PIC X  VALUE 'N'.

       77  FLD0916A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0916B                       PIC  9(10)V9(06) COMP-6
           VALUE  4372777685.598984.
       77  FLD0916E                       PIC X  VALUE 'N'.

       77  FLD0917A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0917B                       PIC  9(04)       COMP-6
           VALUE  1084.
       77  FLD0917E                       PIC X  VALUE 'N'.

       77  FLD0918A                       PIC  9(04)       COMP-6
           VALUE  1059.
       77  FLD0918B                       PIC  9(10)V9(11) COMP-6
           VALUE  5693106161.94893204244.
       77  FLD0918E                       PIC X  VALUE 'N'.

       77  FLD0919A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0919B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0919E                       PIC X  VALUE 'N'.

       77  FLD0920A                       PIC S9(05)V9(01) COMP-3
           VALUE -17474.9.
       77  FLD0920B                       PIC  9(09)V9(16) COMP-6
           VALUE  669843285.3658151664433262.
       77  FLD0920E                       PIC X  VALUE 'N'.

       77  FLD0921A                       PIC  9(10)V9(10) COMP-6
           VALUE  5463494999.0456427304.
       77  FLD0921B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0921E                       PIC X  VALUE 'N'.

       77  FLD0922A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0922B                       PIC S9(05)V9(01) COMP-3
           VALUE -18331.8.
       77  FLD0922E                       PIC X  VALUE 'N'.

       77  FLD0923A                       PIC  9(06)       COMP-6
           VALUE  159582.
       77  FLD0923B                       PIC S9(04)       COMP-3
           VALUE +1310.
       77  FLD0923E                       PIC X  VALUE 'N'.

       77  FLD0924A                       PIC  9(10)V9(11) COMP-6
           VALUE  5650505738.70210182114.
       77  FLD0924B                       PIC  9(06)V9(25) COMP-3
           VALUE  830413.4742864166529585645548650.
       77  FLD0924E                       PIC X  VALUE 'N'.

       77  FLD0925A                       PIC S9(04)       COMP-3
           VALUE +1236.
       77  FLD0925B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0925E                       PIC X  VALUE 'N'.

       77  FLD0926A                       PIC  9(08)V9(18) COMP-6
           VALUE  69535643.175280814620720093.
       77  FLD0926B                       PIC S9(07)V9(02) COMP-3
           VALUE -2533128.95.
       77  FLD0926E                       PIC X  VALUE 'N'.

       77  FLD0927A                       PIC  9(06)V9(24) COMP-3
           VALUE  800954.558131814597921049880824.
       77  FLD0927B                       PIC  9(10)V9(09) COMP-3
           VALUE  5121064754.192180545.
       77  FLD0927E                       PIC X  VALUE 'N'.

       77  FLD0928A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0928B                       PIC  9(07)V9(02) COMP-6
           VALUE  2551694.92.
       77  FLD0928E                       PIC X  VALUE 'N'.

       77  FLD0929A                       PIC  9(05)V9(28) COMP-3
           VALUE  87174.0739403786824013309342262800.
       77  FLD0929B                       PIC  9(08)V9(19) COMP-3
           VALUE  71306594.2354483839338286088.
       77  FLD0929E                       PIC X  VALUE 'N'.

       77  FLD0930A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.911281003002671008417223674769047647.
       77  FLD0930B                       PIC  9(09)V9(13) COMP-3
           VALUE  591594874.8305130955316.
       77  FLD0930E                       PIC X  VALUE 'N'.

       77  FLD0931A                       PIC  9(09)V9(12) COMP-3
           VALUE  573747057.720371378408.
       77  FLD0931B                       PIC S9(07)V9(02) COMP-3
           VALUE -2503283.13.
       77  FLD0931E                       PIC X  VALUE 'N'.

       77  FLD0932A                       PIC  9(10)V9(09) COMP-6
           VALUE  5079506475.355934913.
       77  FLD0932B                       PIC  9(10)V9(09) COMP-6
           VALUE  5196217943.575858200.
       77  FLD0932E                       PIC X  VALUE 'N'.

       77  FLD0933A                       PIC  9(07)V9(22) COMP-6
           VALUE  7776883.1704294028028812135744.
       77  FLD0933B                       PIC  9(09)V9(03) COMP-6
           VALUE  328435728.864.
       77  FLD0933E                       PIC X  VALUE 'N'.

       77  FLD0934A                       PIC  9(05)V9(01) COMP-6
           VALUE  16899.6.
       77  FLD0934B                       PIC  9(07)V9(02) COMP-6
           VALUE  2394400.51.
       77  FLD0934E                       PIC X  VALUE 'N'.

       77  FLD0935A                       PIC  9(05)V9(01) COMP-6
           VALUE  16691.2.
       77  FLD0935B                       PIC  9(10)V9(08) COMP-6
           VALUE  4853829665.64275264.
       77  FLD0935E                       PIC X  VALUE 'N'.

       77  FLD0936A                       PIC  9(08)V9(03) COMP-6
           VALUE  29560937.131.
       77  FLD0936B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.2998853185021421730027668672846630.
       77  FLD0936E                       PIC X  VALUE 'N'.

       77  FLD0937A                       PIC  9(02)V9(33) COMP-3
           VALUE  94.462893191714936147462822191300801.
       77  FLD0937B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0937E                       PIC X  VALUE 'N'.

       77  FLD0938A                       PIC  9(09)V9(12) COMP-6
           VALUE  578242437.999430092254.
       77  FLD0938B                       PIC  9(08)V9(18) COMP-6
           VALUE  70721875.972746128802270959.
       77  FLD0938E                       PIC X  VALUE 'N'.

       77  FLD0939A                       PIC  9(10)V9(13) COMP-6
           VALUE  6084884727.3780637401330.
       77  FLD0939B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0939E                       PIC X  VALUE 'N'.

       77  FLD0940A                       PIC  9(09)V9(12) COMP-6
           VALUE  577997061.609985873786.
       77  FLD0940B                       PIC  9(10)V9(08) COMP-6
           VALUE  4780052522.48498546.
       77  FLD0940E                       PIC X  VALUE 'N'.

       77  FLD0941A                       PIC  9(09)V9(16) COMP-3
           VALUE  670449367.9367865555107641.
       77  FLD0941B                       PIC  9(09)V9(04) COMP-6
           VALUE  345028332.3540.
       77  FLD0941E                       PIC X  VALUE 'N'.

       77  FLD0942A                       PIC  9(10)V9(10) COMP-3
           VALUE  5309347867.8071082121.
       77  FLD0942B                       PIC  9(03)V9(32) COMP-3
           VALUE  922.70492697630424050458941565011627.
       77  FLD0942E                       PIC X  VALUE 'N'.

       77  FLD0943A                       PIC S9(09)V9(03) COMP-3
           VALUE +323766798.919.
       77  FLD0943B                       PIC S9(06)V9(01) COMP-3
           VALUE +203018.6.
       77  FLD0943E                       PIC X  VALUE 'N'.

       77  FLD0944A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7363239628727824559462078468641266.
       77  FLD0944B                       PIC S9(07)V9(02) COMP-3
           VALUE -2600465.21.
       77  FLD0944E                       PIC X  VALUE 'N'.

       77  FLD0945A                       PIC  9(10)V9(10) COMP-3
           VALUE  5427766423.1255295934.
       77  FLD0945B                       PIC S9(10)V9(06) COMP-3
           VALUE +4211785767.712989.
       77  FLD0945E                       PIC X  VALUE 'N'.

       77  FLD0946A                       PIC S9(07)V9(02) COMP-3
           VALUE -2603132.30.
       77  FLD0946B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.2407519811451561686510558502050116.
       77  FLD0946E                       PIC X  VALUE 'N'.

       77  FLD0947A                       PIC  9(05)V9(27) COMP-6
           VALUE  85846.989065825540787812997223227.
       77  FLD0947B                       PIC  9(09)V9(16) COMP-3
           VALUE  671942080.3697424560141371.
       77  FLD0947E                       PIC X  VALUE 'N'.

       77  FLD0948A                       PIC  9(04)       COMP-6
           VALUE  1058.
       77  FLD0948B                       PIC  9(07)V9(21) COMP-6
           VALUE  7582594.805549627281493485497.
       77  FLD0948E                       PIC X  VALUE 'N'.

       77  FLD0949A                       PIC S9(10)V9(06) COMP-3
           VALUE +4307044196.647341.
       77  FLD0949B                       PIC  9(10)V9(07) COMP-6
           VALUE  4670230467.6696332.
       77  FLD0949E                       PIC X  VALUE 'N'.

       77  FLD0950A                       PIC  9(09)V9(14) COMP-3
           VALUE  614898523.03850200954116.
       77  FLD0950B                       PIC  9(04)V9(30) COMP-6
           VALUE  9056.465512238127679722765606129541.
       77  FLD0950E                       PIC X  VALUE 'N'.

       77  FLD0951A                       PIC S9(08)V9(03) COMP-3
           VALUE +31116955.475.
       77  FLD0951B                       PIC  9(08)V9(20) COMP-6
           VALUE  74599134.92992847894313968026.
       77  FLD0951E                       PIC X  VALUE 'N'.

       77  FLD0952A                       PIC  9(09)V9(03) COMP-6
           VALUE  315844571.317.
       77  FLD0952B                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0952E                       PIC X  VALUE 'N'.

       77  FLD0953A                       PIC  9(06)       COMP-6
           VALUE  166635.
       77  FLD0953B                       PIC  9(10)V9(09) COMP-6
           VALUE  5187782319.462912461.
       77  FLD0953E                       PIC X  VALUE 'N'.

       77  FLD0954A                       PIC  9(10)V9(11) COMP-6
           VALUE  5577123049.60128579800.
       77  FLD0954B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0603521071659591790137255884474143.
       77  FLD0954E                       PIC X  VALUE 'N'.

       77  FLD0955A                       PIC S9(08)V9(02) COMP-3
           VALUE -27357789.23.
       77  FLD0955B                       PIC  9(06)V9(25) COMP-3
           VALUE  823687.4590304759102821208216482.
       77  FLD0955E                       PIC X  VALUE 'N'.

       77  FLD0956A                       PIC S9(08)V9(02) COMP-3
           VALUE -27355040.84.
       77  FLD0956B                       PIC  9(08)V9(18) COMP-3
           VALUE  70029518.862281070479269828.
       77  FLD0956E                       PIC X  VALUE 'N'.

       77  FLD0957A                       PIC  9(09)V9(15) COMP-6
           VALUE  637627083.330792543414133.
       77  FLD0957B                       PIC S9(04)       COMP-3
           VALUE +1212.
       77  FLD0957E                       PIC X  VALUE 'N'.

       77  FLD0958A                       PIC S9(08)V9(03) COMP-3
           VALUE -29370744.150.
       77  FLD0958B                       PIC  9(10)V9(06) COMP-6
           VALUE  4358178846.720288.
       77  FLD0958E                       PIC X  VALUE 'N'.

       77  FLD0959A                       PIC  9(06)V9(25) COMP-6
           VALUE  827211.6833605048791255853757320.
       77  FLD0959B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0959E                       PIC X  VALUE 'N'.

       77  FLD0960A                       PIC  9(10)V9(11) COMP-6
           VALUE  5559976801.18206716315.
       77  FLD0960B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0960E                       PIC X  VALUE 'N'.

       77  FLD0961A                       PIC  9(08)V9(19) COMP-6
           VALUE  72708740.7191407630868695832.
       77  FLD0961B                       PIC S9(04)       COMP-3
           VALUE +1315.
       77  FLD0961E                       PIC X  VALUE 'N'.

       77  FLD0962A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8081984946274620718043024680810049.
       77  FLD0962B                       PIC  9(08)V9(17) COMP-3
           VALUE  68265700.44059103725686554.
       77  FLD0962E                       PIC X  VALUE 'N'.

       77  FLD0963A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.803573230667260718362854277074802666.
       77  FLD0963B                       PIC  9(09)V9(16) COMP-6
           VALUE  657950850.8072698935720268.
       77  FLD0963E                       PIC X  VALUE 'N'.

       77  FLD0964A                       PIC  9(09)V9(15) COMP-6
           VALUE  639504907.969730918004813.
       77  FLD0964B                       PIC  9(09)V9(13) COMP-6
           VALUE  599568613.7680703575725.
       77  FLD0964E                       PIC X  VALUE 'N'.

       77  FLD0965A                       PIC  9(05)       COMP-6
           VALUE  13581.
       77  FLD0965B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0965E                       PIC X  VALUE 'N'.

       77  FLD0966A                       PIC  9(06)V9(01) COMP-6
           VALUE  189200.6.
       77  FLD0966B                       PIC  9(06)V9(01) COMP-6
           VALUE  189757.7.
       77  FLD0966E                       PIC X  VALUE 'N'.

       77  FLD0967A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0967B                       PIC  9(09)V9(04) COMP-6
           VALUE  356045641.3147.
       77  FLD0967E                       PIC X  VALUE 'N'.

       77  FLD0968A                       PIC  9(09)V9(15) COMP-6
           VALUE  649996663.320669743058033.
       77  FLD0968B                       PIC S9(04)       COMP-3
           VALUE +1132.
       77  FLD0968E                       PIC X  VALUE 'N'.

       77  FLD0969A                       PIC S9(05)       COMP-3
           VALUE -15366.
       77  FLD0969B                       PIC  9(09)V9(13) COMP-3
           VALUE  594539058.0989867723715.
       77  FLD0969E                       PIC X  VALUE 'N'.

       77  FLD0970A                       PIC  9(09)V9(14) COMP-3
           VALUE  631417540.20798013247173.
       77  FLD0970B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8862081091470539462306987843476235.
       77  FLD0970E                       PIC X  VALUE 'N'.

       77  FLD0971A                       PIC  9(07)V9(01) COMP-6
           VALUE  2161446.9.
       77  FLD0971B                       PIC S9(09)V9(06) COMP-3
           VALUE +400705169.115322.
       77  FLD0971E                       PIC X  VALUE 'N'.

       77  FLD0972A                       PIC  9(09)V9(15) COMP-6
           VALUE  647710182.878484586055378.
       77  FLD0972B                       PIC  9(05)       COMP-6
           VALUE  13649.
       77  FLD0972E                       PIC X  VALUE 'N'.

       77  FLD0973A                       PIC  9(05)       COMP-6
           VALUE  13817.
       77  FLD0973B                       PIC  9(06)V9(25) COMP-6
           VALUE  828260.5282429751358819203232997.
       77  FLD0973E                       PIC X  VALUE 'N'.

       77  FLD0974A                       PIC  9(04)       COMP-6
           VALUE  1180.
       77  FLD0974B                       PIC S9(03)       COMP-3
           VALUE +104.
       77  FLD0974E                       PIC X  VALUE 'N'.

       77  FLD0975A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0975B                       PIC  9(09)V9(03) COMP-6
           VALUE  329183580.054.
       77  FLD0975E                       PIC X  VALUE 'N'.

       77  FLD0976A                       PIC S9(07)V9(01) COMP-3
           VALUE +2206144.7.
       77  FLD0976B                       PIC  9(10)V9(09) COMP-6
           VALUE  5191401776.232426046.
       77  FLD0976E                       PIC X  VALUE 'N'.

       77  FLD0977A                       PIC  9(09)V9(03) COMP-6
           VALUE  327431372.704.
       77  FLD0977B                       PIC S9(09)V9(05) COMP-3
           VALUE -393208707.80387.
       77  FLD0977E                       PIC X  VALUE 'N'.

       77  FLD0978A                       PIC  9(09)V9(16) COMP-6
           VALUE  675062190.8116747338368668.
       77  FLD0978B                       PIC S9(09)V9(06) COMP-3
           VALUE +411411057.685845.
       77  FLD0978E                       PIC X  VALUE 'N'.

       77  FLD0979A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.33169671466619643496187563869170.
       77  FLD0979B                       PIC  9(09)V9(05) COMP-6
           VALUE  388509802.38797.
       77  FLD0979E                       PIC X  VALUE 'N'.

       77  FLD0980A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.82234581280043794748735308530740.
       77  FLD0980B                       PIC  9(09)V9(15) COMP-6
           VALUE  647159992.565670250108667.
       77  FLD0980E                       PIC X  VALUE 'N'.

       77  FLD0981A                       PIC  9(06)V9(01) COMP-6
           VALUE  195132.7.
       77  FLD0981B                       PIC S9(09)V9(04) COMP-3
           VALUE -360473610.9762.
       77  FLD0981E                       PIC X  VALUE 'N'.

       77  FLD0982A                       PIC  9(06)V9(25) COMP-6
           VALUE  816610.1728260642955703474399342.
       77  FLD0982B                       PIC S9(08)V9(03) COMP-3
           VALUE +31469845.616.
       77  FLD0982E                       PIC X  VALUE 'N'.

       77  FLD0983A                       PIC  9(10)V9(09) COMP-3
           VALUE  5114754992.436914005.
       77  FLD0983B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.8147071945383510538363225350622087.
       77  FLD0983E                       PIC X  VALUE 'N'.

       77  FLD0984A                       PIC  9(09)V9(15) COMP-3
           VALUE  632949921.330981046807551.
       77  FLD0984B                       PIC  9(10)V9(09) COMP-6
           VALUE  5090793805.153389639.
       77  FLD0984E                       PIC X  VALUE 'N'.

       77  FLD0985A                       PIC  9(10)V9(06) COMP-6
           VALUE  4296662473.303992.
       77  FLD0985B                       PIC  9(05)V9(28) COMP-3
           VALUE  87137.5808353749947698929645412135.
       77  FLD0985E                       PIC X  VALUE 'N'.

       77  FLD0986A                       PIC  9(05)       COMP-6
           VALUE  14588.
       77  FLD0986B                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0986E                       PIC X  VALUE 'N'.

       77  FLD0987A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.834402345123109956404050535638816654.
       77  FLD0987B                       PIC  9(06)V9(26) COMP-3
           VALUE  842525.10302045313661523096016026.
       77  FLD0987E                       PIC X  VALUE 'N'.

       77  FLD0988A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0988B                       PIC S9(05)V9(01) COMP-3
           VALUE -18152.0.
       77  FLD0988E                       PIC X  VALUE 'N'.

       77  FLD0989A                       PIC S9(04)       COMP-3
           VALUE +1235.
       77  FLD0989B                       PIC  9(09)V9(13) COMP-3
           VALUE  593212782.9792923634499.
       77  FLD0989E                       PIC X  VALUE 'N'.

       77  FLD0990A                       PIC  9(07)V9(22) COMP-3
           VALUE  7806084.0781040319313888176111.
       77  FLD0990B                       PIC  9(06)V9(01) COMP-6
           VALUE  208986.1.
       77  FLD0990E                       PIC X  VALUE 'N'.

       77  FLD0991A                       PIC  9(06)V9(24) COMP-6
           VALUE  807774.663029880435338725419569.
       77  FLD0991B                       PIC S9(09)V9(06) COMP-3
           VALUE +403465254.324070.
       77  FLD0991E                       PIC X  VALUE 'N'.

       77  FLD0992A                       PIC  9(07)V9(22) COMP-6
           VALUE  7784108.2583169551867285917978.
       77  FLD0992B                       PIC  9(04)V9(29) COMP-3
           VALUE  8920.19846678347883006665597349638.
       77  FLD0992E                       PIC X  VALUE 'N'.

       77  FLD0993A                       PIC  9(08)V9(20) COMP-6
           VALUE  74534466.64416291111976420324.
       77  FLD0993B                       PIC S9(04)       COMP-3
           VALUE +1132.
       77  FLD0993E                       PIC X  VALUE 'N'.

       77  FLD0994A                       PIC  9(06)V9(24) COMP-6
           VALUE  815107.307501011568717785849003.
       77  FLD0994B                       PIC S9(10)V9(08) COMP-3
           VALUE -4847118976.22432053.
       77  FLD0994E                       PIC X  VALUE 'N'.

       77  FLD0995A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0995B                       PIC  9(06)V9(01) COMP-6
           VALUE  188825.8.
       77  FLD0995E                       PIC X  VALUE 'N'.

       77  FLD0996A                       PIC  9(09)V9(14) COMP-6
           VALUE  619241405.61761309431432.
       77  FLD0996B                       PIC  9(09)V9(16) COMP-6
           VALUE  669751940.2443259384227758.
       77  FLD0996E                       PIC X  VALUE 'N'.

       77  FLD0997A                       PIC  9(10)V9(09) COMP-3
           VALUE  5006446394.611311356.
       77  FLD0997B                       PIC  9(10)V9(09) COMP-3
           VALUE  5005353152.147143935.
       77  FLD0997E                       PIC X  VALUE 'N'.

       77  FLD0998A                       PIC  9(09)V9(13) COMP-6
           VALUE  598229443.4201559374386.
       77  FLD0998B                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0998E                       PIC X  VALUE 'N'.

       77  FLD0999A                       PIC S9(03)       COMP-3
           VALUE -081.
       77  FLD0999B                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0999E                       PIC X  VALUE 'N'.

      * RESULTS-AREA.

       78  XPC-FLD0500B
           VALUE X'0708'.
       78  XPC-FLD0500E          VALUE 'N'.
       78  XPC-FLD0501B
           VALUE X'062809334873677369337485'.
       78  XPC-FLD0501E          VALUE 'Y'.
       78  XPC-FLD0502B
           VALUE X'078931626286150020034995122841'.
       78  XPC-FLD0502E          VALUE 'N'.
       78  XPC-FLD0503B
           VALUE X'241748150924885620905391882843105F'.
       78  XPC-FLD0503E          VALUE 'N'.
       78  XPC-FLD0504B
           VALUE X'5028930926587901486F'.
       78  XPC-FLD0504E          VALUE 'N'.
       78  XPC-FLD0505B
           VALUE X'054079887440916072855F'.
       78  XPC-FLD0505E          VALUE 'N'.
       78  XPC-FLD0506B
           VALUE X'044983810D'.
       78  XPC-FLD0506E          VALUE 'N'.
       78  XPC-FLD0507B
           VALUE X'5276166649082409209F'.
       78  XPC-FLD0507E          VALUE 'N'.
       78  XPC-FLD0508B
           VALUE X'02144088220848885D'.
       78  XPC-FLD0508E          VALUE 'N'.
       78  XPC-FLD0509B
           VALUE X'488937338626299289'.
       78  XPC-FLD0509E          VALUE 'N'.
       78  XPC-FLD0510B
           VALUE X'092D'.
       78  XPC-FLD0510E          VALUE 'Y'.
       78  XPC-FLD0511B
           VALUE X'05257737010265951195'.
       78  XPC-FLD0511E          VALUE 'N'.
       78  XPC-FLD0512B
           VALUE X'5091717968686512163500879069033544511F'.
       78  XPC-FLD0512E          VALUE 'N'.
       78  XPC-FLD0513B
           VALUE X'07412408747450585089211472222F'.
       78  XPC-FLD0513E          VALUE 'Y'.
       78  XPC-FLD0514B
           VALUE X'02787819996822'.
       78  XPC-FLD0514E          VALUE 'N'.
       78  XPC-FLD0515B
           VALUE X'37690011845231452527479784448514692F'.
       78  XPC-FLD0515E          VALUE 'N'.
       78  XPC-FLD0516B
           VALUE X'09'.
       78  XPC-FLD0516E          VALUE 'N'.
       78  XPC-FLD0517B
           VALUE X'0031340134042710696D'.
       78  XPC-FLD0517E          VALUE 'N'.
       78  XPC-FLD0518B
           VALUE X'089D'.
       78  XPC-FLD0518E          VALUE 'N'.
       78  XPC-FLD0519B
           VALUE X'6841259606583623975595287F'.
       78  XPC-FLD0519E          VALUE 'Y'.
       78  XPC-FLD0520B
           VALUE X'61059553432451049552742F'.
       78  XPC-FLD0520E          VALUE 'N'.
       78  XPC-FLD0521B
           VALUE X'28055C'.
       78  XPC-FLD0521E          VALUE 'N'.
       78  XPC-FLD0522B
           VALUE X'3510676144076D'.
       78  XPC-FLD0522E          VALUE 'N'.
       78  XPC-FLD0523B
           VALUE X'04280314707C'.
       78  XPC-FLD0523E          VALUE 'N'.
       78  XPC-FLD0524B
           VALUE X'5046008862205329081F'.
       78  XPC-FLD0524E          VALUE 'N'.
       78  XPC-FLD0525B
           VALUE X'0887336156634660588871099662355845'.
       78  XPC-FLD0525E          VALUE 'N'.
       78  XPC-FLD0526B
           VALUE X'0535158707'.
       78  XPC-FLD0526E          VALUE 'N'.
       78  XPC-FLD0527B
           VALUE X'0993866582275886311F'.
       78  XPC-FLD0527E          VALUE 'N'.
       78  XPC-FLD0528B
           VALUE X'01207C'.
       78  XPC-FLD0528E          VALUE 'Y'.
       78  XPC-FLD0529B
           VALUE X'06852906977087936C'.
       78  XPC-FLD0529E          VALUE 'N'.
       78  XPC-FLD0530B
           VALUE X'042D'.
       78  XPC-FLD0530E          VALUE 'N'.
       78  XPC-FLD0531B
           VALUE X'023227722C'.
       78  XPC-FLD0531E          VALUE 'Y'.
       78  XPC-FLD0532B
           VALUE X'6D'.
       78  XPC-FLD0532E          VALUE 'N'.
       78  XPC-FLD0533B
           VALUE X'0014'.
       78  XPC-FLD0533E          VALUE 'N'.
       78  XPC-FLD0534B
           VALUE X'4796286047627412578F'.
       78  XPC-FLD0534E          VALUE 'N'.
       78  XPC-FLD0535B
           VALUE X'086934843746367858133650045201648F'.
       78  XPC-FLD0535E          VALUE 'N'.
       78  XPC-FLD0536B
           VALUE X'0C'.
       78  XPC-FLD0536E          VALUE 'N'.
       78  XPC-FLD0537B
           VALUE X'1199'.
       78  XPC-FLD0537E          VALUE 'Y'.
       78  XPC-FLD0538B
           VALUE X'0793946754459935233327882997400592'.
       78  XPC-FLD0538E          VALUE 'N'.
       78  XPC-FLD0539B
           VALUE X'070042059898033071085876599681795F'.
       78  XPC-FLD0539E          VALUE 'N'.
       78  XPC-FLD0540B
           VALUE X'00'.
       78  XPC-FLD0540E          VALUE 'Y'.
       78  XPC-FLD0541B
           VALUE X'049167641848286621388982121061'.
       78  XPC-FLD0541E          VALUE 'N'.
       78  XPC-FLD0542B
           VALUE X'553207696393934218126F'.
       78  XPC-FLD0542E          VALUE 'N'.
       78  XPC-FLD0543B
           VALUE X'0277016069'.
       78  XPC-FLD0543E          VALUE 'N'.
       78  XPC-FLD0544B
           VALUE X'1381302823'.
       78  XPC-FLD0544E          VALUE 'N'.
       78  XPC-FLD0545B
           VALUE X'944856446145206807507570674F'.
       78  XPC-FLD0545E          VALUE 'N'.
       78  XPC-FLD0546B
           VALUE X'60995883518421766866790F'.
       78  XPC-FLD0546E          VALUE 'N'.
       78  XPC-FLD0547B
           VALUE X'3598695862059D'.
       78  XPC-FLD0547E          VALUE 'N'.
       78  XPC-FLD0548B
           VALUE X'68119457212008152846571817'.
       78  XPC-FLD0548E          VALUE 'N'.
       78  XPC-FLD0549B
           VALUE X'0417916211751954'.
       78  XPC-FLD0549E          VALUE 'N'.
       78  XPC-FLD0550B
           VALUE X'94'.
       78  XPC-FLD0550E          VALUE 'N'.
       78  XPC-FLD0551B
           VALUE X'0655119044597454263904505F'.
       78  XPC-FLD0551E          VALUE 'N'.
       78  XPC-FLD0552B
           VALUE X'014745'.
       78  XPC-FLD0552E          VALUE 'Y'.
       78  XPC-FLD0553B
           VALUE X'3608710969090D'.
       78  XPC-FLD0553E          VALUE 'N'.
       78  XPC-FLD0554B
           VALUE X'28615763752268179551663251913851128F'.
       78  XPC-FLD0554E          VALUE 'N'.
       78  XPC-FLD0555B
           VALUE X'5605686733653602811F'.
       78  XPC-FLD0555E          VALUE 'N'.
       78  XPC-FLD0556B
           VALUE X'0568555321722934526833'.
       78  XPC-FLD0556E          VALUE 'N'.
       78  XPC-FLD0557B
           VALUE X'90340C'.
       78  XPC-FLD0557E          VALUE 'N'.
       78  XPC-FLD0558B
           VALUE X'02096049'.
       78  XPC-FLD0558E          VALUE 'Y'.
       78  XPC-FLD0559B
           VALUE X'099142824147194545678672682843'.
       78  XPC-FLD0559E          VALUE 'N'.
       78  XPC-FLD0560B
           VALUE X'0351025116078023'.
       78  XPC-FLD0560E          VALUE 'N'.
       78  XPC-FLD0561B
           VALUE X'00'.
       78  XPC-FLD0561E          VALUE 'Y'.
       78  XPC-FLD0562B
           VALUE X'958208334412512741096179524902254343'.
       78  XPC-FLD0562E          VALUE 'N'.
       78  XPC-FLD0563B
           VALUE X'72227339713C'.
       78  XPC-FLD0563E          VALUE 'N'.
       78  XPC-FLD0564B
           VALUE X'092573034981753798966508384182816371'.
       78  XPC-FLD0564E          VALUE 'Y'.
       78  XPC-FLD0565B
           VALUE X'02180881'.
       78  XPC-FLD0565E          VALUE 'N'.
       78  XPC-FLD0566B
           VALUE X'134200212625'.
       78  XPC-FLD0566E          VALUE 'N'.
       78  XPC-FLD0567B
           VALUE X'0878970351596639054569948257267242'.
       78  XPC-FLD0567E          VALUE 'Y'.
       78  XPC-FLD0568B
           VALUE X'064501399773583058336459'.
       78  XPC-FLD0568E          VALUE 'N'.
       78  XPC-FLD0569B
           VALUE X'722108073354755C'.
       78  XPC-FLD0569E          VALUE 'N'.
       78  XPC-FLD0570B
           VALUE X'720060225322646066764775696F'.
       78  XPC-FLD0570E          VALUE 'N'.
       78  XPC-FLD0571B
           VALUE X'06621729185931387539619251'.
       78  XPC-FLD0571E          VALUE 'N'.
       78  XPC-FLD0572B
           VALUE X'0363058D'.
       78  XPC-FLD0572E          VALUE 'N'.
       78  XPC-FLD0573B
           VALUE X'9908582147727897915245875992695800960F'.
       78  XPC-FLD0573E          VALUE 'Y'.
       78  XPC-FLD0574B
           VALUE X'6D'.
       78  XPC-FLD0574E          VALUE 'N'.
       78  XPC-FLD0575B
           VALUE X'6C'.
       78  XPC-FLD0575E          VALUE 'N'.
       78  XPC-FLD0576B
           VALUE X'47238400610562072401'.
       78  XPC-FLD0576E          VALUE 'N'.
       78  XPC-FLD0577B
           VALUE X'805001512301445405164770363626303151'.
       78  XPC-FLD0577E          VALUE 'N'.
       78  XPC-FLD0578B
           VALUE X'273809'.
       78  XPC-FLD0578E          VALUE 'N'.
       78  XPC-FLD0579B
           VALUE X'5908380596787501714F'.
       78  XPC-FLD0579E          VALUE 'N'.
       78  XPC-FLD0580B
           VALUE X'0646450258967046645771858948137378321F'.
       78  XPC-FLD0580E          VALUE 'N'.
       78  XPC-FLD0581B
           VALUE X'610062973643881143036828'.
       78  XPC-FLD0581E          VALUE 'N'.
       78  XPC-FLD0582B
           VALUE X'062856274902063530202835'.
       78  XPC-FLD0582E          VALUE 'N'.
       78  XPC-FLD0583B
           VALUE X'4C'.
       78  XPC-FLD0583E          VALUE 'N'.
       78  XPC-FLD0584B
           VALUE X'955867594557756605766485336062032729'.
       78  XPC-FLD0584E          VALUE 'N'.
       78  XPC-FLD0585B
           VALUE X'092667442032915370297985191427869722'.
       78  XPC-FLD0585E          VALUE 'Y'.
       78  XPC-FLD0586B
           VALUE X'077794189960829245200635284617'.
       78  XPC-FLD0586E          VALUE 'N'.
       78  XPC-FLD0587B
           VALUE X'02128D'.
       78  XPC-FLD0587E          VALUE 'N'.
       78  XPC-FLD0588B
           VALUE X'09002074772136551272794235956098418F'.
       78  XPC-FLD0588E          VALUE 'Y'.
       78  XPC-FLD0589B
           VALUE X'03292C'.
       78  XPC-FLD0589E          VALUE 'N'.
       78  XPC-FLD0590B
           VALUE X'1062119D'.
       78  XPC-FLD0590E          VALUE 'N'.
       78  XPC-FLD0591B
           VALUE X'5700661418154348791F'.
       78  XPC-FLD0591E          VALUE 'N'.
       78  XPC-FLD0592B
           VALUE X'73907098193D'.
       78  XPC-FLD0592E          VALUE 'N'.
       78  XPC-FLD0593B
           VALUE X'037C'.
       78  XPC-FLD0593E          VALUE 'N'.
       78  XPC-FLD0594B
           VALUE X'77388935043103479483050932685F'.
       78  XPC-FLD0594E          VALUE 'Y'.
       78  XPC-FLD0595B
           VALUE X'3197374054167890777833347730124F'.
       78  XPC-FLD0595E          VALUE 'N'.
       78  XPC-FLD0596B
           VALUE X'657855963298508210108650'.
       78  XPC-FLD0596E          VALUE 'N'.
       78  XPC-FLD0597B
           VALUE X'08162559991782142310157155407068'.
       78  XPC-FLD0597E          VALUE 'Y'.
       78  XPC-FLD0598B
           VALUE X'468477633184507D'.
       78  XPC-FLD0598E          VALUE 'N'.
       78  XPC-FLD0599B
           VALUE X'09'.
       78  XPC-FLD0599E          VALUE 'N'.
       78  XPC-FLD0600B
           VALUE X'0804504375985138686644404515391F'.
       78  XPC-FLD0600E          VALUE 'Y'.
       78  XPC-FLD0601B
           VALUE X'029749813110'.
       78  XPC-FLD0601E          VALUE 'N'.
       78  XPC-FLD0602B
           VALUE X'0303615938'.
       78  XPC-FLD0602E          VALUE 'N'.
       78  XPC-FLD0603B
           VALUE X'0170896D'.
       78  XPC-FLD0603E          VALUE 'Y'.
       78  XPC-FLD0604B
           VALUE X'0551440145498789572319'.
       78  XPC-FLD0604E          VALUE 'N'.
       78  XPC-FLD0605B
           VALUE X'4256957897307752'.
       78  XPC-FLD0605E          VALUE 'N'.
       78  XPC-FLD0606B
           VALUE X'0254178383481C'.
       78  XPC-FLD0606E          VALUE 'N'.
       78  XPC-FLD0607B
           VALUE X'025781'.
       78  XPC-FLD0607E          VALUE 'N'.
       78  XPC-FLD0608B
           VALUE X'225226869583767068085933260590536520'.
       78  XPC-FLD0608E          VALUE 'N'.
       78  XPC-FLD0609B
           VALUE X'045126229228847267'.
       78  XPC-FLD0609E          VALUE 'N'.
       78  XPC-FLD0610B
           VALUE X'2786455271'.
       78  XPC-FLD0610E          VALUE 'N'.
       78  XPC-FLD0611B
           VALUE X'03'.
       78  XPC-FLD0611E          VALUE 'N'.
       78  XPC-FLD0612B
           VALUE X'078744622890006543691754359315'.
       78  XPC-FLD0612E          VALUE 'Y'.
       78  XPC-FLD0613B
           VALUE X'022648276C'.
       78  XPC-FLD0613E          VALUE 'N'.
       78  XPC-FLD0614B
           VALUE X'6052981544136128984377'.
       78  XPC-FLD0614E          VALUE 'N'.
       78  XPC-FLD0615B
           VALUE X'023341961C'.
       78  XPC-FLD0615E          VALUE 'N'.
       78  XPC-FLD0616B
           VALUE X'23'.
       78  XPC-FLD0616E          VALUE 'N'.
       78  XPC-FLD0617B
           VALUE X'00'.
       78  XPC-FLD0617E          VALUE 'N'.
       78  XPC-FLD0618B
           VALUE X'0079'.
       78  XPC-FLD0618E          VALUE 'N'.
       78  XPC-FLD0619B
           VALUE X'053429823777539313843F'.
       78  XPC-FLD0619E          VALUE 'N'.
       78  XPC-FLD0620B
           VALUE X'583959822349086421500174'.
       78  XPC-FLD0620E          VALUE 'N'.
       78  XPC-FLD0621B
           VALUE X'734334021823122911598602513F'.
       78  XPC-FLD0621E          VALUE 'N'.
       78  XPC-FLD0622B
           VALUE X'9542421746848D'.
       78  XPC-FLD0622E          VALUE 'N'.
       78  XPC-FLD0623B
           VALUE X'0641616922896418195095066F'.
       78  XPC-FLD0623E          VALUE 'N'.
       78  XPC-FLD0624B
           VALUE X'4356505095582531'.
       78  XPC-FLD0624E          VALUE 'N'.
       78  XPC-FLD0625B
           VALUE X'78308435769811728739000500354F'.
       78  XPC-FLD0625E          VALUE 'N'.
       78  XPC-FLD0626B
           VALUE X'037427477932063D'.
       78  XPC-FLD0626E          VALUE 'N'.
       78  XPC-FLD0627B
           VALUE X'023249882C'.
       78  XPC-FLD0627E          VALUE 'N'.
       78  XPC-FLD0628B
           VALUE X'029681727729'.
       78  XPC-FLD0628E          VALUE 'N'.
       78  XPC-FLD0629B
           VALUE X'880171084163677411860149391031882F'.
       78  XPC-FLD0629E          VALUE 'N'.
       78  XPC-FLD0630B
           VALUE X'0174519095249753304734'.
       78  XPC-FLD0630E          VALUE 'N'.
       78  XPC-FLD0631B
           VALUE X'824634'.
       78  XPC-FLD0631E          VALUE 'N'.
       78  XPC-FLD0632B
           VALUE X'05012280455704922587'.
       78  XPC-FLD0632E          VALUE 'N'.
       78  XPC-FLD0633B
           VALUE X'0405176751227C'.
       78  XPC-FLD0633E          VALUE 'N'.
       78  XPC-FLD0634B
           VALUE X'0868098250115819156979655872420F'.
       78  XPC-FLD0634E          VALUE 'N'.
       78  XPC-FLD0635B
           VALUE X'0558066570900784292498'.
       78  XPC-FLD0635E          VALUE 'N'.
       78  XPC-FLD0636B
           VALUE X'015706'.
       78  XPC-FLD0636E          VALUE 'Y'.
       78  XPC-FLD0637B
           VALUE X'053791487329715233167F'.
       78  XPC-FLD0637E          VALUE 'N'.
       78  XPC-FLD0638B
           VALUE X'9300997013279628244930563595546F'.
       78  XPC-FLD0638E          VALUE 'N'.
       78  XPC-FLD0639B
           VALUE X'09751092072024196699686626743641681969'.
       78  XPC-FLD0639E          VALUE 'Y'.
       78  XPC-FLD0640B
           VALUE X'89710938089320346744415246575953928F'.
       78  XPC-FLD0640E          VALUE 'N'.
       78  XPC-FLD0641B
           VALUE X'0802113336084028338834883697'.
       78  XPC-FLD0641E          VALUE 'N'.
       78  XPC-FLD0642B
           VALUE X'05220924521868707701698F'.
       78  XPC-FLD0642E          VALUE 'N'.
       78  XPC-FLD0643B
           VALUE X'2890586849'.
       78  XPC-FLD0643E          VALUE 'N'.
       78  XPC-FLD0644B
           VALUE X'092997460492260109532480782945640385'.
       78  XPC-FLD0644E          VALUE 'N'.
       78  XPC-FLD0645B
           VALUE X'0246821544'.
       78  XPC-FLD0645E          VALUE 'N'.
       78  XPC-FLD0646B
           VALUE X'5883231932131506547456'.
       78  XPC-FLD0646E          VALUE 'N'.
       78  XPC-FLD0647B
           VALUE X'06598931491456289340839020'.
       78  XPC-FLD0647E          VALUE 'N'.
       78  XPC-FLD0648B
           VALUE X'0634285861942461315643470F'.
       78  XPC-FLD0648E          VALUE 'N'.
       78  XPC-FLD0649B
           VALUE X'5034432631533975375F'.
       78  XPC-FLD0649E          VALUE 'N'.
       78  XPC-FLD0650B
           VALUE X'6715745920981104473110078F'.
       78  XPC-FLD0650E          VALUE 'N'.
       78  XPC-FLD0651B
           VALUE X'032093946374946D'.
       78  XPC-FLD0651E          VALUE 'N'.
       78  XPC-FLD0652B
           VALUE X'020927047C'.
       78  XPC-FLD0652E          VALUE 'N'.
       78  XPC-FLD0653B
           VALUE X'398302'.
       78  XPC-FLD0653E          VALUE 'N'.
       78  XPC-FLD0654B
           VALUE X'2781322351'.
       78  XPC-FLD0654E          VALUE 'Y'.
       78  XPC-FLD0655B
           VALUE X'05949843308386091165206F'.
       78  XPC-FLD0655E          VALUE 'N'.
       78  XPC-FLD0656B
           VALUE X'0650007677567117914204561F'.
       78  XPC-FLD0656E          VALUE 'N'.
       78  XPC-FLD0657B
           VALUE X'070469220160326710801212967F'.
       78  XPC-FLD0657E          VALUE 'N'.
       78  XPC-FLD0658B
           VALUE X'053680173247006238712F'.
       78  XPC-FLD0658E          VALUE 'N'.
       78  XPC-FLD0659B
           VALUE X'0719555666672452026677575531'.
       78  XPC-FLD0659E          VALUE 'N'.
       78  XPC-FLD0660B
           VALUE X'15464D'.
       78  XPC-FLD0660E          VALUE 'Y'.
       78  XPC-FLD0661B
           VALUE X'570540954971062823984F'.
       78  XPC-FLD0661E          VALUE 'N'.
       78  XPC-FLD0662B
           VALUE X'06678282186476681732324323'.
       78  XPC-FLD0662E          VALUE 'N'.
       78  XPC-FLD0663B
           VALUE X'0889469232052811142885673234559362'.
       78  XPC-FLD0663E          VALUE 'Y'.
       78  XPC-FLD0664B
           VALUE X'04405659595288489C'.
       78  XPC-FLD0664E          VALUE 'N'.
       78  XPC-FLD0665B
           VALUE X'6766161649406166886924393F'.
       78  XPC-FLD0665E          VALUE 'N'.
       78  XPC-FLD0666B
           VALUE X'05'.
       78  XPC-FLD0666E          VALUE 'Y'.
       78  XPC-FLD0667B
           VALUE X'0632143970272669745917437F'.
       78  XPC-FLD0667E          VALUE 'N'.
       78  XPC-FLD0668B
           VALUE X'5144628458672427460F'.
       78  XPC-FLD0668E          VALUE 'N'.
       78  XPC-FLD0669B
           VALUE X'0395936640779813'.
       78  XPC-FLD0669E          VALUE 'N'.
       78  XPC-FLD0670B
           VALUE X'0164380926561097741789296833303524182F'.
       78  XPC-FLD0670E          VALUE 'N'.
       78  XPC-FLD0671B
           VALUE X'08090443'.
       78  XPC-FLD0671E          VALUE 'N'.
       78  XPC-FLD0672B
           VALUE X'637002039815689924395769'.
       78  XPC-FLD0672E          VALUE 'Y'.
       78  XPC-FLD0673B
           VALUE X'0749211223'.
       78  XPC-FLD0673E          VALUE 'N'.
       78  XPC-FLD0674B
           VALUE X'08225787711159490474084418921848'.
       78  XPC-FLD0674E          VALUE 'N'.
       78  XPC-FLD0675B
           VALUE X'05083625274155812857'.
       78  XPC-FLD0675E          VALUE 'N'.
       78  XPC-FLD0676B
           VALUE X'0004664170342459437179627457226160913F'.
       78  XPC-FLD0676E          VALUE 'N'.
       78  XPC-FLD0677B
           VALUE X'708676445455624266891447859961772F'.
       78  XPC-FLD0677E          VALUE 'N'.
       78  XPC-FLD0678B
           VALUE X'85979366357613359468814451247453'.
       78  XPC-FLD0678E          VALUE 'N'.
       78  XPC-FLD0679B
           VALUE X'044902781556612852'.
       78  XPC-FLD0679E          VALUE 'N'.
       78  XPC-FLD0680B
           VALUE X'564571038982083600804F'.
       78  XPC-FLD0680E          VALUE 'N'.
       78  XPC-FLD0681B
           VALUE X'8213717547801553386932482681004F'.
       78  XPC-FLD0681E          VALUE 'Y'.
       78  XPC-FLD0682B
           VALUE X'5608815389721361803129542749957F'.
       78  XPC-FLD0682E          VALUE 'N'.
       78  XPC-FLD0683B
           VALUE X'05829822468269903673642F'.
       78  XPC-FLD0683E          VALUE 'N'.
       78  XPC-FLD0684B
           VALUE X'4383394737646870'.
       78  XPC-FLD0684E          VALUE 'Y'.
       78  XPC-FLD0685B
           VALUE X'0536985204876752143500539204978F'.
       78  XPC-FLD0685E          VALUE 'N'.
       78  XPC-FLD0686B
           VALUE X'00180741962593756744226F'.
       78  XPC-FLD0686E          VALUE 'N'.
       78  XPC-FLD0687B
           VALUE X'456697463326542715'.
       78  XPC-FLD0687E          VALUE 'N'.
       78  XPC-FLD0688B
           VALUE X'0131'.
       78  XPC-FLD0688E          VALUE 'N'.
       78  XPC-FLD0689B
           VALUE X'0933318323051C'.
       78  XPC-FLD0689E          VALUE 'N'.
       78  XPC-FLD0690B
           VALUE X'02807895954D'.
       78  XPC-FLD0690E          VALUE 'N'.
       78  XPC-FLD0691B
           VALUE X'04747985190129339C'.
       78  XPC-FLD0691E          VALUE 'N'.
       78  XPC-FLD0692B
           VALUE X'278067587806645121846764'.
       78  XPC-FLD0692E          VALUE 'N'.
       78  XPC-FLD0693B
           VALUE X'0C'.
       78  XPC-FLD0693E          VALUE 'Y'.
       78  XPC-FLD0694B
           VALUE X'06'.
       78  XPC-FLD0694E          VALUE 'N'.
       78  XPC-FLD0695B
           VALUE X'285416863016785357397587'.
       78  XPC-FLD0695E          VALUE 'N'.
       78  XPC-FLD0696B
           VALUE X'318862710902'.
       78  XPC-FLD0696E          VALUE 'N'.
       78  XPC-FLD0697B
           VALUE X'05576423548738693906'.
       78  XPC-FLD0697E          VALUE 'N'.
       78  XPC-FLD0698B
           VALUE X'613D'.
       78  XPC-FLD0698E          VALUE 'N'.
       78  XPC-FLD0699B
           VALUE X'63028840127729701681147F'.
       78  XPC-FLD0699E          VALUE 'Y'.
       78  XPC-FLD0700B
           VALUE X'4D'.
       78  XPC-FLD0700E          VALUE 'N'.
       78  XPC-FLD0701B
           VALUE X'0824434325033338688548667501709982529F'.
       78  XPC-FLD0701E          VALUE 'N'.
       78  XPC-FLD0702B
           VALUE X'23424178'.
       78  XPC-FLD0702E          VALUE 'N'.
       78  XPC-FLD0703B
           VALUE X'335267041235'.
       78  XPC-FLD0703E          VALUE 'N'.
       78  XPC-FLD0704B
           VALUE X'08515404888861616825987F'.
       78  XPC-FLD0704E          VALUE 'N'.
       78  XPC-FLD0705B
           VALUE X'046999504797278301'.
       78  XPC-FLD0705E          VALUE 'Y'.
       78  XPC-FLD0706B
           VALUE X'0327398D'.
       78  XPC-FLD0706E          VALUE 'N'.
       78  XPC-FLD0707B
           VALUE X'5129442198407349051F'.
       78  XPC-FLD0707E          VALUE 'N'.
       78  XPC-FLD0708B
           VALUE X'338347991943'.
       78  XPC-FLD0708E          VALUE 'N'.
       78  XPC-FLD0709B
           VALUE X'37934595068404'.
       78  XPC-FLD0709E          VALUE 'N'.
       78  XPC-FLD0710B
           VALUE X'0322996288512C'.
       78  XPC-FLD0710E          VALUE 'N'.
       78  XPC-FLD0711B
           VALUE X'06'.
       78  XPC-FLD0711E          VALUE 'Y'.
       78  XPC-FLD0712B
           VALUE X'0555782537921349383D'.
       78  XPC-FLD0712E          VALUE 'N'.
       78  XPC-FLD0713B
           VALUE X'71121008'.
       78  XPC-FLD0713E          VALUE 'N'.
       78  XPC-FLD0714B
           VALUE X'03473859515252'.
       78  XPC-FLD0714E          VALUE 'Y'.
       78  XPC-FLD0715B
           VALUE X'58869262308134147685'.
       78  XPC-FLD0715E          VALUE 'N'.
       78  XPC-FLD0716B
           VALUE X'04094336916239737930141018296126276F'.
       78  XPC-FLD0716E          VALUE 'N'.
       78  XPC-FLD0717B
           VALUE X'7657108845718485268250219632'.
       78  XPC-FLD0717E          VALUE 'N'.
       78  XPC-FLD0718B
           VALUE X'4283258317648062'.
       78  XPC-FLD0718E          VALUE 'N'.
       78  XPC-FLD0719B
           VALUE X'0239090461'.
       78  XPC-FLD0719E          VALUE 'N'.
       78  XPC-FLD0720B
           VALUE X'404886229426392C'.
       78  XPC-FLD0720E          VALUE 'N'.
       78  XPC-FLD0721B
           VALUE X'45808242'.
       78  XPC-FLD0721E          VALUE 'N'.
       78  XPC-FLD0722B
           VALUE X'07624904820924922808538326535F'.
       78  XPC-FLD0722E          VALUE 'N'.
       78  XPC-FLD0723B
           VALUE X'07'.
       78  XPC-FLD0723E          VALUE 'Y'.
       78  XPC-FLD0724B
           VALUE X'04934011851187240393'.
       78  XPC-FLD0724E          VALUE 'N'.
       78  XPC-FLD0725B
           VALUE X'04444137342530902C'.
       78  XPC-FLD0725E          VALUE 'N'.
       78  XPC-FLD0726B
           VALUE X'401820868675800C'.
       78  XPC-FLD0726E          VALUE 'N'.
       78  XPC-FLD0727B
           VALUE X'00896082861134319673904889'.
       78  XPC-FLD0727E          VALUE 'N'.
       78  XPC-FLD0728B
           VALUE X'081076915652245D'.
       78  XPC-FLD0728E          VALUE 'N'.
       78  XPC-FLD0729B
           VALUE X'795979478015814722415832704882'.
       78  XPC-FLD0729E          VALUE 'N'.
       78  XPC-FLD0730B
           VALUE X'62944830238001500322119F'.
       78  XPC-FLD0730E          VALUE 'N'.
       78  XPC-FLD0731B
           VALUE X'04086517499647340789789F'.
       78  XPC-FLD0731E          VALUE 'N'.
       78  XPC-FLD0732B
           VALUE X'00313C'.
       78  XPC-FLD0732E          VALUE 'N'.
       78  XPC-FLD0733B
           VALUE X'965641152048700750127567'.
       78  XPC-FLD0733E          VALUE 'N'.
       78  XPC-FLD0734B
           VALUE X'26'.
       78  XPC-FLD0734E          VALUE 'N'.
       78  XPC-FLD0735B
           VALUE X'0641708846027484955070190F'.
       78  XPC-FLD0735E          VALUE 'N'.
       78  XPC-FLD0736B
           VALUE X'072589764082146861645222974767'.
       78  XPC-FLD0736E          VALUE 'N'.
       78  XPC-FLD0737B
           VALUE X'522443922D'.
       78  XPC-FLD0737E          VALUE 'N'.
       78  XPC-FLD0738B
           VALUE X'967470462418068333221299326396547257'.
       78  XPC-FLD0738E          VALUE 'Y'.
       78  XPC-FLD0739B
           VALUE X'0459162078493461292D'.
       78  XPC-FLD0739E          VALUE 'N'.
       78  XPC-FLD0740B
           VALUE X'072773632191726975291885537444614F'.
       78  XPC-FLD0740E          VALUE 'N'.
       78  XPC-FLD0741B
           VALUE X'0644169236711C'.
       78  XPC-FLD0741E          VALUE 'N'.
       78  XPC-FLD0742B
           VALUE X'88899021862D'.
       78  XPC-FLD0742E          VALUE 'N'.
       78  XPC-FLD0743B
           VALUE X'02956850'.
       78  XPC-FLD0743E          VALUE 'N'.
       78  XPC-FLD0744B
           VALUE X'2695622879'.
       78  XPC-FLD0744E          VALUE 'N'.
       78  XPC-FLD0745B
           VALUE X'013557'.
       78  XPC-FLD0745E          VALUE 'N'.
       78  XPC-FLD0746B
           VALUE X'0231527099755997057F'.
       78  XPC-FLD0746E          VALUE 'N'.
       78  XPC-FLD0747B
           VALUE X'9169159297409485986918298294767737'.
       78  XPC-FLD0747E          VALUE 'Y'.
       78  XPC-FLD0748B
           VALUE X'0181187D'.
       78  XPC-FLD0748E          VALUE 'N'.
       78  XPC-FLD0749B
           VALUE X'2760411381430374631233670697839F'.
       78  XPC-FLD0749E          VALUE 'N'.
       78  XPC-FLD0750B
           VALUE X'262999561973'.
       78  XPC-FLD0750E          VALUE 'N'.
       78  XPC-FLD0751B
           VALUE X'15170D'.
       78  XPC-FLD0751E          VALUE 'N'.
       78  XPC-FLD0752B
           VALUE X'91538508268330654527034084821934811F'.
       78  XPC-FLD0752E          VALUE 'N'.
       78  XPC-FLD0753B
           VALUE X'0C'.
       78  XPC-FLD0753E          VALUE 'Y'.
       78  XPC-FLD0754B
           VALUE X'0961172589'.
       78  XPC-FLD0754E          VALUE 'N'.
       78  XPC-FLD0755B
           VALUE X'053471365948751090643F'.
       78  XPC-FLD0755E          VALUE 'N'.
       78  XPC-FLD0756B
           VALUE X'15366D'.
       78  XPC-FLD0756E          VALUE 'Y'.
       78  XPC-FLD0757B
           VALUE X'389641442C'.
       78  XPC-FLD0757E          VALUE 'N'.
       78  XPC-FLD0758B
           VALUE X'0455928D'.
       78  XPC-FLD0758E          VALUE 'N'.
       78  XPC-FLD0759B
           VALUE X'07622235272467824718001239148F'.
       78  XPC-FLD0759E          VALUE 'N'.
       78  XPC-FLD0760B
           VALUE X'09469886609778104836721013271017001F'.
       78  XPC-FLD0760E          VALUE 'N'.
       78  XPC-FLD0761B
           VALUE X'031926781976263429729811'.
       78  XPC-FLD0761E          VALUE 'N'.
       78  XPC-FLD0762B
           VALUE X'0259134361'.
       78  XPC-FLD0762E          VALUE 'Y'.
       78  XPC-FLD0763B
           VALUE X'283690925904618196362605387461'.
       78  XPC-FLD0763E          VALUE 'N'.
       78  XPC-FLD0764B
           VALUE X'055560951487484800'.
       78  XPC-FLD0764E          VALUE 'N'.
       78  XPC-FLD0765B
           VALUE X'01212C'.
       78  XPC-FLD0765E          VALUE 'Y'.
       78  XPC-FLD0766B
           VALUE X'22949432'.
       78  XPC-FLD0766E          VALUE 'N'.
       78  XPC-FLD0767B
           VALUE X'0D'.
       78  XPC-FLD0767E          VALUE 'N'.
       78  XPC-FLD0768B
           VALUE X'007D'.
       78  XPC-FLD0768E          VALUE 'Y'.
       78  XPC-FLD0769B
           VALUE X'03586597857349'.
       78  XPC-FLD0769E          VALUE 'N'.
       78  XPC-FLD0770B
           VALUE X'054829803888151060764504'.
       78  XPC-FLD0770E          VALUE 'N'.
       78  XPC-FLD0771B
           VALUE X'075991198999121606361129010F'.
       78  XPC-FLD0771E          VALUE 'N'.
       78  XPC-FLD0772B
           VALUE X'0090893446885685'.
       78  XPC-FLD0772E          VALUE 'N'.
       78  XPC-FLD0773B
           VALUE X'76783997423560348547511011929600499F'.
       78  XPC-FLD0773E          VALUE 'N'.
       78  XPC-FLD0774B
           VALUE X'242589104C'.
       78  XPC-FLD0774E          VALUE 'N'.
       78  XPC-FLD0775B
           VALUE X'83006085498341006789723905967548489F'.
       78  XPC-FLD0775E          VALUE 'N'.
       78  XPC-FLD0776B
           VALUE X'65983936382796708763014976284467'.
       78  XPC-FLD0776E          VALUE 'N'.
       78  XPC-FLD0777B
           VALUE X'563799910901816754889F'.
       78  XPC-FLD0777E          VALUE 'N'.
       78  XPC-FLD0778B
           VALUE X'6562465464730475300569878527312539'.
       78  XPC-FLD0778E          VALUE 'N'.
       78  XPC-FLD0779B
           VALUE X'0474089855326103228D'.
       78  XPC-FLD0779E          VALUE 'N'.
       78  XPC-FLD0780B
           VALUE X'8227596235369002419801631731388F'.
       78  XPC-FLD0780E          VALUE 'Y'.
       78  XPC-FLD0781B
           VALUE X'096874455399'.
       78  XPC-FLD0781E          VALUE 'N'.
       78  XPC-FLD0782B
           VALUE X'974841984908992382763415207591606305'.
       78  XPC-FLD0782E          VALUE 'N'.
       78  XPC-FLD0783B
           VALUE X'04236442572674454C'.
       78  XPC-FLD0783E          VALUE 'N'.
       78  XPC-FLD0784B
           VALUE X'1401654002801979714825902150218F'.
       78  XPC-FLD0784E          VALUE 'N'.
       78  XPC-FLD0785B
           VALUE X'393300524050'.
       78  XPC-FLD0785E          VALUE 'N'.
       78  XPC-FLD0786B
           VALUE X'085407905679605532414111479511119F'.
       78  XPC-FLD0786E          VALUE 'N'.
       78  XPC-FLD0787B
           VALUE X'00464284'.
       78  XPC-FLD0787E          VALUE 'N'.
       78  XPC-FLD0788B
           VALUE X'077898336505928358503125785715'.
       78  XPC-FLD0788E          VALUE 'N'.
       78  XPC-FLD0789B
           VALUE X'6604278565132847496040994F'.
       78  XPC-FLD0789E          VALUE 'N'.
       78  XPC-FLD0790B
           VALUE X'31694368662D'.
       78  XPC-FLD0790E          VALUE 'N'.
       78  XPC-FLD0791B
           VALUE X'7382741348868294886190710712'.
       78  XPC-FLD0791E          VALUE 'N'.
       78  XPC-FLD0792B
           VALUE X'37982443954012'.
       78  XPC-FLD0792E          VALUE 'N'.
       78  XPC-FLD0793B
           VALUE X'0559177637820166807230'.
       78  XPC-FLD0793E          VALUE 'N'.
       78  XPC-FLD0794B
           VALUE X'9D'.
       78  XPC-FLD0794E          VALUE 'N'.
       78  XPC-FLD0795B
           VALUE X'0334944006958C'.
       78  XPC-FLD0795E          VALUE 'N'.
       78  XPC-FLD0796B
           VALUE X'0653841465915909014761098205'.
       78  XPC-FLD0796E          VALUE 'N'.
       78  XPC-FLD0797B
           VALUE X'03487774860252'.
       78  XPC-FLD0797E          VALUE 'N'.
       78  XPC-FLD0798B
           VALUE X'3415780672379371043808250F'.
       78  XPC-FLD0798E          VALUE 'N'.
       78  XPC-FLD0799B
           VALUE X'024239306208646738127F'.
       78  XPC-FLD0799E          VALUE 'N'.
       78  XPC-FLD0800B
           VALUE X'4337360023'.
       78  XPC-FLD0800E          VALUE 'N'.
       78  XPC-FLD0801B
           VALUE X'9827967002397862694706986985693220049F'.
       78  XPC-FLD0801E          VALUE 'Y'.
       78  XPC-FLD0802B
           VALUE X'059390909987167776897365456534317F'.
       78  XPC-FLD0802E          VALUE 'N'.
       78  XPC-FLD0803B
           VALUE X'0555623043499399698487'.
       78  XPC-FLD0803E          VALUE 'N'.
       78  XPC-FLD0804B
           VALUE X'00'.
       78  XPC-FLD0804E          VALUE 'Y'.
       78  XPC-FLD0805B
           VALUE X'479868190466873291'.
       78  XPC-FLD0805E          VALUE 'N'.
       78  XPC-FLD0806B
           VALUE X'2580784568425466'.
       78  XPC-FLD0806E          VALUE 'N'.
       78  XPC-FLD0807B
           VALUE X'090D'.
       78  XPC-FLD0807E          VALUE 'Y'.
       78  XPC-FLD0808B
           VALUE X'045744550475690953'.
       78  XPC-FLD0808E          VALUE 'N'.
       78  XPC-FLD0809B
           VALUE X'04404211618158995C'.
       78  XPC-FLD0809E          VALUE 'N'.
       78  XPC-FLD0810B
           VALUE X'021294550C'.
       78  XPC-FLD0810E          VALUE 'N'.
       78  XPC-FLD0811B
           VALUE X'5454913861947337423021251372119877487F'.
       78  XPC-FLD0811E          VALUE 'N'.
       78  XPC-FLD0812B
           VALUE X'5678497418'.
       78  XPC-FLD0812E          VALUE 'N'.
       78  XPC-FLD0813B
           VALUE X'29113136400D'.
       78  XPC-FLD0813E          VALUE 'Y'.
       78  XPC-FLD0814B
           VALUE X'07525119595496631362479433846F'.
       78  XPC-FLD0814E          VALUE 'N'.
       78  XPC-FLD0815B
           VALUE X'0714304561558653405839436344638434439F'.
       78  XPC-FLD0815E          VALUE 'N'.
       78  XPC-FLD0816B
           VALUE X'0885915144904112161761133847903693'.
       78  XPC-FLD0816E          VALUE 'Y'.
       78  XPC-FLD0817B
           VALUE X'00322267276165150162'.
       78  XPC-FLD0817E          VALUE 'N'.
       78  XPC-FLD0818B
           VALUE X'0409797454111609544843745425'.
       78  XPC-FLD0818E          VALUE 'N'.
       78  XPC-FLD0819B
           VALUE X'082D'.
       78  XPC-FLD0819E          VALUE 'N'.
       78  XPC-FLD0820B
           VALUE X'956537139953218984445015848905313760'.
       78  XPC-FLD0820E          VALUE 'N'.
       78  XPC-FLD0821B
           VALUE X'016692042005410C'.
       78  XPC-FLD0821E          VALUE 'N'.
       78  XPC-FLD0822B
           VALUE X'1092'.
       78  XPC-FLD0822E          VALUE 'Y'.
       78  XPC-FLD0823B
           VALUE X'484310601769554C'.
       78  XPC-FLD0823E          VALUE 'N'.
       78  XPC-FLD0824B
           VALUE X'073189644908504480898002'.
       78  XPC-FLD0824E          VALUE 'N'.
       78  XPC-FLD0825B
           VALUE X'0170692D'.
       78  XPC-FLD0825E          VALUE 'N'.
       78  XPC-FLD0826B
           VALUE X'0480578557209735916D'.
       78  XPC-FLD0826E          VALUE 'N'.
       78  XPC-FLD0827B
           VALUE X'046910500983725489'.
       78  XPC-FLD0827E          VALUE 'N'.
       78  XPC-FLD0828B
           VALUE X'15016D'.
       78  XPC-FLD0828E          VALUE 'Y'.
       78  XPC-FLD0829B
           VALUE X'944972866636283770347403930829'.
       78  XPC-FLD0829E          VALUE 'N'.
       78  XPC-FLD0830B
           VALUE X'0565534908381171491839'.
       78  XPC-FLD0830E          VALUE 'N'.
       78  XPC-FLD0831B
           VALUE X'6602934475151655210356515F'.
       78  XPC-FLD0831E          VALUE 'N'.
       78  XPC-FLD0832B
           VALUE X'0419047953539795'.
       78  XPC-FLD0832E          VALUE 'N'.
       78  XPC-FLD0833B
           VALUE X'6657954482808921498060427F'.
       78  XPC-FLD0833E          VALUE 'N'.
       78  XPC-FLD0834B
           VALUE X'711918981740956136050613167F'.
       78  XPC-FLD0834E          VALUE 'Y'.
       78  XPC-FLD0835B
           VALUE X'090696211292909090229130697187'.
       78  XPC-FLD0835E          VALUE 'N'.
       78  XPC-FLD0836B
           VALUE X'01479247899592904941896F'.
       78  XPC-FLD0836E          VALUE 'N'.
       78  XPC-FLD0837B
           VALUE X'29137776510D'.
       78  XPC-FLD0837E          VALUE 'N'.
       78  XPC-FLD0838B
           VALUE X'54394205787057270376334726969F'.
       78  XPC-FLD0838E          VALUE 'N'.
       78  XPC-FLD0839B
           VALUE X'05300514'.
       78  XPC-FLD0839E          VALUE 'N'.
       78  XPC-FLD0840B
           VALUE X'1153'.
       78  XPC-FLD0840E          VALUE 'N'.
       78  XPC-FLD0841B
           VALUE X'0992981736583248397742806176703F'.
       78  XPC-FLD0841E          VALUE 'N'.
       78  XPC-FLD0842B
           VALUE X'054030708425366313836265591069241055'.
       78  XPC-FLD0842E          VALUE 'N'.
       78  XPC-FLD0843B
           VALUE X'31166916723C'.
       78  XPC-FLD0843E          VALUE 'N'.
       78  XPC-FLD0844B
           VALUE X'044793585873382490'.
       78  XPC-FLD0844E          VALUE 'N'.
       78  XPC-FLD0845B
           VALUE X'0555020066479501195111220F'.
       78  XPC-FLD0845E          VALUE 'N'.
       78  XPC-FLD0846B
           VALUE X'045502277490866085'.
       78  XPC-FLD0846E          VALUE 'N'.
       78  XPC-FLD0847B
           VALUE X'029702735772'.
       78  XPC-FLD0847E          VALUE 'N'.
       78  XPC-FLD0848B
           VALUE X'631805001566330881601629698F'.
       78  XPC-FLD0848E          VALUE 'N'.
       78  XPC-FLD0849B
           VALUE X'07527838155592773139446194363F'.
       78  XPC-FLD0849E          VALUE 'Y'.
       78  XPC-FLD0850B
           VALUE X'0213070204849290532925563F'.
       78  XPC-FLD0850E          VALUE 'N'.
       78  XPC-FLD0851B
           VALUE X'22519773'.
       78  XPC-FLD0851E          VALUE 'N'.
       78  XPC-FLD0852B
           VALUE X'2868257988'.
       78  XPC-FLD0852E          VALUE 'Y'.
       78  XPC-FLD0853B
           VALUE X'0C'.
       78  XPC-FLD0853E          VALUE 'N'.
       78  XPC-FLD0854B
           VALUE X'09'.
       78  XPC-FLD0854E          VALUE 'N'.
       78  XPC-FLD0855B
           VALUE X'167054'.
       78  XPC-FLD0855E          VALUE 'Y'.
       78  XPC-FLD0856B
           VALUE X'30842D'.
       78  XPC-FLD0856E          VALUE 'N'.
       78  XPC-FLD0857B
           VALUE X'010C'.
       78  XPC-FLD0857E          VALUE 'N'.
       78  XPC-FLD0858B
           VALUE X'030966624473'.
       78  XPC-FLD0858E          VALUE 'Y'.
       78  XPC-FLD0859B
           VALUE X'0971628168143447767945986015547532588F'.
       78  XPC-FLD0859E          VALUE 'N'.
       78  XPC-FLD0860B
           VALUE X'310782983915'.
       78  XPC-FLD0860E          VALUE 'N'.
       78  XPC-FLD0861B
           VALUE X'1091'.
       78  XPC-FLD0861E          VALUE 'Y'.
       78  XPC-FLD0862B
           VALUE X'0568978369365978243753'.
       78  XPC-FLD0862E          VALUE 'N'.
       78  XPC-FLD0863B
           VALUE X'05171345793694755750'.
       78  XPC-FLD0863E          VALUE 'N'.
       78  XPC-FLD0864B
           VALUE X'0879130787212824560405977081245509'.
       78  XPC-FLD0864E          VALUE 'Y'.
       78  XPC-FLD0865B
           VALUE X'327C'.
       78  XPC-FLD0865E          VALUE 'N'.
       78  XPC-FLD0866B
           VALUE X'0973651490201067931957936707476620'.
       78  XPC-FLD0866E          VALUE 'N'.
       78  XPC-FLD0867B
           VALUE X'0728938616966572774526298417'.
       78  XPC-FLD0867E          VALUE 'N'.
       78  XPC-FLD0868B
           VALUE X'05841479951825634534534F'.
       78  XPC-FLD0868E          VALUE 'N'.
       78  XPC-FLD0869B
           VALUE X'6815782206919422936408636F'.
       78  XPC-FLD0869E          VALUE 'N'.
       78  XPC-FLD0870B
           VALUE X'657570531523696821807334'.
       78  XPC-FLD0870E          VALUE 'N'.
       78  XPC-FLD0871B
           VALUE X'5744601464762396635F'.
       78  XPC-FLD0871E          VALUE 'N'.
       78  XPC-FLD0872B
           VALUE X'045914011344767276'.
       78  XPC-FLD0872E          VALUE 'N'.
       78  XPC-FLD0873B
           VALUE X'015597'.
       78  XPC-FLD0873E          VALUE 'Y'.
       78  XPC-FLD0874B
           VALUE X'01881063'.
       78  XPC-FLD0874E          VALUE 'N'.
       78  XPC-FLD0875B
           VALUE X'32'.
       78  XPC-FLD0875E          VALUE 'N'.
       78  XPC-FLD0876B
           VALUE X'0792823887607293276147402139031F'.
       78  XPC-FLD0876E          VALUE 'N'.
       78  XPC-FLD0877B
           VALUE X'0721900468299383535342172F'.
       78  XPC-FLD0877E          VALUE 'N'.
       78  XPC-FLD0878B
           VALUE X'242827678838084315415812843661207F'.
       78  XPC-FLD0878E          VALUE 'N'.
       78  XPC-FLD0879B
           VALUE X'085230962794591269560129376259283F'.
       78  XPC-FLD0879E          VALUE 'Y'.
       78  XPC-FLD0880B
           VALUE X'04839436714022342976684717541503'.
       78  XPC-FLD0880E          VALUE 'N'.
       78  XPC-FLD0881B
           VALUE X'2105193947194C'.
       78  XPC-FLD0881E          VALUE 'N'.
       78  XPC-FLD0882B
           VALUE X'06778329518186110291821933'.
       78  XPC-FLD0882E          VALUE 'Y'.
       78  XPC-FLD0883B
           VALUE X'9754132777012324284626648395'.
       78  XPC-FLD0883E          VALUE 'N'.
       78  XPC-FLD0884B
           VALUE X'06490392032439449247535630967F'.
       78  XPC-FLD0884E          VALUE 'N'.
       78  XPC-FLD0885B
           VALUE X'02072D'.
       78  XPC-FLD0885E          VALUE 'N'.
       78  XPC-FLD0886B
           VALUE X'000595069070307D'.
       78  XPC-FLD0886E          VALUE 'N'.
       78  XPC-FLD0887B
           VALUE X'09306168018675709582439026235078'.
       78  XPC-FLD0887E          VALUE 'N'.
       78  XPC-FLD0888B
           VALUE X'0239444618'.
       78  XPC-FLD0888E          VALUE 'Y'.
       78  XPC-FLD0889B
           VALUE X'0286280324389502793813733205752214417F'.
       78  XPC-FLD0889E          VALUE 'N'.
       78  XPC-FLD0890B
           VALUE X'721613583480198661490589984F'.
       78  XPC-FLD0890E          VALUE 'N'.
       78  XPC-FLD0891B
           VALUE X'0735270814161123614247195234'.
       78  XPC-FLD0891E          VALUE 'N'.
       78  XPC-FLD0892B
           VALUE X'0556'.
       78  XPC-FLD0892E          VALUE 'N'.
       78  XPC-FLD0893B
           VALUE X'90'.
       78  XPC-FLD0893E          VALUE 'N'.
       78  XPC-FLD0894B
           VALUE X'654309128000748152942378'.
       78  XPC-FLD0894E          VALUE 'N'.
       78  XPC-FLD0895B
           VALUE X'2889386308'.
       78  XPC-FLD0895E          VALUE 'N'.
       78  XPC-FLD0896B
           VALUE X'0D'.
       78  XPC-FLD0896E          VALUE 'N'.
       78  XPC-FLD0897B
           VALUE X'04404922200833586C'.
       78  XPC-FLD0897E          VALUE 'N'.
       78  XPC-FLD0898B
           VALUE X'08343519'.
       78  XPC-FLD0898E          VALUE 'N'.
       78  XPC-FLD0899B
           VALUE X'5130606210827635'.
       78  XPC-FLD0899E          VALUE 'N'.
       78  XPC-FLD0900B
           VALUE X'01847103'.
       78  XPC-FLD0900E          VALUE 'N'.
       78  XPC-FLD0901B
           VALUE X'01289396298369796609307513790554367005'.
       78  XPC-FLD0901E          VALUE 'N'.
       78  XPC-FLD0902B
           VALUE X'5131049785081560396F'.
       78  XPC-FLD0902E          VALUE 'N'.
       78  XPC-FLD0903B
           VALUE X'006D'.
       78  XPC-FLD0903E          VALUE 'Y'.
       78  XPC-FLD0904B
           VALUE X'7D'.
       78  XPC-FLD0904E          VALUE 'N'.
       78  XPC-FLD0905B
           VALUE X'07075373564412'.
       78  XPC-FLD0905E          VALUE 'N'.
       78  XPC-FLD0906B
           VALUE X'00'.
       78  XPC-FLD0906E          VALUE 'Y'.
       78  XPC-FLD0907B
           VALUE X'0530207411746521324809'.
       78  XPC-FLD0907E          VALUE 'N'.
       78  XPC-FLD0908B
           VALUE X'08642393083548316472445662839163561F'.
       78  XPC-FLD0908E          VALUE 'N'.
       78  XPC-FLD0909B
           VALUE X'00'.
       78  XPC-FLD0909E          VALUE 'Y'.
       78  XPC-FLD0910B
           VALUE X'2257333765600096867487422969134058'.
       78  XPC-FLD0910E          VALUE 'N'.
       78  XPC-FLD0911B
           VALUE X'03765938103187097346508025840F'.
       78  XPC-FLD0911E          VALUE 'N'.
       78  XPC-FLD0912B
           VALUE X'00'.
       78  XPC-FLD0912E          VALUE 'Y'.
       78  XPC-FLD0913B
           VALUE X'0325'.
       78  XPC-FLD0913E          VALUE 'N'.
       78  XPC-FLD0914B
           VALUE X'7400121849171126253708052900037643855F'.
       78  XPC-FLD0914E          VALUE 'N'.
       78  XPC-FLD0915B
           VALUE X'01130C'.
       78  XPC-FLD0915E          VALUE 'Y'.
       78  XPC-FLD0916B
           VALUE X'4372777685598984'.
       78  XPC-FLD0916E          VALUE 'N'.
       78  XPC-FLD0917B
           VALUE X'1084'.
       78  XPC-FLD0917E          VALUE 'N'.
       78  XPC-FLD0918B
           VALUE X'0569310510294893204244'.
       78  XPC-FLD0918E          VALUE 'N'.
       78  XPC-FLD0919B
           VALUE X'6D'.
       78  XPC-FLD0919E          VALUE 'N'.
       78  XPC-FLD0920B
           VALUE X'06698607602658151664433262'.
       78  XPC-FLD0920E          VALUE 'N'.
       78  XPC-FLD0921B
           VALUE X'0C'.
       78  XPC-FLD0921E          VALUE 'Y'.
       78  XPC-FLD0922B
           VALUE X'0183318D'.
       78  XPC-FLD0922E          VALUE 'N'.
       78  XPC-FLD0923B
           VALUE X'60892C'.
       78  XPC-FLD0923E          VALUE 'N'.
       78  XPC-FLD0924B
           VALUE X'8304134742864166529585645548650F'.
       78  XPC-FLD0924E          VALUE 'Y'.
       78  XPC-FLD0925B
           VALUE X'6C'.
       78  XPC-FLD0925E          VALUE 'N'.
       78  XPC-FLD0926B
           VALUE X'206877212D'.
       78  XPC-FLD0926E          VALUE 'N'.
       78  XPC-FLD0927B
           VALUE X'5121865708750312359F'.
       78  XPC-FLD0927E          VALUE 'N'.
       78  XPC-FLD0928B
           VALUE X'0255169492'.
       78  XPC-FLD0928E          VALUE 'N'.
       78  XPC-FLD0929B
           VALUE X'713937683093887626162299397F'.
       78  XPC-FLD0929E          VALUE 'N'.
       78  XPC-FLD0930B
           VALUE X'05915948649192320925289F'.
       78  XPC-FLD0930E          VALUE 'N'.
       78  XPC-FLD0931B
           VALUE X'124377459C'.
       78  XPC-FLD0931E          VALUE 'N'.
       78  XPC-FLD0932B
           VALUE X'00116711468219923287'.
       78  XPC-FLD0932E          VALUE 'N'.
       78  XPC-FLD0933B
           VALUE X'336212612034'.
       78  XPC-FLD0933E          VALUE 'N'.
       78  XPC-FLD0934B
           VALUE X'0237750091'.
       78  XPC-FLD0934E          VALUE 'N'.
       78  XPC-FLD0935B
           VALUE X'485384635684275264'.
       78  XPC-FLD0935E          VALUE 'N'.
       78  XPC-FLD0936B
           VALUE X'0952998853185021421730027668672846630F'.
       78  XPC-FLD0936E          VALUE 'Y'.
       78  XPC-FLD0937B
           VALUE X'04'.
       78  XPC-FLD0937E          VALUE 'N'.
       78  XPC-FLD0938B
           VALUE X'07520562026683963451729041'.
       78  XPC-FLD0938E          VALUE 'N'.
       78  XPC-FLD0939B
           VALUE X'0C'.
       78  XPC-FLD0939E          VALUE 'Y'.
       78  XPC-FLD0940B
           VALUE X'420205546087499958'.
       78  XPC-FLD0940E          VALUE 'N'.
       78  XPC-FLD0941B
           VALUE X'00154777002907'.
       78  XPC-FLD0941E          VALUE 'N'.
       78  XPC-FLD0942B
           VALUE X'92270492697630424050458941565011627F'.
       78  XPC-FLD0942E          VALUE 'Y'.
       78  XPC-FLD0943B
           VALUE X'9698175C'.
       78  XPC-FLD0943E          VALUE 'N'.
       78  XPC-FLD0944B
           VALUE X'260056094D'.
       78  XPC-FLD0944E          VALUE 'N'.
       78  XPC-FLD0945B
           VALUE X'09639552190838518C'.
       78  XPC-FLD0945E          VALUE 'N'.
       78  XPC-FLD0946B
           VALUE X'0285407519811451561686510558502050116F'.
       78  XPC-FLD0946E          VALUE 'N'.
       78  XPC-FLD0947B
           VALUE X'6720279273588082815549249F'.
       78  XPC-FLD0947E          VALUE 'N'.
       78  XPC-FLD0948B
           VALUE X'7581536805549627281493485497'.
       78  XPC-FLD0948E          VALUE 'N'.
       78  XPC-FLD0949B
           VALUE X'089772746643169742'.
       78  XPC-FLD0949E          VALUE 'N'.
       78  XPC-FLD0950B
           VALUE X'9466572989771413480277234393870459'.
       78  XPC-FLD0950E          VALUE 'N'.
       78  XPC-FLD0951B
           VALUE X'7459913492992847894313968026'.
       78  XPC-FLD0951E          VALUE 'Y'.
       78  XPC-FLD0952B
           VALUE X'65'.
       78  XPC-FLD0952E          VALUE 'N'.
       78  XPC-FLD0953B
           VALUE X'05187948954462912461'.
       78  XPC-FLD0953E          VALUE 'N'.
       78  XPC-FLD0954B
           VALUE X'0970603521071659591790137255884474143F'.
       78  XPC-FLD0954E          VALUE 'Y'.
       78  XPC-FLD0955B
           VALUE X'5341017709695240897178791783518F'.
       78  XPC-FLD0955E          VALUE 'N'.
       78  XPC-FLD0956B
           VALUE X'097384559702281070479269828F'.
       78  XPC-FLD0956E          VALUE 'N'.
       78  XPC-FLD0957B
           VALUE X'01212C'.
       78  XPC-FLD0957E          VALUE 'Y'.
       78  XPC-FLD0958B
           VALUE X'4387549590870288'.
       78  XPC-FLD0958E          VALUE 'N'.
       78  XPC-FLD0959B
           VALUE X'1C'.
       78  XPC-FLD0959E          VALUE 'N'.
       78  XPC-FLD0960B
           VALUE X'0C'.
       78  XPC-FLD0960E          VALUE 'Y'.
       78  XPC-FLD0961B
           VALUE X'00055C'.
       78  XPC-FLD0961E          VALUE 'N'.
       78  XPC-FLD0962B
           VALUE X'6826560363239254262940346F'.
       78  XPC-FLD0962E          VALUE 'N'.
       78  XPC-FLD0963B
           VALUE X'06579508606108431242392875'.
       78  XPC-FLD0963E          VALUE 'N'.
       78  XPC-FLD0964B
           VALUE X'0399362942016605604323'.
       78  XPC-FLD0964E          VALUE 'N'.
       78  XPC-FLD0965B
           VALUE X'01'.
       78  XPC-FLD0965E          VALUE 'N'.
       78  XPC-FLD0966B
           VALUE X'00005571'.
       78  XPC-FLD0966E          VALUE 'N'.
       78  XPC-FLD0967B
           VALUE X'03560456473147'.
       78  XPC-FLD0967E          VALUE 'N'.
       78  XPC-FLD0968B
           VALUE X'05531D'.
       78  XPC-FLD0968E          VALUE 'N'.
       78  XPC-FLD0969B
           VALUE X'05945236920989867723715F'.
       78  XPC-FLD0969E          VALUE 'N'.
       78  XPC-FLD0970B
           VALUE X'433217720233246760537693012156523765'.
       78  XPC-FLD0970E          VALUE 'N'.
       78  XPC-FLD0971B
           VALUE X'402866616015322C'.
       78  XPC-FLD0971E          VALUE 'N'.
       78  XPC-FLD0972B
           VALUE X'013649'.
       78  XPC-FLD0972E          VALUE 'Y'.
       78  XPC-FLD0973B
           VALUE X'08420775282429751358819203232997'.
       78  XPC-FLD0973E          VALUE 'N'.
       78  XPC-FLD0974B
           VALUE X'076D'.
       78  XPC-FLD0974E          VALUE 'N'.
       78  XPC-FLD0975B
           VALUE X'329183574054'.
       78  XPC-FLD0975E          VALUE 'N'.
       78  XPC-FLD0976B
           VALUE X'05189195631532426046'.
       78  XPC-FLD0976E          VALUE 'N'.
       78  XPC-FLD0977B
           VALUE X'006577733509987D'.
       78  XPC-FLD0977E          VALUE 'N'.
       78  XPC-FLD0978B
           VALUE X'263651133125829D'.
       78  XPC-FLD0978E          VALUE 'N'.
       78  XPC-FLD0979B
           VALUE X'38851072771966'.
       78  XPC-FLD0979E          VALUE 'N'.
       78  XPC-FLD0980B
           VALUE X'647159056743324437308229'.
       78  XPC-FLD0980E          VALUE 'N'.
       78  XPC-FLD0981B
           VALUE X'3602784782762D'.
       78  XPC-FLD0981E          VALUE 'N'.
       78  XPC-FLD0982B
           VALUE X'30653235443C'.
       78  XPC-FLD0982E          VALUE 'N'.
       78  XPC-FLD0983B
           VALUE X'882516211995383510538363225350622087'.
       78  XPC-FLD0983E          VALUE 'N'.
       78  XPC-FLD0984B
           VALUE X'04457843883822408592'.
       78  XPC-FLD0984E          VALUE 'N'.
       78  XPC-FLD0985B
           VALUE X'496108848273749947698929645412135F'.
       78  XPC-FLD0985E          VALUE 'N'.
       78  XPC-FLD0986B
           VALUE X'08'.
       78  XPC-FLD0986E          VALUE 'N'.
       78  XPC-FLD0987B
           VALUE X'084253493742279825972518736421079F'.
       78  XPC-FLD0987E          VALUE 'N'.
       78  XPC-FLD0988B
           VALUE X'0181520D'.
       78  XPC-FLD0988E          VALUE 'N'.
       78  XPC-FLD0989B
           VALUE X'05932140179792923634499F'.
       78  XPC-FLD0989E          VALUE 'N'.
       78  XPC-FLD0990B
           VALUE X'02089861'.
       78  XPC-FLD0990E          VALUE 'Y'.
       78  XPC-FLD0991B
           VALUE X'404273028987099C'.
       78  XPC-FLD0991E          VALUE 'N'.
       78  XPC-FLD0992B
           VALUE X'518805985017170789852514182650362F'.
       78  XPC-FLD0992E          VALUE 'N'.
       78  XPC-FLD0993B
           VALUE X'01132C'.
       78  XPC-FLD0993E          VALUE 'Y'.
       78  XPC-FLD0994B
           VALUE X'0484793408353182154D'.
       78  XPC-FLD0994E          VALUE 'N'.
       78  XPC-FLD0995B
           VALUE X'01888258'.
       78  XPC-FLD0995E          VALUE 'N'.
       78  XPC-FLD0996B
           VALUE X'00505105346267128441084558'.
       78  XPC-FLD0996E          VALUE 'N'.
       78  XPC-FLD0997B
           VALUE X'0011799546758455291F'.
       78  XPC-FLD0997E          VALUE 'N'.
       78  XPC-FLD0998B
           VALUE X'3D'.
       78  XPC-FLD0998E          VALUE 'N'.
       78  XPC-FLD0999B
           VALUE X'0C'.
       78  XPC-FLD0999E          VALUE 'Y'.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           SUBTRACT FLD0500A        FROM FLD0500B.
           ADD FLD0501A        TO FLD0501B
               ON SIZE ERROR MOVE 'Y' TO FLD0501E.
           SUBTRACT FLD0502A        FROM FLD0502B.
           ADD FLD0503A        TO FLD0503B.
           SUBTRACT FLD0504A        FROM FLD0504B
               ON SIZE ERROR MOVE 'Y' TO FLD0504E.
           ADD FLD0505A        TO FLD0505B.
           SUBTRACT FLD0506A        FROM FLD0506B.
           ADD FLD0507A        TO FLD0507B
               ON SIZE ERROR MOVE 'Y' TO FLD0507E.
           SUBTRACT FLD0508A        FROM FLD0508B.
           ADD FLD0509A        TO FLD0509B.
           SUBTRACT FLD0510A        FROM FLD0510B
               ON SIZE ERROR MOVE 'Y' TO FLD0510E.
           ADD FLD0511A        TO FLD0511B.
           SUBTRACT FLD0512A        FROM FLD0512B.
           ADD FLD0513A        TO FLD0513B
               ON SIZE ERROR MOVE 'Y' TO FLD0513E.
           SUBTRACT FLD0514A        FROM FLD0514B.
           ADD FLD0515A        TO FLD0515B.
           SUBTRACT FLD0516A        FROM FLD0516B
               ON SIZE ERROR MOVE 'Y' TO FLD0516E.
           ADD FLD0517A        TO FLD0517B.
           SUBTRACT FLD0518A        FROM FLD0518B.
           ADD FLD0519A        TO FLD0519B
               ON SIZE ERROR MOVE 'Y' TO FLD0519E.
           SUBTRACT FLD0520A        FROM FLD0520B.
           ADD FLD0521A        TO FLD0521B.
           SUBTRACT FLD0522A        FROM FLD0522B
               ON SIZE ERROR MOVE 'Y' TO FLD0522E.
           ADD FLD0523A        TO FLD0523B.
           SUBTRACT FLD0524A        FROM FLD0524B.
           ADD FLD0525A        TO FLD0525B
               ON SIZE ERROR MOVE 'Y' TO FLD0525E.
           SUBTRACT FLD0526A        FROM FLD0526B.
           ADD FLD0527A        TO FLD0527B.
           SUBTRACT FLD0528A        FROM FLD0528B
               ON SIZE ERROR MOVE 'Y' TO FLD0528E.
           ADD FLD0529A        TO FLD0529B.
           SUBTRACT FLD0530A        FROM FLD0530B.
           ADD FLD0531A        TO FLD0531B
               ON SIZE ERROR MOVE 'Y' TO FLD0531E.
           SUBTRACT FLD0532A        FROM FLD0532B.
           ADD FLD0533A        TO FLD0533B.
           SUBTRACT FLD0534A        FROM FLD0534B
               ON SIZE ERROR MOVE 'Y' TO FLD0534E.
           ADD FLD0535A        TO FLD0535B.
           SUBTRACT FLD0536A        FROM FLD0536B.
           ADD FLD0537A        TO FLD0537B
               ON SIZE ERROR MOVE 'Y' TO FLD0537E.
           SUBTRACT FLD0538A        FROM FLD0538B.
           ADD FLD0539A        TO FLD0539B.
           SUBTRACT FLD0540A        FROM FLD0540B
               ON SIZE ERROR MOVE 'Y' TO FLD0540E.
           ADD FLD0541A        TO FLD0541B.
           SUBTRACT FLD0542A        FROM FLD0542B.
           ADD FLD0543A        TO FLD0543B
               ON SIZE ERROR MOVE 'Y' TO FLD0543E.
           SUBTRACT FLD0544A        FROM FLD0544B.
           ADD FLD0545A        TO FLD0545B.
           SUBTRACT FLD0546A        FROM FLD0546B
               ON SIZE ERROR MOVE 'Y' TO FLD0546E.
           ADD FLD0547A        TO FLD0547B.
           SUBTRACT FLD0548A        FROM FLD0548B.
           ADD FLD0549A        TO FLD0549B
               ON SIZE ERROR MOVE 'Y' TO FLD0549E.
           SUBTRACT FLD0550A        FROM FLD0550B.
           ADD FLD0551A        TO FLD0551B.
           SUBTRACT FLD0552A        FROM FLD0552B
               ON SIZE ERROR MOVE 'Y' TO FLD0552E.
           ADD FLD0553A        TO FLD0553B.
           SUBTRACT FLD0554A        FROM FLD0554B.
           ADD FLD0555A        TO FLD0555B
               ON SIZE ERROR MOVE 'Y' TO FLD0555E.
           SUBTRACT FLD0556A        FROM FLD0556B.
           ADD FLD0557A        TO FLD0557B.
           SUBTRACT FLD0558A        FROM FLD0558B
               ON SIZE ERROR MOVE 'Y' TO FLD0558E.
           ADD FLD0559A        TO FLD0559B.
           SUBTRACT FLD0560A        FROM FLD0560B.
           ADD FLD0561A        TO FLD0561B
               ON SIZE ERROR MOVE 'Y' TO FLD0561E.
           SUBTRACT FLD0562A        FROM FLD0562B.
           ADD FLD0563A        TO FLD0563B.
           SUBTRACT FLD0564A        FROM FLD0564B
               ON SIZE ERROR MOVE 'Y' TO FLD0564E.
           ADD FLD0565A        TO FLD0565B.
           SUBTRACT FLD0566A        FROM FLD0566B.
           ADD FLD0567A        TO FLD0567B
               ON SIZE ERROR MOVE 'Y' TO FLD0567E.
           SUBTRACT FLD0568A        FROM FLD0568B.
           ADD FLD0569A        TO FLD0569B.
           SUBTRACT FLD0570A        FROM FLD0570B
               ON SIZE ERROR MOVE 'Y' TO FLD0570E.
           ADD FLD0571A        TO FLD0571B.
           SUBTRACT FLD0572A        FROM FLD0572B.
           ADD FLD0573A        TO FLD0573B
               ON SIZE ERROR MOVE 'Y' TO FLD0573E.
           SUBTRACT FLD0574A        FROM FLD0574B.
           ADD FLD0575A        TO FLD0575B.
           SUBTRACT FLD0576A        FROM FLD0576B
               ON SIZE ERROR MOVE 'Y' TO FLD0576E.
           ADD FLD0577A        TO FLD0577B.
           SUBTRACT FLD0578A        FROM FLD0578B.
           ADD FLD0579A        TO FLD0579B
               ON SIZE ERROR MOVE 'Y' TO FLD0579E.
           SUBTRACT FLD0580A        FROM FLD0580B.
           ADD FLD0581A        TO FLD0581B.
           SUBTRACT FLD0582A        FROM FLD0582B
               ON SIZE ERROR MOVE 'Y' TO FLD0582E.
           ADD FLD0583A        TO FLD0583B.
           SUBTRACT FLD0584A        FROM FLD0584B.
           ADD FLD0585A        TO FLD0585B
               ON SIZE ERROR MOVE 'Y' TO FLD0585E.
           SUBTRACT FLD0586A        FROM FLD0586B.
           ADD FLD0587A        TO FLD0587B.
           SUBTRACT FLD0588A        FROM FLD0588B
               ON SIZE ERROR MOVE 'Y' TO FLD0588E.
           ADD FLD0589A        TO FLD0589B.
           SUBTRACT FLD0590A        FROM FLD0590B.
           ADD FLD0591A        TO FLD0591B
               ON SIZE ERROR MOVE 'Y' TO FLD0591E.
           SUBTRACT FLD0592A        FROM FLD0592B.
           ADD FLD0593A        TO FLD0593B.
           SUBTRACT FLD0594A        FROM FLD0594B
               ON SIZE ERROR MOVE 'Y' TO FLD0594E.
           ADD FLD0595A        TO FLD0595B.
           SUBTRACT FLD0596A        FROM FLD0596B.
           ADD FLD0597A        TO FLD0597B
               ON SIZE ERROR MOVE 'Y' TO FLD0597E.
           SUBTRACT FLD0598A        FROM FLD0598B.
           ADD FLD0599A        TO FLD0599B.
           SUBTRACT FLD0600A        FROM FLD0600B
               ON SIZE ERROR MOVE 'Y' TO FLD0600E.
           ADD FLD0601A        TO FLD0601B.
           SUBTRACT FLD0602A        FROM FLD0602B.
           ADD FLD0603A        TO FLD0603B
               ON SIZE ERROR MOVE 'Y' TO FLD0603E.
           SUBTRACT FLD0604A        FROM FLD0604B.
           ADD FLD0605A        TO FLD0605B.
           SUBTRACT FLD0606A        FROM FLD0606B
               ON SIZE ERROR MOVE 'Y' TO FLD0606E.
           ADD FLD0607A        TO FLD0607B.
           SUBTRACT FLD0608A        FROM FLD0608B.
           ADD FLD0609A        TO FLD0609B
               ON SIZE ERROR MOVE 'Y' TO FLD0609E.
           SUBTRACT FLD0610A        FROM FLD0610B.
           ADD FLD0611A        TO FLD0611B.
           SUBTRACT FLD0612A        FROM FLD0612B
               ON SIZE ERROR MOVE 'Y' TO FLD0612E.
           ADD FLD0613A        TO FLD0613B.
           SUBTRACT FLD0614A        FROM FLD0614B.
           ADD FLD0615A        TO FLD0615B
               ON SIZE ERROR MOVE 'Y' TO FLD0615E.
           SUBTRACT FLD0616A        FROM FLD0616B.
           ADD FLD0617A        TO FLD0617B.
           SUBTRACT FLD0618A        FROM FLD0618B
               ON SIZE ERROR MOVE 'Y' TO FLD0618E.
           ADD FLD0619A        TO FLD0619B.
           SUBTRACT FLD0620A        FROM FLD0620B.
           ADD FLD0621A        TO FLD0621B
               ON SIZE ERROR MOVE 'Y' TO FLD0621E.
           SUBTRACT FLD0622A        FROM FLD0622B.
           ADD FLD0623A        TO FLD0623B.
           SUBTRACT FLD0624A        FROM FLD0624B
               ON SIZE ERROR MOVE 'Y' TO FLD0624E.
           ADD FLD0625A        TO FLD0625B.
           SUBTRACT FLD0626A        FROM FLD0626B.
           ADD FLD0627A        TO FLD0627B
               ON SIZE ERROR MOVE 'Y' TO FLD0627E.
           SUBTRACT FLD0628A        FROM FLD0628B.
           ADD FLD0629A        TO FLD0629B.
           SUBTRACT FLD0630A        FROM FLD0630B
               ON SIZE ERROR MOVE 'Y' TO FLD0630E.
           ADD FLD0631A        TO FLD0631B.
           SUBTRACT FLD0632A        FROM FLD0632B.
           ADD FLD0633A        TO FLD0633B
               ON SIZE ERROR MOVE 'Y' TO FLD0633E.
           SUBTRACT FLD0634A        FROM FLD0634B.
           ADD FLD0635A        TO FLD0635B.
           SUBTRACT FLD0636A        FROM FLD0636B
               ON SIZE ERROR MOVE 'Y' TO FLD0636E.
           ADD FLD0637A        TO FLD0637B.
           SUBTRACT FLD0638A        FROM FLD0638B.
           ADD FLD0639A        TO FLD0639B
               ON SIZE ERROR MOVE 'Y' TO FLD0639E.
           SUBTRACT FLD0640A        FROM FLD0640B.
           ADD FLD0641A        TO FLD0641B.
           SUBTRACT FLD0642A        FROM FLD0642B
               ON SIZE ERROR MOVE 'Y' TO FLD0642E.
           ADD FLD0643A        TO FLD0643B.
           SUBTRACT FLD0644A        FROM FLD0644B.
           ADD FLD0645A        TO FLD0645B
               ON SIZE ERROR MOVE 'Y' TO FLD0645E.
           SUBTRACT FLD0646A        FROM FLD0646B.
           ADD FLD0647A        TO FLD0647B.
           SUBTRACT FLD0648A        FROM FLD0648B
               ON SIZE ERROR MOVE 'Y' TO FLD0648E.
           ADD FLD0649A        TO FLD0649B.
           SUBTRACT FLD0650A        FROM FLD0650B.
           ADD FLD0651A        TO FLD0651B
               ON SIZE ERROR MOVE 'Y' TO FLD0651E.
           SUBTRACT FLD0652A        FROM FLD0652B.
           ADD FLD0653A        TO FLD0653B.
           SUBTRACT FLD0654A        FROM FLD0654B
               ON SIZE ERROR MOVE 'Y' TO FLD0654E.
           ADD FLD0655A        TO FLD0655B.
           SUBTRACT FLD0656A        FROM FLD0656B.
           ADD FLD0657A        TO FLD0657B
               ON SIZE ERROR MOVE 'Y' TO FLD0657E.
           SUBTRACT FLD0658A        FROM FLD0658B.
           ADD FLD0659A        TO FLD0659B.
           SUBTRACT FLD0660A        FROM FLD0660B
               ON SIZE ERROR MOVE 'Y' TO FLD0660E.
           ADD FLD0661A        TO FLD0661B.
           SUBTRACT FLD0662A        FROM FLD0662B.
           ADD FLD0663A        TO FLD0663B
               ON SIZE ERROR MOVE 'Y' TO FLD0663E.
           SUBTRACT FLD0664A        FROM FLD0664B.
           ADD FLD0665A        TO FLD0665B.
           SUBTRACT FLD0666A        FROM FLD0666B
               ON SIZE ERROR MOVE 'Y' TO FLD0666E.
           ADD FLD0667A        TO FLD0667B.
           SUBTRACT FLD0668A        FROM FLD0668B.
           ADD FLD0669A        TO FLD0669B
               ON SIZE ERROR MOVE 'Y' TO FLD0669E.
           SUBTRACT FLD0670A        FROM FLD0670B.
           ADD FLD0671A        TO FLD0671B.
           SUBTRACT FLD0672A        FROM FLD0672B
               ON SIZE ERROR MOVE 'Y' TO FLD0672E.
           ADD FLD0673A        TO FLD0673B.
           SUBTRACT FLD0674A        FROM FLD0674B.
           ADD FLD0675A        TO FLD0675B
               ON SIZE ERROR MOVE 'Y' TO FLD0675E.
           SUBTRACT FLD0676A        FROM FLD0676B.
           ADD FLD0677A        TO FLD0677B.
           SUBTRACT FLD0678A        FROM FLD0678B
               ON SIZE ERROR MOVE 'Y' TO FLD0678E.
           ADD FLD0679A        TO FLD0679B.
           SUBTRACT FLD0680A        FROM FLD0680B.
           ADD FLD0681A        TO FLD0681B
               ON SIZE ERROR MOVE 'Y' TO FLD0681E.
           SUBTRACT FLD0682A        FROM FLD0682B.
           ADD FLD0683A        TO FLD0683B.
           SUBTRACT FLD0684A        FROM FLD0684B
               ON SIZE ERROR MOVE 'Y' TO FLD0684E.
           ADD FLD0685A        TO FLD0685B.
           SUBTRACT FLD0686A        FROM FLD0686B.
           ADD FLD0687A        TO FLD0687B
               ON SIZE ERROR MOVE 'Y' TO FLD0687E.
           SUBTRACT FLD0688A        FROM FLD0688B.
           ADD FLD0689A        TO FLD0689B.
           SUBTRACT FLD0690A        FROM FLD0690B
               ON SIZE ERROR MOVE 'Y' TO FLD0690E.
           ADD FLD0691A        TO FLD0691B.
           SUBTRACT FLD0692A        FROM FLD0692B.
           ADD FLD0693A        TO FLD0693B
               ON SIZE ERROR MOVE 'Y' TO FLD0693E.
           SUBTRACT FLD0694A        FROM FLD0694B.
           ADD FLD0695A        TO FLD0695B.
           SUBTRACT FLD0696A        FROM FLD0696B
               ON SIZE ERROR MOVE 'Y' TO FLD0696E.
           ADD FLD0697A        TO FLD0697B.
           SUBTRACT FLD0698A        FROM FLD0698B.
           ADD FLD0699A        TO FLD0699B
               ON SIZE ERROR MOVE 'Y' TO FLD0699E.
           SUBTRACT FLD0700A        FROM FLD0700B.
           ADD FLD0701A        TO FLD0701B.
           SUBTRACT FLD0702A        FROM FLD0702B
               ON SIZE ERROR MOVE 'Y' TO FLD0702E.
           ADD FLD0703A        TO FLD0703B.
           SUBTRACT FLD0704A        FROM FLD0704B.
           ADD FLD0705A        TO FLD0705B
               ON SIZE ERROR MOVE 'Y' TO FLD0705E.
           SUBTRACT FLD0706A        FROM FLD0706B.
           ADD FLD0707A        TO FLD0707B.
           SUBTRACT FLD0708A        FROM FLD0708B
               ON SIZE ERROR MOVE 'Y' TO FLD0708E.
           ADD FLD0709A        TO FLD0709B.
           SUBTRACT FLD0710A        FROM FLD0710B.
           ADD FLD0711A        TO FLD0711B
               ON SIZE ERROR MOVE 'Y' TO FLD0711E.
           SUBTRACT FLD0712A        FROM FLD0712B.
           ADD FLD0713A        TO FLD0713B.
           SUBTRACT FLD0714A        FROM FLD0714B
               ON SIZE ERROR MOVE 'Y' TO FLD0714E.
           ADD FLD0715A        TO FLD0715B.
           SUBTRACT FLD0716A        FROM FLD0716B.
           ADD FLD0717A        TO FLD0717B
               ON SIZE ERROR MOVE 'Y' TO FLD0717E.
           SUBTRACT FLD0718A        FROM FLD0718B.
           ADD FLD0719A        TO FLD0719B.
           SUBTRACT FLD0720A        FROM FLD0720B
               ON SIZE ERROR MOVE 'Y' TO FLD0720E.
           ADD FLD0721A        TO FLD0721B.
           SUBTRACT FLD0722A        FROM FLD0722B.
           ADD FLD0723A        TO FLD0723B
               ON SIZE ERROR MOVE 'Y' TO FLD0723E.
           SUBTRACT FLD0724A        FROM FLD0724B.
           ADD FLD0725A        TO FLD0725B.
           SUBTRACT FLD0726A        FROM FLD0726B
               ON SIZE ERROR MOVE 'Y' TO FLD0726E.
           ADD FLD0727A        TO FLD0727B.
           SUBTRACT FLD0728A        FROM FLD0728B.
           ADD FLD0729A        TO FLD0729B
               ON SIZE ERROR MOVE 'Y' TO FLD0729E.
           SUBTRACT FLD0730A        FROM FLD0730B.
           ADD FLD0731A        TO FLD0731B.
           SUBTRACT FLD0732A        FROM FLD0732B
               ON SIZE ERROR MOVE 'Y' TO FLD0732E.
           ADD FLD0733A        TO FLD0733B.
           SUBTRACT FLD0734A        FROM FLD0734B.
           ADD FLD0735A        TO FLD0735B
               ON SIZE ERROR MOVE 'Y' TO FLD0735E.
           SUBTRACT FLD0736A        FROM FLD0736B.
           ADD FLD0737A        TO FLD0737B.
           SUBTRACT FLD0738A        FROM FLD0738B
               ON SIZE ERROR MOVE 'Y' TO FLD0738E.
           ADD FLD0739A        TO FLD0739B.
           SUBTRACT FLD0740A        FROM FLD0740B.
           ADD FLD0741A        TO FLD0741B
               ON SIZE ERROR MOVE 'Y' TO FLD0741E.
           SUBTRACT FLD0742A        FROM FLD0742B.
           ADD FLD0743A        TO FLD0743B.
           SUBTRACT FLD0744A        FROM FLD0744B
               ON SIZE ERROR MOVE 'Y' TO FLD0744E.
           ADD FLD0745A        TO FLD0745B.
           SUBTRACT FLD0746A        FROM FLD0746B.
           ADD FLD0747A        TO FLD0747B
               ON SIZE ERROR MOVE 'Y' TO FLD0747E.
           SUBTRACT FLD0748A        FROM FLD0748B.
           ADD FLD0749A        TO FLD0749B.
           SUBTRACT FLD0750A        FROM FLD0750B
               ON SIZE ERROR MOVE 'Y' TO FLD0750E.
           ADD FLD0751A        TO FLD0751B.
           SUBTRACT FLD0752A        FROM FLD0752B.
           ADD FLD0753A        TO FLD0753B
               ON SIZE ERROR MOVE 'Y' TO FLD0753E.
           SUBTRACT FLD0754A        FROM FLD0754B.
           ADD FLD0755A        TO FLD0755B.
           SUBTRACT FLD0756A        FROM FLD0756B
               ON SIZE ERROR MOVE 'Y' TO FLD0756E.
           ADD FLD0757A        TO FLD0757B.
           SUBTRACT FLD0758A        FROM FLD0758B.
           ADD FLD0759A        TO FLD0759B
               ON SIZE ERROR MOVE 'Y' TO FLD0759E.
           SUBTRACT FLD0760A        FROM FLD0760B.
           ADD FLD0761A        TO FLD0761B.
           SUBTRACT FLD0762A        FROM FLD0762B
               ON SIZE ERROR MOVE 'Y' TO FLD0762E.
           ADD FLD0763A        TO FLD0763B.
           SUBTRACT FLD0764A        FROM FLD0764B.
           ADD FLD0765A        TO FLD0765B
               ON SIZE ERROR MOVE 'Y' TO FLD0765E.
           SUBTRACT FLD0766A        FROM FLD0766B.
           ADD FLD0767A        TO FLD0767B.
           SUBTRACT FLD0768A        FROM FLD0768B
               ON SIZE ERROR MOVE 'Y' TO FLD0768E.
           ADD FLD0769A        TO FLD0769B.
           SUBTRACT FLD0770A        FROM FLD0770B.
           ADD FLD0771A        TO FLD0771B
               ON SIZE ERROR MOVE 'Y' TO FLD0771E.
           SUBTRACT FLD0772A        FROM FLD0772B.
           ADD FLD0773A        TO FLD0773B.
           SUBTRACT FLD0774A        FROM FLD0774B
               ON SIZE ERROR MOVE 'Y' TO FLD0774E.
           ADD FLD0775A        TO FLD0775B.
           SUBTRACT FLD0776A        FROM FLD0776B.
           ADD FLD0777A        TO FLD0777B
               ON SIZE ERROR MOVE 'Y' TO FLD0777E.
           SUBTRACT FLD0778A        FROM FLD0778B.
           ADD FLD0779A        TO FLD0779B.
           SUBTRACT FLD0780A        FROM FLD0780B
               ON SIZE ERROR MOVE 'Y' TO FLD0780E.
           ADD FLD0781A        TO FLD0781B.
           SUBTRACT FLD0782A        FROM FLD0782B.
           ADD FLD0783A        TO FLD0783B
               ON SIZE ERROR MOVE 'Y' TO FLD0783E.
           SUBTRACT FLD0784A        FROM FLD0784B.
           ADD FLD0785A        TO FLD0785B.
           SUBTRACT FLD0786A        FROM FLD0786B
               ON SIZE ERROR MOVE 'Y' TO FLD0786E.
           ADD FLD0787A        TO FLD0787B.
           SUBTRACT FLD0788A        FROM FLD0788B.
           ADD FLD0789A        TO FLD0789B
               ON SIZE ERROR MOVE 'Y' TO FLD0789E.
           SUBTRACT FLD0790A        FROM FLD0790B.
           ADD FLD0791A        TO FLD0791B.
           SUBTRACT FLD0792A        FROM FLD0792B
               ON SIZE ERROR MOVE 'Y' TO FLD0792E.
           ADD FLD0793A        TO FLD0793B.
           SUBTRACT FLD0794A        FROM FLD0794B.
           ADD FLD0795A        TO FLD0795B
               ON SIZE ERROR MOVE 'Y' TO FLD0795E.
           SUBTRACT FLD0796A        FROM FLD0796B.
           ADD FLD0797A        TO FLD0797B.
           SUBTRACT FLD0798A        FROM FLD0798B
               ON SIZE ERROR MOVE 'Y' TO FLD0798E.
           ADD FLD0799A        TO FLD0799B.
           SUBTRACT FLD0800A        FROM FLD0800B.
           ADD FLD0801A        TO FLD0801B
               ON SIZE ERROR MOVE 'Y' TO FLD0801E.
           SUBTRACT FLD0802A        FROM FLD0802B.
           ADD FLD0803A        TO FLD0803B.
           SUBTRACT FLD0804A        FROM FLD0804B
               ON SIZE ERROR MOVE 'Y' TO FLD0804E.
           ADD FLD0805A        TO FLD0805B.
           SUBTRACT FLD0806A        FROM FLD0806B.
           ADD FLD0807A        TO FLD0807B
               ON SIZE ERROR MOVE 'Y' TO FLD0807E.
           SUBTRACT FLD0808A        FROM FLD0808B.
           ADD FLD0809A        TO FLD0809B.
           SUBTRACT FLD0810A        FROM FLD0810B
               ON SIZE ERROR MOVE 'Y' TO FLD0810E.
           ADD FLD0811A        TO FLD0811B.
           SUBTRACT FLD0812A        FROM FLD0812B.
           ADD FLD0813A        TO FLD0813B
               ON SIZE ERROR MOVE 'Y' TO FLD0813E.
           SUBTRACT FLD0814A        FROM FLD0814B.
           ADD FLD0815A        TO FLD0815B.
           SUBTRACT FLD0816A        FROM FLD0816B
               ON SIZE ERROR MOVE 'Y' TO FLD0816E.
           ADD FLD0817A        TO FLD0817B.
           SUBTRACT FLD0818A        FROM FLD0818B.
           ADD FLD0819A        TO FLD0819B
               ON SIZE ERROR MOVE 'Y' TO FLD0819E.
           SUBTRACT FLD0820A        FROM FLD0820B.
           ADD FLD0821A        TO FLD0821B.
           SUBTRACT FLD0822A        FROM FLD0822B
               ON SIZE ERROR MOVE 'Y' TO FLD0822E.
           ADD FLD0823A        TO FLD0823B.
           SUBTRACT FLD0824A        FROM FLD0824B.
           ADD FLD0825A        TO FLD0825B
               ON SIZE ERROR MOVE 'Y' TO FLD0825E.
           SUBTRACT FLD0826A        FROM FLD0826B.
           ADD FLD0827A        TO FLD0827B.
           SUBTRACT FLD0828A        FROM FLD0828B
               ON SIZE ERROR MOVE 'Y' TO FLD0828E.
           ADD FLD0829A        TO FLD0829B.
           SUBTRACT FLD0830A        FROM FLD0830B.
           ADD FLD0831A        TO FLD0831B
               ON SIZE ERROR MOVE 'Y' TO FLD0831E.
           SUBTRACT FLD0832A        FROM FLD0832B.
           ADD FLD0833A        TO FLD0833B.
           SUBTRACT FLD0834A        FROM FLD0834B
               ON SIZE ERROR MOVE 'Y' TO FLD0834E.
           ADD FLD0835A        TO FLD0835B.
           SUBTRACT FLD0836A        FROM FLD0836B.
           ADD FLD0837A        TO FLD0837B
               ON SIZE ERROR MOVE 'Y' TO FLD0837E.
           SUBTRACT FLD0838A        FROM FLD0838B.
           ADD FLD0839A        TO FLD0839B.
           SUBTRACT FLD0840A        FROM FLD0840B
               ON SIZE ERROR MOVE 'Y' TO FLD0840E.
           ADD FLD0841A        TO FLD0841B.
           SUBTRACT FLD0842A        FROM FLD0842B.
           ADD FLD0843A        TO FLD0843B
               ON SIZE ERROR MOVE 'Y' TO FLD0843E.
           SUBTRACT FLD0844A        FROM FLD0844B.
           ADD FLD0845A        TO FLD0845B.
           SUBTRACT FLD0846A        FROM FLD0846B
               ON SIZE ERROR MOVE 'Y' TO FLD0846E.
           ADD FLD0847A        TO FLD0847B.
           SUBTRACT FLD0848A        FROM FLD0848B.
           ADD FLD0849A        TO FLD0849B
               ON SIZE ERROR MOVE 'Y' TO FLD0849E.
           SUBTRACT FLD0850A        FROM FLD0850B.
           ADD FLD0851A        TO FLD0851B.
           SUBTRACT FLD0852A        FROM FLD0852B
               ON SIZE ERROR MOVE 'Y' TO FLD0852E.
           ADD FLD0853A        TO FLD0853B.
           SUBTRACT FLD0854A        FROM FLD0854B.
           ADD FLD0855A        TO FLD0855B
               ON SIZE ERROR MOVE 'Y' TO FLD0855E.
           SUBTRACT FLD0856A        FROM FLD0856B.
           ADD FLD0857A        TO FLD0857B.
           SUBTRACT FLD0858A        FROM FLD0858B
               ON SIZE ERROR MOVE 'Y' TO FLD0858E.
           ADD FLD0859A        TO FLD0859B.
           SUBTRACT FLD0860A        FROM FLD0860B.
           ADD FLD0861A        TO FLD0861B
               ON SIZE ERROR MOVE 'Y' TO FLD0861E.
           SUBTRACT FLD0862A        FROM FLD0862B.
           ADD FLD0863A        TO FLD0863B.
           SUBTRACT FLD0864A        FROM FLD0864B
               ON SIZE ERROR MOVE 'Y' TO FLD0864E.
           ADD FLD0865A        TO FLD0865B.
           SUBTRACT FLD0866A        FROM FLD0866B.
           ADD FLD0867A        TO FLD0867B
               ON SIZE ERROR MOVE 'Y' TO FLD0867E.
           SUBTRACT FLD0868A        FROM FLD0868B.
           ADD FLD0869A        TO FLD0869B.
           SUBTRACT FLD0870A        FROM FLD0870B
               ON SIZE ERROR MOVE 'Y' TO FLD0870E.
           ADD FLD0871A        TO FLD0871B.
           SUBTRACT FLD0872A        FROM FLD0872B.
           ADD FLD0873A        TO FLD0873B
               ON SIZE ERROR MOVE 'Y' TO FLD0873E.
           SUBTRACT FLD0874A        FROM FLD0874B.
           ADD FLD0875A        TO FLD0875B.
           SUBTRACT FLD0876A        FROM FLD0876B
               ON SIZE ERROR MOVE 'Y' TO FLD0876E.
           ADD FLD0877A        TO FLD0877B.
           SUBTRACT FLD0878A        FROM FLD0878B.
           ADD FLD0879A        TO FLD0879B
               ON SIZE ERROR MOVE 'Y' TO FLD0879E.
           SUBTRACT FLD0880A        FROM FLD0880B.
           ADD FLD0881A        TO FLD0881B.
           SUBTRACT FLD0882A        FROM FLD0882B
               ON SIZE ERROR MOVE 'Y' TO FLD0882E.
           ADD FLD0883A        TO FLD0883B.
           SUBTRACT FLD0884A        FROM FLD0884B.
           ADD FLD0885A        TO FLD0885B
               ON SIZE ERROR MOVE 'Y' TO FLD0885E.
           SUBTRACT FLD0886A        FROM FLD0886B.
           ADD FLD0887A        TO FLD0887B.
           SUBTRACT FLD0888A        FROM FLD0888B
               ON SIZE ERROR MOVE 'Y' TO FLD0888E.
           ADD FLD0889A        TO FLD0889B.
           SUBTRACT FLD0890A        FROM FLD0890B.
           ADD FLD0891A        TO FLD0891B
               ON SIZE ERROR MOVE 'Y' TO FLD0891E.
           SUBTRACT FLD0892A        FROM FLD0892B.
           ADD FLD0893A        TO FLD0893B.
           SUBTRACT FLD0894A        FROM FLD0894B
               ON SIZE ERROR MOVE 'Y' TO FLD0894E.
           ADD FLD0895A        TO FLD0895B.
           SUBTRACT FLD0896A        FROM FLD0896B.
           ADD FLD0897A        TO FLD0897B
               ON SIZE ERROR MOVE 'Y' TO FLD0897E.
           SUBTRACT FLD0898A        FROM FLD0898B.
           ADD FLD0899A        TO FLD0899B.
           SUBTRACT FLD0900A        FROM FLD0900B
               ON SIZE ERROR MOVE 'Y' TO FLD0900E.
           ADD FLD0901A        TO FLD0901B.
           SUBTRACT FLD0902A        FROM FLD0902B.
           ADD FLD0903A        TO FLD0903B
               ON SIZE ERROR MOVE 'Y' TO FLD0903E.
           SUBTRACT FLD0904A        FROM FLD0904B.
           ADD FLD0905A        TO FLD0905B.
           SUBTRACT FLD0906A        FROM FLD0906B
               ON SIZE ERROR MOVE 'Y' TO FLD0906E.
           ADD FLD0907A        TO FLD0907B.
           SUBTRACT FLD0908A        FROM FLD0908B.
           ADD FLD0909A        TO FLD0909B
               ON SIZE ERROR MOVE 'Y' TO FLD0909E.
           SUBTRACT FLD0910A        FROM FLD0910B.
           ADD FLD0911A        TO FLD0911B.
           SUBTRACT FLD0912A        FROM FLD0912B
               ON SIZE ERROR MOVE 'Y' TO FLD0912E.
           ADD FLD0913A        TO FLD0913B.
           SUBTRACT FLD0914A        FROM FLD0914B.
           ADD FLD0915A        TO FLD0915B
               ON SIZE ERROR MOVE 'Y' TO FLD0915E.
           SUBTRACT FLD0916A        FROM FLD0916B.
           ADD FLD0917A        TO FLD0917B.
           SUBTRACT FLD0918A        FROM FLD0918B
               ON SIZE ERROR MOVE 'Y' TO FLD0918E.
           ADD FLD0919A        TO FLD0919B.
           SUBTRACT FLD0920A        FROM FLD0920B.
           ADD FLD0921A        TO FLD0921B
               ON SIZE ERROR MOVE 'Y' TO FLD0921E.
           SUBTRACT FLD0922A        FROM FLD0922B.
           ADD FLD0923A        TO FLD0923B.
           SUBTRACT FLD0924A        FROM FLD0924B
               ON SIZE ERROR MOVE 'Y' TO FLD0924E.
           ADD FLD0925A        TO FLD0925B.
           SUBTRACT FLD0926A        FROM FLD0926B.
           ADD FLD0927A        TO FLD0927B
               ON SIZE ERROR MOVE 'Y' TO FLD0927E.
           SUBTRACT FLD0928A        FROM FLD0928B.
           ADD FLD0929A        TO FLD0929B.
           SUBTRACT FLD0930A        FROM FLD0930B
               ON SIZE ERROR MOVE 'Y' TO FLD0930E.
           ADD FLD0931A        TO FLD0931B.
           SUBTRACT FLD0932A        FROM FLD0932B.
           ADD FLD0933A        TO FLD0933B
               ON SIZE ERROR MOVE 'Y' TO FLD0933E.
           SUBTRACT FLD0934A        FROM FLD0934B.
           ADD FLD0935A        TO FLD0935B.
           SUBTRACT FLD0936A        FROM FLD0936B
               ON SIZE ERROR MOVE 'Y' TO FLD0936E.
           ADD FLD0937A        TO FLD0937B.
           SUBTRACT FLD0938A        FROM FLD0938B.
           ADD FLD0939A        TO FLD0939B
               ON SIZE ERROR MOVE 'Y' TO FLD0939E.
           SUBTRACT FLD0940A        FROM FLD0940B.
           ADD FLD0941A        TO FLD0941B.
           SUBTRACT FLD0942A        FROM FLD0942B
               ON SIZE ERROR MOVE 'Y' TO FLD0942E.
           ADD FLD0943A        TO FLD0943B.
           SUBTRACT FLD0944A        FROM FLD0944B.
           ADD FLD0945A        TO FLD0945B
               ON SIZE ERROR MOVE 'Y' TO FLD0945E.
           SUBTRACT FLD0946A        FROM FLD0946B.
           ADD FLD0947A        TO FLD0947B.
           SUBTRACT FLD0948A        FROM FLD0948B
               ON SIZE ERROR MOVE 'Y' TO FLD0948E.
           ADD FLD0949A        TO FLD0949B.
           SUBTRACT FLD0950A        FROM FLD0950B.
           ADD FLD0951A        TO FLD0951B
               ON SIZE ERROR MOVE 'Y' TO FLD0951E.
           SUBTRACT FLD0952A        FROM FLD0952B.
           ADD FLD0953A        TO FLD0953B.
           SUBTRACT FLD0954A        FROM FLD0954B
               ON SIZE ERROR MOVE 'Y' TO FLD0954E.
           ADD FLD0955A        TO FLD0955B.
           SUBTRACT FLD0956A        FROM FLD0956B.
           ADD FLD0957A        TO FLD0957B
               ON SIZE ERROR MOVE 'Y' TO FLD0957E.
           SUBTRACT FLD0958A        FROM FLD0958B.
           ADD FLD0959A        TO FLD0959B.
           SUBTRACT FLD0960A        FROM FLD0960B
               ON SIZE ERROR MOVE 'Y' TO FLD0960E.
           ADD FLD0961A        TO FLD0961B.
           SUBTRACT FLD0962A        FROM FLD0962B.
           ADD FLD0963A        TO FLD0963B
               ON SIZE ERROR MOVE 'Y' TO FLD0963E.
           SUBTRACT FLD0964A        FROM FLD0964B.
           ADD FLD0965A        TO FLD0965B.
           SUBTRACT FLD0966A        FROM FLD0966B
               ON SIZE ERROR MOVE 'Y' TO FLD0966E.
           ADD FLD0967A        TO FLD0967B.
           SUBTRACT FLD0968A        FROM FLD0968B.
           ADD FLD0969A        TO FLD0969B
               ON SIZE ERROR MOVE 'Y' TO FLD0969E.
           SUBTRACT FLD0970A        FROM FLD0970B.
           ADD FLD0971A        TO FLD0971B.
           SUBTRACT FLD0972A        FROM FLD0972B
               ON SIZE ERROR MOVE 'Y' TO FLD0972E.
           ADD FLD0973A        TO FLD0973B.
           SUBTRACT FLD0974A        FROM FLD0974B.
           ADD FLD0975A        TO FLD0975B
               ON SIZE ERROR MOVE 'Y' TO FLD0975E.
           SUBTRACT FLD0976A        FROM FLD0976B.
           ADD FLD0977A        TO FLD0977B.
           SUBTRACT FLD0978A        FROM FLD0978B
               ON SIZE ERROR MOVE 'Y' TO FLD0978E.
           ADD FLD0979A        TO FLD0979B.
           SUBTRACT FLD0980A        FROM FLD0980B.
           ADD FLD0981A        TO FLD0981B
               ON SIZE ERROR MOVE 'Y' TO FLD0981E.
           SUBTRACT FLD0982A        FROM FLD0982B.
           ADD FLD0983A        TO FLD0983B.
           SUBTRACT FLD0984A        FROM FLD0984B
               ON SIZE ERROR MOVE 'Y' TO FLD0984E.
           ADD FLD0985A        TO FLD0985B.
           SUBTRACT FLD0986A        FROM FLD0986B.
           ADD FLD0987A        TO FLD0987B
               ON SIZE ERROR MOVE 'Y' TO FLD0987E.
           SUBTRACT FLD0988A        FROM FLD0988B.
           ADD FLD0989A        TO FLD0989B.
           SUBTRACT FLD0990A        FROM FLD0990B
               ON SIZE ERROR MOVE 'Y' TO FLD0990E.
           ADD FLD0991A        TO FLD0991B.
           SUBTRACT FLD0992A        FROM FLD0992B.
           ADD FLD0993A        TO FLD0993B
               ON SIZE ERROR MOVE 'Y' TO FLD0993E.
           SUBTRACT FLD0994A        FROM FLD0994B.
           ADD FLD0995A        TO FLD0995B.
           SUBTRACT FLD0996A        FROM FLD0996B
               ON SIZE ERROR MOVE 'Y' TO FLD0996E.
           ADD FLD0997A        TO FLD0997B.
           SUBTRACT FLD0998A        FROM FLD0998B.
           ADD FLD0999A        TO FLD0999B
               ON SIZE ERROR MOVE 'Y' TO FLD0999E.

      *4000-COMPARE.

           IF FLD0500B (1:)    NOT EQUAL XPC-FLD0500B
              DISPLAY 'FLD0500B ==> ' HEX-OF (FLD0500B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0500B).
           IF FLD0500E   NOT EQUAL XPC-FLD0500E
              DISPLAY 'FLD0500E  ==> ' FLD0500E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0500E.
           IF FLD0501B (1:)    NOT EQUAL XPC-FLD0501B
              DISPLAY 'FLD0501B ==> ' HEX-OF (FLD0501B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0501B).
           IF FLD0501E   NOT EQUAL XPC-FLD0501E
              DISPLAY 'FLD0501E  ==> ' FLD0501E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0501E.
           IF FLD0502B (1:)    NOT EQUAL XPC-FLD0502B
              DISPLAY 'FLD0502B ==> ' HEX-OF (FLD0502B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0502B).
           IF FLD0502E   NOT EQUAL XPC-FLD0502E
              DISPLAY 'FLD0502E  ==> ' FLD0502E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0502E.
           IF FLD0503B (1:)    NOT EQUAL XPC-FLD0503B
              DISPLAY 'FLD0503B ==> ' HEX-OF (FLD0503B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0503B).
           IF FLD0503E   NOT EQUAL XPC-FLD0503E
              DISPLAY 'FLD0503E  ==> ' FLD0503E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0503E.
           IF FLD0504B (1:)    NOT EQUAL XPC-FLD0504B
              DISPLAY 'FLD0504B ==> ' HEX-OF (FLD0504B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0504B).
           IF FLD0504E   NOT EQUAL XPC-FLD0504E
              DISPLAY 'FLD0504E  ==> ' FLD0504E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0504E.
           IF FLD0505B (1:)    NOT EQUAL XPC-FLD0505B
              DISPLAY 'FLD0505B ==> ' HEX-OF (FLD0505B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0505B).
           IF FLD0505E   NOT EQUAL XPC-FLD0505E
              DISPLAY 'FLD0505E  ==> ' FLD0505E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0505E.
           IF FLD0506B (1:)    NOT EQUAL XPC-FLD0506B
              DISPLAY 'FLD0506B ==> ' HEX-OF (FLD0506B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0506B).
           IF FLD0506E   NOT EQUAL XPC-FLD0506E
              DISPLAY 'FLD0506E  ==> ' FLD0506E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0506E.
           IF FLD0507B (1:)    NOT EQUAL XPC-FLD0507B
              DISPLAY 'FLD0507B ==> ' HEX-OF (FLD0507B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0507B).
           IF FLD0507E   NOT EQUAL XPC-FLD0507E
              DISPLAY 'FLD0507E  ==> ' FLD0507E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0507E.
           IF FLD0508B (1:)    NOT EQUAL XPC-FLD0508B
              DISPLAY 'FLD0508B ==> ' HEX-OF (FLD0508B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0508B).
           IF FLD0508E   NOT EQUAL XPC-FLD0508E
              DISPLAY 'FLD0508E  ==> ' FLD0508E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0508E.
           IF FLD0509B (1:)    NOT EQUAL XPC-FLD0509B
              DISPLAY 'FLD0509B ==> ' HEX-OF (FLD0509B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0509B).
           IF FLD0509E   NOT EQUAL XPC-FLD0509E
              DISPLAY 'FLD0509E  ==> ' FLD0509E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0509E.
           IF FLD0510B (1:)    NOT EQUAL XPC-FLD0510B
              DISPLAY 'FLD0510B ==> ' HEX-OF (FLD0510B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0510B).
           IF FLD0510E   NOT EQUAL XPC-FLD0510E
              DISPLAY 'FLD0510E  ==> ' FLD0510E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0510E.
           IF FLD0511B (1:)    NOT EQUAL XPC-FLD0511B
              DISPLAY 'FLD0511B ==> ' HEX-OF (FLD0511B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0511B).
           IF FLD0511E   NOT EQUAL XPC-FLD0511E
              DISPLAY 'FLD0511E  ==> ' FLD0511E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0511E.
           IF FLD0512B (1:)    NOT EQUAL XPC-FLD0512B
              DISPLAY 'FLD0512B ==> ' HEX-OF (FLD0512B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0512B).
           IF FLD0512E   NOT EQUAL XPC-FLD0512E
              DISPLAY 'FLD0512E  ==> ' FLD0512E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0512E.
           IF FLD0513B (1:)    NOT EQUAL XPC-FLD0513B
              DISPLAY 'FLD0513B ==> ' HEX-OF (FLD0513B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0513B).
           IF FLD0513E   NOT EQUAL XPC-FLD0513E
              DISPLAY 'FLD0513E  ==> ' FLD0513E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0513E.
           IF FLD0514B (1:)    NOT EQUAL XPC-FLD0514B
              DISPLAY 'FLD0514B ==> ' HEX-OF (FLD0514B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0514B).
           IF FLD0514E   NOT EQUAL XPC-FLD0514E
              DISPLAY 'FLD0514E  ==> ' FLD0514E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0514E.
           IF FLD0515B (1:)    NOT EQUAL XPC-FLD0515B
              DISPLAY 'FLD0515B ==> ' HEX-OF (FLD0515B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0515B).
           IF FLD0515E   NOT EQUAL XPC-FLD0515E
              DISPLAY 'FLD0515E  ==> ' FLD0515E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0515E.
           IF FLD0516B (1:)    NOT EQUAL XPC-FLD0516B
              DISPLAY 'FLD0516B ==> ' HEX-OF (FLD0516B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0516B).
           IF FLD0516E   NOT EQUAL XPC-FLD0516E
              DISPLAY 'FLD0516E  ==> ' FLD0516E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0516E.
           IF FLD0517B (1:)    NOT EQUAL XPC-FLD0517B
              DISPLAY 'FLD0517B ==> ' HEX-OF (FLD0517B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0517B).
           IF FLD0517E   NOT EQUAL XPC-FLD0517E
              DISPLAY 'FLD0517E  ==> ' FLD0517E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0517E.
           IF FLD0518B (1:)    NOT EQUAL XPC-FLD0518B
              DISPLAY 'FLD0518B ==> ' HEX-OF (FLD0518B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0518B).
           IF FLD0518E   NOT EQUAL XPC-FLD0518E
              DISPLAY 'FLD0518E  ==> ' FLD0518E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0518E.
           IF FLD0519B (1:)    NOT EQUAL XPC-FLD0519B
              DISPLAY 'FLD0519B ==> ' HEX-OF (FLD0519B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0519B).
           IF FLD0519E   NOT EQUAL XPC-FLD0519E
              DISPLAY 'FLD0519E  ==> ' FLD0519E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0519E.
           IF FLD0520B (1:)    NOT EQUAL XPC-FLD0520B
              DISPLAY 'FLD0520B ==> ' HEX-OF (FLD0520B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0520B).
           IF FLD0520E   NOT EQUAL XPC-FLD0520E
              DISPLAY 'FLD0520E  ==> ' FLD0520E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0520E.
           IF FLD0521B (1:)    NOT EQUAL XPC-FLD0521B
              DISPLAY 'FLD0521B ==> ' HEX-OF (FLD0521B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0521B).
           IF FLD0521E   NOT EQUAL XPC-FLD0521E
              DISPLAY 'FLD0521E  ==> ' FLD0521E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0521E.
           IF FLD0522B (1:)    NOT EQUAL XPC-FLD0522B
              DISPLAY 'FLD0522B ==> ' HEX-OF (FLD0522B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0522B).
           IF FLD0522E   NOT EQUAL XPC-FLD0522E
              DISPLAY 'FLD0522E  ==> ' FLD0522E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0522E.
           IF FLD0523B (1:)    NOT EQUAL XPC-FLD0523B
              DISPLAY 'FLD0523B ==> ' HEX-OF (FLD0523B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0523B).
           IF FLD0523E   NOT EQUAL XPC-FLD0523E
              DISPLAY 'FLD0523E  ==> ' FLD0523E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0523E.
           IF FLD0524B (1:)    NOT EQUAL XPC-FLD0524B
              DISPLAY 'FLD0524B ==> ' HEX-OF (FLD0524B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0524B).
           IF FLD0524E   NOT EQUAL XPC-FLD0524E
              DISPLAY 'FLD0524E  ==> ' FLD0524E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0524E.
           IF FLD0525B (1:)    NOT EQUAL XPC-FLD0525B
              DISPLAY 'FLD0525B ==> ' HEX-OF (FLD0525B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0525B).
           IF FLD0525E   NOT EQUAL XPC-FLD0525E
              DISPLAY 'FLD0525E  ==> ' FLD0525E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0525E.
           IF FLD0526B (1:)    NOT EQUAL XPC-FLD0526B
              DISPLAY 'FLD0526B ==> ' HEX-OF (FLD0526B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0526B).
           IF FLD0526E   NOT EQUAL XPC-FLD0526E
              DISPLAY 'FLD0526E  ==> ' FLD0526E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0526E.
           IF FLD0527B (1:)    NOT EQUAL XPC-FLD0527B
              DISPLAY 'FLD0527B ==> ' HEX-OF (FLD0527B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0527B).
           IF FLD0527E   NOT EQUAL XPC-FLD0527E
              DISPLAY 'FLD0527E  ==> ' FLD0527E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0527E.
           IF FLD0528B (1:)    NOT EQUAL XPC-FLD0528B
              DISPLAY 'FLD0528B ==> ' HEX-OF (FLD0528B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0528B).
           IF FLD0528E   NOT EQUAL XPC-FLD0528E
              DISPLAY 'FLD0528E  ==> ' FLD0528E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0528E.
           IF FLD0529B (1:)    NOT EQUAL XPC-FLD0529B
              DISPLAY 'FLD0529B ==> ' HEX-OF (FLD0529B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0529B).
           IF FLD0529E   NOT EQUAL XPC-FLD0529E
              DISPLAY 'FLD0529E  ==> ' FLD0529E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0529E.
           IF FLD0530B (1:)    NOT EQUAL XPC-FLD0530B
              DISPLAY 'FLD0530B ==> ' HEX-OF (FLD0530B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0530B).
           IF FLD0530E   NOT EQUAL XPC-FLD0530E
              DISPLAY 'FLD0530E  ==> ' FLD0530E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0530E.
           IF FLD0531B (1:)    NOT EQUAL XPC-FLD0531B
              DISPLAY 'FLD0531B ==> ' HEX-OF (FLD0531B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0531B).
           IF FLD0531E   NOT EQUAL XPC-FLD0531E
              DISPLAY 'FLD0531E  ==> ' FLD0531E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0531E.
           IF FLD0532B (1:)    NOT EQUAL XPC-FLD0532B
              DISPLAY 'FLD0532B ==> ' HEX-OF (FLD0532B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0532B).
           IF FLD0532E   NOT EQUAL XPC-FLD0532E
              DISPLAY 'FLD0532E  ==> ' FLD0532E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0532E.
           IF FLD0533B (1:)    NOT EQUAL XPC-FLD0533B
              DISPLAY 'FLD0533B ==> ' HEX-OF (FLD0533B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0533B).
           IF FLD0533E   NOT EQUAL XPC-FLD0533E
              DISPLAY 'FLD0533E  ==> ' FLD0533E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0533E.
           IF FLD0534B (1:)    NOT EQUAL XPC-FLD0534B
              DISPLAY 'FLD0534B ==> ' HEX-OF (FLD0534B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0534B).
           IF FLD0534E   NOT EQUAL XPC-FLD0534E
              DISPLAY 'FLD0534E  ==> ' FLD0534E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0534E.
           IF FLD0535B (1:)    NOT EQUAL XPC-FLD0535B
              DISPLAY 'FLD0535B ==> ' HEX-OF (FLD0535B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0535B).
           IF FLD0535E   NOT EQUAL XPC-FLD0535E
              DISPLAY 'FLD0535E  ==> ' FLD0535E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0535E.
           IF FLD0536B (1:)    NOT EQUAL XPC-FLD0536B
              DISPLAY 'FLD0536B ==> ' HEX-OF (FLD0536B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0536B).
           IF FLD0536E   NOT EQUAL XPC-FLD0536E
              DISPLAY 'FLD0536E  ==> ' FLD0536E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0536E.
           IF FLD0537B (1:)    NOT EQUAL XPC-FLD0537B
              DISPLAY 'FLD0537B ==> ' HEX-OF (FLD0537B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0537B).
           IF FLD0537E   NOT EQUAL XPC-FLD0537E
              DISPLAY 'FLD0537E  ==> ' FLD0537E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0537E.
           IF FLD0538B (1:)    NOT EQUAL XPC-FLD0538B
              DISPLAY 'FLD0538B ==> ' HEX-OF (FLD0538B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0538B).
           IF FLD0538E   NOT EQUAL XPC-FLD0538E
              DISPLAY 'FLD0538E  ==> ' FLD0538E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0538E.
           IF FLD0539B (1:)    NOT EQUAL XPC-FLD0539B
              DISPLAY 'FLD0539B ==> ' HEX-OF (FLD0539B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0539B).
           IF FLD0539E   NOT EQUAL XPC-FLD0539E
              DISPLAY 'FLD0539E  ==> ' FLD0539E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0539E.
           IF FLD0540B (1:)    NOT EQUAL XPC-FLD0540B
              DISPLAY 'FLD0540B ==> ' HEX-OF (FLD0540B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0540B).
           IF FLD0540E   NOT EQUAL XPC-FLD0540E
              DISPLAY 'FLD0540E  ==> ' FLD0540E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0540E.
           IF FLD0541B (1:)    NOT EQUAL XPC-FLD0541B
              DISPLAY 'FLD0541B ==> ' HEX-OF (FLD0541B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0541B).
           IF FLD0541E   NOT EQUAL XPC-FLD0541E
              DISPLAY 'FLD0541E  ==> ' FLD0541E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0541E.
           IF FLD0542B (1:)    NOT EQUAL XPC-FLD0542B
              DISPLAY 'FLD0542B ==> ' HEX-OF (FLD0542B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0542B).
           IF FLD0542E   NOT EQUAL XPC-FLD0542E
              DISPLAY 'FLD0542E  ==> ' FLD0542E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0542E.
           IF FLD0543B (1:)    NOT EQUAL XPC-FLD0543B
              DISPLAY 'FLD0543B ==> ' HEX-OF (FLD0543B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0543B).
           IF FLD0543E   NOT EQUAL XPC-FLD0543E
              DISPLAY 'FLD0543E  ==> ' FLD0543E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0543E.
           IF FLD0544B (1:)    NOT EQUAL XPC-FLD0544B
              DISPLAY 'FLD0544B ==> ' HEX-OF (FLD0544B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0544B).
           IF FLD0544E   NOT EQUAL XPC-FLD0544E
              DISPLAY 'FLD0544E  ==> ' FLD0544E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0544E.
           IF FLD0545B (1:)    NOT EQUAL XPC-FLD0545B
              DISPLAY 'FLD0545B ==> ' HEX-OF (FLD0545B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0545B).
           IF FLD0545E   NOT EQUAL XPC-FLD0545E
              DISPLAY 'FLD0545E  ==> ' FLD0545E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0545E.
           IF FLD0546B (1:)    NOT EQUAL XPC-FLD0546B
              DISPLAY 'FLD0546B ==> ' HEX-OF (FLD0546B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0546B).
           IF FLD0546E   NOT EQUAL XPC-FLD0546E
              DISPLAY 'FLD0546E  ==> ' FLD0546E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0546E.
           IF FLD0547B (1:)    NOT EQUAL XPC-FLD0547B
              DISPLAY 'FLD0547B ==> ' HEX-OF (FLD0547B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0547B).
           IF FLD0547E   NOT EQUAL XPC-FLD0547E
              DISPLAY 'FLD0547E  ==> ' FLD0547E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0547E.
           IF FLD0548B (1:)    NOT EQUAL XPC-FLD0548B
              DISPLAY 'FLD0548B ==> ' HEX-OF (FLD0548B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0548B).
           IF FLD0548E   NOT EQUAL XPC-FLD0548E
              DISPLAY 'FLD0548E  ==> ' FLD0548E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0548E.
           IF FLD0549B (1:)    NOT EQUAL XPC-FLD0549B
              DISPLAY 'FLD0549B ==> ' HEX-OF (FLD0549B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0549B).
           IF FLD0549E   NOT EQUAL XPC-FLD0549E
              DISPLAY 'FLD0549E  ==> ' FLD0549E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0549E.
           IF FLD0550B (1:)    NOT EQUAL XPC-FLD0550B
              DISPLAY 'FLD0550B ==> ' HEX-OF (FLD0550B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0550B).
           IF FLD0550E   NOT EQUAL XPC-FLD0550E
              DISPLAY 'FLD0550E  ==> ' FLD0550E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0550E.
           IF FLD0551B (1:)    NOT EQUAL XPC-FLD0551B
              DISPLAY 'FLD0551B ==> ' HEX-OF (FLD0551B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0551B).
           IF FLD0551E   NOT EQUAL XPC-FLD0551E
              DISPLAY 'FLD0551E  ==> ' FLD0551E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0551E.
           IF FLD0552B (1:)    NOT EQUAL XPC-FLD0552B
              DISPLAY 'FLD0552B ==> ' HEX-OF (FLD0552B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0552B).
           IF FLD0552E   NOT EQUAL XPC-FLD0552E
              DISPLAY 'FLD0552E  ==> ' FLD0552E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0552E.
           IF FLD0553B (1:)    NOT EQUAL XPC-FLD0553B
              DISPLAY 'FLD0553B ==> ' HEX-OF (FLD0553B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0553B).
           IF FLD0553E   NOT EQUAL XPC-FLD0553E
              DISPLAY 'FLD0553E  ==> ' FLD0553E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0553E.
           IF FLD0554B (1:)    NOT EQUAL XPC-FLD0554B
              DISPLAY 'FLD0554B ==> ' HEX-OF (FLD0554B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0554B).
           IF FLD0554E   NOT EQUAL XPC-FLD0554E
              DISPLAY 'FLD0554E  ==> ' FLD0554E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0554E.
           IF FLD0555B (1:)    NOT EQUAL XPC-FLD0555B
              DISPLAY 'FLD0555B ==> ' HEX-OF (FLD0555B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0555B).
           IF FLD0555E   NOT EQUAL XPC-FLD0555E
              DISPLAY 'FLD0555E  ==> ' FLD0555E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0555E.
           IF FLD0556B (1:)    NOT EQUAL XPC-FLD0556B
              DISPLAY 'FLD0556B ==> ' HEX-OF (FLD0556B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0556B).
           IF FLD0556E   NOT EQUAL XPC-FLD0556E
              DISPLAY 'FLD0556E  ==> ' FLD0556E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0556E.
           IF FLD0557B (1:)    NOT EQUAL XPC-FLD0557B
              DISPLAY 'FLD0557B ==> ' HEX-OF (FLD0557B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0557B).
           IF FLD0557E   NOT EQUAL XPC-FLD0557E
              DISPLAY 'FLD0557E  ==> ' FLD0557E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0557E.
           IF FLD0558B (1:)    NOT EQUAL XPC-FLD0558B
              DISPLAY 'FLD0558B ==> ' HEX-OF (FLD0558B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0558B).
           IF FLD0558E   NOT EQUAL XPC-FLD0558E
              DISPLAY 'FLD0558E  ==> ' FLD0558E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0558E.
           IF FLD0559B (1:)    NOT EQUAL XPC-FLD0559B
              DISPLAY 'FLD0559B ==> ' HEX-OF (FLD0559B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0559B).
           IF FLD0559E   NOT EQUAL XPC-FLD0559E
              DISPLAY 'FLD0559E  ==> ' FLD0559E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0559E.
           IF FLD0560B (1:)    NOT EQUAL XPC-FLD0560B
              DISPLAY 'FLD0560B ==> ' HEX-OF (FLD0560B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0560B).
           IF FLD0560E   NOT EQUAL XPC-FLD0560E
              DISPLAY 'FLD0560E  ==> ' FLD0560E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0560E.
           IF FLD0561B (1:)    NOT EQUAL XPC-FLD0561B
              DISPLAY 'FLD0561B ==> ' HEX-OF (FLD0561B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0561B).
           IF FLD0561E   NOT EQUAL XPC-FLD0561E
              DISPLAY 'FLD0561E  ==> ' FLD0561E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0561E.
           IF FLD0562B (1:)    NOT EQUAL XPC-FLD0562B
              DISPLAY 'FLD0562B ==> ' HEX-OF (FLD0562B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0562B).
           IF FLD0562E   NOT EQUAL XPC-FLD0562E
              DISPLAY 'FLD0562E  ==> ' FLD0562E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0562E.
           IF FLD0563B (1:)    NOT EQUAL XPC-FLD0563B
              DISPLAY 'FLD0563B ==> ' HEX-OF (FLD0563B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0563B).
           IF FLD0563E   NOT EQUAL XPC-FLD0563E
              DISPLAY 'FLD0563E  ==> ' FLD0563E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0563E.
           IF FLD0564B (1:)    NOT EQUAL XPC-FLD0564B
              DISPLAY 'FLD0564B ==> ' HEX-OF (FLD0564B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0564B).
           IF FLD0564E   NOT EQUAL XPC-FLD0564E
              DISPLAY 'FLD0564E  ==> ' FLD0564E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0564E.
           IF FLD0565B (1:)    NOT EQUAL XPC-FLD0565B
              DISPLAY 'FLD0565B ==> ' HEX-OF (FLD0565B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0565B).
           IF FLD0565E   NOT EQUAL XPC-FLD0565E
              DISPLAY 'FLD0565E  ==> ' FLD0565E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0565E.
           IF FLD0566B (1:)    NOT EQUAL XPC-FLD0566B
              DISPLAY 'FLD0566B ==> ' HEX-OF (FLD0566B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0566B).
           IF FLD0566E   NOT EQUAL XPC-FLD0566E
              DISPLAY 'FLD0566E  ==> ' FLD0566E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0566E.
           IF FLD0567B (1:)    NOT EQUAL XPC-FLD0567B
              DISPLAY 'FLD0567B ==> ' HEX-OF (FLD0567B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0567B).
           IF FLD0567E   NOT EQUAL XPC-FLD0567E
              DISPLAY 'FLD0567E  ==> ' FLD0567E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0567E.
           IF FLD0568B (1:)    NOT EQUAL XPC-FLD0568B
              DISPLAY 'FLD0568B ==> ' HEX-OF (FLD0568B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0568B).
           IF FLD0568E   NOT EQUAL XPC-FLD0568E
              DISPLAY 'FLD0568E  ==> ' FLD0568E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0568E.
           IF FLD0569B (1:)    NOT EQUAL XPC-FLD0569B
              DISPLAY 'FLD0569B ==> ' HEX-OF (FLD0569B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0569B).
           IF FLD0569E   NOT EQUAL XPC-FLD0569E
              DISPLAY 'FLD0569E  ==> ' FLD0569E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0569E.
           IF FLD0570B (1:)    NOT EQUAL XPC-FLD0570B
              DISPLAY 'FLD0570B ==> ' HEX-OF (FLD0570B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0570B).
           IF FLD0570E   NOT EQUAL XPC-FLD0570E
              DISPLAY 'FLD0570E  ==> ' FLD0570E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0570E.
           IF FLD0571B (1:)    NOT EQUAL XPC-FLD0571B
              DISPLAY 'FLD0571B ==> ' HEX-OF (FLD0571B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0571B).
           IF FLD0571E   NOT EQUAL XPC-FLD0571E
              DISPLAY 'FLD0571E  ==> ' FLD0571E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0571E.
           IF FLD0572B (1:)    NOT EQUAL XPC-FLD0572B
              DISPLAY 'FLD0572B ==> ' HEX-OF (FLD0572B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0572B).
           IF FLD0572E   NOT EQUAL XPC-FLD0572E
              DISPLAY 'FLD0572E  ==> ' FLD0572E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0572E.
           IF FLD0573B (1:)    NOT EQUAL XPC-FLD0573B
              DISPLAY 'FLD0573B ==> ' HEX-OF (FLD0573B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0573B).
           IF FLD0573E   NOT EQUAL XPC-FLD0573E
              DISPLAY 'FLD0573E  ==> ' FLD0573E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0573E.
           IF FLD0574B (1:)    NOT EQUAL XPC-FLD0574B
              DISPLAY 'FLD0574B ==> ' HEX-OF (FLD0574B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0574B).
           IF FLD0574E   NOT EQUAL XPC-FLD0574E
              DISPLAY 'FLD0574E  ==> ' FLD0574E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0574E.
           IF FLD0575B (1:)    NOT EQUAL XPC-FLD0575B
              DISPLAY 'FLD0575B ==> ' HEX-OF (FLD0575B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0575B).
           IF FLD0575E   NOT EQUAL XPC-FLD0575E
              DISPLAY 'FLD0575E  ==> ' FLD0575E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0575E.
           IF FLD0576B (1:)    NOT EQUAL XPC-FLD0576B
              DISPLAY 'FLD0576B ==> ' HEX-OF (FLD0576B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0576B).
           IF FLD0576E   NOT EQUAL XPC-FLD0576E
              DISPLAY 'FLD0576E  ==> ' FLD0576E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0576E.
           IF FLD0577B (1:)    NOT EQUAL XPC-FLD0577B
              DISPLAY 'FLD0577B ==> ' HEX-OF (FLD0577B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0577B).
           IF FLD0577E   NOT EQUAL XPC-FLD0577E
              DISPLAY 'FLD0577E  ==> ' FLD0577E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0577E.
           IF FLD0578B (1:)    NOT EQUAL XPC-FLD0578B
              DISPLAY 'FLD0578B ==> ' HEX-OF (FLD0578B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0578B).
           IF FLD0578E   NOT EQUAL XPC-FLD0578E
              DISPLAY 'FLD0578E  ==> ' FLD0578E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0578E.
           IF FLD0579B (1:)    NOT EQUAL XPC-FLD0579B
              DISPLAY 'FLD0579B ==> ' HEX-OF (FLD0579B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0579B).
           IF FLD0579E   NOT EQUAL XPC-FLD0579E
              DISPLAY 'FLD0579E  ==> ' FLD0579E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0579E.
           IF FLD0580B (1:)    NOT EQUAL XPC-FLD0580B
              DISPLAY 'FLD0580B ==> ' HEX-OF (FLD0580B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0580B).
           IF FLD0580E   NOT EQUAL XPC-FLD0580E
              DISPLAY 'FLD0580E  ==> ' FLD0580E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0580E.
           IF FLD0581B (1:)    NOT EQUAL XPC-FLD0581B
              DISPLAY 'FLD0581B ==> ' HEX-OF (FLD0581B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0581B).
           IF FLD0581E   NOT EQUAL XPC-FLD0581E
              DISPLAY 'FLD0581E  ==> ' FLD0581E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0581E.
           IF FLD0582B (1:)    NOT EQUAL XPC-FLD0582B
              DISPLAY 'FLD0582B ==> ' HEX-OF (FLD0582B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0582B).
           IF FLD0582E   NOT EQUAL XPC-FLD0582E
              DISPLAY 'FLD0582E  ==> ' FLD0582E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0582E.
           IF FLD0583B (1:)    NOT EQUAL XPC-FLD0583B
              DISPLAY 'FLD0583B ==> ' HEX-OF (FLD0583B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0583B).
           IF FLD0583E   NOT EQUAL XPC-FLD0583E
              DISPLAY 'FLD0583E  ==> ' FLD0583E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0583E.
           IF FLD0584B (1:)    NOT EQUAL XPC-FLD0584B
              DISPLAY 'FLD0584B ==> ' HEX-OF (FLD0584B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0584B).
           IF FLD0584E   NOT EQUAL XPC-FLD0584E
              DISPLAY 'FLD0584E  ==> ' FLD0584E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0584E.
           IF FLD0585B (1:)    NOT EQUAL XPC-FLD0585B
              DISPLAY 'FLD0585B ==> ' HEX-OF (FLD0585B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0585B).
           IF FLD0585E   NOT EQUAL XPC-FLD0585E
              DISPLAY 'FLD0585E  ==> ' FLD0585E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0585E.
           IF FLD0586B (1:)    NOT EQUAL XPC-FLD0586B
              DISPLAY 'FLD0586B ==> ' HEX-OF (FLD0586B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0586B).
           IF FLD0586E   NOT EQUAL XPC-FLD0586E
              DISPLAY 'FLD0586E  ==> ' FLD0586E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0586E.
           IF FLD0587B (1:)    NOT EQUAL XPC-FLD0587B
              DISPLAY 'FLD0587B ==> ' HEX-OF (FLD0587B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0587B).
           IF FLD0587E   NOT EQUAL XPC-FLD0587E
              DISPLAY 'FLD0587E  ==> ' FLD0587E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0587E.
           IF FLD0588B (1:)    NOT EQUAL XPC-FLD0588B
              DISPLAY 'FLD0588B ==> ' HEX-OF (FLD0588B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0588B).
           IF FLD0588E   NOT EQUAL XPC-FLD0588E
              DISPLAY 'FLD0588E  ==> ' FLD0588E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0588E.
           IF FLD0589B (1:)    NOT EQUAL XPC-FLD0589B
              DISPLAY 'FLD0589B ==> ' HEX-OF (FLD0589B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0589B).
           IF FLD0589E   NOT EQUAL XPC-FLD0589E
              DISPLAY 'FLD0589E  ==> ' FLD0589E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0589E.
           IF FLD0590B (1:)    NOT EQUAL XPC-FLD0590B
              DISPLAY 'FLD0590B ==> ' HEX-OF (FLD0590B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0590B).
           IF FLD0590E   NOT EQUAL XPC-FLD0590E
              DISPLAY 'FLD0590E  ==> ' FLD0590E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0590E.
           IF FLD0591B (1:)    NOT EQUAL XPC-FLD0591B
              DISPLAY 'FLD0591B ==> ' HEX-OF (FLD0591B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0591B).
           IF FLD0591E   NOT EQUAL XPC-FLD0591E
              DISPLAY 'FLD0591E  ==> ' FLD0591E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0591E.
           IF FLD0592B (1:)    NOT EQUAL XPC-FLD0592B
              DISPLAY 'FLD0592B ==> ' HEX-OF (FLD0592B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0592B).
           IF FLD0592E   NOT EQUAL XPC-FLD0592E
              DISPLAY 'FLD0592E  ==> ' FLD0592E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0592E.
           IF FLD0593B (1:)    NOT EQUAL XPC-FLD0593B
              DISPLAY 'FLD0593B ==> ' HEX-OF (FLD0593B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0593B).
           IF FLD0593E   NOT EQUAL XPC-FLD0593E
              DISPLAY 'FLD0593E  ==> ' FLD0593E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0593E.
           IF FLD0594B (1:)    NOT EQUAL XPC-FLD0594B
              DISPLAY 'FLD0594B ==> ' HEX-OF (FLD0594B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0594B).
           IF FLD0594E   NOT EQUAL XPC-FLD0594E
              DISPLAY 'FLD0594E  ==> ' FLD0594E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0594E.
           IF FLD0595B (1:)    NOT EQUAL XPC-FLD0595B
              DISPLAY 'FLD0595B ==> ' HEX-OF (FLD0595B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0595B).
           IF FLD0595E   NOT EQUAL XPC-FLD0595E
              DISPLAY 'FLD0595E  ==> ' FLD0595E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0595E.
           IF FLD0596B (1:)    NOT EQUAL XPC-FLD0596B
              DISPLAY 'FLD0596B ==> ' HEX-OF (FLD0596B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0596B).
           IF FLD0596E   NOT EQUAL XPC-FLD0596E
              DISPLAY 'FLD0596E  ==> ' FLD0596E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0596E.
           IF FLD0597B (1:)    NOT EQUAL XPC-FLD0597B
              DISPLAY 'FLD0597B ==> ' HEX-OF (FLD0597B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0597B).
           IF FLD0597E   NOT EQUAL XPC-FLD0597E
              DISPLAY 'FLD0597E  ==> ' FLD0597E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0597E.
           IF FLD0598B (1:)    NOT EQUAL XPC-FLD0598B
              DISPLAY 'FLD0598B ==> ' HEX-OF (FLD0598B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0598B).
           IF FLD0598E   NOT EQUAL XPC-FLD0598E
              DISPLAY 'FLD0598E  ==> ' FLD0598E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0598E.
           IF FLD0599B (1:)    NOT EQUAL XPC-FLD0599B
              DISPLAY 'FLD0599B ==> ' HEX-OF (FLD0599B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0599B).
           IF FLD0599E   NOT EQUAL XPC-FLD0599E
              DISPLAY 'FLD0599E  ==> ' FLD0599E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0599E.
           IF FLD0600B (1:)    NOT EQUAL XPC-FLD0600B
              DISPLAY 'FLD0600B ==> ' HEX-OF (FLD0600B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0600B).
           IF FLD0600E   NOT EQUAL XPC-FLD0600E
              DISPLAY 'FLD0600E  ==> ' FLD0600E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0600E.
           IF FLD0601B (1:)    NOT EQUAL XPC-FLD0601B
              DISPLAY 'FLD0601B ==> ' HEX-OF (FLD0601B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0601B).
           IF FLD0601E   NOT EQUAL XPC-FLD0601E
              DISPLAY 'FLD0601E  ==> ' FLD0601E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0601E.
           IF FLD0602B (1:)    NOT EQUAL XPC-FLD0602B
              DISPLAY 'FLD0602B ==> ' HEX-OF (FLD0602B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0602B).
           IF FLD0602E   NOT EQUAL XPC-FLD0602E
              DISPLAY 'FLD0602E  ==> ' FLD0602E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0602E.
           IF FLD0603B (1:)    NOT EQUAL XPC-FLD0603B
              DISPLAY 'FLD0603B ==> ' HEX-OF (FLD0603B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0603B).
           IF FLD0603E   NOT EQUAL XPC-FLD0603E
              DISPLAY 'FLD0603E  ==> ' FLD0603E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0603E.
           IF FLD0604B (1:)    NOT EQUAL XPC-FLD0604B
              DISPLAY 'FLD0604B ==> ' HEX-OF (FLD0604B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0604B).
           IF FLD0604E   NOT EQUAL XPC-FLD0604E
              DISPLAY 'FLD0604E  ==> ' FLD0604E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0604E.
           IF FLD0605B (1:)    NOT EQUAL XPC-FLD0605B
              DISPLAY 'FLD0605B ==> ' HEX-OF (FLD0605B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0605B).
           IF FLD0605E   NOT EQUAL XPC-FLD0605E
              DISPLAY 'FLD0605E  ==> ' FLD0605E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0605E.
           IF FLD0606B (1:)    NOT EQUAL XPC-FLD0606B
              DISPLAY 'FLD0606B ==> ' HEX-OF (FLD0606B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0606B).
           IF FLD0606E   NOT EQUAL XPC-FLD0606E
              DISPLAY 'FLD0606E  ==> ' FLD0606E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0606E.
           IF FLD0607B (1:)    NOT EQUAL XPC-FLD0607B
              DISPLAY 'FLD0607B ==> ' HEX-OF (FLD0607B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0607B).
           IF FLD0607E   NOT EQUAL XPC-FLD0607E
              DISPLAY 'FLD0607E  ==> ' FLD0607E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0607E.
           IF FLD0608B (1:)    NOT EQUAL XPC-FLD0608B
              DISPLAY 'FLD0608B ==> ' HEX-OF (FLD0608B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0608B).
           IF FLD0608E   NOT EQUAL XPC-FLD0608E
              DISPLAY 'FLD0608E  ==> ' FLD0608E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0608E.
           IF FLD0609B (1:)    NOT EQUAL XPC-FLD0609B
              DISPLAY 'FLD0609B ==> ' HEX-OF (FLD0609B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0609B).
           IF FLD0609E   NOT EQUAL XPC-FLD0609E
              DISPLAY 'FLD0609E  ==> ' FLD0609E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0609E.
           IF FLD0610B (1:)    NOT EQUAL XPC-FLD0610B
              DISPLAY 'FLD0610B ==> ' HEX-OF (FLD0610B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0610B).
           IF FLD0610E   NOT EQUAL XPC-FLD0610E
              DISPLAY 'FLD0610E  ==> ' FLD0610E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0610E.
           IF FLD0611B (1:)    NOT EQUAL XPC-FLD0611B
              DISPLAY 'FLD0611B ==> ' HEX-OF (FLD0611B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0611B).
           IF FLD0611E   NOT EQUAL XPC-FLD0611E
              DISPLAY 'FLD0611E  ==> ' FLD0611E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0611E.
           IF FLD0612B (1:)    NOT EQUAL XPC-FLD0612B
              DISPLAY 'FLD0612B ==> ' HEX-OF (FLD0612B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0612B).
           IF FLD0612E   NOT EQUAL XPC-FLD0612E
              DISPLAY 'FLD0612E  ==> ' FLD0612E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0612E.
           IF FLD0613B (1:)    NOT EQUAL XPC-FLD0613B
              DISPLAY 'FLD0613B ==> ' HEX-OF (FLD0613B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0613B).
           IF FLD0613E   NOT EQUAL XPC-FLD0613E
              DISPLAY 'FLD0613E  ==> ' FLD0613E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0613E.
           IF FLD0614B (1:)    NOT EQUAL XPC-FLD0614B
              DISPLAY 'FLD0614B ==> ' HEX-OF (FLD0614B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0614B).
           IF FLD0614E   NOT EQUAL XPC-FLD0614E
              DISPLAY 'FLD0614E  ==> ' FLD0614E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0614E.
           IF FLD0615B (1:)    NOT EQUAL XPC-FLD0615B
              DISPLAY 'FLD0615B ==> ' HEX-OF (FLD0615B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0615B).
           IF FLD0615E   NOT EQUAL XPC-FLD0615E
              DISPLAY 'FLD0615E  ==> ' FLD0615E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0615E.
           IF FLD0616B (1:)    NOT EQUAL XPC-FLD0616B
              DISPLAY 'FLD0616B ==> ' HEX-OF (FLD0616B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0616B).
           IF FLD0616E   NOT EQUAL XPC-FLD0616E
              DISPLAY 'FLD0616E  ==> ' FLD0616E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0616E.
           IF FLD0617B (1:)    NOT EQUAL XPC-FLD0617B
              DISPLAY 'FLD0617B ==> ' HEX-OF (FLD0617B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0617B).
           IF FLD0617E   NOT EQUAL XPC-FLD0617E
              DISPLAY 'FLD0617E  ==> ' FLD0617E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0617E.
           IF FLD0618B (1:)    NOT EQUAL XPC-FLD0618B
              DISPLAY 'FLD0618B ==> ' HEX-OF (FLD0618B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0618B).
           IF FLD0618E   NOT EQUAL XPC-FLD0618E
              DISPLAY 'FLD0618E  ==> ' FLD0618E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0618E.
           IF FLD0619B (1:)    NOT EQUAL XPC-FLD0619B
              DISPLAY 'FLD0619B ==> ' HEX-OF (FLD0619B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0619B).
           IF FLD0619E   NOT EQUAL XPC-FLD0619E
              DISPLAY 'FLD0619E  ==> ' FLD0619E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0619E.
           IF FLD0620B (1:)    NOT EQUAL XPC-FLD0620B
              DISPLAY 'FLD0620B ==> ' HEX-OF (FLD0620B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0620B).
           IF FLD0620E   NOT EQUAL XPC-FLD0620E
              DISPLAY 'FLD0620E  ==> ' FLD0620E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0620E.
           IF FLD0621B (1:)    NOT EQUAL XPC-FLD0621B
              DISPLAY 'FLD0621B ==> ' HEX-OF (FLD0621B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0621B).
           IF FLD0621E   NOT EQUAL XPC-FLD0621E
              DISPLAY 'FLD0621E  ==> ' FLD0621E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0621E.
           IF FLD0622B (1:)    NOT EQUAL XPC-FLD0622B
              DISPLAY 'FLD0622B ==> ' HEX-OF (FLD0622B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0622B).
           IF FLD0622E   NOT EQUAL XPC-FLD0622E
              DISPLAY 'FLD0622E  ==> ' FLD0622E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0622E.
           IF FLD0623B (1:)    NOT EQUAL XPC-FLD0623B
              DISPLAY 'FLD0623B ==> ' HEX-OF (FLD0623B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0623B).
           IF FLD0623E   NOT EQUAL XPC-FLD0623E
              DISPLAY 'FLD0623E  ==> ' FLD0623E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0623E.
           IF FLD0624B (1:)    NOT EQUAL XPC-FLD0624B
              DISPLAY 'FLD0624B ==> ' HEX-OF (FLD0624B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0624B).
           IF FLD0624E   NOT EQUAL XPC-FLD0624E
              DISPLAY 'FLD0624E  ==> ' FLD0624E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0624E.
           IF FLD0625B (1:)    NOT EQUAL XPC-FLD0625B
              DISPLAY 'FLD0625B ==> ' HEX-OF (FLD0625B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0625B).
           IF FLD0625E   NOT EQUAL XPC-FLD0625E
              DISPLAY 'FLD0625E  ==> ' FLD0625E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0625E.
           IF FLD0626B (1:)    NOT EQUAL XPC-FLD0626B
              DISPLAY 'FLD0626B ==> ' HEX-OF (FLD0626B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0626B).
           IF FLD0626E   NOT EQUAL XPC-FLD0626E
              DISPLAY 'FLD0626E  ==> ' FLD0626E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0626E.
           IF FLD0627B (1:)    NOT EQUAL XPC-FLD0627B
              DISPLAY 'FLD0627B ==> ' HEX-OF (FLD0627B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0627B).
           IF FLD0627E   NOT EQUAL XPC-FLD0627E
              DISPLAY 'FLD0627E  ==> ' FLD0627E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0627E.
           IF FLD0628B (1:)    NOT EQUAL XPC-FLD0628B
              DISPLAY 'FLD0628B ==> ' HEX-OF (FLD0628B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0628B).
           IF FLD0628E   NOT EQUAL XPC-FLD0628E
              DISPLAY 'FLD0628E  ==> ' FLD0628E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0628E.
           IF FLD0629B (1:)    NOT EQUAL XPC-FLD0629B
              DISPLAY 'FLD0629B ==> ' HEX-OF (FLD0629B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0629B).
           IF FLD0629E   NOT EQUAL XPC-FLD0629E
              DISPLAY 'FLD0629E  ==> ' FLD0629E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0629E.
           IF FLD0630B (1:)    NOT EQUAL XPC-FLD0630B
              DISPLAY 'FLD0630B ==> ' HEX-OF (FLD0630B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0630B).
           IF FLD0630E   NOT EQUAL XPC-FLD0630E
              DISPLAY 'FLD0630E  ==> ' FLD0630E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0630E.
           IF FLD0631B (1:)    NOT EQUAL XPC-FLD0631B
              DISPLAY 'FLD0631B ==> ' HEX-OF (FLD0631B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0631B).
           IF FLD0631E   NOT EQUAL XPC-FLD0631E
              DISPLAY 'FLD0631E  ==> ' FLD0631E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0631E.
           IF FLD0632B (1:)    NOT EQUAL XPC-FLD0632B
              DISPLAY 'FLD0632B ==> ' HEX-OF (FLD0632B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0632B).
           IF FLD0632E   NOT EQUAL XPC-FLD0632E
              DISPLAY 'FLD0632E  ==> ' FLD0632E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0632E.
           IF FLD0633B (1:)    NOT EQUAL XPC-FLD0633B
              DISPLAY 'FLD0633B ==> ' HEX-OF (FLD0633B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0633B).
           IF FLD0633E   NOT EQUAL XPC-FLD0633E
              DISPLAY 'FLD0633E  ==> ' FLD0633E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0633E.
           IF FLD0634B (1:)    NOT EQUAL XPC-FLD0634B
              DISPLAY 'FLD0634B ==> ' HEX-OF (FLD0634B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0634B).
           IF FLD0634E   NOT EQUAL XPC-FLD0634E
              DISPLAY 'FLD0634E  ==> ' FLD0634E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0634E.
           IF FLD0635B (1:)    NOT EQUAL XPC-FLD0635B
              DISPLAY 'FLD0635B ==> ' HEX-OF (FLD0635B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0635B).
           IF FLD0635E   NOT EQUAL XPC-FLD0635E
              DISPLAY 'FLD0635E  ==> ' FLD0635E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0635E.
           IF FLD0636B (1:)    NOT EQUAL XPC-FLD0636B
              DISPLAY 'FLD0636B ==> ' HEX-OF (FLD0636B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0636B).
           IF FLD0636E   NOT EQUAL XPC-FLD0636E
              DISPLAY 'FLD0636E  ==> ' FLD0636E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0636E.
           IF FLD0637B (1:)    NOT EQUAL XPC-FLD0637B
              DISPLAY 'FLD0637B ==> ' HEX-OF (FLD0637B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0637B).
           IF FLD0637E   NOT EQUAL XPC-FLD0637E
              DISPLAY 'FLD0637E  ==> ' FLD0637E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0637E.
           IF FLD0638B (1:)    NOT EQUAL XPC-FLD0638B
              DISPLAY 'FLD0638B ==> ' HEX-OF (FLD0638B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0638B).
           IF FLD0638E   NOT EQUAL XPC-FLD0638E
              DISPLAY 'FLD0638E  ==> ' FLD0638E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0638E.
           IF FLD0639B (1:)    NOT EQUAL XPC-FLD0639B
              DISPLAY 'FLD0639B ==> ' HEX-OF (FLD0639B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0639B).
           IF FLD0639E   NOT EQUAL XPC-FLD0639E
              DISPLAY 'FLD0639E  ==> ' FLD0639E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0639E.
           IF FLD0640B (1:)    NOT EQUAL XPC-FLD0640B
              DISPLAY 'FLD0640B ==> ' HEX-OF (FLD0640B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0640B).
           IF FLD0640E   NOT EQUAL XPC-FLD0640E
              DISPLAY 'FLD0640E  ==> ' FLD0640E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0640E.
           IF FLD0641B (1:)    NOT EQUAL XPC-FLD0641B
              DISPLAY 'FLD0641B ==> ' HEX-OF (FLD0641B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0641B).
           IF FLD0641E   NOT EQUAL XPC-FLD0641E
              DISPLAY 'FLD0641E  ==> ' FLD0641E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0641E.
           IF FLD0642B (1:)    NOT EQUAL XPC-FLD0642B
              DISPLAY 'FLD0642B ==> ' HEX-OF (FLD0642B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0642B).
           IF FLD0642E   NOT EQUAL XPC-FLD0642E
              DISPLAY 'FLD0642E  ==> ' FLD0642E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0642E.
           IF FLD0643B (1:)    NOT EQUAL XPC-FLD0643B
              DISPLAY 'FLD0643B ==> ' HEX-OF (FLD0643B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0643B).
           IF FLD0643E   NOT EQUAL XPC-FLD0643E
              DISPLAY 'FLD0643E  ==> ' FLD0643E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0643E.
           IF FLD0644B (1:)    NOT EQUAL XPC-FLD0644B
              DISPLAY 'FLD0644B ==> ' HEX-OF (FLD0644B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0644B).
           IF FLD0644E   NOT EQUAL XPC-FLD0644E
              DISPLAY 'FLD0644E  ==> ' FLD0644E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0644E.
           IF FLD0645B (1:)    NOT EQUAL XPC-FLD0645B
              DISPLAY 'FLD0645B ==> ' HEX-OF (FLD0645B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0645B).
           IF FLD0645E   NOT EQUAL XPC-FLD0645E
              DISPLAY 'FLD0645E  ==> ' FLD0645E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0645E.
           IF FLD0646B (1:)    NOT EQUAL XPC-FLD0646B
              DISPLAY 'FLD0646B ==> ' HEX-OF (FLD0646B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0646B).
           IF FLD0646E   NOT EQUAL XPC-FLD0646E
              DISPLAY 'FLD0646E  ==> ' FLD0646E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0646E.
           IF FLD0647B (1:)    NOT EQUAL XPC-FLD0647B
              DISPLAY 'FLD0647B ==> ' HEX-OF (FLD0647B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0647B).
           IF FLD0647E   NOT EQUAL XPC-FLD0647E
              DISPLAY 'FLD0647E  ==> ' FLD0647E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0647E.
           IF FLD0648B (1:)    NOT EQUAL XPC-FLD0648B
              DISPLAY 'FLD0648B ==> ' HEX-OF (FLD0648B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0648B).
           IF FLD0648E   NOT EQUAL XPC-FLD0648E
              DISPLAY 'FLD0648E  ==> ' FLD0648E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0648E.
           IF FLD0649B (1:)    NOT EQUAL XPC-FLD0649B
              DISPLAY 'FLD0649B ==> ' HEX-OF (FLD0649B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0649B).
           IF FLD0649E   NOT EQUAL XPC-FLD0649E
              DISPLAY 'FLD0649E  ==> ' FLD0649E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0649E.
           IF FLD0650B (1:)    NOT EQUAL XPC-FLD0650B
              DISPLAY 'FLD0650B ==> ' HEX-OF (FLD0650B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0650B).
           IF FLD0650E   NOT EQUAL XPC-FLD0650E
              DISPLAY 'FLD0650E  ==> ' FLD0650E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0650E.
           IF FLD0651B (1:)    NOT EQUAL XPC-FLD0651B
              DISPLAY 'FLD0651B ==> ' HEX-OF (FLD0651B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0651B).
           IF FLD0651E   NOT EQUAL XPC-FLD0651E
              DISPLAY 'FLD0651E  ==> ' FLD0651E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0651E.
           IF FLD0652B (1:)    NOT EQUAL XPC-FLD0652B
              DISPLAY 'FLD0652B ==> ' HEX-OF (FLD0652B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0652B).
           IF FLD0652E   NOT EQUAL XPC-FLD0652E
              DISPLAY 'FLD0652E  ==> ' FLD0652E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0652E.
           IF FLD0653B (1:)    NOT EQUAL XPC-FLD0653B
              DISPLAY 'FLD0653B ==> ' HEX-OF (FLD0653B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0653B).
           IF FLD0653E   NOT EQUAL XPC-FLD0653E
              DISPLAY 'FLD0653E  ==> ' FLD0653E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0653E.
           IF FLD0654B (1:)    NOT EQUAL XPC-FLD0654B
              DISPLAY 'FLD0654B ==> ' HEX-OF (FLD0654B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0654B).
           IF FLD0654E   NOT EQUAL XPC-FLD0654E
              DISPLAY 'FLD0654E  ==> ' FLD0654E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0654E.
           IF FLD0655B (1:)    NOT EQUAL XPC-FLD0655B
              DISPLAY 'FLD0655B ==> ' HEX-OF (FLD0655B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0655B).
           IF FLD0655E   NOT EQUAL XPC-FLD0655E
              DISPLAY 'FLD0655E  ==> ' FLD0655E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0655E.
           IF FLD0656B (1:)    NOT EQUAL XPC-FLD0656B
              DISPLAY 'FLD0656B ==> ' HEX-OF (FLD0656B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0656B).
           IF FLD0656E   NOT EQUAL XPC-FLD0656E
              DISPLAY 'FLD0656E  ==> ' FLD0656E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0656E.
           IF FLD0657B (1:)    NOT EQUAL XPC-FLD0657B
              DISPLAY 'FLD0657B ==> ' HEX-OF (FLD0657B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0657B).
           IF FLD0657E   NOT EQUAL XPC-FLD0657E
              DISPLAY 'FLD0657E  ==> ' FLD0657E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0657E.
           IF FLD0658B (1:)    NOT EQUAL XPC-FLD0658B
              DISPLAY 'FLD0658B ==> ' HEX-OF (FLD0658B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0658B).
           IF FLD0658E   NOT EQUAL XPC-FLD0658E
              DISPLAY 'FLD0658E  ==> ' FLD0658E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0658E.
           IF FLD0659B (1:)    NOT EQUAL XPC-FLD0659B
              DISPLAY 'FLD0659B ==> ' HEX-OF (FLD0659B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0659B).
           IF FLD0659E   NOT EQUAL XPC-FLD0659E
              DISPLAY 'FLD0659E  ==> ' FLD0659E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0659E.
           IF FLD0660B (1:)    NOT EQUAL XPC-FLD0660B
              DISPLAY 'FLD0660B ==> ' HEX-OF (FLD0660B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0660B).
           IF FLD0660E   NOT EQUAL XPC-FLD0660E
              DISPLAY 'FLD0660E  ==> ' FLD0660E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0660E.
           IF FLD0661B (1:)    NOT EQUAL XPC-FLD0661B
              DISPLAY 'FLD0661B ==> ' HEX-OF (FLD0661B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0661B).
           IF FLD0661E   NOT EQUAL XPC-FLD0661E
              DISPLAY 'FLD0661E  ==> ' FLD0661E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0661E.
           IF FLD0662B (1:)    NOT EQUAL XPC-FLD0662B
              DISPLAY 'FLD0662B ==> ' HEX-OF (FLD0662B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0662B).
           IF FLD0662E   NOT EQUAL XPC-FLD0662E
              DISPLAY 'FLD0662E  ==> ' FLD0662E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0662E.
           IF FLD0663B (1:)    NOT EQUAL XPC-FLD0663B
              DISPLAY 'FLD0663B ==> ' HEX-OF (FLD0663B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0663B).
           IF FLD0663E   NOT EQUAL XPC-FLD0663E
              DISPLAY 'FLD0663E  ==> ' FLD0663E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0663E.
           IF FLD0664B (1:)    NOT EQUAL XPC-FLD0664B
              DISPLAY 'FLD0664B ==> ' HEX-OF (FLD0664B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0664B).
           IF FLD0664E   NOT EQUAL XPC-FLD0664E
              DISPLAY 'FLD0664E  ==> ' FLD0664E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0664E.
           IF FLD0665B (1:)    NOT EQUAL XPC-FLD0665B
              DISPLAY 'FLD0665B ==> ' HEX-OF (FLD0665B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0665B).
           IF FLD0665E   NOT EQUAL XPC-FLD0665E
              DISPLAY 'FLD0665E  ==> ' FLD0665E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0665E.
           IF FLD0666B (1:)    NOT EQUAL XPC-FLD0666B
              DISPLAY 'FLD0666B ==> ' HEX-OF (FLD0666B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0666B).
           IF FLD0666E   NOT EQUAL XPC-FLD0666E
              DISPLAY 'FLD0666E  ==> ' FLD0666E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0666E.
           IF FLD0667B (1:)    NOT EQUAL XPC-FLD0667B
              DISPLAY 'FLD0667B ==> ' HEX-OF (FLD0667B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0667B).
           IF FLD0667E   NOT EQUAL XPC-FLD0667E
              DISPLAY 'FLD0667E  ==> ' FLD0667E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0667E.
           IF FLD0668B (1:)    NOT EQUAL XPC-FLD0668B
              DISPLAY 'FLD0668B ==> ' HEX-OF (FLD0668B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0668B).
           IF FLD0668E   NOT EQUAL XPC-FLD0668E
              DISPLAY 'FLD0668E  ==> ' FLD0668E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0668E.
           IF FLD0669B (1:)    NOT EQUAL XPC-FLD0669B
              DISPLAY 'FLD0669B ==> ' HEX-OF (FLD0669B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0669B).
           IF FLD0669E   NOT EQUAL XPC-FLD0669E
              DISPLAY 'FLD0669E  ==> ' FLD0669E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0669E.
           IF FLD0670B (1:)    NOT EQUAL XPC-FLD0670B
              DISPLAY 'FLD0670B ==> ' HEX-OF (FLD0670B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0670B).
           IF FLD0670E   NOT EQUAL XPC-FLD0670E
              DISPLAY 'FLD0670E  ==> ' FLD0670E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0670E.
           IF FLD0671B (1:)    NOT EQUAL XPC-FLD0671B
              DISPLAY 'FLD0671B ==> ' HEX-OF (FLD0671B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0671B).
           IF FLD0671E   NOT EQUAL XPC-FLD0671E
              DISPLAY 'FLD0671E  ==> ' FLD0671E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0671E.
           IF FLD0672B (1:)    NOT EQUAL XPC-FLD0672B
              DISPLAY 'FLD0672B ==> ' HEX-OF (FLD0672B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0672B).
           IF FLD0672E   NOT EQUAL XPC-FLD0672E
              DISPLAY 'FLD0672E  ==> ' FLD0672E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0672E.
           IF FLD0673B (1:)    NOT EQUAL XPC-FLD0673B
              DISPLAY 'FLD0673B ==> ' HEX-OF (FLD0673B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0673B).
           IF FLD0673E   NOT EQUAL XPC-FLD0673E
              DISPLAY 'FLD0673E  ==> ' FLD0673E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0673E.
           IF FLD0674B (1:)    NOT EQUAL XPC-FLD0674B
              DISPLAY 'FLD0674B ==> ' HEX-OF (FLD0674B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0674B).
           IF FLD0674E   NOT EQUAL XPC-FLD0674E
              DISPLAY 'FLD0674E  ==> ' FLD0674E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0674E.
           IF FLD0675B (1:)    NOT EQUAL XPC-FLD0675B
              DISPLAY 'FLD0675B ==> ' HEX-OF (FLD0675B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0675B).
           IF FLD0675E   NOT EQUAL XPC-FLD0675E
              DISPLAY 'FLD0675E  ==> ' FLD0675E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0675E.
           IF FLD0676B (1:)    NOT EQUAL XPC-FLD0676B
              DISPLAY 'FLD0676B ==> ' HEX-OF (FLD0676B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0676B).
           IF FLD0676E   NOT EQUAL XPC-FLD0676E
              DISPLAY 'FLD0676E  ==> ' FLD0676E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0676E.
           IF FLD0677B (1:)    NOT EQUAL XPC-FLD0677B
              DISPLAY 'FLD0677B ==> ' HEX-OF (FLD0677B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0677B).
           IF FLD0677E   NOT EQUAL XPC-FLD0677E
              DISPLAY 'FLD0677E  ==> ' FLD0677E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0677E.
           IF FLD0678B (1:)    NOT EQUAL XPC-FLD0678B
              DISPLAY 'FLD0678B ==> ' HEX-OF (FLD0678B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0678B).
           IF FLD0678E   NOT EQUAL XPC-FLD0678E
              DISPLAY 'FLD0678E  ==> ' FLD0678E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0678E.
           IF FLD0679B (1:)    NOT EQUAL XPC-FLD0679B
              DISPLAY 'FLD0679B ==> ' HEX-OF (FLD0679B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0679B).
           IF FLD0679E   NOT EQUAL XPC-FLD0679E
              DISPLAY 'FLD0679E  ==> ' FLD0679E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0679E.
           IF FLD0680B (1:)    NOT EQUAL XPC-FLD0680B
              DISPLAY 'FLD0680B ==> ' HEX-OF (FLD0680B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0680B).
           IF FLD0680E   NOT EQUAL XPC-FLD0680E
              DISPLAY 'FLD0680E  ==> ' FLD0680E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0680E.
           IF FLD0681B (1:)    NOT EQUAL XPC-FLD0681B
              DISPLAY 'FLD0681B ==> ' HEX-OF (FLD0681B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0681B).
           IF FLD0681E   NOT EQUAL XPC-FLD0681E
              DISPLAY 'FLD0681E  ==> ' FLD0681E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0681E.
           IF FLD0682B (1:)    NOT EQUAL XPC-FLD0682B
              DISPLAY 'FLD0682B ==> ' HEX-OF (FLD0682B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0682B).
           IF FLD0682E   NOT EQUAL XPC-FLD0682E
              DISPLAY 'FLD0682E  ==> ' FLD0682E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0682E.
           IF FLD0683B (1:)    NOT EQUAL XPC-FLD0683B
              DISPLAY 'FLD0683B ==> ' HEX-OF (FLD0683B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0683B).
           IF FLD0683E   NOT EQUAL XPC-FLD0683E
              DISPLAY 'FLD0683E  ==> ' FLD0683E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0683E.
           IF FLD0684B (1:)    NOT EQUAL XPC-FLD0684B
              DISPLAY 'FLD0684B ==> ' HEX-OF (FLD0684B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0684B).
           IF FLD0684E   NOT EQUAL XPC-FLD0684E
              DISPLAY 'FLD0684E  ==> ' FLD0684E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0684E.
           IF FLD0685B (1:)    NOT EQUAL XPC-FLD0685B
              DISPLAY 'FLD0685B ==> ' HEX-OF (FLD0685B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0685B).
           IF FLD0685E   NOT EQUAL XPC-FLD0685E
              DISPLAY 'FLD0685E  ==> ' FLD0685E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0685E.
           IF FLD0686B (1:)    NOT EQUAL XPC-FLD0686B
              DISPLAY 'FLD0686B ==> ' HEX-OF (FLD0686B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0686B).
           IF FLD0686E   NOT EQUAL XPC-FLD0686E
              DISPLAY 'FLD0686E  ==> ' FLD0686E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0686E.
           IF FLD0687B (1:)    NOT EQUAL XPC-FLD0687B
              DISPLAY 'FLD0687B ==> ' HEX-OF (FLD0687B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0687B).
           IF FLD0687E   NOT EQUAL XPC-FLD0687E
              DISPLAY 'FLD0687E  ==> ' FLD0687E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0687E.
           IF FLD0688B (1:)    NOT EQUAL XPC-FLD0688B
              DISPLAY 'FLD0688B ==> ' HEX-OF (FLD0688B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0688B).
           IF FLD0688E   NOT EQUAL XPC-FLD0688E
              DISPLAY 'FLD0688E  ==> ' FLD0688E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0688E.
           IF FLD0689B (1:)    NOT EQUAL XPC-FLD0689B
              DISPLAY 'FLD0689B ==> ' HEX-OF (FLD0689B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0689B).
           IF FLD0689E   NOT EQUAL XPC-FLD0689E
              DISPLAY 'FLD0689E  ==> ' FLD0689E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0689E.
           IF FLD0690B (1:)    NOT EQUAL XPC-FLD0690B
              DISPLAY 'FLD0690B ==> ' HEX-OF (FLD0690B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0690B).
           IF FLD0690E   NOT EQUAL XPC-FLD0690E
              DISPLAY 'FLD0690E  ==> ' FLD0690E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0690E.
           IF FLD0691B (1:)    NOT EQUAL XPC-FLD0691B
              DISPLAY 'FLD0691B ==> ' HEX-OF (FLD0691B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0691B).
           IF FLD0691E   NOT EQUAL XPC-FLD0691E
              DISPLAY 'FLD0691E  ==> ' FLD0691E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0691E.
           IF FLD0692B (1:)    NOT EQUAL XPC-FLD0692B
              DISPLAY 'FLD0692B ==> ' HEX-OF (FLD0692B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0692B).
           IF FLD0692E   NOT EQUAL XPC-FLD0692E
              DISPLAY 'FLD0692E  ==> ' FLD0692E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0692E.
           IF FLD0693B (1:)    NOT EQUAL XPC-FLD0693B
              DISPLAY 'FLD0693B ==> ' HEX-OF (FLD0693B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0693B).
           IF FLD0693E   NOT EQUAL XPC-FLD0693E
              DISPLAY 'FLD0693E  ==> ' FLD0693E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0693E.
           IF FLD0694B (1:)    NOT EQUAL XPC-FLD0694B
              DISPLAY 'FLD0694B ==> ' HEX-OF (FLD0694B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0694B).
           IF FLD0694E   NOT EQUAL XPC-FLD0694E
              DISPLAY 'FLD0694E  ==> ' FLD0694E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0694E.
           IF FLD0695B (1:)    NOT EQUAL XPC-FLD0695B
              DISPLAY 'FLD0695B ==> ' HEX-OF (FLD0695B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0695B).
           IF FLD0695E   NOT EQUAL XPC-FLD0695E
              DISPLAY 'FLD0695E  ==> ' FLD0695E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0695E.
           IF FLD0696B (1:)    NOT EQUAL XPC-FLD0696B
              DISPLAY 'FLD0696B ==> ' HEX-OF (FLD0696B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0696B).
           IF FLD0696E   NOT EQUAL XPC-FLD0696E
              DISPLAY 'FLD0696E  ==> ' FLD0696E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0696E.
           IF FLD0697B (1:)    NOT EQUAL XPC-FLD0697B
              DISPLAY 'FLD0697B ==> ' HEX-OF (FLD0697B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0697B).
           IF FLD0697E   NOT EQUAL XPC-FLD0697E
              DISPLAY 'FLD0697E  ==> ' FLD0697E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0697E.
           IF FLD0698B (1:)    NOT EQUAL XPC-FLD0698B
              DISPLAY 'FLD0698B ==> ' HEX-OF (FLD0698B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0698B).
           IF FLD0698E   NOT EQUAL XPC-FLD0698E
              DISPLAY 'FLD0698E  ==> ' FLD0698E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0698E.
           IF FLD0699B (1:)    NOT EQUAL XPC-FLD0699B
              DISPLAY 'FLD0699B ==> ' HEX-OF (FLD0699B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0699B).
           IF FLD0699E   NOT EQUAL XPC-FLD0699E
              DISPLAY 'FLD0699E  ==> ' FLD0699E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0699E.
           IF FLD0700B (1:)    NOT EQUAL XPC-FLD0700B
              DISPLAY 'FLD0700B ==> ' HEX-OF (FLD0700B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0700B).
           IF FLD0700E   NOT EQUAL XPC-FLD0700E
              DISPLAY 'FLD0700E  ==> ' FLD0700E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0700E.
           IF FLD0701B (1:)    NOT EQUAL XPC-FLD0701B
              DISPLAY 'FLD0701B ==> ' HEX-OF (FLD0701B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0701B).
           IF FLD0701E   NOT EQUAL XPC-FLD0701E
              DISPLAY 'FLD0701E  ==> ' FLD0701E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0701E.
           IF FLD0702B (1:)    NOT EQUAL XPC-FLD0702B
              DISPLAY 'FLD0702B ==> ' HEX-OF (FLD0702B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0702B).
           IF FLD0702E   NOT EQUAL XPC-FLD0702E
              DISPLAY 'FLD0702E  ==> ' FLD0702E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0702E.
           IF FLD0703B (1:)    NOT EQUAL XPC-FLD0703B
              DISPLAY 'FLD0703B ==> ' HEX-OF (FLD0703B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0703B).
           IF FLD0703E   NOT EQUAL XPC-FLD0703E
              DISPLAY 'FLD0703E  ==> ' FLD0703E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0703E.
           IF FLD0704B (1:)    NOT EQUAL XPC-FLD0704B
              DISPLAY 'FLD0704B ==> ' HEX-OF (FLD0704B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0704B).
           IF FLD0704E   NOT EQUAL XPC-FLD0704E
              DISPLAY 'FLD0704E  ==> ' FLD0704E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0704E.
           IF FLD0705B (1:)    NOT EQUAL XPC-FLD0705B
              DISPLAY 'FLD0705B ==> ' HEX-OF (FLD0705B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0705B).
           IF FLD0705E   NOT EQUAL XPC-FLD0705E
              DISPLAY 'FLD0705E  ==> ' FLD0705E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0705E.
           IF FLD0706B (1:)    NOT EQUAL XPC-FLD0706B
              DISPLAY 'FLD0706B ==> ' HEX-OF (FLD0706B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0706B).
           IF FLD0706E   NOT EQUAL XPC-FLD0706E
              DISPLAY 'FLD0706E  ==> ' FLD0706E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0706E.
           IF FLD0707B (1:)    NOT EQUAL XPC-FLD0707B
              DISPLAY 'FLD0707B ==> ' HEX-OF (FLD0707B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0707B).
           IF FLD0707E   NOT EQUAL XPC-FLD0707E
              DISPLAY 'FLD0707E  ==> ' FLD0707E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0707E.
           IF FLD0708B (1:)    NOT EQUAL XPC-FLD0708B
              DISPLAY 'FLD0708B ==> ' HEX-OF (FLD0708B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0708B).
           IF FLD0708E   NOT EQUAL XPC-FLD0708E
              DISPLAY 'FLD0708E  ==> ' FLD0708E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0708E.
           IF FLD0709B (1:)    NOT EQUAL XPC-FLD0709B
              DISPLAY 'FLD0709B ==> ' HEX-OF (FLD0709B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0709B).
           IF FLD0709E   NOT EQUAL XPC-FLD0709E
              DISPLAY 'FLD0709E  ==> ' FLD0709E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0709E.
           IF FLD0710B (1:)    NOT EQUAL XPC-FLD0710B
              DISPLAY 'FLD0710B ==> ' HEX-OF (FLD0710B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0710B).
           IF FLD0710E   NOT EQUAL XPC-FLD0710E
              DISPLAY 'FLD0710E  ==> ' FLD0710E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0710E.
           IF FLD0711B (1:)    NOT EQUAL XPC-FLD0711B
              DISPLAY 'FLD0711B ==> ' HEX-OF (FLD0711B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0711B).
           IF FLD0711E   NOT EQUAL XPC-FLD0711E
              DISPLAY 'FLD0711E  ==> ' FLD0711E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0711E.
           IF FLD0712B (1:)    NOT EQUAL XPC-FLD0712B
              DISPLAY 'FLD0712B ==> ' HEX-OF (FLD0712B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0712B).
           IF FLD0712E   NOT EQUAL XPC-FLD0712E
              DISPLAY 'FLD0712E  ==> ' FLD0712E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0712E.
           IF FLD0713B (1:)    NOT EQUAL XPC-FLD0713B
              DISPLAY 'FLD0713B ==> ' HEX-OF (FLD0713B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0713B).
           IF FLD0713E   NOT EQUAL XPC-FLD0713E
              DISPLAY 'FLD0713E  ==> ' FLD0713E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0713E.
           IF FLD0714B (1:)    NOT EQUAL XPC-FLD0714B
              DISPLAY 'FLD0714B ==> ' HEX-OF (FLD0714B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0714B).
           IF FLD0714E   NOT EQUAL XPC-FLD0714E
              DISPLAY 'FLD0714E  ==> ' FLD0714E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0714E.
           IF FLD0715B (1:)    NOT EQUAL XPC-FLD0715B
              DISPLAY 'FLD0715B ==> ' HEX-OF (FLD0715B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0715B).
           IF FLD0715E   NOT EQUAL XPC-FLD0715E
              DISPLAY 'FLD0715E  ==> ' FLD0715E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0715E.
           IF FLD0716B (1:)    NOT EQUAL XPC-FLD0716B
              DISPLAY 'FLD0716B ==> ' HEX-OF (FLD0716B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0716B).
           IF FLD0716E   NOT EQUAL XPC-FLD0716E
              DISPLAY 'FLD0716E  ==> ' FLD0716E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0716E.
           IF FLD0717B (1:)    NOT EQUAL XPC-FLD0717B
              DISPLAY 'FLD0717B ==> ' HEX-OF (FLD0717B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0717B).
           IF FLD0717E   NOT EQUAL XPC-FLD0717E
              DISPLAY 'FLD0717E  ==> ' FLD0717E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0717E.
           IF FLD0718B (1:)    NOT EQUAL XPC-FLD0718B
              DISPLAY 'FLD0718B ==> ' HEX-OF (FLD0718B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0718B).
           IF FLD0718E   NOT EQUAL XPC-FLD0718E
              DISPLAY 'FLD0718E  ==> ' FLD0718E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0718E.
           IF FLD0719B (1:)    NOT EQUAL XPC-FLD0719B
              DISPLAY 'FLD0719B ==> ' HEX-OF (FLD0719B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0719B).
           IF FLD0719E   NOT EQUAL XPC-FLD0719E
              DISPLAY 'FLD0719E  ==> ' FLD0719E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0719E.
           IF FLD0720B (1:)    NOT EQUAL XPC-FLD0720B
              DISPLAY 'FLD0720B ==> ' HEX-OF (FLD0720B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0720B).
           IF FLD0720E   NOT EQUAL XPC-FLD0720E
              DISPLAY 'FLD0720E  ==> ' FLD0720E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0720E.
           IF FLD0721B (1:)    NOT EQUAL XPC-FLD0721B
              DISPLAY 'FLD0721B ==> ' HEX-OF (FLD0721B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0721B).
           IF FLD0721E   NOT EQUAL XPC-FLD0721E
              DISPLAY 'FLD0721E  ==> ' FLD0721E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0721E.
           IF FLD0722B (1:)    NOT EQUAL XPC-FLD0722B
              DISPLAY 'FLD0722B ==> ' HEX-OF (FLD0722B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0722B).
           IF FLD0722E   NOT EQUAL XPC-FLD0722E
              DISPLAY 'FLD0722E  ==> ' FLD0722E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0722E.
           IF FLD0723B (1:)    NOT EQUAL XPC-FLD0723B
              DISPLAY 'FLD0723B ==> ' HEX-OF (FLD0723B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0723B).
           IF FLD0723E   NOT EQUAL XPC-FLD0723E
              DISPLAY 'FLD0723E  ==> ' FLD0723E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0723E.
           IF FLD0724B (1:)    NOT EQUAL XPC-FLD0724B
              DISPLAY 'FLD0724B ==> ' HEX-OF (FLD0724B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0724B).
           IF FLD0724E   NOT EQUAL XPC-FLD0724E
              DISPLAY 'FLD0724E  ==> ' FLD0724E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0724E.
           IF FLD0725B (1:)    NOT EQUAL XPC-FLD0725B
              DISPLAY 'FLD0725B ==> ' HEX-OF (FLD0725B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0725B).
           IF FLD0725E   NOT EQUAL XPC-FLD0725E
              DISPLAY 'FLD0725E  ==> ' FLD0725E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0725E.
           IF FLD0726B (1:)    NOT EQUAL XPC-FLD0726B
              DISPLAY 'FLD0726B ==> ' HEX-OF (FLD0726B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0726B).
           IF FLD0726E   NOT EQUAL XPC-FLD0726E
              DISPLAY 'FLD0726E  ==> ' FLD0726E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0726E.
           IF FLD0727B (1:)    NOT EQUAL XPC-FLD0727B
              DISPLAY 'FLD0727B ==> ' HEX-OF (FLD0727B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0727B).
           IF FLD0727E   NOT EQUAL XPC-FLD0727E
              DISPLAY 'FLD0727E  ==> ' FLD0727E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0727E.
           IF FLD0728B (1:)    NOT EQUAL XPC-FLD0728B
              DISPLAY 'FLD0728B ==> ' HEX-OF (FLD0728B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0728B).
           IF FLD0728E   NOT EQUAL XPC-FLD0728E
              DISPLAY 'FLD0728E  ==> ' FLD0728E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0728E.
           IF FLD0729B (1:)    NOT EQUAL XPC-FLD0729B
              DISPLAY 'FLD0729B ==> ' HEX-OF (FLD0729B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0729B).
           IF FLD0729E   NOT EQUAL XPC-FLD0729E
              DISPLAY 'FLD0729E  ==> ' FLD0729E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0729E.
           IF FLD0730B (1:)    NOT EQUAL XPC-FLD0730B
              DISPLAY 'FLD0730B ==> ' HEX-OF (FLD0730B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0730B).
           IF FLD0730E   NOT EQUAL XPC-FLD0730E
              DISPLAY 'FLD0730E  ==> ' FLD0730E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0730E.
           IF FLD0731B (1:)    NOT EQUAL XPC-FLD0731B
              DISPLAY 'FLD0731B ==> ' HEX-OF (FLD0731B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0731B).
           IF FLD0731E   NOT EQUAL XPC-FLD0731E
              DISPLAY 'FLD0731E  ==> ' FLD0731E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0731E.
           IF FLD0732B (1:)    NOT EQUAL XPC-FLD0732B
              DISPLAY 'FLD0732B ==> ' HEX-OF (FLD0732B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0732B).
           IF FLD0732E   NOT EQUAL XPC-FLD0732E
              DISPLAY 'FLD0732E  ==> ' FLD0732E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0732E.
           IF FLD0733B (1:)    NOT EQUAL XPC-FLD0733B
              DISPLAY 'FLD0733B ==> ' HEX-OF (FLD0733B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0733B).
           IF FLD0733E   NOT EQUAL XPC-FLD0733E
              DISPLAY 'FLD0733E  ==> ' FLD0733E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0733E.
           IF FLD0734B (1:)    NOT EQUAL XPC-FLD0734B
              DISPLAY 'FLD0734B ==> ' HEX-OF (FLD0734B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0734B).
           IF FLD0734E   NOT EQUAL XPC-FLD0734E
              DISPLAY 'FLD0734E  ==> ' FLD0734E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0734E.
           IF FLD0735B (1:)    NOT EQUAL XPC-FLD0735B
              DISPLAY 'FLD0735B ==> ' HEX-OF (FLD0735B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0735B).
           IF FLD0735E   NOT EQUAL XPC-FLD0735E
              DISPLAY 'FLD0735E  ==> ' FLD0735E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0735E.
           IF FLD0736B (1:)    NOT EQUAL XPC-FLD0736B
              DISPLAY 'FLD0736B ==> ' HEX-OF (FLD0736B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0736B).
           IF FLD0736E   NOT EQUAL XPC-FLD0736E
              DISPLAY 'FLD0736E  ==> ' FLD0736E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0736E.
           IF FLD0737B (1:)    NOT EQUAL XPC-FLD0737B
              DISPLAY 'FLD0737B ==> ' HEX-OF (FLD0737B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0737B).
           IF FLD0737E   NOT EQUAL XPC-FLD0737E
              DISPLAY 'FLD0737E  ==> ' FLD0737E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0737E.
           IF FLD0738B (1:)    NOT EQUAL XPC-FLD0738B
              DISPLAY 'FLD0738B ==> ' HEX-OF (FLD0738B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0738B).
           IF FLD0738E   NOT EQUAL XPC-FLD0738E
              DISPLAY 'FLD0738E  ==> ' FLD0738E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0738E.
           IF FLD0739B (1:)    NOT EQUAL XPC-FLD0739B
              DISPLAY 'FLD0739B ==> ' HEX-OF (FLD0739B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0739B).
           IF FLD0739E   NOT EQUAL XPC-FLD0739E
              DISPLAY 'FLD0739E  ==> ' FLD0739E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0739E.
           IF FLD0740B (1:)    NOT EQUAL XPC-FLD0740B
              DISPLAY 'FLD0740B ==> ' HEX-OF (FLD0740B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0740B).
           IF FLD0740E   NOT EQUAL XPC-FLD0740E
              DISPLAY 'FLD0740E  ==> ' FLD0740E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0740E.
           IF FLD0741B (1:)    NOT EQUAL XPC-FLD0741B
              DISPLAY 'FLD0741B ==> ' HEX-OF (FLD0741B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0741B).
           IF FLD0741E   NOT EQUAL XPC-FLD0741E
              DISPLAY 'FLD0741E  ==> ' FLD0741E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0741E.
           IF FLD0742B (1:)    NOT EQUAL XPC-FLD0742B
              DISPLAY 'FLD0742B ==> ' HEX-OF (FLD0742B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0742B).
           IF FLD0742E   NOT EQUAL XPC-FLD0742E
              DISPLAY 'FLD0742E  ==> ' FLD0742E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0742E.
           IF FLD0743B (1:)    NOT EQUAL XPC-FLD0743B
              DISPLAY 'FLD0743B ==> ' HEX-OF (FLD0743B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0743B).
           IF FLD0743E   NOT EQUAL XPC-FLD0743E
              DISPLAY 'FLD0743E  ==> ' FLD0743E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0743E.
           IF FLD0744B (1:)    NOT EQUAL XPC-FLD0744B
              DISPLAY 'FLD0744B ==> ' HEX-OF (FLD0744B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0744B).
           IF FLD0744E   NOT EQUAL XPC-FLD0744E
              DISPLAY 'FLD0744E  ==> ' FLD0744E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0744E.
           IF FLD0745B (1:)    NOT EQUAL XPC-FLD0745B
              DISPLAY 'FLD0745B ==> ' HEX-OF (FLD0745B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0745B).
           IF FLD0745E   NOT EQUAL XPC-FLD0745E
              DISPLAY 'FLD0745E  ==> ' FLD0745E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0745E.
           IF FLD0746B (1:)    NOT EQUAL XPC-FLD0746B
              DISPLAY 'FLD0746B ==> ' HEX-OF (FLD0746B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0746B).
           IF FLD0746E   NOT EQUAL XPC-FLD0746E
              DISPLAY 'FLD0746E  ==> ' FLD0746E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0746E.
           IF FLD0747B (1:)    NOT EQUAL XPC-FLD0747B
              DISPLAY 'FLD0747B ==> ' HEX-OF (FLD0747B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0747B).
           IF FLD0747E   NOT EQUAL XPC-FLD0747E
              DISPLAY 'FLD0747E  ==> ' FLD0747E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0747E.
           IF FLD0748B (1:)    NOT EQUAL XPC-FLD0748B
              DISPLAY 'FLD0748B ==> ' HEX-OF (FLD0748B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0748B).
           IF FLD0748E   NOT EQUAL XPC-FLD0748E
              DISPLAY 'FLD0748E  ==> ' FLD0748E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0748E.
           IF FLD0749B (1:)    NOT EQUAL XPC-FLD0749B
              DISPLAY 'FLD0749B ==> ' HEX-OF (FLD0749B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0749B).
           IF FLD0749E   NOT EQUAL XPC-FLD0749E
              DISPLAY 'FLD0749E  ==> ' FLD0749E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0749E.
           IF FLD0750B (1:)    NOT EQUAL XPC-FLD0750B
              DISPLAY 'FLD0750B ==> ' HEX-OF (FLD0750B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0750B).
           IF FLD0750E   NOT EQUAL XPC-FLD0750E
              DISPLAY 'FLD0750E  ==> ' FLD0750E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0750E.
           IF FLD0751B (1:)    NOT EQUAL XPC-FLD0751B
              DISPLAY 'FLD0751B ==> ' HEX-OF (FLD0751B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0751B).
           IF FLD0751E   NOT EQUAL XPC-FLD0751E
              DISPLAY 'FLD0751E  ==> ' FLD0751E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0751E.
           IF FLD0752B (1:)    NOT EQUAL XPC-FLD0752B
              DISPLAY 'FLD0752B ==> ' HEX-OF (FLD0752B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0752B).
           IF FLD0752E   NOT EQUAL XPC-FLD0752E
              DISPLAY 'FLD0752E  ==> ' FLD0752E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0752E.
           IF FLD0753B (1:)    NOT EQUAL XPC-FLD0753B
              DISPLAY 'FLD0753B ==> ' HEX-OF (FLD0753B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0753B).
           IF FLD0753E   NOT EQUAL XPC-FLD0753E
              DISPLAY 'FLD0753E  ==> ' FLD0753E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0753E.
           IF FLD0754B (1:)    NOT EQUAL XPC-FLD0754B
              DISPLAY 'FLD0754B ==> ' HEX-OF (FLD0754B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0754B).
           IF FLD0754E   NOT EQUAL XPC-FLD0754E
              DISPLAY 'FLD0754E  ==> ' FLD0754E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0754E.
           IF FLD0755B (1:)    NOT EQUAL XPC-FLD0755B
              DISPLAY 'FLD0755B ==> ' HEX-OF (FLD0755B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0755B).
           IF FLD0755E   NOT EQUAL XPC-FLD0755E
              DISPLAY 'FLD0755E  ==> ' FLD0755E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0755E.
           IF FLD0756B (1:)    NOT EQUAL XPC-FLD0756B
              DISPLAY 'FLD0756B ==> ' HEX-OF (FLD0756B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0756B).
           IF FLD0756E   NOT EQUAL XPC-FLD0756E
              DISPLAY 'FLD0756E  ==> ' FLD0756E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0756E.
           IF FLD0757B (1:)    NOT EQUAL XPC-FLD0757B
              DISPLAY 'FLD0757B ==> ' HEX-OF (FLD0757B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0757B).
           IF FLD0757E   NOT EQUAL XPC-FLD0757E
              DISPLAY 'FLD0757E  ==> ' FLD0757E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0757E.
           IF FLD0758B (1:)    NOT EQUAL XPC-FLD0758B
              DISPLAY 'FLD0758B ==> ' HEX-OF (FLD0758B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0758B).
           IF FLD0758E   NOT EQUAL XPC-FLD0758E
              DISPLAY 'FLD0758E  ==> ' FLD0758E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0758E.
           IF FLD0759B (1:)    NOT EQUAL XPC-FLD0759B
              DISPLAY 'FLD0759B ==> ' HEX-OF (FLD0759B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0759B).
           IF FLD0759E   NOT EQUAL XPC-FLD0759E
              DISPLAY 'FLD0759E  ==> ' FLD0759E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0759E.
           IF FLD0760B (1:)    NOT EQUAL XPC-FLD0760B
              DISPLAY 'FLD0760B ==> ' HEX-OF (FLD0760B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0760B).
           IF FLD0760E   NOT EQUAL XPC-FLD0760E
              DISPLAY 'FLD0760E  ==> ' FLD0760E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0760E.
           IF FLD0761B (1:)    NOT EQUAL XPC-FLD0761B
              DISPLAY 'FLD0761B ==> ' HEX-OF (FLD0761B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0761B).
           IF FLD0761E   NOT EQUAL XPC-FLD0761E
              DISPLAY 'FLD0761E  ==> ' FLD0761E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0761E.
           IF FLD0762B (1:)    NOT EQUAL XPC-FLD0762B
              DISPLAY 'FLD0762B ==> ' HEX-OF (FLD0762B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0762B).
           IF FLD0762E   NOT EQUAL XPC-FLD0762E
              DISPLAY 'FLD0762E  ==> ' FLD0762E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0762E.
           IF FLD0763B (1:)    NOT EQUAL XPC-FLD0763B
              DISPLAY 'FLD0763B ==> ' HEX-OF (FLD0763B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0763B).
           IF FLD0763E   NOT EQUAL XPC-FLD0763E
              DISPLAY 'FLD0763E  ==> ' FLD0763E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0763E.
           IF FLD0764B (1:)    NOT EQUAL XPC-FLD0764B
              DISPLAY 'FLD0764B ==> ' HEX-OF (FLD0764B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0764B).
           IF FLD0764E   NOT EQUAL XPC-FLD0764E
              DISPLAY 'FLD0764E  ==> ' FLD0764E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0764E.
           IF FLD0765B (1:)    NOT EQUAL XPC-FLD0765B
              DISPLAY 'FLD0765B ==> ' HEX-OF (FLD0765B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0765B).
           IF FLD0765E   NOT EQUAL XPC-FLD0765E
              DISPLAY 'FLD0765E  ==> ' FLD0765E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0765E.
           IF FLD0766B (1:)    NOT EQUAL XPC-FLD0766B
              DISPLAY 'FLD0766B ==> ' HEX-OF (FLD0766B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0766B).
           IF FLD0766E   NOT EQUAL XPC-FLD0766E
              DISPLAY 'FLD0766E  ==> ' FLD0766E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0766E.
           IF FLD0767B (1:)    NOT EQUAL XPC-FLD0767B
              DISPLAY 'FLD0767B ==> ' HEX-OF (FLD0767B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0767B).
           IF FLD0767E   NOT EQUAL XPC-FLD0767E
              DISPLAY 'FLD0767E  ==> ' FLD0767E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0767E.
           IF FLD0768B (1:)    NOT EQUAL XPC-FLD0768B
              DISPLAY 'FLD0768B ==> ' HEX-OF (FLD0768B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0768B).
           IF FLD0768E   NOT EQUAL XPC-FLD0768E
              DISPLAY 'FLD0768E  ==> ' FLD0768E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0768E.
           IF FLD0769B (1:)    NOT EQUAL XPC-FLD0769B
              DISPLAY 'FLD0769B ==> ' HEX-OF (FLD0769B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0769B).
           IF FLD0769E   NOT EQUAL XPC-FLD0769E
              DISPLAY 'FLD0769E  ==> ' FLD0769E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0769E.
           IF FLD0770B (1:)    NOT EQUAL XPC-FLD0770B
              DISPLAY 'FLD0770B ==> ' HEX-OF (FLD0770B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0770B).
           IF FLD0770E   NOT EQUAL XPC-FLD0770E
              DISPLAY 'FLD0770E  ==> ' FLD0770E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0770E.
           IF FLD0771B (1:)    NOT EQUAL XPC-FLD0771B
              DISPLAY 'FLD0771B ==> ' HEX-OF (FLD0771B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0771B).
           IF FLD0771E   NOT EQUAL XPC-FLD0771E
              DISPLAY 'FLD0771E  ==> ' FLD0771E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0771E.
           IF FLD0772B (1:)    NOT EQUAL XPC-FLD0772B
              DISPLAY 'FLD0772B ==> ' HEX-OF (FLD0772B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0772B).
           IF FLD0772E   NOT EQUAL XPC-FLD0772E
              DISPLAY 'FLD0772E  ==> ' FLD0772E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0772E.
           IF FLD0773B (1:)    NOT EQUAL XPC-FLD0773B
              DISPLAY 'FLD0773B ==> ' HEX-OF (FLD0773B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0773B).
           IF FLD0773E   NOT EQUAL XPC-FLD0773E
              DISPLAY 'FLD0773E  ==> ' FLD0773E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0773E.
           IF FLD0774B (1:)    NOT EQUAL XPC-FLD0774B
              DISPLAY 'FLD0774B ==> ' HEX-OF (FLD0774B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0774B).
           IF FLD0774E   NOT EQUAL XPC-FLD0774E
              DISPLAY 'FLD0774E  ==> ' FLD0774E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0774E.
           IF FLD0775B (1:)    NOT EQUAL XPC-FLD0775B
              DISPLAY 'FLD0775B ==> ' HEX-OF (FLD0775B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0775B).
           IF FLD0775E   NOT EQUAL XPC-FLD0775E
              DISPLAY 'FLD0775E  ==> ' FLD0775E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0775E.
           IF FLD0776B (1:)    NOT EQUAL XPC-FLD0776B
              DISPLAY 'FLD0776B ==> ' HEX-OF (FLD0776B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0776B).
           IF FLD0776E   NOT EQUAL XPC-FLD0776E
              DISPLAY 'FLD0776E  ==> ' FLD0776E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0776E.
           IF FLD0777B (1:)    NOT EQUAL XPC-FLD0777B
              DISPLAY 'FLD0777B ==> ' HEX-OF (FLD0777B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0777B).
           IF FLD0777E   NOT EQUAL XPC-FLD0777E
              DISPLAY 'FLD0777E  ==> ' FLD0777E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0777E.
           IF FLD0778B (1:)    NOT EQUAL XPC-FLD0778B
              DISPLAY 'FLD0778B ==> ' HEX-OF (FLD0778B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0778B).
           IF FLD0778E   NOT EQUAL XPC-FLD0778E
              DISPLAY 'FLD0778E  ==> ' FLD0778E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0778E.
           IF FLD0779B (1:)    NOT EQUAL XPC-FLD0779B
              DISPLAY 'FLD0779B ==> ' HEX-OF (FLD0779B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0779B).
           IF FLD0779E   NOT EQUAL XPC-FLD0779E
              DISPLAY 'FLD0779E  ==> ' FLD0779E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0779E.
           IF FLD0780B (1:)    NOT EQUAL XPC-FLD0780B
              DISPLAY 'FLD0780B ==> ' HEX-OF (FLD0780B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0780B).
           IF FLD0780E   NOT EQUAL XPC-FLD0780E
              DISPLAY 'FLD0780E  ==> ' FLD0780E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0780E.
           IF FLD0781B (1:)    NOT EQUAL XPC-FLD0781B
              DISPLAY 'FLD0781B ==> ' HEX-OF (FLD0781B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0781B).
           IF FLD0781E   NOT EQUAL XPC-FLD0781E
              DISPLAY 'FLD0781E  ==> ' FLD0781E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0781E.
           IF FLD0782B (1:)    NOT EQUAL XPC-FLD0782B
              DISPLAY 'FLD0782B ==> ' HEX-OF (FLD0782B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0782B).
           IF FLD0782E   NOT EQUAL XPC-FLD0782E
              DISPLAY 'FLD0782E  ==> ' FLD0782E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0782E.
           IF FLD0783B (1:)    NOT EQUAL XPC-FLD0783B
              DISPLAY 'FLD0783B ==> ' HEX-OF (FLD0783B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0783B).
           IF FLD0783E   NOT EQUAL XPC-FLD0783E
              DISPLAY 'FLD0783E  ==> ' FLD0783E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0783E.
           IF FLD0784B (1:)    NOT EQUAL XPC-FLD0784B
              DISPLAY 'FLD0784B ==> ' HEX-OF (FLD0784B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0784B).
           IF FLD0784E   NOT EQUAL XPC-FLD0784E
              DISPLAY 'FLD0784E  ==> ' FLD0784E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0784E.
           IF FLD0785B (1:)    NOT EQUAL XPC-FLD0785B
              DISPLAY 'FLD0785B ==> ' HEX-OF (FLD0785B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0785B).
           IF FLD0785E   NOT EQUAL XPC-FLD0785E
              DISPLAY 'FLD0785E  ==> ' FLD0785E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0785E.
           IF FLD0786B (1:)    NOT EQUAL XPC-FLD0786B
              DISPLAY 'FLD0786B ==> ' HEX-OF (FLD0786B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0786B).
           IF FLD0786E   NOT EQUAL XPC-FLD0786E
              DISPLAY 'FLD0786E  ==> ' FLD0786E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0786E.
           IF FLD0787B (1:)    NOT EQUAL XPC-FLD0787B
              DISPLAY 'FLD0787B ==> ' HEX-OF (FLD0787B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0787B).
           IF FLD0787E   NOT EQUAL XPC-FLD0787E
              DISPLAY 'FLD0787E  ==> ' FLD0787E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0787E.
           IF FLD0788B (1:)    NOT EQUAL XPC-FLD0788B
              DISPLAY 'FLD0788B ==> ' HEX-OF (FLD0788B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0788B).
           IF FLD0788E   NOT EQUAL XPC-FLD0788E
              DISPLAY 'FLD0788E  ==> ' FLD0788E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0788E.
           IF FLD0789B (1:)    NOT EQUAL XPC-FLD0789B
              DISPLAY 'FLD0789B ==> ' HEX-OF (FLD0789B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0789B).
           IF FLD0789E   NOT EQUAL XPC-FLD0789E
              DISPLAY 'FLD0789E  ==> ' FLD0789E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0789E.
           IF FLD0790B (1:)    NOT EQUAL XPC-FLD0790B
              DISPLAY 'FLD0790B ==> ' HEX-OF (FLD0790B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0790B).
           IF FLD0790E   NOT EQUAL XPC-FLD0790E
              DISPLAY 'FLD0790E  ==> ' FLD0790E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0790E.
           IF FLD0791B (1:)    NOT EQUAL XPC-FLD0791B
              DISPLAY 'FLD0791B ==> ' HEX-OF (FLD0791B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0791B).
           IF FLD0791E   NOT EQUAL XPC-FLD0791E
              DISPLAY 'FLD0791E  ==> ' FLD0791E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0791E.
           IF FLD0792B (1:)    NOT EQUAL XPC-FLD0792B
              DISPLAY 'FLD0792B ==> ' HEX-OF (FLD0792B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0792B).
           IF FLD0792E   NOT EQUAL XPC-FLD0792E
              DISPLAY 'FLD0792E  ==> ' FLD0792E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0792E.
           IF FLD0793B (1:)    NOT EQUAL XPC-FLD0793B
              DISPLAY 'FLD0793B ==> ' HEX-OF (FLD0793B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0793B).
           IF FLD0793E   NOT EQUAL XPC-FLD0793E
              DISPLAY 'FLD0793E  ==> ' FLD0793E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0793E.
           IF FLD0794B (1:)    NOT EQUAL XPC-FLD0794B
              DISPLAY 'FLD0794B ==> ' HEX-OF (FLD0794B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0794B).
           IF FLD0794E   NOT EQUAL XPC-FLD0794E
              DISPLAY 'FLD0794E  ==> ' FLD0794E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0794E.
           IF FLD0795B (1:)    NOT EQUAL XPC-FLD0795B
              DISPLAY 'FLD0795B ==> ' HEX-OF (FLD0795B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0795B).
           IF FLD0795E   NOT EQUAL XPC-FLD0795E
              DISPLAY 'FLD0795E  ==> ' FLD0795E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0795E.
           IF FLD0796B (1:)    NOT EQUAL XPC-FLD0796B
              DISPLAY 'FLD0796B ==> ' HEX-OF (FLD0796B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0796B).
           IF FLD0796E   NOT EQUAL XPC-FLD0796E
              DISPLAY 'FLD0796E  ==> ' FLD0796E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0796E.
           IF FLD0797B (1:)    NOT EQUAL XPC-FLD0797B
              DISPLAY 'FLD0797B ==> ' HEX-OF (FLD0797B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0797B).
           IF FLD0797E   NOT EQUAL XPC-FLD0797E
              DISPLAY 'FLD0797E  ==> ' FLD0797E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0797E.
           IF FLD0798B (1:)    NOT EQUAL XPC-FLD0798B
              DISPLAY 'FLD0798B ==> ' HEX-OF (FLD0798B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0798B).
           IF FLD0798E   NOT EQUAL XPC-FLD0798E
              DISPLAY 'FLD0798E  ==> ' FLD0798E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0798E.
           IF FLD0799B (1:)    NOT EQUAL XPC-FLD0799B
              DISPLAY 'FLD0799B ==> ' HEX-OF (FLD0799B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0799B).
           IF FLD0799E   NOT EQUAL XPC-FLD0799E
              DISPLAY 'FLD0799E  ==> ' FLD0799E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0799E.
           IF FLD0800B (1:)    NOT EQUAL XPC-FLD0800B
              DISPLAY 'FLD0800B ==> ' HEX-OF (FLD0800B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0800B).
           IF FLD0800E   NOT EQUAL XPC-FLD0800E
              DISPLAY 'FLD0800E  ==> ' FLD0800E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0800E.
           IF FLD0801B (1:)    NOT EQUAL XPC-FLD0801B
              DISPLAY 'FLD0801B ==> ' HEX-OF (FLD0801B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0801B).
           IF FLD0801E   NOT EQUAL XPC-FLD0801E
              DISPLAY 'FLD0801E  ==> ' FLD0801E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0801E.
           IF FLD0802B (1:)    NOT EQUAL XPC-FLD0802B
              DISPLAY 'FLD0802B ==> ' HEX-OF (FLD0802B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0802B).
           IF FLD0802E   NOT EQUAL XPC-FLD0802E
              DISPLAY 'FLD0802E  ==> ' FLD0802E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0802E.
           IF FLD0803B (1:)    NOT EQUAL XPC-FLD0803B
              DISPLAY 'FLD0803B ==> ' HEX-OF (FLD0803B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0803B).
           IF FLD0803E   NOT EQUAL XPC-FLD0803E
              DISPLAY 'FLD0803E  ==> ' FLD0803E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0803E.
           IF FLD0804B (1:)    NOT EQUAL XPC-FLD0804B
              DISPLAY 'FLD0804B ==> ' HEX-OF (FLD0804B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0804B).
           IF FLD0804E   NOT EQUAL XPC-FLD0804E
              DISPLAY 'FLD0804E  ==> ' FLD0804E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0804E.
           IF FLD0805B (1:)    NOT EQUAL XPC-FLD0805B
              DISPLAY 'FLD0805B ==> ' HEX-OF (FLD0805B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0805B).
           IF FLD0805E   NOT EQUAL XPC-FLD0805E
              DISPLAY 'FLD0805E  ==> ' FLD0805E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0805E.
           IF FLD0806B (1:)    NOT EQUAL XPC-FLD0806B
              DISPLAY 'FLD0806B ==> ' HEX-OF (FLD0806B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0806B).
           IF FLD0806E   NOT EQUAL XPC-FLD0806E
              DISPLAY 'FLD0806E  ==> ' FLD0806E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0806E.
           IF FLD0807B (1:)    NOT EQUAL XPC-FLD0807B
              DISPLAY 'FLD0807B ==> ' HEX-OF (FLD0807B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0807B).
           IF FLD0807E   NOT EQUAL XPC-FLD0807E
              DISPLAY 'FLD0807E  ==> ' FLD0807E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0807E.
           IF FLD0808B (1:)    NOT EQUAL XPC-FLD0808B
              DISPLAY 'FLD0808B ==> ' HEX-OF (FLD0808B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0808B).
           IF FLD0808E   NOT EQUAL XPC-FLD0808E
              DISPLAY 'FLD0808E  ==> ' FLD0808E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0808E.
           IF FLD0809B (1:)    NOT EQUAL XPC-FLD0809B
              DISPLAY 'FLD0809B ==> ' HEX-OF (FLD0809B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0809B).
           IF FLD0809E   NOT EQUAL XPC-FLD0809E
              DISPLAY 'FLD0809E  ==> ' FLD0809E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0809E.
           IF FLD0810B (1:)    NOT EQUAL XPC-FLD0810B
              DISPLAY 'FLD0810B ==> ' HEX-OF (FLD0810B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0810B).
           IF FLD0810E   NOT EQUAL XPC-FLD0810E
              DISPLAY 'FLD0810E  ==> ' FLD0810E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0810E.
           IF FLD0811B (1:)    NOT EQUAL XPC-FLD0811B
              DISPLAY 'FLD0811B ==> ' HEX-OF (FLD0811B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0811B).
           IF FLD0811E   NOT EQUAL XPC-FLD0811E
              DISPLAY 'FLD0811E  ==> ' FLD0811E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0811E.
           IF FLD0812B (1:)    NOT EQUAL XPC-FLD0812B
              DISPLAY 'FLD0812B ==> ' HEX-OF (FLD0812B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0812B).
           IF FLD0812E   NOT EQUAL XPC-FLD0812E
              DISPLAY 'FLD0812E  ==> ' FLD0812E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0812E.
           IF FLD0813B (1:)    NOT EQUAL XPC-FLD0813B
              DISPLAY 'FLD0813B ==> ' HEX-OF (FLD0813B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0813B).
           IF FLD0813E   NOT EQUAL XPC-FLD0813E
              DISPLAY 'FLD0813E  ==> ' FLD0813E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0813E.
           IF FLD0814B (1:)    NOT EQUAL XPC-FLD0814B
              DISPLAY 'FLD0814B ==> ' HEX-OF (FLD0814B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0814B).
           IF FLD0814E   NOT EQUAL XPC-FLD0814E
              DISPLAY 'FLD0814E  ==> ' FLD0814E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0814E.
           IF FLD0815B (1:)    NOT EQUAL XPC-FLD0815B
              DISPLAY 'FLD0815B ==> ' HEX-OF (FLD0815B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0815B).
           IF FLD0815E   NOT EQUAL XPC-FLD0815E
              DISPLAY 'FLD0815E  ==> ' FLD0815E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0815E.
           IF FLD0816B (1:)    NOT EQUAL XPC-FLD0816B
              DISPLAY 'FLD0816B ==> ' HEX-OF (FLD0816B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0816B).
           IF FLD0816E   NOT EQUAL XPC-FLD0816E
              DISPLAY 'FLD0816E  ==> ' FLD0816E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0816E.
           IF FLD0817B (1:)    NOT EQUAL XPC-FLD0817B
              DISPLAY 'FLD0817B ==> ' HEX-OF (FLD0817B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0817B).
           IF FLD0817E   NOT EQUAL XPC-FLD0817E
              DISPLAY 'FLD0817E  ==> ' FLD0817E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0817E.
           IF FLD0818B (1:)    NOT EQUAL XPC-FLD0818B
              DISPLAY 'FLD0818B ==> ' HEX-OF (FLD0818B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0818B).
           IF FLD0818E   NOT EQUAL XPC-FLD0818E
              DISPLAY 'FLD0818E  ==> ' FLD0818E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0818E.
           IF FLD0819B (1:)    NOT EQUAL XPC-FLD0819B
              DISPLAY 'FLD0819B ==> ' HEX-OF (FLD0819B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0819B).
           IF FLD0819E   NOT EQUAL XPC-FLD0819E
              DISPLAY 'FLD0819E  ==> ' FLD0819E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0819E.
           IF FLD0820B (1:)    NOT EQUAL XPC-FLD0820B
              DISPLAY 'FLD0820B ==> ' HEX-OF (FLD0820B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0820B).
           IF FLD0820E   NOT EQUAL XPC-FLD0820E
              DISPLAY 'FLD0820E  ==> ' FLD0820E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0820E.
           IF FLD0821B (1:)    NOT EQUAL XPC-FLD0821B
              DISPLAY 'FLD0821B ==> ' HEX-OF (FLD0821B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0821B).
           IF FLD0821E   NOT EQUAL XPC-FLD0821E
              DISPLAY 'FLD0821E  ==> ' FLD0821E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0821E.
           IF FLD0822B (1:)    NOT EQUAL XPC-FLD0822B
              DISPLAY 'FLD0822B ==> ' HEX-OF (FLD0822B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0822B).
           IF FLD0822E   NOT EQUAL XPC-FLD0822E
              DISPLAY 'FLD0822E  ==> ' FLD0822E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0822E.
           IF FLD0823B (1:)    NOT EQUAL XPC-FLD0823B
              DISPLAY 'FLD0823B ==> ' HEX-OF (FLD0823B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0823B).
           IF FLD0823E   NOT EQUAL XPC-FLD0823E
              DISPLAY 'FLD0823E  ==> ' FLD0823E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0823E.
           IF FLD0824B (1:)    NOT EQUAL XPC-FLD0824B
              DISPLAY 'FLD0824B ==> ' HEX-OF (FLD0824B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0824B).
           IF FLD0824E   NOT EQUAL XPC-FLD0824E
              DISPLAY 'FLD0824E  ==> ' FLD0824E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0824E.
           IF FLD0825B (1:)    NOT EQUAL XPC-FLD0825B
              DISPLAY 'FLD0825B ==> ' HEX-OF (FLD0825B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0825B).
           IF FLD0825E   NOT EQUAL XPC-FLD0825E
              DISPLAY 'FLD0825E  ==> ' FLD0825E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0825E.
           IF FLD0826B (1:)    NOT EQUAL XPC-FLD0826B
              DISPLAY 'FLD0826B ==> ' HEX-OF (FLD0826B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0826B).
           IF FLD0826E   NOT EQUAL XPC-FLD0826E
              DISPLAY 'FLD0826E  ==> ' FLD0826E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0826E.
           IF FLD0827B (1:)    NOT EQUAL XPC-FLD0827B
              DISPLAY 'FLD0827B ==> ' HEX-OF (FLD0827B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0827B).
           IF FLD0827E   NOT EQUAL XPC-FLD0827E
              DISPLAY 'FLD0827E  ==> ' FLD0827E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0827E.
           IF FLD0828B (1:)    NOT EQUAL XPC-FLD0828B
              DISPLAY 'FLD0828B ==> ' HEX-OF (FLD0828B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0828B).
           IF FLD0828E   NOT EQUAL XPC-FLD0828E
              DISPLAY 'FLD0828E  ==> ' FLD0828E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0828E.
           IF FLD0829B (1:)    NOT EQUAL XPC-FLD0829B
              DISPLAY 'FLD0829B ==> ' HEX-OF (FLD0829B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0829B).
           IF FLD0829E   NOT EQUAL XPC-FLD0829E
              DISPLAY 'FLD0829E  ==> ' FLD0829E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0829E.
           IF FLD0830B (1:)    NOT EQUAL XPC-FLD0830B
              DISPLAY 'FLD0830B ==> ' HEX-OF (FLD0830B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0830B).
           IF FLD0830E   NOT EQUAL XPC-FLD0830E
              DISPLAY 'FLD0830E  ==> ' FLD0830E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0830E.
           IF FLD0831B (1:)    NOT EQUAL XPC-FLD0831B
              DISPLAY 'FLD0831B ==> ' HEX-OF (FLD0831B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0831B).
           IF FLD0831E   NOT EQUAL XPC-FLD0831E
              DISPLAY 'FLD0831E  ==> ' FLD0831E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0831E.
           IF FLD0832B (1:)    NOT EQUAL XPC-FLD0832B
              DISPLAY 'FLD0832B ==> ' HEX-OF (FLD0832B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0832B).
           IF FLD0832E   NOT EQUAL XPC-FLD0832E
              DISPLAY 'FLD0832E  ==> ' FLD0832E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0832E.
           IF FLD0833B (1:)    NOT EQUAL XPC-FLD0833B
              DISPLAY 'FLD0833B ==> ' HEX-OF (FLD0833B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0833B).
           IF FLD0833E   NOT EQUAL XPC-FLD0833E
              DISPLAY 'FLD0833E  ==> ' FLD0833E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0833E.
           IF FLD0834B (1:)    NOT EQUAL XPC-FLD0834B
              DISPLAY 'FLD0834B ==> ' HEX-OF (FLD0834B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0834B).
           IF FLD0834E   NOT EQUAL XPC-FLD0834E
              DISPLAY 'FLD0834E  ==> ' FLD0834E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0834E.
           IF FLD0835B (1:)    NOT EQUAL XPC-FLD0835B
              DISPLAY 'FLD0835B ==> ' HEX-OF (FLD0835B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0835B).
           IF FLD0835E   NOT EQUAL XPC-FLD0835E
              DISPLAY 'FLD0835E  ==> ' FLD0835E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0835E.
           IF FLD0836B (1:)    NOT EQUAL XPC-FLD0836B
              DISPLAY 'FLD0836B ==> ' HEX-OF (FLD0836B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0836B).
           IF FLD0836E   NOT EQUAL XPC-FLD0836E
              DISPLAY 'FLD0836E  ==> ' FLD0836E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0836E.
           IF FLD0837B (1:)    NOT EQUAL XPC-FLD0837B
              DISPLAY 'FLD0837B ==> ' HEX-OF (FLD0837B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0837B).
           IF FLD0837E   NOT EQUAL XPC-FLD0837E
              DISPLAY 'FLD0837E  ==> ' FLD0837E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0837E.
           IF FLD0838B (1:)    NOT EQUAL XPC-FLD0838B
              DISPLAY 'FLD0838B ==> ' HEX-OF (FLD0838B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0838B).
           IF FLD0838E   NOT EQUAL XPC-FLD0838E
              DISPLAY 'FLD0838E  ==> ' FLD0838E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0838E.
           IF FLD0839B (1:)    NOT EQUAL XPC-FLD0839B
              DISPLAY 'FLD0839B ==> ' HEX-OF (FLD0839B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0839B).
           IF FLD0839E   NOT EQUAL XPC-FLD0839E
              DISPLAY 'FLD0839E  ==> ' FLD0839E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0839E.
           IF FLD0840B (1:)    NOT EQUAL XPC-FLD0840B
              DISPLAY 'FLD0840B ==> ' HEX-OF (FLD0840B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0840B).
           IF FLD0840E   NOT EQUAL XPC-FLD0840E
              DISPLAY 'FLD0840E  ==> ' FLD0840E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0840E.
           IF FLD0841B (1:)    NOT EQUAL XPC-FLD0841B
              DISPLAY 'FLD0841B ==> ' HEX-OF (FLD0841B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0841B).
           IF FLD0841E   NOT EQUAL XPC-FLD0841E
              DISPLAY 'FLD0841E  ==> ' FLD0841E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0841E.
           IF FLD0842B (1:)    NOT EQUAL XPC-FLD0842B
              DISPLAY 'FLD0842B ==> ' HEX-OF (FLD0842B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0842B).
           IF FLD0842E   NOT EQUAL XPC-FLD0842E
              DISPLAY 'FLD0842E  ==> ' FLD0842E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0842E.
           IF FLD0843B (1:)    NOT EQUAL XPC-FLD0843B
              DISPLAY 'FLD0843B ==> ' HEX-OF (FLD0843B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0843B).
           IF FLD0843E   NOT EQUAL XPC-FLD0843E
              DISPLAY 'FLD0843E  ==> ' FLD0843E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0843E.
           IF FLD0844B (1:)    NOT EQUAL XPC-FLD0844B
              DISPLAY 'FLD0844B ==> ' HEX-OF (FLD0844B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0844B).
           IF FLD0844E   NOT EQUAL XPC-FLD0844E
              DISPLAY 'FLD0844E  ==> ' FLD0844E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0844E.
           IF FLD0845B (1:)    NOT EQUAL XPC-FLD0845B
              DISPLAY 'FLD0845B ==> ' HEX-OF (FLD0845B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0845B).
           IF FLD0845E   NOT EQUAL XPC-FLD0845E
              DISPLAY 'FLD0845E  ==> ' FLD0845E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0845E.
           IF FLD0846B (1:)    NOT EQUAL XPC-FLD0846B
              DISPLAY 'FLD0846B ==> ' HEX-OF (FLD0846B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0846B).
           IF FLD0846E   NOT EQUAL XPC-FLD0846E
              DISPLAY 'FLD0846E  ==> ' FLD0846E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0846E.
           IF FLD0847B (1:)    NOT EQUAL XPC-FLD0847B
              DISPLAY 'FLD0847B ==> ' HEX-OF (FLD0847B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0847B).
           IF FLD0847E   NOT EQUAL XPC-FLD0847E
              DISPLAY 'FLD0847E  ==> ' FLD0847E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0847E.
           IF FLD0848B (1:)    NOT EQUAL XPC-FLD0848B
              DISPLAY 'FLD0848B ==> ' HEX-OF (FLD0848B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0848B).
           IF FLD0848E   NOT EQUAL XPC-FLD0848E
              DISPLAY 'FLD0848E  ==> ' FLD0848E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0848E.
           IF FLD0849B (1:)    NOT EQUAL XPC-FLD0849B
              DISPLAY 'FLD0849B ==> ' HEX-OF (FLD0849B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0849B).
           IF FLD0849E   NOT EQUAL XPC-FLD0849E
              DISPLAY 'FLD0849E  ==> ' FLD0849E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0849E.
           IF FLD0850B (1:)    NOT EQUAL XPC-FLD0850B
              DISPLAY 'FLD0850B ==> ' HEX-OF (FLD0850B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0850B).
           IF FLD0850E   NOT EQUAL XPC-FLD0850E
              DISPLAY 'FLD0850E  ==> ' FLD0850E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0850E.
           IF FLD0851B (1:)    NOT EQUAL XPC-FLD0851B
              DISPLAY 'FLD0851B ==> ' HEX-OF (FLD0851B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0851B).
           IF FLD0851E   NOT EQUAL XPC-FLD0851E
              DISPLAY 'FLD0851E  ==> ' FLD0851E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0851E.
           IF FLD0852B (1:)    NOT EQUAL XPC-FLD0852B
              DISPLAY 'FLD0852B ==> ' HEX-OF (FLD0852B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0852B).
           IF FLD0852E   NOT EQUAL XPC-FLD0852E
              DISPLAY 'FLD0852E  ==> ' FLD0852E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0852E.
           IF FLD0853B (1:)    NOT EQUAL XPC-FLD0853B
              DISPLAY 'FLD0853B ==> ' HEX-OF (FLD0853B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0853B).
           IF FLD0853E   NOT EQUAL XPC-FLD0853E
              DISPLAY 'FLD0853E  ==> ' FLD0853E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0853E.
           IF FLD0854B (1:)    NOT EQUAL XPC-FLD0854B
              DISPLAY 'FLD0854B ==> ' HEX-OF (FLD0854B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0854B).
           IF FLD0854E   NOT EQUAL XPC-FLD0854E
              DISPLAY 'FLD0854E  ==> ' FLD0854E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0854E.
           IF FLD0855B (1:)    NOT EQUAL XPC-FLD0855B
              DISPLAY 'FLD0855B ==> ' HEX-OF (FLD0855B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0855B).
           IF FLD0855E   NOT EQUAL XPC-FLD0855E
              DISPLAY 'FLD0855E  ==> ' FLD0855E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0855E.
           IF FLD0856B (1:)    NOT EQUAL XPC-FLD0856B
              DISPLAY 'FLD0856B ==> ' HEX-OF (FLD0856B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0856B).
           IF FLD0856E   NOT EQUAL XPC-FLD0856E
              DISPLAY 'FLD0856E  ==> ' FLD0856E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0856E.
           IF FLD0857B (1:)    NOT EQUAL XPC-FLD0857B
              DISPLAY 'FLD0857B ==> ' HEX-OF (FLD0857B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0857B).
           IF FLD0857E   NOT EQUAL XPC-FLD0857E
              DISPLAY 'FLD0857E  ==> ' FLD0857E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0857E.
           IF FLD0858B (1:)    NOT EQUAL XPC-FLD0858B
              DISPLAY 'FLD0858B ==> ' HEX-OF (FLD0858B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0858B).
           IF FLD0858E   NOT EQUAL XPC-FLD0858E
              DISPLAY 'FLD0858E  ==> ' FLD0858E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0858E.
           IF FLD0859B (1:)    NOT EQUAL XPC-FLD0859B
              DISPLAY 'FLD0859B ==> ' HEX-OF (FLD0859B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0859B).
           IF FLD0859E   NOT EQUAL XPC-FLD0859E
              DISPLAY 'FLD0859E  ==> ' FLD0859E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0859E.
           IF FLD0860B (1:)    NOT EQUAL XPC-FLD0860B
              DISPLAY 'FLD0860B ==> ' HEX-OF (FLD0860B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0860B).
           IF FLD0860E   NOT EQUAL XPC-FLD0860E
              DISPLAY 'FLD0860E  ==> ' FLD0860E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0860E.
           IF FLD0861B (1:)    NOT EQUAL XPC-FLD0861B
              DISPLAY 'FLD0861B ==> ' HEX-OF (FLD0861B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0861B).
           IF FLD0861E   NOT EQUAL XPC-FLD0861E
              DISPLAY 'FLD0861E  ==> ' FLD0861E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0861E.
           IF FLD0862B (1:)    NOT EQUAL XPC-FLD0862B
              DISPLAY 'FLD0862B ==> ' HEX-OF (FLD0862B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0862B).
           IF FLD0862E   NOT EQUAL XPC-FLD0862E
              DISPLAY 'FLD0862E  ==> ' FLD0862E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0862E.
           IF FLD0863B (1:)    NOT EQUAL XPC-FLD0863B
              DISPLAY 'FLD0863B ==> ' HEX-OF (FLD0863B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0863B).
           IF FLD0863E   NOT EQUAL XPC-FLD0863E
              DISPLAY 'FLD0863E  ==> ' FLD0863E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0863E.
           IF FLD0864B (1:)    NOT EQUAL XPC-FLD0864B
              DISPLAY 'FLD0864B ==> ' HEX-OF (FLD0864B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0864B).
           IF FLD0864E   NOT EQUAL XPC-FLD0864E
              DISPLAY 'FLD0864E  ==> ' FLD0864E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0864E.
           IF FLD0865B (1:)    NOT EQUAL XPC-FLD0865B
              DISPLAY 'FLD0865B ==> ' HEX-OF (FLD0865B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0865B).
           IF FLD0865E   NOT EQUAL XPC-FLD0865E
              DISPLAY 'FLD0865E  ==> ' FLD0865E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0865E.
           IF FLD0866B (1:)    NOT EQUAL XPC-FLD0866B
              DISPLAY 'FLD0866B ==> ' HEX-OF (FLD0866B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0866B).
           IF FLD0866E   NOT EQUAL XPC-FLD0866E
              DISPLAY 'FLD0866E  ==> ' FLD0866E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0866E.
           IF FLD0867B (1:)    NOT EQUAL XPC-FLD0867B
              DISPLAY 'FLD0867B ==> ' HEX-OF (FLD0867B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0867B).
           IF FLD0867E   NOT EQUAL XPC-FLD0867E
              DISPLAY 'FLD0867E  ==> ' FLD0867E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0867E.
           IF FLD0868B (1:)    NOT EQUAL XPC-FLD0868B
              DISPLAY 'FLD0868B ==> ' HEX-OF (FLD0868B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0868B).
           IF FLD0868E   NOT EQUAL XPC-FLD0868E
              DISPLAY 'FLD0868E  ==> ' FLD0868E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0868E.
           IF FLD0869B (1:)    NOT EQUAL XPC-FLD0869B
              DISPLAY 'FLD0869B ==> ' HEX-OF (FLD0869B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0869B).
           IF FLD0869E   NOT EQUAL XPC-FLD0869E
              DISPLAY 'FLD0869E  ==> ' FLD0869E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0869E.
           IF FLD0870B (1:)    NOT EQUAL XPC-FLD0870B
              DISPLAY 'FLD0870B ==> ' HEX-OF (FLD0870B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0870B).
           IF FLD0870E   NOT EQUAL XPC-FLD0870E
              DISPLAY 'FLD0870E  ==> ' FLD0870E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0870E.
           IF FLD0871B (1:)    NOT EQUAL XPC-FLD0871B
              DISPLAY 'FLD0871B ==> ' HEX-OF (FLD0871B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0871B).
           IF FLD0871E   NOT EQUAL XPC-FLD0871E
              DISPLAY 'FLD0871E  ==> ' FLD0871E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0871E.
           IF FLD0872B (1:)    NOT EQUAL XPC-FLD0872B
              DISPLAY 'FLD0872B ==> ' HEX-OF (FLD0872B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0872B).
           IF FLD0872E   NOT EQUAL XPC-FLD0872E
              DISPLAY 'FLD0872E  ==> ' FLD0872E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0872E.
           IF FLD0873B (1:)    NOT EQUAL XPC-FLD0873B
              DISPLAY 'FLD0873B ==> ' HEX-OF (FLD0873B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0873B).
           IF FLD0873E   NOT EQUAL XPC-FLD0873E
              DISPLAY 'FLD0873E  ==> ' FLD0873E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0873E.
           IF FLD0874B (1:)    NOT EQUAL XPC-FLD0874B
              DISPLAY 'FLD0874B ==> ' HEX-OF (FLD0874B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0874B).
           IF FLD0874E   NOT EQUAL XPC-FLD0874E
              DISPLAY 'FLD0874E  ==> ' FLD0874E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0874E.
           IF FLD0875B (1:)    NOT EQUAL XPC-FLD0875B
              DISPLAY 'FLD0875B ==> ' HEX-OF (FLD0875B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0875B).
           IF FLD0875E   NOT EQUAL XPC-FLD0875E
              DISPLAY 'FLD0875E  ==> ' FLD0875E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0875E.
           IF FLD0876B (1:)    NOT EQUAL XPC-FLD0876B
              DISPLAY 'FLD0876B ==> ' HEX-OF (FLD0876B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0876B).
           IF FLD0876E   NOT EQUAL XPC-FLD0876E
              DISPLAY 'FLD0876E  ==> ' FLD0876E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0876E.
           IF FLD0877B (1:)    NOT EQUAL XPC-FLD0877B
              DISPLAY 'FLD0877B ==> ' HEX-OF (FLD0877B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0877B).
           IF FLD0877E   NOT EQUAL XPC-FLD0877E
              DISPLAY 'FLD0877E  ==> ' FLD0877E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0877E.
           IF FLD0878B (1:)    NOT EQUAL XPC-FLD0878B
              DISPLAY 'FLD0878B ==> ' HEX-OF (FLD0878B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0878B).
           IF FLD0878E   NOT EQUAL XPC-FLD0878E
              DISPLAY 'FLD0878E  ==> ' FLD0878E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0878E.
           IF FLD0879B (1:)    NOT EQUAL XPC-FLD0879B
              DISPLAY 'FLD0879B ==> ' HEX-OF (FLD0879B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0879B).
           IF FLD0879E   NOT EQUAL XPC-FLD0879E
              DISPLAY 'FLD0879E  ==> ' FLD0879E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0879E.
           IF FLD0880B (1:)    NOT EQUAL XPC-FLD0880B
              DISPLAY 'FLD0880B ==> ' HEX-OF (FLD0880B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0880B).
           IF FLD0880E   NOT EQUAL XPC-FLD0880E
              DISPLAY 'FLD0880E  ==> ' FLD0880E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0880E.
           IF FLD0881B (1:)    NOT EQUAL XPC-FLD0881B
              DISPLAY 'FLD0881B ==> ' HEX-OF (FLD0881B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0881B).
           IF FLD0881E   NOT EQUAL XPC-FLD0881E
              DISPLAY 'FLD0881E  ==> ' FLD0881E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0881E.
           IF FLD0882B (1:)    NOT EQUAL XPC-FLD0882B
              DISPLAY 'FLD0882B ==> ' HEX-OF (FLD0882B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0882B).
           IF FLD0882E   NOT EQUAL XPC-FLD0882E
              DISPLAY 'FLD0882E  ==> ' FLD0882E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0882E.
           IF FLD0883B (1:)    NOT EQUAL XPC-FLD0883B
              DISPLAY 'FLD0883B ==> ' HEX-OF (FLD0883B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0883B).
           IF FLD0883E   NOT EQUAL XPC-FLD0883E
              DISPLAY 'FLD0883E  ==> ' FLD0883E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0883E.
           IF FLD0884B (1:)    NOT EQUAL XPC-FLD0884B
              DISPLAY 'FLD0884B ==> ' HEX-OF (FLD0884B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0884B).
           IF FLD0884E   NOT EQUAL XPC-FLD0884E
              DISPLAY 'FLD0884E  ==> ' FLD0884E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0884E.
           IF FLD0885B (1:)    NOT EQUAL XPC-FLD0885B
              DISPLAY 'FLD0885B ==> ' HEX-OF (FLD0885B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0885B).
           IF FLD0885E   NOT EQUAL XPC-FLD0885E
              DISPLAY 'FLD0885E  ==> ' FLD0885E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0885E.
           IF FLD0886B (1:)    NOT EQUAL XPC-FLD0886B
              DISPLAY 'FLD0886B ==> ' HEX-OF (FLD0886B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0886B).
           IF FLD0886E   NOT EQUAL XPC-FLD0886E
              DISPLAY 'FLD0886E  ==> ' FLD0886E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0886E.
           IF FLD0887B (1:)    NOT EQUAL XPC-FLD0887B
              DISPLAY 'FLD0887B ==> ' HEX-OF (FLD0887B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0887B).
           IF FLD0887E   NOT EQUAL XPC-FLD0887E
              DISPLAY 'FLD0887E  ==> ' FLD0887E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0887E.
           IF FLD0888B (1:)    NOT EQUAL XPC-FLD0888B
              DISPLAY 'FLD0888B ==> ' HEX-OF (FLD0888B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0888B).
           IF FLD0888E   NOT EQUAL XPC-FLD0888E
              DISPLAY 'FLD0888E  ==> ' FLD0888E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0888E.
           IF FLD0889B (1:)    NOT EQUAL XPC-FLD0889B
              DISPLAY 'FLD0889B ==> ' HEX-OF (FLD0889B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0889B).
           IF FLD0889E   NOT EQUAL XPC-FLD0889E
              DISPLAY 'FLD0889E  ==> ' FLD0889E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0889E.
           IF FLD0890B (1:)    NOT EQUAL XPC-FLD0890B
              DISPLAY 'FLD0890B ==> ' HEX-OF (FLD0890B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0890B).
           IF FLD0890E   NOT EQUAL XPC-FLD0890E
              DISPLAY 'FLD0890E  ==> ' FLD0890E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0890E.
           IF FLD0891B (1:)    NOT EQUAL XPC-FLD0891B
              DISPLAY 'FLD0891B ==> ' HEX-OF (FLD0891B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0891B).
           IF FLD0891E   NOT EQUAL XPC-FLD0891E
              DISPLAY 'FLD0891E  ==> ' FLD0891E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0891E.
           IF FLD0892B (1:)    NOT EQUAL XPC-FLD0892B
              DISPLAY 'FLD0892B ==> ' HEX-OF (FLD0892B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0892B).
           IF FLD0892E   NOT EQUAL XPC-FLD0892E
              DISPLAY 'FLD0892E  ==> ' FLD0892E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0892E.
           IF FLD0893B (1:)    NOT EQUAL XPC-FLD0893B
              DISPLAY 'FLD0893B ==> ' HEX-OF (FLD0893B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0893B).
           IF FLD0893E   NOT EQUAL XPC-FLD0893E
              DISPLAY 'FLD0893E  ==> ' FLD0893E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0893E.
           IF FLD0894B (1:)    NOT EQUAL XPC-FLD0894B
              DISPLAY 'FLD0894B ==> ' HEX-OF (FLD0894B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0894B).
           IF FLD0894E   NOT EQUAL XPC-FLD0894E
              DISPLAY 'FLD0894E  ==> ' FLD0894E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0894E.
           IF FLD0895B (1:)    NOT EQUAL XPC-FLD0895B
              DISPLAY 'FLD0895B ==> ' HEX-OF (FLD0895B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0895B).
           IF FLD0895E   NOT EQUAL XPC-FLD0895E
              DISPLAY 'FLD0895E  ==> ' FLD0895E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0895E.
           IF FLD0896B (1:)    NOT EQUAL XPC-FLD0896B
              DISPLAY 'FLD0896B ==> ' HEX-OF (FLD0896B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0896B).
           IF FLD0896E   NOT EQUAL XPC-FLD0896E
              DISPLAY 'FLD0896E  ==> ' FLD0896E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0896E.
           IF FLD0897B (1:)    NOT EQUAL XPC-FLD0897B
              DISPLAY 'FLD0897B ==> ' HEX-OF (FLD0897B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0897B).
           IF FLD0897E   NOT EQUAL XPC-FLD0897E
              DISPLAY 'FLD0897E  ==> ' FLD0897E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0897E.
           IF FLD0898B (1:)    NOT EQUAL XPC-FLD0898B
              DISPLAY 'FLD0898B ==> ' HEX-OF (FLD0898B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0898B).
           IF FLD0898E   NOT EQUAL XPC-FLD0898E
              DISPLAY 'FLD0898E  ==> ' FLD0898E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0898E.
           IF FLD0899B (1:)    NOT EQUAL XPC-FLD0899B
              DISPLAY 'FLD0899B ==> ' HEX-OF (FLD0899B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0899B).
           IF FLD0899E   NOT EQUAL XPC-FLD0899E
              DISPLAY 'FLD0899E  ==> ' FLD0899E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0899E.
           IF FLD0900B (1:)    NOT EQUAL XPC-FLD0900B
              DISPLAY 'FLD0900B ==> ' HEX-OF (FLD0900B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0900B).
           IF FLD0900E   NOT EQUAL XPC-FLD0900E
              DISPLAY 'FLD0900E  ==> ' FLD0900E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0900E.
           IF FLD0901B (1:)    NOT EQUAL XPC-FLD0901B
              DISPLAY 'FLD0901B ==> ' HEX-OF (FLD0901B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0901B).
           IF FLD0901E   NOT EQUAL XPC-FLD0901E
              DISPLAY 'FLD0901E  ==> ' FLD0901E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0901E.
           IF FLD0902B (1:)    NOT EQUAL XPC-FLD0902B
              DISPLAY 'FLD0902B ==> ' HEX-OF (FLD0902B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0902B).
           IF FLD0902E   NOT EQUAL XPC-FLD0902E
              DISPLAY 'FLD0902E  ==> ' FLD0902E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0902E.
           IF FLD0903B (1:)    NOT EQUAL XPC-FLD0903B
              DISPLAY 'FLD0903B ==> ' HEX-OF (FLD0903B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0903B).
           IF FLD0903E   NOT EQUAL XPC-FLD0903E
              DISPLAY 'FLD0903E  ==> ' FLD0903E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0903E.
           IF FLD0904B (1:)    NOT EQUAL XPC-FLD0904B
              DISPLAY 'FLD0904B ==> ' HEX-OF (FLD0904B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0904B).
           IF FLD0904E   NOT EQUAL XPC-FLD0904E
              DISPLAY 'FLD0904E  ==> ' FLD0904E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0904E.
           IF FLD0905B (1:)    NOT EQUAL XPC-FLD0905B
              DISPLAY 'FLD0905B ==> ' HEX-OF (FLD0905B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0905B).
           IF FLD0905E   NOT EQUAL XPC-FLD0905E
              DISPLAY 'FLD0905E  ==> ' FLD0905E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0905E.
           IF FLD0906B (1:)    NOT EQUAL XPC-FLD0906B
              DISPLAY 'FLD0906B ==> ' HEX-OF (FLD0906B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0906B).
           IF FLD0906E   NOT EQUAL XPC-FLD0906E
              DISPLAY 'FLD0906E  ==> ' FLD0906E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0906E.
           IF FLD0907B (1:)    NOT EQUAL XPC-FLD0907B
              DISPLAY 'FLD0907B ==> ' HEX-OF (FLD0907B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0907B).
           IF FLD0907E   NOT EQUAL XPC-FLD0907E
              DISPLAY 'FLD0907E  ==> ' FLD0907E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0907E.
           IF FLD0908B (1:)    NOT EQUAL XPC-FLD0908B
              DISPLAY 'FLD0908B ==> ' HEX-OF (FLD0908B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0908B).
           IF FLD0908E   NOT EQUAL XPC-FLD0908E
              DISPLAY 'FLD0908E  ==> ' FLD0908E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0908E.
           IF FLD0909B (1:)    NOT EQUAL XPC-FLD0909B
              DISPLAY 'FLD0909B ==> ' HEX-OF (FLD0909B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0909B).
           IF FLD0909E   NOT EQUAL XPC-FLD0909E
              DISPLAY 'FLD0909E  ==> ' FLD0909E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0909E.
           IF FLD0910B (1:)    NOT EQUAL XPC-FLD0910B
              DISPLAY 'FLD0910B ==> ' HEX-OF (FLD0910B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0910B).
           IF FLD0910E   NOT EQUAL XPC-FLD0910E
              DISPLAY 'FLD0910E  ==> ' FLD0910E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0910E.
           IF FLD0911B (1:)    NOT EQUAL XPC-FLD0911B
              DISPLAY 'FLD0911B ==> ' HEX-OF (FLD0911B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0911B).
           IF FLD0911E   NOT EQUAL XPC-FLD0911E
              DISPLAY 'FLD0911E  ==> ' FLD0911E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0911E.
           IF FLD0912B (1:)    NOT EQUAL XPC-FLD0912B
              DISPLAY 'FLD0912B ==> ' HEX-OF (FLD0912B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0912B).
           IF FLD0912E   NOT EQUAL XPC-FLD0912E
              DISPLAY 'FLD0912E  ==> ' FLD0912E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0912E.
           IF FLD0913B (1:)    NOT EQUAL XPC-FLD0913B
              DISPLAY 'FLD0913B ==> ' HEX-OF (FLD0913B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0913B).
           IF FLD0913E   NOT EQUAL XPC-FLD0913E
              DISPLAY 'FLD0913E  ==> ' FLD0913E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0913E.
           IF FLD0914B (1:)    NOT EQUAL XPC-FLD0914B
              DISPLAY 'FLD0914B ==> ' HEX-OF (FLD0914B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0914B).
           IF FLD0914E   NOT EQUAL XPC-FLD0914E
              DISPLAY 'FLD0914E  ==> ' FLD0914E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0914E.
           IF FLD0915B (1:)    NOT EQUAL XPC-FLD0915B
              DISPLAY 'FLD0915B ==> ' HEX-OF (FLD0915B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0915B).
           IF FLD0915E   NOT EQUAL XPC-FLD0915E
              DISPLAY 'FLD0915E  ==> ' FLD0915E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0915E.
           IF FLD0916B (1:)    NOT EQUAL XPC-FLD0916B
              DISPLAY 'FLD0916B ==> ' HEX-OF (FLD0916B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0916B).
           IF FLD0916E   NOT EQUAL XPC-FLD0916E
              DISPLAY 'FLD0916E  ==> ' FLD0916E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0916E.
           IF FLD0917B (1:)    NOT EQUAL XPC-FLD0917B
              DISPLAY 'FLD0917B ==> ' HEX-OF (FLD0917B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0917B).
           IF FLD0917E   NOT EQUAL XPC-FLD0917E
              DISPLAY 'FLD0917E  ==> ' FLD0917E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0917E.
           IF FLD0918B (1:)    NOT EQUAL XPC-FLD0918B
              DISPLAY 'FLD0918B ==> ' HEX-OF (FLD0918B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0918B).
           IF FLD0918E   NOT EQUAL XPC-FLD0918E
              DISPLAY 'FLD0918E  ==> ' FLD0918E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0918E.
           IF FLD0919B (1:)    NOT EQUAL XPC-FLD0919B
              DISPLAY 'FLD0919B ==> ' HEX-OF (FLD0919B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0919B).
           IF FLD0919E   NOT EQUAL XPC-FLD0919E
              DISPLAY 'FLD0919E  ==> ' FLD0919E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0919E.
           IF FLD0920B (1:)    NOT EQUAL XPC-FLD0920B
              DISPLAY 'FLD0920B ==> ' HEX-OF (FLD0920B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0920B).
           IF FLD0920E   NOT EQUAL XPC-FLD0920E
              DISPLAY 'FLD0920E  ==> ' FLD0920E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0920E.
           IF FLD0921B (1:)    NOT EQUAL XPC-FLD0921B
              DISPLAY 'FLD0921B ==> ' HEX-OF (FLD0921B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0921B).
           IF FLD0921E   NOT EQUAL XPC-FLD0921E
              DISPLAY 'FLD0921E  ==> ' FLD0921E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0921E.
           IF FLD0922B (1:)    NOT EQUAL XPC-FLD0922B
              DISPLAY 'FLD0922B ==> ' HEX-OF (FLD0922B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0922B).
           IF FLD0922E   NOT EQUAL XPC-FLD0922E
              DISPLAY 'FLD0922E  ==> ' FLD0922E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0922E.
           IF FLD0923B (1:)    NOT EQUAL XPC-FLD0923B
              DISPLAY 'FLD0923B ==> ' HEX-OF (FLD0923B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0923B).
           IF FLD0923E   NOT EQUAL XPC-FLD0923E
              DISPLAY 'FLD0923E  ==> ' FLD0923E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0923E.
           IF FLD0924B (1:)    NOT EQUAL XPC-FLD0924B
              DISPLAY 'FLD0924B ==> ' HEX-OF (FLD0924B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0924B).
           IF FLD0924E   NOT EQUAL XPC-FLD0924E
              DISPLAY 'FLD0924E  ==> ' FLD0924E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0924E.
           IF FLD0925B (1:)    NOT EQUAL XPC-FLD0925B
              DISPLAY 'FLD0925B ==> ' HEX-OF (FLD0925B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0925B).
           IF FLD0925E   NOT EQUAL XPC-FLD0925E
              DISPLAY 'FLD0925E  ==> ' FLD0925E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0925E.
           IF FLD0926B (1:)    NOT EQUAL XPC-FLD0926B
              DISPLAY 'FLD0926B ==> ' HEX-OF (FLD0926B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0926B).
           IF FLD0926E   NOT EQUAL XPC-FLD0926E
              DISPLAY 'FLD0926E  ==> ' FLD0926E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0926E.
           IF FLD0927B (1:)    NOT EQUAL XPC-FLD0927B
              DISPLAY 'FLD0927B ==> ' HEX-OF (FLD0927B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0927B).
           IF FLD0927E   NOT EQUAL XPC-FLD0927E
              DISPLAY 'FLD0927E  ==> ' FLD0927E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0927E.
           IF FLD0928B (1:)    NOT EQUAL XPC-FLD0928B
              DISPLAY 'FLD0928B ==> ' HEX-OF (FLD0928B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0928B).
           IF FLD0928E   NOT EQUAL XPC-FLD0928E
              DISPLAY 'FLD0928E  ==> ' FLD0928E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0928E.
           IF FLD0929B (1:)    NOT EQUAL XPC-FLD0929B
              DISPLAY 'FLD0929B ==> ' HEX-OF (FLD0929B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0929B).
           IF FLD0929E   NOT EQUAL XPC-FLD0929E
              DISPLAY 'FLD0929E  ==> ' FLD0929E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0929E.
           IF FLD0930B (1:)    NOT EQUAL XPC-FLD0930B
              DISPLAY 'FLD0930B ==> ' HEX-OF (FLD0930B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0930B).
           IF FLD0930E   NOT EQUAL XPC-FLD0930E
              DISPLAY 'FLD0930E  ==> ' FLD0930E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0930E.
           IF FLD0931B (1:)    NOT EQUAL XPC-FLD0931B
              DISPLAY 'FLD0931B ==> ' HEX-OF (FLD0931B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0931B).
           IF FLD0931E   NOT EQUAL XPC-FLD0931E
              DISPLAY 'FLD0931E  ==> ' FLD0931E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0931E.
           IF FLD0932B (1:)    NOT EQUAL XPC-FLD0932B
              DISPLAY 'FLD0932B ==> ' HEX-OF (FLD0932B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0932B).
           IF FLD0932E   NOT EQUAL XPC-FLD0932E
              DISPLAY 'FLD0932E  ==> ' FLD0932E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0932E.
           IF FLD0933B (1:)    NOT EQUAL XPC-FLD0933B
              DISPLAY 'FLD0933B ==> ' HEX-OF (FLD0933B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0933B).
           IF FLD0933E   NOT EQUAL XPC-FLD0933E
              DISPLAY 'FLD0933E  ==> ' FLD0933E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0933E.
           IF FLD0934B (1:)    NOT EQUAL XPC-FLD0934B
              DISPLAY 'FLD0934B ==> ' HEX-OF (FLD0934B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0934B).
           IF FLD0934E   NOT EQUAL XPC-FLD0934E
              DISPLAY 'FLD0934E  ==> ' FLD0934E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0934E.
           IF FLD0935B (1:)    NOT EQUAL XPC-FLD0935B
              DISPLAY 'FLD0935B ==> ' HEX-OF (FLD0935B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0935B).
           IF FLD0935E   NOT EQUAL XPC-FLD0935E
              DISPLAY 'FLD0935E  ==> ' FLD0935E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0935E.
           IF FLD0936B (1:)    NOT EQUAL XPC-FLD0936B
              DISPLAY 'FLD0936B ==> ' HEX-OF (FLD0936B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0936B).
           IF FLD0936E   NOT EQUAL XPC-FLD0936E
              DISPLAY 'FLD0936E  ==> ' FLD0936E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0936E.
           IF FLD0937B (1:)    NOT EQUAL XPC-FLD0937B
              DISPLAY 'FLD0937B ==> ' HEX-OF (FLD0937B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0937B).
           IF FLD0937E   NOT EQUAL XPC-FLD0937E
              DISPLAY 'FLD0937E  ==> ' FLD0937E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0937E.
           IF FLD0938B (1:)    NOT EQUAL XPC-FLD0938B
              DISPLAY 'FLD0938B ==> ' HEX-OF (FLD0938B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0938B).
           IF FLD0938E   NOT EQUAL XPC-FLD0938E
              DISPLAY 'FLD0938E  ==> ' FLD0938E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0938E.
           IF FLD0939B (1:)    NOT EQUAL XPC-FLD0939B
              DISPLAY 'FLD0939B ==> ' HEX-OF (FLD0939B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0939B).
           IF FLD0939E   NOT EQUAL XPC-FLD0939E
              DISPLAY 'FLD0939E  ==> ' FLD0939E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0939E.
           IF FLD0940B (1:)    NOT EQUAL XPC-FLD0940B
              DISPLAY 'FLD0940B ==> ' HEX-OF (FLD0940B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0940B).
           IF FLD0940E   NOT EQUAL XPC-FLD0940E
              DISPLAY 'FLD0940E  ==> ' FLD0940E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0940E.
           IF FLD0941B (1:)    NOT EQUAL XPC-FLD0941B
              DISPLAY 'FLD0941B ==> ' HEX-OF (FLD0941B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0941B).
           IF FLD0941E   NOT EQUAL XPC-FLD0941E
              DISPLAY 'FLD0941E  ==> ' FLD0941E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0941E.
           IF FLD0942B (1:)    NOT EQUAL XPC-FLD0942B
              DISPLAY 'FLD0942B ==> ' HEX-OF (FLD0942B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0942B).
           IF FLD0942E   NOT EQUAL XPC-FLD0942E
              DISPLAY 'FLD0942E  ==> ' FLD0942E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0942E.
           IF FLD0943B (1:)    NOT EQUAL XPC-FLD0943B
              DISPLAY 'FLD0943B ==> ' HEX-OF (FLD0943B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0943B).
           IF FLD0943E   NOT EQUAL XPC-FLD0943E
              DISPLAY 'FLD0943E  ==> ' FLD0943E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0943E.
           IF FLD0944B (1:)    NOT EQUAL XPC-FLD0944B
              DISPLAY 'FLD0944B ==> ' HEX-OF (FLD0944B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0944B).
           IF FLD0944E   NOT EQUAL XPC-FLD0944E
              DISPLAY 'FLD0944E  ==> ' FLD0944E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0944E.
           IF FLD0945B (1:)    NOT EQUAL XPC-FLD0945B
              DISPLAY 'FLD0945B ==> ' HEX-OF (FLD0945B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0945B).
           IF FLD0945E   NOT EQUAL XPC-FLD0945E
              DISPLAY 'FLD0945E  ==> ' FLD0945E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0945E.
           IF FLD0946B (1:)    NOT EQUAL XPC-FLD0946B
              DISPLAY 'FLD0946B ==> ' HEX-OF (FLD0946B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0946B).
           IF FLD0946E   NOT EQUAL XPC-FLD0946E
              DISPLAY 'FLD0946E  ==> ' FLD0946E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0946E.
           IF FLD0947B (1:)    NOT EQUAL XPC-FLD0947B
              DISPLAY 'FLD0947B ==> ' HEX-OF (FLD0947B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0947B).
           IF FLD0947E   NOT EQUAL XPC-FLD0947E
              DISPLAY 'FLD0947E  ==> ' FLD0947E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0947E.
           IF FLD0948B (1:)    NOT EQUAL XPC-FLD0948B
              DISPLAY 'FLD0948B ==> ' HEX-OF (FLD0948B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0948B).
           IF FLD0948E   NOT EQUAL XPC-FLD0948E
              DISPLAY 'FLD0948E  ==> ' FLD0948E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0948E.
           IF FLD0949B (1:)    NOT EQUAL XPC-FLD0949B
              DISPLAY 'FLD0949B ==> ' HEX-OF (FLD0949B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0949B).
           IF FLD0949E   NOT EQUAL XPC-FLD0949E
              DISPLAY 'FLD0949E  ==> ' FLD0949E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0949E.
           IF FLD0950B (1:)    NOT EQUAL XPC-FLD0950B
              DISPLAY 'FLD0950B ==> ' HEX-OF (FLD0950B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0950B).
           IF FLD0950E   NOT EQUAL XPC-FLD0950E
              DISPLAY 'FLD0950E  ==> ' FLD0950E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0950E.
           IF FLD0951B (1:)    NOT EQUAL XPC-FLD0951B
              DISPLAY 'FLD0951B ==> ' HEX-OF (FLD0951B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0951B).
           IF FLD0951E   NOT EQUAL XPC-FLD0951E
              DISPLAY 'FLD0951E  ==> ' FLD0951E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0951E.
           IF FLD0952B (1:)    NOT EQUAL XPC-FLD0952B
              DISPLAY 'FLD0952B ==> ' HEX-OF (FLD0952B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0952B).
           IF FLD0952E   NOT EQUAL XPC-FLD0952E
              DISPLAY 'FLD0952E  ==> ' FLD0952E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0952E.
           IF FLD0953B (1:)    NOT EQUAL XPC-FLD0953B
              DISPLAY 'FLD0953B ==> ' HEX-OF (FLD0953B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0953B).
           IF FLD0953E   NOT EQUAL XPC-FLD0953E
              DISPLAY 'FLD0953E  ==> ' FLD0953E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0953E.
           IF FLD0954B (1:)    NOT EQUAL XPC-FLD0954B
              DISPLAY 'FLD0954B ==> ' HEX-OF (FLD0954B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0954B).
           IF FLD0954E   NOT EQUAL XPC-FLD0954E
              DISPLAY 'FLD0954E  ==> ' FLD0954E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0954E.
           IF FLD0955B (1:)    NOT EQUAL XPC-FLD0955B
              DISPLAY 'FLD0955B ==> ' HEX-OF (FLD0955B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0955B).
           IF FLD0955E   NOT EQUAL XPC-FLD0955E
              DISPLAY 'FLD0955E  ==> ' FLD0955E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0955E.
           IF FLD0956B (1:)    NOT EQUAL XPC-FLD0956B
              DISPLAY 'FLD0956B ==> ' HEX-OF (FLD0956B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0956B).
           IF FLD0956E   NOT EQUAL XPC-FLD0956E
              DISPLAY 'FLD0956E  ==> ' FLD0956E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0956E.
           IF FLD0957B (1:)    NOT EQUAL XPC-FLD0957B
              DISPLAY 'FLD0957B ==> ' HEX-OF (FLD0957B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0957B).
           IF FLD0957E   NOT EQUAL XPC-FLD0957E
              DISPLAY 'FLD0957E  ==> ' FLD0957E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0957E.
           IF FLD0958B (1:)    NOT EQUAL XPC-FLD0958B
              DISPLAY 'FLD0958B ==> ' HEX-OF (FLD0958B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0958B).
           IF FLD0958E   NOT EQUAL XPC-FLD0958E
              DISPLAY 'FLD0958E  ==> ' FLD0958E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0958E.
           IF FLD0959B (1:)    NOT EQUAL XPC-FLD0959B
              DISPLAY 'FLD0959B ==> ' HEX-OF (FLD0959B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0959B).
           IF FLD0959E   NOT EQUAL XPC-FLD0959E
              DISPLAY 'FLD0959E  ==> ' FLD0959E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0959E.
           IF FLD0960B (1:)    NOT EQUAL XPC-FLD0960B
              DISPLAY 'FLD0960B ==> ' HEX-OF (FLD0960B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0960B).
           IF FLD0960E   NOT EQUAL XPC-FLD0960E
              DISPLAY 'FLD0960E  ==> ' FLD0960E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0960E.
           IF FLD0961B (1:)    NOT EQUAL XPC-FLD0961B
              DISPLAY 'FLD0961B ==> ' HEX-OF (FLD0961B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0961B).
           IF FLD0961E   NOT EQUAL XPC-FLD0961E
              DISPLAY 'FLD0961E  ==> ' FLD0961E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0961E.
           IF FLD0962B (1:)    NOT EQUAL XPC-FLD0962B
              DISPLAY 'FLD0962B ==> ' HEX-OF (FLD0962B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0962B).
           IF FLD0962E   NOT EQUAL XPC-FLD0962E
              DISPLAY 'FLD0962E  ==> ' FLD0962E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0962E.
           IF FLD0963B (1:)    NOT EQUAL XPC-FLD0963B
              DISPLAY 'FLD0963B ==> ' HEX-OF (FLD0963B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0963B).
           IF FLD0963E   NOT EQUAL XPC-FLD0963E
              DISPLAY 'FLD0963E  ==> ' FLD0963E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0963E.
           IF FLD0964B (1:)    NOT EQUAL XPC-FLD0964B
              DISPLAY 'FLD0964B ==> ' HEX-OF (FLD0964B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0964B).
           IF FLD0964E   NOT EQUAL XPC-FLD0964E
              DISPLAY 'FLD0964E  ==> ' FLD0964E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0964E.
           IF FLD0965B (1:)    NOT EQUAL XPC-FLD0965B
              DISPLAY 'FLD0965B ==> ' HEX-OF (FLD0965B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0965B).
           IF FLD0965E   NOT EQUAL XPC-FLD0965E
              DISPLAY 'FLD0965E  ==> ' FLD0965E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0965E.
           IF FLD0966B (1:)    NOT EQUAL XPC-FLD0966B
              DISPLAY 'FLD0966B ==> ' HEX-OF (FLD0966B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0966B).
           IF FLD0966E   NOT EQUAL XPC-FLD0966E
              DISPLAY 'FLD0966E  ==> ' FLD0966E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0966E.
           IF FLD0967B (1:)    NOT EQUAL XPC-FLD0967B
              DISPLAY 'FLD0967B ==> ' HEX-OF (FLD0967B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0967B).
           IF FLD0967E   NOT EQUAL XPC-FLD0967E
              DISPLAY 'FLD0967E  ==> ' FLD0967E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0967E.
           IF FLD0968B (1:)    NOT EQUAL XPC-FLD0968B
              DISPLAY 'FLD0968B ==> ' HEX-OF (FLD0968B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0968B).
           IF FLD0968E   NOT EQUAL XPC-FLD0968E
              DISPLAY 'FLD0968E  ==> ' FLD0968E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0968E.
           IF FLD0969B (1:)    NOT EQUAL XPC-FLD0969B
              DISPLAY 'FLD0969B ==> ' HEX-OF (FLD0969B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0969B).
           IF FLD0969E   NOT EQUAL XPC-FLD0969E
              DISPLAY 'FLD0969E  ==> ' FLD0969E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0969E.
           IF FLD0970B (1:)    NOT EQUAL XPC-FLD0970B
              DISPLAY 'FLD0970B ==> ' HEX-OF (FLD0970B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0970B).
           IF FLD0970E   NOT EQUAL XPC-FLD0970E
              DISPLAY 'FLD0970E  ==> ' FLD0970E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0970E.
           IF FLD0971B (1:)    NOT EQUAL XPC-FLD0971B
              DISPLAY 'FLD0971B ==> ' HEX-OF (FLD0971B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0971B).
           IF FLD0971E   NOT EQUAL XPC-FLD0971E
              DISPLAY 'FLD0971E  ==> ' FLD0971E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0971E.
           IF FLD0972B (1:)    NOT EQUAL XPC-FLD0972B
              DISPLAY 'FLD0972B ==> ' HEX-OF (FLD0972B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0972B).
           IF FLD0972E   NOT EQUAL XPC-FLD0972E
              DISPLAY 'FLD0972E  ==> ' FLD0972E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0972E.
           IF FLD0973B (1:)    NOT EQUAL XPC-FLD0973B
              DISPLAY 'FLD0973B ==> ' HEX-OF (FLD0973B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0973B).
           IF FLD0973E   NOT EQUAL XPC-FLD0973E
              DISPLAY 'FLD0973E  ==> ' FLD0973E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0973E.
           IF FLD0974B (1:)    NOT EQUAL XPC-FLD0974B
              DISPLAY 'FLD0974B ==> ' HEX-OF (FLD0974B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0974B).
           IF FLD0974E   NOT EQUAL XPC-FLD0974E
              DISPLAY 'FLD0974E  ==> ' FLD0974E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0974E.
           IF FLD0975B (1:)    NOT EQUAL XPC-FLD0975B
              DISPLAY 'FLD0975B ==> ' HEX-OF (FLD0975B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0975B).
           IF FLD0975E   NOT EQUAL XPC-FLD0975E
              DISPLAY 'FLD0975E  ==> ' FLD0975E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0975E.
           IF FLD0976B (1:)    NOT EQUAL XPC-FLD0976B
              DISPLAY 'FLD0976B ==> ' HEX-OF (FLD0976B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0976B).
           IF FLD0976E   NOT EQUAL XPC-FLD0976E
              DISPLAY 'FLD0976E  ==> ' FLD0976E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0976E.
           IF FLD0977B (1:)    NOT EQUAL XPC-FLD0977B
              DISPLAY 'FLD0977B ==> ' HEX-OF (FLD0977B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0977B).
           IF FLD0977E   NOT EQUAL XPC-FLD0977E
              DISPLAY 'FLD0977E  ==> ' FLD0977E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0977E.
           IF FLD0978B (1:)    NOT EQUAL XPC-FLD0978B
              DISPLAY 'FLD0978B ==> ' HEX-OF (FLD0978B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0978B).
           IF FLD0978E   NOT EQUAL XPC-FLD0978E
              DISPLAY 'FLD0978E  ==> ' FLD0978E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0978E.
           IF FLD0979B (1:)    NOT EQUAL XPC-FLD0979B
              DISPLAY 'FLD0979B ==> ' HEX-OF (FLD0979B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0979B).
           IF FLD0979E   NOT EQUAL XPC-FLD0979E
              DISPLAY 'FLD0979E  ==> ' FLD0979E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0979E.
           IF FLD0980B (1:)    NOT EQUAL XPC-FLD0980B
              DISPLAY 'FLD0980B ==> ' HEX-OF (FLD0980B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0980B).
           IF FLD0980E   NOT EQUAL XPC-FLD0980E
              DISPLAY 'FLD0980E  ==> ' FLD0980E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0980E.
           IF FLD0981B (1:)    NOT EQUAL XPC-FLD0981B
              DISPLAY 'FLD0981B ==> ' HEX-OF (FLD0981B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0981B).
           IF FLD0981E   NOT EQUAL XPC-FLD0981E
              DISPLAY 'FLD0981E  ==> ' FLD0981E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0981E.
           IF FLD0982B (1:)    NOT EQUAL XPC-FLD0982B
              DISPLAY 'FLD0982B ==> ' HEX-OF (FLD0982B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0982B).
           IF FLD0982E   NOT EQUAL XPC-FLD0982E
              DISPLAY 'FLD0982E  ==> ' FLD0982E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0982E.
           IF FLD0983B (1:)    NOT EQUAL XPC-FLD0983B
              DISPLAY 'FLD0983B ==> ' HEX-OF (FLD0983B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0983B).
           IF FLD0983E   NOT EQUAL XPC-FLD0983E
              DISPLAY 'FLD0983E  ==> ' FLD0983E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0983E.
           IF FLD0984B (1:)    NOT EQUAL XPC-FLD0984B
              DISPLAY 'FLD0984B ==> ' HEX-OF (FLD0984B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0984B).
           IF FLD0984E   NOT EQUAL XPC-FLD0984E
              DISPLAY 'FLD0984E  ==> ' FLD0984E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0984E.
           IF FLD0985B (1:)    NOT EQUAL XPC-FLD0985B
              DISPLAY 'FLD0985B ==> ' HEX-OF (FLD0985B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0985B).
           IF FLD0985E   NOT EQUAL XPC-FLD0985E
              DISPLAY 'FLD0985E  ==> ' FLD0985E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0985E.
           IF FLD0986B (1:)    NOT EQUAL XPC-FLD0986B
              DISPLAY 'FLD0986B ==> ' HEX-OF (FLD0986B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0986B).
           IF FLD0986E   NOT EQUAL XPC-FLD0986E
              DISPLAY 'FLD0986E  ==> ' FLD0986E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0986E.
           IF FLD0987B (1:)    NOT EQUAL XPC-FLD0987B
              DISPLAY 'FLD0987B ==> ' HEX-OF (FLD0987B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0987B).
           IF FLD0987E   NOT EQUAL XPC-FLD0987E
              DISPLAY 'FLD0987E  ==> ' FLD0987E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0987E.
           IF FLD0988B (1:)    NOT EQUAL XPC-FLD0988B
              DISPLAY 'FLD0988B ==> ' HEX-OF (FLD0988B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0988B).
           IF FLD0988E   NOT EQUAL XPC-FLD0988E
              DISPLAY 'FLD0988E  ==> ' FLD0988E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0988E.
           IF FLD0989B (1:)    NOT EQUAL XPC-FLD0989B
              DISPLAY 'FLD0989B ==> ' HEX-OF (FLD0989B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0989B).
           IF FLD0989E   NOT EQUAL XPC-FLD0989E
              DISPLAY 'FLD0989E  ==> ' FLD0989E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0989E.
           IF FLD0990B (1:)    NOT EQUAL XPC-FLD0990B
              DISPLAY 'FLD0990B ==> ' HEX-OF (FLD0990B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0990B).
           IF FLD0990E   NOT EQUAL XPC-FLD0990E
              DISPLAY 'FLD0990E  ==> ' FLD0990E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0990E.
           IF FLD0991B (1:)    NOT EQUAL XPC-FLD0991B
              DISPLAY 'FLD0991B ==> ' HEX-OF (FLD0991B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0991B).
           IF FLD0991E   NOT EQUAL XPC-FLD0991E
              DISPLAY 'FLD0991E  ==> ' FLD0991E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0991E.
           IF FLD0992B (1:)    NOT EQUAL XPC-FLD0992B
              DISPLAY 'FLD0992B ==> ' HEX-OF (FLD0992B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0992B).
           IF FLD0992E   NOT EQUAL XPC-FLD0992E
              DISPLAY 'FLD0992E  ==> ' FLD0992E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0992E.
           IF FLD0993B (1:)    NOT EQUAL XPC-FLD0993B
              DISPLAY 'FLD0993B ==> ' HEX-OF (FLD0993B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0993B).
           IF FLD0993E   NOT EQUAL XPC-FLD0993E
              DISPLAY 'FLD0993E  ==> ' FLD0993E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0993E.
           IF FLD0994B (1:)    NOT EQUAL XPC-FLD0994B
              DISPLAY 'FLD0994B ==> ' HEX-OF (FLD0994B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0994B).
           IF FLD0994E   NOT EQUAL XPC-FLD0994E
              DISPLAY 'FLD0994E  ==> ' FLD0994E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0994E.
           IF FLD0995B (1:)    NOT EQUAL XPC-FLD0995B
              DISPLAY 'FLD0995B ==> ' HEX-OF (FLD0995B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0995B).
           IF FLD0995E   NOT EQUAL XPC-FLD0995E
              DISPLAY 'FLD0995E  ==> ' FLD0995E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0995E.
           IF FLD0996B (1:)    NOT EQUAL XPC-FLD0996B
              DISPLAY 'FLD0996B ==> ' HEX-OF (FLD0996B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0996B).
           IF FLD0996E   NOT EQUAL XPC-FLD0996E
              DISPLAY 'FLD0996E  ==> ' FLD0996E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0996E.
           IF FLD0997B (1:)    NOT EQUAL XPC-FLD0997B
              DISPLAY 'FLD0997B ==> ' HEX-OF (FLD0997B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0997B).
           IF FLD0997E   NOT EQUAL XPC-FLD0997E
              DISPLAY 'FLD0997E  ==> ' FLD0997E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0997E.
           IF FLD0998B (1:)    NOT EQUAL XPC-FLD0998B
              DISPLAY 'FLD0998B ==> ' HEX-OF (FLD0998B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0998B).
           IF FLD0998E   NOT EQUAL XPC-FLD0998E
              DISPLAY 'FLD0998E  ==> ' FLD0998E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0998E.
           IF FLD0999B (1:)    NOT EQUAL XPC-FLD0999B
              DISPLAY 'FLD0999B ==> ' HEX-OF (FLD0999B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0999B).
           IF FLD0999E   NOT EQUAL XPC-FLD0999E
              DISPLAY 'FLD0999E  ==> ' FLD0999E
              DISPLAY 'EXPECTED  ==> ' XPC-FLD0999E.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:28740: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "data_packed.at:28740"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:28740"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:28741: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_packed.at:28741"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:28741"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1280
#AT_START_1281
at_fn_group_banner 1281 'data_packed.at:28746' \
  "BCD ADD and SUBTRACT, all ROUNDED MODEs" "        " 5
at_xfail=no
(
  $as_echo "1281. $at_setup_line: testing $at_desc ..."
  $at_traceon



# This test was originally generated and contributed by Chuck Haatvedt.
# It tests a huge amount of ADD / SUBTRACT between BCD fields with different
# attributes (size, decimal places, sign, sign nible) with different
# rounding options and checks for the expected hexadecimal value after
# the computation.
# The initial test was split later to be compilable without issues on
# "small tin" and also to make it easier for checking tools to insert
# additional debug code - without forcing the compiler to work too hard
# to compile / link that.
# As this code only tests BCD there is a duplicate in data_display.at
# that tests the same with cob_decimal.

cat >prog.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTR.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77  FLD0001A                       PIC  9(08)V9(19) COMP-3
           VALUE  72210483.5706116943150334464.
       77  FLD0001B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0002A                       PIC  9(05)V9(26) COMP-6
           VALUE  83954.98773698940597753903603006.
       77  FLD0002B                       PIC  9(05)V9(27) COMP-6
           VALUE  85526.912891598327881581553810974.

       77  FLD0003A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0003B                       PIC  9(10)V9(08) COMP-6
           VALUE  4976916625.40136914.

       77  FLD0004A                       PIC S9(08)V9(03) COMP-3
           VALUE +31348416.669.
       77  FLD0004B                       PIC  9(05)V9(01) COMP-6
           VALUE  16799.5.

       77  FLD0005A                       PIC S9(07)V9(01) COMP-3
           VALUE +2337334.8.
       77  FLD0005B                       PIC S9(09)V9(03) COMP-3
           VALUE +324331791.973.

       77  FLD0006A                       PIC  9(04)       COMP-6
           VALUE  1169.
       77  FLD0006B                       PIC  9(03)V9(31) COMP-3
           VALUE  912.5850054312464321171205483551602.

       77  FLD0007A                       PIC S9(04)       COMP-3
           VALUE +1123.
       77  FLD0007B                       PIC S9(08)V9(02) COMP-3
           VALUE -27032151.91.

       77  FLD0008A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0008B                       PIC S9(03)       COMP-3
           VALUE -091.

       77  FLD0009A                       PIC  9(10)V9(07) COMP-6
           VALUE  4695987895.4491957.
       77  FLD0009B                       PIC  9(05)V9(28) COMP-3
           VALUE  87164.4396861416259625343627703841.

       77  FLD0010A                       PIC  9(03)V9(32) COMP-3
           VALUE  932.59120224122482589734772773226723.
       77  FLD0010B                       PIC S9(09)V9(06) COMP-3
           VALUE +401314086.816856.

       77  FLD0011A                       PIC  9(09)V9(04) COMP-6
           VALUE  356168291.4830.
       77  FLD0011B                       PIC  9(04)V9(29) COMP-6
           VALUE  8869.25340695890795927880390081554.

       77  FLD0012A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0012B                       PIC  9(08)V9(19) COMP-3
           VALUE  71485769.2486604356929547066.

       77  FLD0013A                       PIC  9(06)V9(25) COMP-6
           VALUE  829630.0004717120923913853403064.
       77  FLD0013B                       PIC  9(07)V9(02) COMP-6
           VALUE  2497013.60.

       77  FLD0014A                       PIC  9(09)V9(13) COMP-3
           VALUE  592943121.2490873237541.
       77  FLD0014B                       PIC  9(06)V9(01) COMP-6
           VALUE  186764.7.

       77  FLD0015A                       PIC  9(07)V9(23) COMP-6
           VALUE  7984732.71412134533164817185024.
       77  FLD0015B                       PIC  9(10)V9(08) COMP-6
           VALUE  4953047329.19498391.

       77  FLD0016A                       PIC  9(05)V9(28) COMP-3
           VALUE  87275.9557853607148558694461826235.
       77  FLD0016B                       PIC S9(10)V9(06) COMP-3
           VALUE +4316165362.791636.

       77  FLD0017A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0017B                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.341087204116393039043941826093.

       77  FLD0018A                       PIC  9(07)V9(21) COMP-3
           VALUE  7619026.805277494540646898713.
       77  FLD0018B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0019A                       PIC S9(10)V9(08) COMP-3
           VALUE -4930528885.68236813.
       77  FLD0019B                       PIC S9(09)V9(06) COMP-3
           VALUE +402620216.542097.

       77  FLD0020A                       PIC  9(09)V9(15) COMP-3
           VALUE  643887452.720044328735582.
       77  FLD0020B                       PIC  9(09)V9(11) COMP-3
           VALUE  552340679.26366126055.

       77  FLD0021A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.880441680787707126043528660375159233.
       77  FLD0021B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0022A                       PIC  9(06)V9(24) COMP-3
           VALUE  810040.192546636172998830716096.
       77  FLD0022B                       PIC  9(07)V9(21) COMP-3
           VALUE  7610660.641468062204140210269.

       77  FLD0023A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0023B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1865432391802879230624512274516746.

       77  FLD0024A                       PIC  9(09)V9(03) COMP-6
           VALUE  329406009.124.
       77  FLD0024B                       PIC S9(09)V9(06) COMP-3
           VALUE +410668612.232476.

       77  FLD0025A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0025B                       PIC  9(07)V9(02) COMP-6
           VALUE  2497488.27.

       77  FLD0026A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0026B                       PIC S9(09)V9(05) COMP-3
           VALUE -383757196.20564.

       77  FLD0027A                       PIC  9(09)V9(13) COMP-3
           VALUE  601026867.0937520818498.
       77  FLD0027B                       PIC  9(06)V9(25) COMP-6
           VALUE  815849.1045356750515082921992870.

       77  FLD0028A                       PIC  9(04)V9(29) COMP-6
           VALUE  8794.72782911061568000832266989164.
       77  FLD0028B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0029A                       PIC  9(05)       BINARY
           VALUE  13697.
       77  FLD0029B                       PIC  9(09)V9(17) COMP-3
           VALUE  684374480.18294422258378517.

       77  FLD0030A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0030B                       PIC  9(08)V9(18) COMP-3
           VALUE  70264210.169553353857452293.

       77  FLD0031A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0031B                       PIC  9(08)V9(18) COMP-3
           VALUE  70450280.588407820925311852.

       77  FLD0032A                       PIC  9(10)V9(10) COMP-6
           VALUE  5269599769.4606222516.
       77  FLD0032B                       PIC S9(09)V9(03) COMP-3
           VALUE +322379197.669.

       77  FLD0033A                       PIC  9(09)V9(15) COMP-3
           VALUE  641903038.069859710468278.
       77  FLD0033B                       PIC  9(09)V9(03) COMP-6
           VALUE  318353502.142.

       77  FLD0034A                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0034B                       PIC S9(07)V9(01) COMP-3
           VALUE +2126766.9.

       77  FLD0035A                       PIC  9(06)V9(25) COMP-6
           VALUE  816285.5924199176049782522568420.
       77  FLD0035B                       PIC  9(07)V9(01) COMP-6
           VALUE  2276316.1.

       77  FLD0036A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.789384107274801127829277902492322027.
       77  FLD0036B                       PIC  9(05)V9(27) COMP-6
           VALUE  84790.535447228665422159110676147.

       77  FLD0037A                       PIC  9(10)V9(11) COMP-6
           VALUE  5559560836.79804091701.
       77  FLD0037B                       PIC S9(05)       COMP-3
           VALUE -15352.

       77  FLD0038A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5897506417712539139586169767426326.
       77  FLD0038B                       PIC  9(06)V9(25) COMP-6
           VALUE  819342.2486726212872198971126636.

       77  FLD0039A                       PIC  9(04)V9(29) COMP-3
           VALUE  8933.20399454893721014059337903745.
       77  FLD0039B                       PIC  9(06)V9(01) COMP-6
           VALUE  205344.3.

       77  FLD0040A                       PIC S9(06)       COMP-5
           VALUE -162227.
       77  FLD0040B                       PIC S9(03)       COMP-3
           VALUE +101.

       77  FLD0041A                       PIC  9(09)V9(17) COMP-6
           VALUE  687709210.19485042879892944.
       77  FLD0041B                       PIC  9(10)V9(09) COMP-3
           VALUE  5032246021.307608119.

       77  FLD0042A                       PIC  9(07)V9(22) COMP-6
           VALUE  7680734.5400734650109342283030.
       77  FLD0042B                       PIC  9(10)V9(10) COMP-6
           VALUE  5398987461.4943655917.

       77  FLD0043A                       PIC S9(08)V9(02) COMP-3
           VALUE -28038049.48.
       77  FLD0043B                       PIC  9(04)V9(30) COMP-3
           VALUE  9102.051349475740460448491830902639.

       77  FLD0044A                       PIC  9(06)V9(01) COMP-6
           VALUE  206224.3.
       77  FLD0044B                       PIC  9(09)V9(04) COMP-6
           VALUE  359534215.7883.

       77  FLD0045A                       PIC  9(08)V9(02) COMP-6
           VALUE  28592495.81.
       77  FLD0045B                       PIC  9(09)V9(05) COMP-6
           VALUE  377058873.76830.

       77  FLD0046A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0046B                       PIC  9(05)V9(27) COMP-3
           VALUE  86000.025910646182847330010190489.

       77  FLD0047A                       PIC  9(08)V9(02) COMP-6
           VALUE  26966592.97.
       77  FLD0047B                       PIC  9(10)V9(08) COMP-6
           VALUE  4982239515.90845814.

       77  FLD0048A                       PIC  9(05)V9(26) COMP-6
           VALUE  83962.84254838164429202151950448.
       77  FLD0048B                       PIC S9(05)V9(01) COMP-3
           VALUE -17309.9.

       77  FLD0049A                       PIC  9(09)V9(16) COMP-6
           VALUE  677621907.0336453320635428.
       77  FLD0049B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.784571866912429305429554915463086217.

       77  FLD0050A                       PIC  9(09)V9(03) COMP-6
           VALUE  329667670.988.
       77  FLD0050B                       PIC  9(09)V9(06) COMP-6
           VALUE  408790070.710566.

       77  FLD0051A                       PIC  9(09)V9(15)
           VALUE  643375703.689413991348544.
       77  FLD0051B                       PIC  9(04)V9(30) COMP-6
           VALUE  9064.871948640588206203005938732530.

       77  FLD0052A                       PIC  9(09)V9(04) COMP-6
           VALUE  367200483.8576.
       77  FLD0052B                       PIC  9(09)V9(11) COMP-3
           VALUE  550990476.15163754265.

       77  FLD0053A                       PIC  9(07)V9(01) COMP-6
           VALUE  2260324.6.
       77  FLD0053B                       PIC S9(09)V9(04) COMP-3
           VALUE -361176713.4701.

       77  FLD0054A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0054B                       PIC  9(09)V9(03) COMP-6
           VALUE  319288758.232.

       77  FLD0055A                       PIC  9(09)V9(14) COMP-3
           VALUE  622232417.66982828604426.
       77  FLD0055B                       PIC  9(08)V9(17) COMP-3
           VALUE  68254498.02012105715576240.

       77  FLD0056A                       PIC  9(07)V9(01) COMP-6
           VALUE  2161993.9.
       77  FLD0056B                       PIC  9(08)V9(02) COMP-6
           VALUE  27806089.73.

       77  FLD0057A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.20878243011406638629523513372987.
       77  FLD0057B                       PIC S9(02)       COMP-3
           VALUE -06.

       77  FLD0058A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.6574119281082611010447180888149887.
       77  FLD0058B                       PIC S9(09)V9(04) COMP-3
           VALUE +343623662.0368.

       77  FLD0059A                       PIC  9(07)V9(02) COMP-6
           VALUE  2566438.61.
       77  FLD0059B                       PIC  9(09)V9(14) COMP-6
           VALUE  625762300.58564874525472.

       77  FLD0060A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.888752946983269120906356874911580234.
       77  FLD0060B                       PIC  9(06)       COMP-6
           VALUE  159150.

       77  FLD0061A                       PIC  9(03)       COMP-6
           VALUE  095.
       77  FLD0061B                       PIC  9(06)V9(25) COMP-6
           VALUE  816564.2123096498172785118185856.

       77  FLD0062A                       PIC  9(10)V9(11) COMP-6
           VALUE  5579259193.81647705819.
       77  FLD0062B                       PIC  9(09)V9(13) COMP-3
           VALUE  602304146.8914084317631.

       77  FLD0063A                       PIC S9(07)V9(01) COMP-3
           VALUE +2106925.6.
       77  FLD0063B                       PIC  9(08)V9(19) COMP-3
           VALUE  73193550.7264897311507922950.

       77  FLD0064A                       PIC  9(06)V9(25) COMP-6
           VALUE  828553.1635867423583263757791428.
       77  FLD0064B                       PIC S9(04)       COMP-3
           VALUE +1113.

       77  FLD0065A                       PIC  9(08)V9(02) BINARY
           VALUE  26934154.73.
       77  FLD0065B                       PIC S9(04)       COMP-3
           VALUE +1223.

       77  FLD0066A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0066B                       PIC  9(05)V9(27) COMP-3
           VALUE  85085.260849998822774153950376785.

       77  FLD0067A                       PIC S9(03)       COMP-3
           VALUE -091.
       77  FLD0067B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0068A                       PIC  9(06)V9(25) COMP-6
           VALUE  838055.6814082209537986045688739.
       77  FLD0068B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0069A                       PIC  9(10)V9(08) COMP-6
           VALUE  4880885916.76487937.
       77  FLD0069B                       PIC  9(03)       COMP-6
           VALUE  097.

       77  FLD0070A                       PIC  9(08)V9(18) COMP-6
           VALUE  69654747.914044090606466852.
       77  FLD0070B                       PIC S9(06)V9(01) COMP-3
           VALUE -192591.5.

       77  FLD0071A                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0071B                       PIC  9(04)       COMP-6
           VALUE  1269.

       77  FLD0072A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.925387953744267965916492357791867107.
       77  FLD0072B                       PIC  9(09)V9(15) COMP-6
           VALUE  655377323.717403204028641.

       77  FLD0073A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.812328554525302504174533169134519994.
       77  FLD0073B                       PIC  9(08)V9(18) COMP-6
           VALUE  70717230.890474991333860543.

       77  FLD0074A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.84903592679257400277492706663906.
       77  FLD0074B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.839916331263631743553332853480242192.

       77  FLD0075A                       PIC  9(10)V9(10) COMP-3
           VALUE  5446083738.8683014381.
       77  FLD0075B                       PIC S9(07)V9(01) COMP-3
           VALUE +2205661.8.

       77  FLD0076A                       PIC S9(07)V9(02) COMP-3
           VALUE +2412584.18.
       77  FLD0076B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1877730461857529675739897356834262.

       77  FLD0077A                       PIC  9(10)V9(08) COMP-6
           VALUE  4971042025.86989840.
       77  FLD0077B                       PIC  9(05)V9(28) COMP-6
           VALUE  87747.7884783979700245026833727024.

       77  FLD0078A                       PIC  9(06)V9(01) COMP-6
           VALUE  186044.2.
       77  FLD0078B                       PIC  9(10)V9(10) COMP-6
           VALUE  5264094377.6727222580.

       77  FLD0079A                       PIC  9(09)V9(15) COMP-6
           VALUE  638119223.314542294289708.
       77  FLD0079B                       PIC S9(03)       COMP-3
           VALUE +101.

       77  FLD0080A                       PIC  9(07)V9(23) COMP-3
           VALUE  7905587.67133311302011122734256.
       77  FLD0080B                       PIC S9(09)V9(04) COMP-3
           VALUE -363247849.5626.

       77  FLD0081A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.951308658902108250643436804239172488.
       77  FLD0081B                       PIC  9(09)V9(04) COMP-6
           VALUE  367206952.3371.

       77  FLD0082A                       PIC S9(08)V9(02) COMP-3
           VALUE -26324419.10.
       77  FLD0082B                       PIC  9(07)V9(22) COMP-6
           VALUE  7666475.1738066827524420432382.

       77  FLD0083A                       PIC  9(09)V9(14) COMP-3
           VALUE  631384121.39469823891602.
       77  FLD0083B                       PIC S9(07)V9(02) COMP-3
           VALUE -2518657.33.

       77  FLD0084A                       PIC  9(04)V9(29) COMP-3
           VALUE  8913.08379718931953483718189090723.
       77  FLD0084B                       PIC  9(09)V9(06) COMP-6
           VALUE  405118244.918866.

       77  FLD0085A                       PIC  9(05)       COMP-6
           VALUE  15779.
       77  FLD0085B                       PIC  9(10)V9(06) COMP-6
           VALUE  4354227755.611629.

       77  FLD0086A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.766547774737049936177868403319735080.
       77  FLD0086B                       PIC  9(10)V9(11) COMP-3
           VALUE  5711670223.78104349833.

       77  FLD0087A                       PIC  9(09)V9(14) COMP-6
           VALUE  617158605.01368802193411.
       77  FLD0087B                       PIC  9(04)       COMP-6
           VALUE  1168.

       77  FLD0088A                       PIC  9(10)V9(12) COMP-3
           VALUE  5809468198.000283800652.
       77  FLD0088B                       PIC  9(09)V9(03) COMP-6
           VALUE  327927843.481.

       77  FLD0089A                       PIC  9(06)V9(24) COMP-3
           VALUE  802942.222446262787727278009697.
       77  FLD0089B                       PIC  9(03)V9(31) COMP-3
           VALUE  913.0556640200002682661306607769802.

       77  FLD0090A                       PIC S9(08)V9(02) COMP-3
           VALUE -28271627.31.
       77  FLD0090B                       PIC S9(08)V9(03) COMP-3
           VALUE -29023436.992.

       77  FLD0091A                       PIC  9(09)V9(07) COMP-6
           VALUE  438808038.0901770.
       77  FLD0091B                       PIC  9(08)V9(18) COMP-6
           VALUE  69809163.794725925811235356.

       77  FLD0092A                       PIC S9(07)V9(01) COMP-3
           VALUE +2146587.0.
       77  FLD0092B                       PIC  9(06)V9(25) COMP-6
           VALUE  828676.9901534452031910404912196.

       77  FLD0093A                       PIC  9(06)V9(25) COMP-3
           VALUE  831848.6927757260396276706160278.
       77  FLD0093B                       PIC  9(07)V9(23) COMP-3
           VALUE  7909193.25337388512409120266966.

       77  FLD0094A                       PIC  9(07)V9(01) COMP-6
           VALUE  2260698.5.
       77  FLD0094B                       PIC  9(10)V9(10) COMP-3
           VALUE  5308926344.5354850645.

       77  FLD0095A                       PIC  9(07)V9(22) COMP-6
           VALUE  7681159.7607563408818265315858.
       77  FLD0095B                       PIC  9(06)V9(25) COMP-6
           VALUE  835614.2190518044410296738533361.

       77  FLD0096A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0096B                       PIC  9(05)V9(28) COMP-6
           VALUE  87505.3049076218392166026660561328.

       77  FLD0097A                       PIC  9(03)       COMP-6
           VALUE  085.
       77  FLD0097B                       PIC  9(07)V9(22) COMP-6
           VALUE  7663819.4132902548449948199049.

       77  FLD0098A                       PIC  9(05)V9(28) COMP-6
           VALUE  87637.1310136299430659789777564583.
       77  FLD0098B                       PIC  9(08)V9(04) COMP-6
           VALUE  33500668.0379.

       77  FLD0099A                       PIC S9(10)V9(08) COMP-3
           VALUE -4946809917.70565292.
       77  FLD0099B                       PIC S9(08)V9(03) COMP-3
           VALUE +30007106.715.

       77  FLD0100A                       PIC  9(10)V9(09) COMP-3
           VALUE  5148281813.288457797.
       77  FLD0100B                       PIC  9(09)V9(14) COMP-6
           VALUE  609442213.66168171982735.

       77  FLD0101A                       PIC S9(07)V9(02) COMP-3
           VALUE -2605358.58.
       77  FLD0101B                       PIC S9(07)V9(02) COMP-3
           VALUE -2515761.93.

       77  FLD0102A                       PIC  9(05)       COMP-6
           VALUE  13880.
       77  FLD0102B                       PIC  9(09)V9(14) COMP-6
           VALUE  626009568.32775289662151.

       77  FLD0103A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.51599988912647631877916865050792.
       77  FLD0103B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0104A                       PIC  9(07)V9(01) COMP-6
           VALUE  2254306.3.
       77  FLD0104B                       PIC S9(10)V9(08) COMP-3
           VALUE -4810300752.02174334.

       77  FLD0105A                       PIC S9(08)V9(03) COMP-3
           VALUE -29081388.428.
       77  FLD0105B                       PIC  9(08)V9(02) COMP-6
           VALUE  27558698.77.

       77  FLD0106A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0106B                       PIC S9(08)V9(02) COMP-3
           VALUE -26362185.29.

       77  FLD0107A                       PIC  9(09)V9(16) COMP-6
           VALUE  677462443.7557797973497031.
       77  FLD0107B                       PIC  9(08)V9(19) COMP-6
           VALUE  71705910.5997380985542122289.

       77  FLD0108A                       PIC  9(09)V9(14) COMP-3
           VALUE  610210882.31341436003418.
       77  FLD0108B                       PIC S9(08)V9(02) COMP-3
           VALUE -28421053.19.

       77  FLD0109A                       PIC S9(04)       COMP-3
           VALUE +1136.
       77  FLD0109B                       PIC  9(04)V9(30) COMP-3
           VALUE  9020.720262660837374113498299266211.

       77  FLD0110A                       PIC  9(07)V9(23) COMP-3
           VALUE  7940109.55673497886841971649118.
       77  FLD0110B                       PIC  9(08)V9(18) COMP-6
           VALUE  69721135.284383173313926818.

       77  FLD0111A                       PIC  9(09)V9(03) COMP-6
           VALUE  326472185.831.
       77  FLD0111B                       PIC  9(10)V9(09) COMP-6
           VALUE  5255901748.964217912.

       77  FLD0112A                       PIC  9(08)V9(19) COMP-3
           VALUE  71238052.4624002697819946661.
       77  FLD0112B                       PIC S9(08)V9(02) COMP-3
           VALUE -27133920.74.

       77  FLD0113A                       PIC  9(04)V9(30) COMP-6
           VALUE  9092.566324157485002643852567416615.
       77  FLD0113B                       PIC  9(04)       COMP-6
           VALUE  1277.

       77  FLD0114A                       PIC  9(09)V9(07) COMP-6
           VALUE  437805064.1539988.
       77  FLD0114B                       PIC  9(05)V9(01) COMP-6
           VALUE  17667.3.

       77  FLD0115A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.2362934933669089687668929400388151.
       77  FLD0115B                       PIC S9(08)V9(03) COMP-3
           VALUE +30236682.408.

       77  FLD0116A                       PIC  9(07)V9(22) COMP-3
           VALUE  7646463.4359510952332783517704.
       77  FLD0116B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0117A                       PIC  9(09)V9(14) COMP-6
           VALUE  617509561.34001855346582.
       77  FLD0117B                       PIC  9(05)       COMP-6
           VALUE  13612.

       77  FLD0118A                       PIC  9(10)V9(10) COMP-3
           VALUE  5408402726.5490597358.
       77  FLD0118B                       PIC S9(03)       COMP-3
           VALUE -080.

       77  FLD0119A                       PIC S9(08)V9(03) COMP-3
           VALUE +30078875.458.
       77  FLD0119B                       PIC  9(07)V9(02) COMP-6
           VALUE  2460449.05.

       77  FLD0120A                       PIC  9(06)V9(25) COMP-3
           VALUE  830160.1137616416714593015058198.
       77  FLD0120B                       PIC S9(02)       COMP-3
           VALUE -07.

       77  FLD0121A                       PIC S9(07)V9(01) COMP-3
           VALUE +2338292.2.
       77  FLD0121B                       PIC S9(09)V9(03) COMP-3
           VALUE +320991974.822.

       77  FLD0122A                       PIC S9(06)V9(01) COMP-3
           VALUE -184951.8.
       77  FLD0122B                       PIC  9(08)V9(02) COMP-6
           VALUE  26752619.72.

       77  FLD0123A                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0123B                       PIC  9(07)V9(21) COMP-3
           VALUE  7502027.502690824523057244732.

       77  FLD0124A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0124B                       PIC S9(10)V9(06) COMP-3
           VALUE +4223876720.963152.

       77  FLD0125A                       PIC  9(04)V9(29) COMP-3
           VALUE  8800.31826789913984576685379579430.
       77  FLD0125B                       PIC  9(09)V9(15) COMP-6
           VALUE  637787216.045794358443288.

       77  FLD0126A                       PIC  9(06)V9(24) COMP-6
           VALUE  807990.071015203703552742808824.
       77  FLD0126B                       PIC  9(07)V9(01) COMP-6
           VALUE  2285688.0.

       77  FLD0127A                       PIC  9(04)V9(30) COMP-6
           VALUE  8981.860178820127993404298649693373.
       77  FLD0127B                       PIC  9(05)V9(28) COMP-6
           VALUE  87878.0390073648609572387613297905.

       77  FLD0128A                       PIC  9(10)V9(06) COMP-6
           VALUE  4298489587.591516.
       77  FLD0128B                       PIC  9(08)V9(02) COMP-6
           VALUE  26904320.50.

       77  FLD0129A                       PIC S9(08)V9(04) COMP-3
           VALUE +33460508.1048.
       77  FLD0129B                       PIC  9(09)V9(14) COMP-6
           VALUE  629564859.51748508700376.

       77  FLD0130A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0130B                       PIC  9(08)V9(03) COMP-6
           VALUE  30500681.275.

       77  FLD0131A                       PIC  9(08)V9(02) COMP-6
           VALUE  26916210.05.
       77  FLD0131B                       PIC  9(08)V9(18) COMP-6
           VALUE  70626515.642831921848454612.

       77  FLD0132A                       PIC  9(04)       COMP-6
           VALUE  1270.
       77  FLD0132B                       PIC  9(07)V9(01) COMP-6
           VALUE  2163498.7.

       77  FLD0133A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.890353542063604619372085835493635386.
       77  FLD0133B                       PIC S9(07)V9(02) COMP-3
           VALUE -2528421.98.

       77  FLD0134A                       PIC  9(08)V9(18) COMP-3
           VALUE  70385499.741438917187252855.
       77  FLD0134B                       PIC  9(09)V9(16) COMP-3
           VALUE  673960062.4739148226893803.

       77  FLD0135A                       PIC  9(10)V9(07) COMP-6
           VALUE  4678335500.0128495.
       77  FLD0135B                       PIC  9(07)V9(02) COMP-6
           VALUE  2561321.97.

       77  FLD0136A                       PIC S9(05)       COMP-3
           VALUE -15169.
       77  FLD0136B                       PIC  9(08)V9(19) COMP-3
           VALUE  72091249.9695820607747975827.

       77  FLD0137A                       PIC S9(08)V9(02) COMP-3
           VALUE -27190319.39.
       77  FLD0137B                       PIC  9(03)V9(32) COMP-3
           VALUE  921.23024961283406231160597599227912.

       77  FLD0138A                       PIC S9(10)V9(08) COMP-3
           VALUE -4824223828.94490853.
       77  FLD0138B                       PIC  9(04)V9(30) COMP-6
           VALUE  8976.142294415691003095503219810780.

       77  FLD0139A                       PIC  9(09)V9(03) COMP-6
           VALUE  319644653.394.
       77  FLD0139B                       PIC  9(06)V9(25) COMP-6
           VALUE  818318.3537620841718762676464393.

       77  FLD0140A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0140B                       PIC  9(03)V9(31) COMP-3
           VALUE  913.4502802484925076953459210926666.

       77  FLD0141A                       PIC  9(09)V9(14) COMP-3
           VALUE  612266512.11346116987499.
       77  FLD0141B                       PIC  9(06)V9(01) COMP-6
           VALUE  198046.5.

       77  FLD0142A                       PIC  9(09)V9(04) COMP-6
           VALUE  356201246.7531.
       77  FLD0142B                       PIC S9(04)       COMP-3
           VALUE +1134.

       77  FLD0143A                       PIC S9(07)V9(02) COMP-3
           VALUE -2608987.15.
       77  FLD0143B                       PIC  9(06)V9(01) COMP-6
           VALUE  205887.8.

       77  FLD0144A                       PIC  9(10)V9(11) COMP-6
           VALUE  5664625691.64754570216.
       77  FLD0144B                       PIC  9(07)V9(01) COMP-6
           VALUE  2170292.3.

       77  FLD0145A                       PIC  9(09)V9(13) COMP-3
           VALUE  592809780.4295365813587.
       77  FLD0145B                       PIC  9(09)V9(06) COMP-6
           VALUE  416669902.306984.

       77  FLD0146A                       PIC S9(03)       COMP-3
           VALUE -091.
       77  FLD0146B                       PIC  9(09)V9(13) COMP-3
           VALUE  592675280.7490164309811.

       77  FLD0147A                       PIC  9(03)       COMP-6
           VALUE  085.
       77  FLD0147B                       PIC  9(10)V9(05) COMP-6
           VALUE  3974420340.21838.

       77  FLD0148A                       PIC  9(04)       COMP-6
           VALUE  1189.
       77  FLD0148B                       PIC  9(08)V9(04) COMP-6
           VALUE  33583306.9980.

       77  FLD0149A                       PIC  9(05)V9(27) COMP-3
           VALUE  86469.811002464236349140946913394.
       77  FLD0149B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0150A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0150B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.779789481524289174174668914929497987.

       77  FLD0151A                       PIC  9(09)V9(13) COMP-3
           VALUE  602633749.4884196344102.
       77  FLD0151B                       PIC  9(07)V9(22) COMP-3
           VALUE  7715228.5011189425389943608024.

       77  FLD0152A                       PIC S9(08)V9(02) COMP-3
           VALUE -28005400.65.
       77  FLD0152B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.9689035330467796747200281970435753.

       77  FLD0153A                       PIC  9(08)V9(18) COMP-3
           VALUE  69246387.672994647033419823.
       77  FLD0153B                       PIC  9(07)V9(22) COMP-3
           VALUE  7700147.9845998110906890588012.

       77  FLD0154A                       PIC  9(09)V9(14) COMP-6
           VALUE  618531644.61004783714059.
       77  FLD0154B                       PIC  9(10)V9(07) COMP-6
           VALUE  4667533939.9326892.

       77  FLD0155A                       PIC  9(10)V9(12) COMP-3
           VALUE  5816028861.286740569980.
       77  FLD0155B                       PIC  9(03)V9(31) COMP-3
           VALUE  920.9824083062539967770021576143335.

       77  FLD0156A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3830714078202746009083057288080453.
       77  FLD0156B                       PIC  9(04)V9(30) COMP-6
           VALUE  9080.971133779824899789900882751680.

       77  FLD0157A                       PIC  9(09)V9(16) COMP-6
           VALUE  659745695.0483697735165833.
       77  FLD0157B                       PIC  9(10)V9(06) COMP-6
           VALUE  4359875032.276696.

       77  FLD0158A                       PIC S9(09)V9(06) COMP-3
           VALUE +412656981.234114.
       77  FLD0158B                       PIC  9(09)V9(14) COMP-3
           VALUE  611832243.66474420197192.

       77  FLD0159A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0159B                       PIC  9(09)V9(15) COMP-3
           VALUE  643529357.674236912600918.

       77  FLD0160A                       PIC  9(08)V9(20) COMP-6
           VALUE  74656107.83998073429756914265.
       77  FLD0160B                       PIC  9(06)V9(01) COMP-6
           VALUE  207077.8.

       77  FLD0161A                       PIC  9(07)V9(22) COMP-6
           VALUE  7887170.9741627593626134284932.
       77  FLD0161B                       PIC  9(08)V9(19) COMP-6
           VALUE  71702582.3615881408024108623.

       77  FLD0162A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0162B                       PIC  9(10)V9(11) COMP-6
           VALUE  5668143857.58160899086.

       77  FLD0163A                       PIC  9(09)V9(14) COMP-6
           VALUE  618392824.19829444403802.
       77  FLD0163B                       PIC  9(09)V9(15) COMP-3
           VALUE  650815786.826470232817598.

       77  FLD0164A                       PIC S9(06)V9(01) COMP-3
           VALUE +204076.7.
       77  FLD0164B                       PIC  9(04)       COMP-6
           VALUE  1076.

       77  FLD0165A                       PIC  9(09)V9(14) COMP-3
           VALUE  610409164.63927785695631.
       77  FLD0165B                       PIC  9(04)       COMP-6
           VALUE  1267.

       77  FLD0166A                       PIC  9(07)V9(02) COMP-6
           VALUE  2460589.98.
       77  FLD0166B                       PIC  9(05)V9(01) COMP-6
           VALUE  17630.0.

       77  FLD0167A                       PIC S9(09)V9(03) COMP-3
           VALUE +323253458.962.
       77  FLD0167B                       PIC  9(06)V9(25) COMP-6
           VALUE  838285.1322478405142746282763255.

       77  FLD0168A                       PIC S9(04)       COMP-3
           VALUE +1200.
       77  FLD0168B                       PIC S9(10)V9(06) COMP-3
           VALUE +4326937205.661665.

       77  FLD0169A                       PIC  9(06)V9(25) COMP-3
           VALUE  834885.7368063762329768451309064.
       77  FLD0169B                       PIC  9(08)V9(18) COMP-6
           VALUE  70699865.109667991980302304.

       77  FLD0170A                       PIC  9(08)V9(19) COMP-3
           VALUE  72325482.4666709539293663056.
       77  FLD0170B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.863493423765207213094186045054811984.

       77  FLD0171A                       PIC  9(09)V9(16) COMP-6
           VALUE  675345293.4675296948086042.
       77  FLD0171B                       PIC  9(10)V9(06) COMP-6
           VALUE  4258478422.558273.

       77  FLD0172A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.0216523360032936373897882731398567.
       77  FLD0172B                       PIC  9(04)V9(30) COMP-6
           VALUE  8999.798406174591702821885519369971.

       77  FLD0173A                       PIC S9(09)V9(06) COMP-3
           VALUE +412472914.336663.
       77  FLD0173B                       PIC  9(10)V9(08) COMP-6
           VALUE  4786981213.45750904.

       77  FLD0174A                       PIC S9(04)       COMP-3
           VALUE +1244.
       77  FLD0174B                       PIC  9(10)V9(09) COMP-6
           VALUE  5152586737.087611057.

       77  FLD0175A                       PIC S9(05)       COMP-3
           VALUE +13456.
       77  FLD0175B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0176A                       PIC  9(07)V9(23) COMP-3
           VALUE  7902178.74582138546379894705751.
       77  FLD0176B                       PIC  9(08)V9(03) COMP-6
           VALUE  29797398.003.

       77  FLD0177A                       PIC  9(07)V9(21) COMP-3
           VALUE  7618839.577049143496623173632.
       77  FLD0177B                       PIC  9(07)V9(02) COMP-6
           VALUE  2373414.07.

       77  FLD0178A                       PIC  9(09)V9(04) COMP-6
           VALUE  355502105.3348.
       77  FLD0178B                       PIC S9(08)V9(03) COMP-3
           VALUE +31397739.222.

       77  FLD0179A                       PIC  9(09)V9(05) COMP-6
           VALUE  388560564.63472.
       77  FLD0179B                       PIC  9(03)       COMP-6
           VALUE  099.

       77  FLD0180A                       PIC  9(05)V9(27) COMP-6
           VALUE  85946.157652659294079455776227405.
       77  FLD0180B                       PIC  9(10)V9(10) COMP-3
           VALUE  5435189439.3573940700.

       77  FLD0181A                       PIC  9(06)V9(01) COMP-6
           VALUE  188908.8.
       77  FLD0181B                       PIC S9(10)V9(08) COMP-3
           VALUE -4740924741.33910868.

       77  FLD0182A                       PIC  9(10)V9(13) COMP-6
           VALUE  6061401860.3468300394609.
       77  FLD0182B                       PIC  9(09)V9(15) COMP-3
           VALUE  643493508.008180281620980.

       77  FLD0183A                       PIC  9(07)V9(23) COMP-3
           VALUE  7910108.10526126539876656806882.
       77  FLD0183B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0184A                       PIC  9(09)V9(15) COMP-6
           VALUE  635945742.812533687526865.
       77  FLD0184B                       PIC S9(07)V9(01) COMP-3
           VALUE +2343773.6.

       77  FLD0185A                       PIC  9(05)       COMP-6
           VALUE  15666.
       77  FLD0185B                       PIC  9(08)V9(20) COMP-6
           VALUE  73935660.38753716096465495866.

       77  FLD0186A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0186B                       PIC  9(05)V9(26) COMP-3
           VALUE  84084.08947119312415452441200613.

       77  FLD0187A                       PIC  9(09)V9(13) COMP-3
           VALUE  604672028.7423602568921.
       77  FLD0187B                       PIC  9(10)V9(12) COMP-6
           VALUE  5893278013.192120301511.

       77  FLD0188A                       PIC  9(08)V9(17) COMP-3
           VALUE  68008236.87569536035724127.
       77  FLD0188B                       PIC  9(07)V9(21) COMP-3
           VALUE  7537078.198448752264226868646.

       77  FLD0189A                       PIC  9(10)V9(09) COMP-3
           VALUE  5115071016.238050827.
       77  FLD0189B                       PIC  9(10)V9(11) COMP-6
           VALUE  5668524677.20726727051.

       77  FLD0190A                       PIC  9(07)V9(02) COMP-6
           VALUE  2382137.54.
       77  FLD0190B                       PIC  9(09)V9(14) COMP-6
           VALUE  627148648.94273569806415.

       77  FLD0191A                       PIC  9(05)       COMP-6
           VALUE  13720.
       77  FLD0191B                       PIC  9(06)V9(24) COMP-3
           VALUE  803717.168989411478996487403492.

       77  FLD0192A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.894259454195439840162862310535274446.
       77  FLD0192B                       PIC  9(09)V9(04) COMP-6
           VALUE  358034239.3955.

       77  FLD0193A                       PIC  9(10)V9(06) COMP-6
           VALUE  4252943677.090519.
       77  FLD0193B                       PIC  9(09)V9(14) COMP-3
           VALUE  612048644.17243076690766.

       77  FLD0194A                       PIC  9(09)V9(06) COMP-6
           VALUE  417168379.939779.
       77  FLD0194B                       PIC  9(09)V9(15) COMP-3
           VALUE  634454032.998696626499679.

       77  FLD0195A                       PIC  9(08)V9(02) COMP-6
           VALUE  26645846.45.
       77  FLD0195B                       PIC  9(05)       COMP-6
           VALUE  14921.

       77  FLD0196A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0196B                       PIC S9(05)V9(01) COMP-3
           VALUE -18000.7.

       77  FLD0197A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.847788375924405590566834689525421708.
       77  FLD0197B                       PIC  9(02)       COMP-6
           VALUE  05.

       77  FLD0198A                       PIC  9(09)V9(13) COMP-3
           VALUE  593293108.5591157671643.
       77  FLD0198B                       PIC S9(05)       COMP-3
           VALUE +14072.

       77  FLD0199A                       PIC  9(07)V9(02) COMP-6
           VALUE  2483287.24.
       77  FLD0199B                       PIC  9(07)V9(23) COMP-6
           VALUE  7969040.17410605347571106449322.

       77  FLD0200A                       PIC S9(10)V9(08) COMP-3
           VALUE -4935972790.60619176.
       77  FLD0200B                       PIC  9(10)V9(07) COMP-6
           VALUE  4582475224.7206340.

       77  FLD0201A                       PIC  9(04)       COMP-6
           VALUE  1282.
       77  FLD0201B                       PIC  9(07)V9(23) COMP-3
           VALUE  7926313.90444417882612526682351.

       77  FLD0202A                       PIC S9(09)V9(04) COMP-3
           VALUE -360603443.7503.
       77  FLD0202B                       PIC  9(03)V9(32) COMP-6
           VALUE  935.68197555010013122256395945441909.

       77  FLD0203A                       PIC  9(09)V9(14) COMP-6
           VALUE  628607663.38264040253847.
       77  FLD0203B                       PIC  9(03)V9(31) COMP-3
           VALUE  920.1886012491730104656539879215415.

       77  FLD0204A                       PIC  9(01)V9(35) COMP-3
           VALUE  9.73054030732718233664968465745914727.
       77  FLD0204B                       PIC  9(07)V9(01) COMP-6
           VALUE  2363275.3.

       77  FLD0205A                       PIC  9(09)V9(15) COMP-6
           VALUE  648926914.508991536933990.
       77  FLD0205B                       PIC  9(09)V9(15) COMP-6
           VALUE  639814213.238647178094709.

       77  FLD0206A                       PIC  9(06)V9(01) COMP-6
           VALUE  186967.7.
       77  FLD0206B                       PIC  9(08)V9(18) COMP-6
           VALUE  70826356.466434425840361654.

       77  FLD0207A                       PIC  9(05)V9(26) COMP-6
           VALUE  83944.39242287422553445708217623.
       77  FLD0207B                       PIC  9(07)V9(21) COMP-3
           VALUE  7607846.993308088334728722657.

       77  FLD0208A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7940040016311842308027735271025449.
       77  FLD0208B                       PIC  9(07)V9(01) COMP-6
           VALUE  2151595.4.

       77  FLD0209A                       PIC  9(03)V9(32) COMP-6
           VALUE  926.61149050802726900855077474261634.
       77  FLD0209B                       PIC  9(07)V9(23) COMP-6
           VALUE  7951784.48263920700789242346218.

       77  FLD0210A                       PIC  9(08)V9(19) COMP-3
           VALUE  72323528.1456575562764044207.
       77  FLD0210B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0211A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0211B                       PIC S9(09)V9(07) COMP-3
           VALUE +442113770.7554604.

       77  FLD0212A                       PIC  9(10)V9(08) COMP-6
           VALUE  4892032792.55731038.
       77  FLD0212B                       PIC S9(09)V9(05) COMP-3
           VALUE -372935567.70682.

       77  FLD0213A                       PIC S9(03)       COMP-3
           VALUE -082.
       77  FLD0213B                       PIC  9(07)V9(21) COMP-3
           VALUE  7525721.770631302875997903356.

       77  FLD0214A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0214B                       PIC  9(09)V9(16) COMP-6
           VALUE  666893270.4655321508369070.

       77  FLD0215A                       PIC  9(03)V9(32) COMP-6
           VALUE  926.34033699271633999217101518297567.
       77  FLD0215B                       PIC S9(05)V9(01) COMP-3
           VALUE -18226.5.

       77  FLD0216A                       PIC S9(08)V9(02) COMP-3
           VALUE -28095374.87.
       77  FLD0216B                       PIC  9(08)V9(02) COMP-6
           VALUE  28541793.87.

       77  FLD0217A                       PIC  9(08)V9(20) COMP-6
           VALUE  74562962.48658396130792880285.
       77  FLD0217B                       PIC S9(09)V9(07) COMP-3
           VALUE +444563659.0422049.

       77  FLD0218A                       PIC S9(05)V9(01) COMP-3
           VALUE -18094.6.
       77  FLD0218B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.867255193327033602201936446363106369.

       77  FLD0219A                       PIC  9(09)V9(12) COMP-6
           VALUE  578788992.127507229135.
       77  FLD0219B                       PIC  9(10)V9(10) COMP-6
           VALUE  5297903516.0907261836.

       77  FLD0220A                       PIC  9(09)V9(12) COMP-3
           VALUE  573343525.907533679841.
       77  FLD0220B                       PIC S9(05)       COMP-3
           VALUE +14161.

       77  FLD0221A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0221B                       PIC  9(04)V9(29) COMP-6
           VALUE  8789.10367794605407176788958167890.

       77  FLD0222A                       PIC  9(09)V9(14) COMP-6
           VALUE  628182805.25174396977661.
       77  FLD0222B                       PIC S9(05)       COMP-3
           VALUE -15228.

       77  FLD0223A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0223B                       PIC  9(08)V9(18) COMP-6
           VALUE  69950927.082806102497158917.

       77  FLD0224A                       PIC  9(06)V9(25) COMP-6
           VALUE  838187.2267509891116787912324070.
       77  FLD0224B                       PIC S9(09)V9(05) COMP-3
           VALUE -382169497.04991.

       77  FLD0225A                       PIC  9(05)       COMP-6
           VALUE  13797.
       77  FLD0225B                       PIC  9(09)V9(12) COMP-3
           VALUE  572598612.808938978169.

       77  FLD0226A                       PIC  9(05)       COMP-6
           VALUE  14900.
       77  FLD0226B                       PIC S9(07)V9(01) COMP-3
           VALUE +2129995.4.

       77  FLD0227A                       PIC  9(09)V9(14) COMP-6
           VALUE  629583055.15940859997670.
       77  FLD0227B                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.577034983017961522477889957372.

       77  FLD0228A                       PIC S9(07)V9(01) COMP-3
           VALUE +2225916.3.
       77  FLD0228B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.739690596877397243957830141880549490.

       77  FLD0229A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.870473603260505601753038718015886843.
       77  FLD0229B                       PIC  9(08)V9(20) COMP-6
           VALUE  73838029.76208535540081356884.

       77  FLD0230A                       PIC S9(06)V9(01) COMP-3
           VALUE +201492.2.
       77  FLD0230B                       PIC S9(02)       COMP-3
           VALUE -06.

       77  FLD0231A                       PIC  9(05)V9(28) COMP-6
           VALUE  87781.6812716511907233041256404248.
       77  FLD0231B                       PIC S9(08)V9(02) COMP-3
           VALUE -27182116.43.

       77  FLD0232A                       PIC  9(09)V9(04) COMP-6
           VALUE  356308264.5328.
       77  FLD0232B                       PIC  9(06)V9(25) COMP-3
           VALUE  833280.3014261945806495646138500.

       77  FLD0233A                       PIC  9(07)V9(21) COMP-6
           VALUE  7552156.809035388551620826547.
       77  FLD0233B                       PIC  9(08)V9(04) COMP-6
           VALUE  33739768.3403.

       77  FLD0234A                       PIC  9(08)V9(04) COMP-6
           VALUE  33831052.6754.
       77  FLD0234B                       PIC  9(09)V9(13) COMP-3
           VALUE  593899144.9424572133253.

       77  FLD0235A                       PIC S9(05)       COMP-3
           VALUE +14123.
       77  FLD0235B                       PIC S9(10)V9(08) COMP-3
           VALUE -4808329310.19295639.

       77  FLD0236A                       PIC  9(04)V9(29) COMP-3
           VALUE  8818.23528289915170574886360554955.
       77  FLD0236B                       PIC  9(08)V9(18) COMP-3
           VALUE  70480160.116860446350983693.

       77  FLD0237A                       PIC  9(08)V9(02) COMP-6
           VALUE  28742037.59.
       77  FLD0237B                       PIC  9(04)V9(29) COMP-6
           VALUE  8850.90488581330880890618573175743.

       77  FLD0238A                       PIC  9(09)V9(15) COMP-3
           VALUE  634521096.430120334908053.
       77  FLD0238B                       PIC  9(06)V9(01) COMP-6
           VALUE  198396.3.

       77  FLD0239A                       PIC  9(09)V9(16) COMP-6
           VALUE  678585779.2924817610824561.
       77  FLD0239B                       PIC  9(09)V9(14) COMP-3
           VALUE  614739880.97122655993587.

       77  FLD0240A                       PIC  9(10)V9(06) COMP-6
           VALUE  4289853576.446766.
       77  FLD0240B                       PIC  9(06)V9(25) COMP-3
           VALUE  833165.4817075836438888813972880.

       77  FLD0241A                       PIC S9(05)       COMP-3
           VALUE +14407.
       77  FLD0241B                       PIC  9(09)V9(14) COMP-6
           VALUE  608742950.23205993171444.

       77  FLD0242A                       PIC  9(10)V9(12) COMP-6
           VALUE  5860383854.989427154791.
       77  FLD0242B                       PIC S9(06)V9(01) COMP-3
           VALUE +201770.8.

       77  FLD0243A                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0409660969254295181940506154205650.
       77  FLD0243B                       PIC  9(05)V9(28) COMP-6
           VALUE  86928.4847432245544318618613033322.

       77  FLD0244A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0244B                       PIC  9(09)V9(13) COMP-6
           VALUE  596454149.7067354924865.

       77  FLD0245A                       PIC S9(09)V9(05) COMP-3
           VALUE -371716886.14542.
       77  FLD0245B                       PIC  9(09)V9(15) COMP-6
           VALUE  636050719.355519267317333.

       77  FLD0246A                       PIC  9(05)V9(28) COMP-3
           VALUE  87216.9313623637143528810611314838.
       77  FLD0246B                       PIC  9(06)V9(01) COMP-6
           VALUE  208199.5.

       77  FLD0247A                       PIC  9(06)V9(25) COMP-3
           VALUE  834494.8214770686600871840710169.
       77  FLD0247B                       PIC  9(08)V9(19) COMP-3
           VALUE  73372232.8570783122181353519.

       77  FLD0248A                       PIC  9(04)V9(29) COMP-6
           VALUE  8885.56418584546814365410227765096.
       77  FLD0248B                       PIC  9(10)V9(11) COMP-6
           VALUE  5683594830.11341870550.

       77  FLD0249A                       PIC  9(09)V9(16) COMP-6
           VALUE  678470839.5950102000071524.
       77  FLD0249B                       PIC  9(09)V9(16) COMP-3
           VALUE  673175418.3146980707874718.

       77  FLD0250A                       PIC  9(09)V9(15) COMP-3
           VALUE  643468324.926731005675151.
       77  FLD0250B                       PIC  9(04)V9(30) COMP-6
           VALUE  9057.675398841628089385835664870683.

       77  FLD0251A                       PIC S9(09)V9(06) COMP-3
           VALUE +402548910.007195.
       77  FLD0251B                       PIC  9(06)V9(25) COMP-3
           VALUE  830149.1080513825338016431487631.

       77  FLD0252A                       PIC S9(05)V9(01) COMP-3
           VALUE -18339.3.
       77  FLD0252B                       PIC S9(07)V9(01) COMP-3
           VALUE +2343087.3.

       77  FLD0253A                       PIC  9(06)V9(25) COMP-3
           VALUE  822593.8518184680026124055984837.
       77  FLD0253B                       PIC  9(07)V9(01) COMP-6
           VALUE  2159897.7.

       77  FLD0254A                       PIC  9(10)V9(10) COMP-3
           VALUE  5401895692.3872574193.
       77  FLD0254B                       PIC S9(07)V9(02) COMP-3
           VALUE +2405256.16.

       77  FLD0255A                       PIC  9(02)V9(34) COMP-6
           VALUE  94.8299297085154591080424779647728428.
       77  FLD0255B                       PIC  9(10)V9(10) COMP-3
           VALUE  5408143412.7739858030.

       77  FLD0256A                       PIC S9(09)V9(08) COMP-3
           VALUE -473179644.06591722.
       77  FLD0256B                       PIC  9(04)V9(30) COMP-3
           VALUE  9107.434804383051085707734273455571.

       77  FLD0257A                       PIC  9(09)V9(12) COMP-6
           VALUE  577029491.737192756772.
       77  FLD0257B                       PIC S9(03)       COMP-3
           VALUE -084.

       77  FLD0258A                       PIC  9(10)V9(12) COMP-3
           VALUE  5908893351.960881057394.
       77  FLD0258B                       PIC  9(05)V9(27) COMP-6
           VALUE  84978.202175808337237583600654033.

       77  FLD0259A                       PIC  9(03)V9(32) COMP-6
           VALUE  937.55337057593879368511124994256533.
       77  FLD0259B                       PIC S9(09)V9(05) COMP-3
           VALUE -374669242.27931.

       77  FLD0260A                       PIC  9(05)V9(27) COMP-6
           VALUE  86648.984966754782899300835197209.
       77  FLD0260B                       PIC  9(09)V9(13) COMP-3
           VALUE  601823310.0433563187436.

       77  FLD0261A                       PIC S9(09)V9(05) COMP-3
           VALUE -374213925.47904.
       77  FLD0261B                       PIC  9(09)V9(05) COMP-6
           VALUE  379885544.06227.

       77  FLD0262A                       PIC S9(05)V9(01) COMP-3
           VALUE -17015.9.
       77  FLD0262B                       PIC  9(09)V9(17) COMP-6
           VALUE  687559565.36759821329241049.

       77  FLD0263A                       PIC  9(05)V9(26) COMP-3
           VALUE  84046.29767805690265802809335582.
       77  FLD0263B                       PIC S9(02)       COMP-3
           VALUE -06.

       77  FLD0264A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.78568596491340514376133796758949.
       77  FLD0264B                       PIC  9(05)V9(01) COMP-6
           VALUE  17620.4.

       77  FLD0265A                       PIC S9(09)V9(05) COMP-3
           VALUE -380334582.15301.
       77  FLD0265B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.854231270822284560750858872779645025.

       77  FLD0266A                       PIC  9(05)V9(27) COMP-6
           VALUE  84707.693570856212872399737534578.
       77  FLD0266B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.1883348354436562566149859776487573.

       77  FLD0267A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0267B                       PIC S9(07)V9(01) COMP-3
           VALUE +2348814.4.

       77  FLD0268A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0268B                       PIC  9(06)V9(25) COMP-3
           VALUE  821150.0957830146774085733341053.

       77  FLD0269A                       PIC  9(08)V9(18) COMP-6
           VALUE  69955495.182247551255727557.
       77  FLD0269B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0270A                       PIC  9(08)V9(18) COMP-6
           VALUE  69584936.933990082508216801.
       77  FLD0270B                       PIC S9(04)       COMP-3
           VALUE +1200.

       77  FLD0271A                       PIC  9(10)V9(07) COMP-6
           VALUE  4478155927.4435323.
       77  FLD0271B                       PIC  9(07)V9(02) COMP-6
           VALUE  2371664.59.

       77  FLD0272A                       PIC S9(09)V9(06) COMP-3
           VALUE +411514667.070764.
       77  FLD0272B                       PIC S9(10)V9(08) COMP-3
           VALUE -4748492295.95657285.

       77  FLD0273A                       PIC  9(10)V9(07) BINARY
           VALUE  4698099460.5024867.
       77  FLD0273B                       PIC S9(10)V9(06) COMP-3
           VALUE +4338009792.593093.

       77  FLD0274A                       PIC  9(07)V9(01) COMP-6
           VALUE  2190249.4.
       77  FLD0274B                       PIC  9(10)V9(10) COMP-6
           VALUE  5271665070.2586675958.

       77  FLD0275A                       PIC  9(04)       COMP-6
           VALUE  1157.
       77  FLD0275B                       PIC S9(07)V9(02) COMP-3
           VALUE +2422980.94.

       77  FLD0276A                       PIC  9(04)V9(30) COMP-3
           VALUE  9021.044697283423507983002309629227.
       77  FLD0276B                       PIC  9(02)V9(33) COMP-6
           VALUE  94.591784695476577304873444518307223.

       77  FLD0277A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.749582162084949876756923003995325416.
       77  FLD0277B                       PIC  9(10)V9(08) COMP-6
           VALUE  4992154586.01645512.

       77  FLD0278A                       PIC  9(10)V9(06) COMP-6
           VALUE  4251062706.993476.
       77  FLD0278B                       PIC  9(03)V9(31) COMP-3
           VALUE  914.7657257947739983805490737722720.

       77  FLD0279A                       PIC S9(08)V9(02) COMP-3
           VALUE -27159201.10.
       77  FLD0279B                       PIC  9(03)V9(32) COMP-3
           VALUE  921.08160397424898579998853165307082.

       77  FLD0280A                       PIC  9(07)V9(02) COMP-6
           VALUE  2571968.92.
       77  FLD0280B                       PIC  9(08)V9(19) COMP-3
           VALUE  71229222.1254675839148262639.

       77  FLD0281A                       PIC S9(09)V9(04) COMP-3
           VALUE +342861689.3811.
       77  FLD0281B                       PIC  9(10)V9(07) COMP-6
           VALUE  4662459797.7205073.

       77  FLD0282A                       PIC S9(10)V9(07) COMP-3
           VALUE -4600147325.4430291.
       77  FLD0282B                       PIC  9(07)V9(22) COMP-6
           VALUE  7889304.3658446049271049105300.

       77  FLD0283A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0283B                       PIC S9(05)V9(01) COMP-3
           VALUE -18273.9.

       77  FLD0284A                       PIC  9(09)V9(17) COMP-6
           VALUE  689733171.20512533939802324.
       77  FLD0284B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0285A                       PIC  9(03)V9(32) COMP-6
           VALUE  928.78828230193799520009179104818031.
       77  FLD0285B                       PIC  9(08)V9(20) COMP-6
           VALUE  73692142.62351649891158444916.

       77  FLD0286A                       PIC  9(08)V9(18) COMP-3
           VALUE  70426964.322731444578806758.
       77  FLD0286B                       PIC  9(07)V9(01) COMP-6
           VALUE  2181620.7.

       77  FLD0287A                       PIC S9(07)V9(02) COMP-3
           VALUE -2521413.84.
       77  FLD0287B                       PIC  9(06)       COMP-6
           VALUE  158585.

       77  FLD0288A                       PIC  9(09)V9(17) COMP-6
           VALUE  688074525.02240640246355951.
       77  FLD0288B                       PIC  9(04)V9(29) COMP-3
           VALUE  8936.92752615119712089608583482913.

       77  FLD0289A                       PIC S9(03)       COMP-3
           VALUE -092.
       77  FLD0289B                       PIC  9(10)V9(11) COMP-6
           VALUE  5676330984.14293657540.

       77  FLD0290A                       PIC S9(09)V9(05) COMP-3
           VALUE -382951207.35442.
       77  FLD0290B                       PIC S9(03)       COMP-3
           VALUE -094.

       77  FLD0291A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.859384124391753490002088256005663424.
       77  FLD0291B                       PIC  9(06)V9(25) COMP-3
           VALUE  830008.1335268413296191170047677.

       77  FLD0292A                       PIC S9(08)V9(03) COMP-3
           VALUE +31020519.916.
       77  FLD0292B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0293A                       PIC S9(03)       COMP-3
           VALUE -093.
       77  FLD0293B                       PIC  9(08)V9(03) COMP-6
           VALUE  30744484.924.

       77  FLD0294A                       PIC S9(09)V9(06) COMP-3
           VALUE +412445339.504106.
       77  FLD0294B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0295A                       PIC S9(07)V9(02) COMP-3
           VALUE -2502548.06.
       77  FLD0295B                       PIC S9(07)V9(01) COMP-3
           VALUE +2138373.7.

       77  FLD0296A                       PIC S9(06)       COMP-3
           VALUE -160918.
       77  FLD0296B                       PIC  9(09)V9(12) COMP-3
           VALUE  574303107.736577889141.

       77  FLD0297A                       PIC  9(08)V9(03) COMP-6
           VALUE  30843552.269.
       77  FLD0297B                       PIC  9(10)V9(09) COMP-6
           VALUE  5180156945.333709295.

       77  FLD0298A                       PIC S9(10)V9(08) COMP-3
           VALUE -4831587379.88150510.
       77  FLD0298B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.983859909908295859892746193509083241.

       77  FLD0299A                       PIC  9(10)V9(13) COMP-6
           VALUE  6064872573.5835784522720.
       77  FLD0299B                       PIC  9(09)V9(16) COMP-6
           VALUE  669818284.8844781434038964.

       77  FLD0300A                       PIC  9(08)V9(20) COMP-6
           VALUE  73956142.30661028409841151187.
       77  FLD0300B                       PIC  9(09)V9(14) COMP-3
           VALUE  624082886.12038953502292.

       77  FLD0301A                       PIC S9(10)V9(07) COMP-3
           VALUE -4524568495.0704084.
       77  FLD0301B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0302A                       PIC  9(02)V9(34) COMP-6
           VALUE  94.9764690231816866017311440373305231.
       77  FLD0302B                       PIC  9(10)V9(06) COMP-6
           VALUE  4291773437.216153.

       77  FLD0303A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.998247249142951931233369577967096120.
       77  FLD0303B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0304A                       PIC S9(03)       COMP-3
           VALUE -083.
       77  FLD0304B                       PIC  9(10)V9(11) COMP-6
           VALUE  5565734306.84127234968.

       77  FLD0305A                       PIC  9(09)V9(03) COMP-6
           VALUE  328435884.788.
       77  FLD0305B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0306A                       PIC S9(03)       COMP-3
           VALUE -083.
       77  FLD0306B                       PIC S9(10)V9(08) COMP-3
           VALUE -4936418970.17687181.

       77  FLD0307A                       PIC  9(10)V9(10) COMP-3
           VALUE  5430567751.9659767416.
       77  FLD0307B                       PIC  9(03)V9(32) COMP-6
           VALUE  928.08547489686554765597747973515652.

       77  FLD0308A                       PIC  9(09)V9(05) COMP-6
           VALUE  377189267.62120.
       77  FLD0308B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.4274365663057242414879510761238634.

       77  FLD0309A                       PIC  9(09)V9(03) COMP-6
           VALUE  325461096.612.
       77  FLD0309B                       PIC S9(03)       COMP-3
           VALUE -093.

       77  FLD0310A                       PIC  9(09)V9(05) COMP-6
           VALUE  377541451.37210.
       77  FLD0310B                       PIC  9(09)V9(06) COMP-6
           VALUE  416709099.760976.

       77  FLD0311A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0311B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.931117203050255914931199185957666486.

       77  FLD0312A                       PIC S9(10)V9(07) COMP-3
           VALUE -4631183834.9707568.
       77  FLD0312B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0313A                       PIC  9(05)V9(27) COMP-3
           VALUE  86493.365621715367907995641871821.
       77  FLD0313B                       PIC  9(09)V9(05) COMP-6
           VALUE  375066571.23058.

       77  FLD0314A                       PIC  9(03)       COMP-6
           VALUE  088.
       77  FLD0314B                       PIC  9(08)V9(18) COMP-6
           VALUE  69720866.107690404600560896.

       77  FLD0315A                       PIC  9(07)V9(23) COMP-3
           VALUE  7933336.74589681625555215305212.
       77  FLD0315B                       PIC  9(09)V9(17) COMP-6
           VALUE  688307785.43204196306959374.

       77  FLD0316A                       PIC  9(06)V9(01) COMP-6
           VALUE  195827.4.
       77  FLD0316B                       PIC  9(10)V9(11) COMP-3
           VALUE  5611864585.06384822086.

       77  FLD0317A                       PIC  9(10)V9(08) COMP-6
           VALUE  4983225307.65216153.
       77  FLD0317B                       PIC S9(09)V9(03) COMP-3
           VALUE +331361572.492.

       77  FLD0318A                       PIC  9(08)V9(02) COMP-6
           VALUE  26926374.69.
       77  FLD0318B                       PIC  9(04)V9(29) COMP-3
           VALUE  8825.34717446214034275442372745601.

       77  FLD0319A                       PIC  9(08)V9(18) COMP-6
           VALUE  69931441.978879860243978328.
       77  FLD0319B                       PIC  9(09)V9(15) COMP-3
           VALUE  650439668.121860714578019.

       77  FLD0320A                       PIC  9(08)V9(19) COMP-6
           VALUE  71973495.8824565840274090078.
       77  FLD0320B                       PIC  9(10)V9(11) COMP-3
           VALUE  5542215777.53993832615.

       77  FLD0321A                       PIC  9(10)V9(09) COMP-3
           VALUE  5005504874.853489161.
       77  FLD0321B                       PIC  9(09)V9(16) COMP-3
           VALUE  660163921.0521921263818967.

       77  FLD0322A                       PIC S9(09)V9(07) COMP-3
           VALUE +442005310.2249054.
       77  FLD0322B                       PIC  9(09)V9(14) COMP-6
           VALUE  617916374.92097983841432.

       77  FLD0323A                       PIC S9(05)       COMP-3
           VALUE -15097.
       77  FLD0323B                       PIC  9(01)V9(35) COMP-3
           VALUE  9.73366140153258840861383305309573188.

       77  FLD0324A                       PIC  9(10)V9(11) COMP-3
           VALUE  5601604504.75820970162.
       77  FLD0324B                       PIC  9(10)V9(10) COMP-3
           VALUE  5319146871.9734047443.

       77  FLD0325A                       PIC  9(04)       COMP-6
           VALUE  1169.
       77  FLD0325B                       PIC  9(08)V9(19) COMP-3
           VALUE  72332591.2353324218528882738.

       77  FLD0326A                       PIC S9(08)V9(03) COMP-3
           VALUE +31312044.720.
       77  FLD0326B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0327A                       PIC S9(03)       COMP-3
           VALUE -090.
       77  FLD0327B                       PIC S9(07)V9(01) COMP-3
           VALUE +2122536.7.

       77  FLD0328A                       PIC  9(08)V9(19) COMP-3
           VALUE  71147504.7716873310044150002.
       77  FLD0328B                       PIC S9(09)V9(05) COMP-3
           VALUE -393175029.86891.

       77  FLD0329A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0329B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.2096907591406971249625712516717612.

       77  FLD0330A                       PIC  9(09)V9(07) COMP-6
           VALUE  445280746.1581723.
       77  FLD0330B                       PIC  9(07)V9(23) COMP-6
           VALUE  7955244.25555017788980194382020.

       77  FLD0331A                       PIC S9(07)V9(01) COMP-3
           VALUE +2232816.8.
       77  FLD0331B                       PIC  9(08)V9(02) COMP-6
           VALUE  27670053.03.

       77  FLD0332A                       PIC  9(05)V9(27) COMP-6
           VALUE  86562.988696340348315771962006692.
       77  FLD0332B                       PIC  9(09)V9(04) COMP-6
           VALUE  355930982.9079.

       77  FLD0333A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6494138775326296908474432711955159.
       77  FLD0333B                       PIC S9(07)V9(02) COMP-3
           VALUE +2431333.31.

       77  FLD0334A                       PIC  9(08)V9(03) COMP-6
           VALUE  28999492.466.
       77  FLD0334B                       PIC  9(09)V9(03) COMP-6
           VALUE  326043905.981.

       77  FLD0335A                       PIC S9(08)V9(03) COMP-3
           VALUE +30334218.791.
       77  FLD0335B                       PIC  9(10)V9(09) COMP-6
           VALUE  5075855226.668805064.

       77  FLD0336A                       PIC  9(05)V9(27) COMP-6
           VALUE  85800.255545984371874368434873758.
       77  FLD0336B                       PIC S9(08)V9(03) COMP-3
           VALUE -29245898.644.

       77  FLD0337A                       PIC  9(08)V9(19) COMP-3
           VALUE  72003996.5448931451597047725.
       77  FLD0337B                       PIC  9(08)V9(19) COMP-3
           VALUE  71409231.4076567258318561925.

       77  FLD0338A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0338B                       PIC  9(10)V9(10) COMP-3
           VALUE  5304768900.0456310637.

       77  FLD0339A                       PIC S9(06)       COMP-3
           VALUE -160552.
       77  FLD0339B                       PIC  9(09)V9(13) COMP-3
           VALUE  594533435.7259434154840.

       77  FLD0340A                       PIC  9(10)V9(09) COMP-3
           VALUE  5028381651.473269320.
       77  FLD0340B                       PIC S9(09)V9(04) COMP-3
           VALUE -361499697.6055.

       77  FLD0341A                       PIC  9(10)V9(11) COMP-6
           VALUE  5676316159.01010966318.
       77  FLD0341B                       PIC  9(09)V9(12) COMP-3
           VALUE  572076310.146404809486.

       77  FLD0342A                       PIC S9(07)V9(01) COMP-3
           VALUE +2347143.0.
       77  FLD0342B                       PIC S9(10)V9(07) COMP-3
           VALUE -4530575977.8135124.

       77  FLD0343A                       PIC  9(08)V9(19) COMP-6
           VALUE  72866356.1504289902792663724.
       77  FLD0343B                       PIC  9(06)V9(01) COMP-6
           VALUE  195736.6.

       77  FLD0344A                       PIC  9(09)V9(07) COMP-6
           VALUE  439744878.9947105.
       77  FLD0344B                       PIC  9(04)V9(29) COMP-3
           VALUE  8815.39565612843856179381418769480.

       77  FLD0345A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0345B                       PIC  9(09)V9(06) COMP-6
           VALUE  405441574.894889.

       77  FLD0346A                       PIC  9(07)V9(22) COMP-3
           VALUE  7807860.0333687642187641131386.
       77  FLD0346B                       PIC  9(09)V9(16) COMP-3
           VALUE  674345587.8778652490268541.

       77  FLD0347A                       PIC  9(08)V9(18) COMP-3
           VALUE  70165985.253748408556617732.
       77  FLD0347B                       PIC  9(06)       COMP-6
           VALUE  158396.

       77  FLD0348A                       PIC  9(08)V9(04) COMP-6
           VALUE  33778742.7133.
       77  FLD0348B                       PIC  9(09)V9(12) COMP-6
           VALUE  575387126.330844100863.

       77  FLD0349A                       PIC  9(10)V9(09) COMP-3
           VALUE  5122785066.779668161.
       77  FLD0349B                       PIC  9(03)V9(32) COMP-3
           VALUE  924.84903066843715535583214659709483.

       77  FLD0350A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0350B                       PIC  9(06)V9(25) COMP-6
           VALUE  826494.1389960360762501068165875.

       77  FLD0351A                       PIC  9(05)V9(27) COMP-6
           VALUE  84942.576912519174303639601930626.
       77  FLD0351B                       PIC  9(10)V9(10) COMP-6
           VALUE  5388327188.5283523516.

       77  FLD0352A                       PIC  9(03)V9(32) COMP-6
           VALUE  937.88592938035042489985926295048557.
       77  FLD0352B                       PIC  9(06)V9(01) COMP-6
           VALUE  195629.8.

       77  FLD0353A                       PIC S9(07)V9(02) COMP-3
           VALUE -2544588.73.
       77  FLD0353B                       PIC  9(02)V9(33) COMP-3
           VALUE  94.340663054368900652946194895775988.

       77  FLD0354A                       PIC  9(07)V9(01) COMP-6
           VALUE  2152460.4.
       77  FLD0354B                       PIC S9(08)V9(03) COMP-3
           VALUE -29015200.342.

       77  FLD0355A                       PIC  9(06)V9(01) COMP-6
           VALUE  208715.4.
       77  FLD0355B                       PIC S9(05)       COMP-3
           VALUE -15428.

       77  FLD0356A                       PIC S9(09)V9(05) COMP-3
           VALUE -391398983.37050.
       77  FLD0356B                       PIC  9(05)V9(27) COMP-6
           VALUE  84690.187478976841628508509529638.

       77  FLD0357A                       PIC  9(10)V9(10) COMP-3
           VALUE  5323345989.0667944591.
       77  FLD0357B                       PIC  9(03)       COMP-6
           VALUE  079.

       77  FLD0358A                       PIC  9(08)V9(03) COMP-6
           VALUE  29848403.943.
       77  FLD0358B                       PIC  9(09)V9(17) COMP-6
           VALUE  688595894.53938552239264936.

       77  FLD0359A                       PIC  9(07)V9(22) COMP-6
           VALUE  7654789.5985185210321333215688.
       77  FLD0359B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.927521413787718795873615817981772124.

       77  FLD0360A                       PIC S9(09)V9(06) COMP-3
           VALUE +400277612.276280.
       77  FLD0360B                       PIC  9(08)V9(02) COMP-6
           VALUE  26666225.04.

       77  FLD0361A                       PIC  9(06)V9(25) COMP-3
           VALUE  823089.8044061112361902132761315.
       77  FLD0361B                       PIC  9(05)V9(27) COMP-6
           VALUE  84762.044237681810621154454565839.

       77  FLD0362A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0362B                       PIC  9(04)V9(30) COMP-6
           VALUE  8970.899599407193836242413453874178.

       77  FLD0363A                       PIC  9(09)V9(04) COMP-6
           VALUE  358575926.2078.
       77  FLD0363B                       PIC  9(04)V9(30) COMP-3
           VALUE  9034.927431796696550847514117776881.

       77  FLD0364A                       PIC S9(04)       COMP-3
           VALUE +1234.
       77  FLD0364B                       PIC  9(06)V9(25) COMP-3
           VALUE  830028.0009277749559970516202156.

       77  FLD0365A                       PIC  9(09)V9(11) COMP-3
           VALUE  551967009.62472056151.
       77  FLD0365B                       PIC  9(09)V9(16) COMP-6
           VALUE  658782379.9892106313436102.

       77  FLD0366A                       PIC  9(06)V9(25) COMP-3
           VALUE  822414.3642778768414913770357088.
       77  FLD0366B                       PIC  9(06)V9(25) COMP-6
           VALUE  838180.2974044693099742175945721.

       77  FLD0367A                       PIC  9(09)V9(13) COMP-6
           VALUE  595975436.9256639039420.
       77  FLD0367B                       PIC S9(06)V9(01) COMP-3
           VALUE -191378.3.

       77  FLD0368A                       PIC  9(05)       COMP-6
           VALUE  15663.
       77  FLD0368B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0369A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0369B                       PIC S9(08)V9(03) COMP-3
           VALUE +31224128.387.

       77  FLD0370A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0370B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0371A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0371B                       PIC S9(03)       COMP-3
           VALUE -082.

       77  FLD0372A                       PIC  9(10)V9(09) COMP-6
           VALUE  5067586024.551302692.
       77  FLD0372B                       PIC  9(10)V9(09) COMP-3
           VALUE  5017586497.117959565.

       77  FLD0373A                       PIC  9(09)V9(16) COMP-3
           VALUE  660730415.8912360447786227.
       77  FLD0373B                       PIC S9(09)V9(04) COMP-3
           VALUE -352559577.5040.

       77  FLD0374A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0374B                       PIC  9(08)V9(19) COMP-3
           VALUE  71126449.7973442155753787119.

       77  FLD0375A                       PIC  9(07)V9(22) COMP-3
           VALUE  7816763.9605777072819847717255.
       77  FLD0375B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0376A                       PIC  9(05)V9(27) COMP-6
           VALUE  84980.958923270843996533585595898.
       77  FLD0376B                       PIC  9(10)V9(09) COMP-3
           VALUE  5240094598.000759607.

       77  FLD0377A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7759547981370871205797357106348499.
       77  FLD0377B                       PIC  9(07)V9(22) COMP-3
           VALUE  7813622.4062247550126159012506.

       77  FLD0378A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0378B                       PIC S9(06)       COMP-3
           VALUE -163135.

       77  FLD0379A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351160784.1302399890.
       77  FLD0379B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0380A                       PIC  9(09)V9(03) COMP-6
           VALUE  318886259.138.
       77  FLD0380B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0381A                       PIC  9(10)V9(09) COMP-6
           VALUE  5188977124.912377281.
       77  FLD0381B                       PIC  9(03)       COMP-6
           VALUE  096.

       77  FLD0382A                       PIC  9(10)V9(10) COMP-6
           VALUE  5469463185.9002762475.
       77  FLD0382B                       PIC  9(04)       COMP-6
           VALUE  1276.

       77  FLD0383A                       PIC  9(04)V9(29) COMP-3
           VALUE  8846.28028341020278269013488170458.
       77  FLD0383B                       PIC  9(06)V9(24) COMP-3
           VALUE  801588.906111812216082057602761.

       77  FLD0384A                       PIC S9(07)V9(02) COMP-3
           VALUE +2410021.83.
       77  FLD0384B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0385A                       PIC  9(09)V9(14) COMP-6
           VALUE  616198826.41569234671408.
       77  FLD0385B                       PIC  9(04)V9(29) COMP-3
           VALUE  8914.93363280043138452413131744833.

       77  FLD0386A                       PIC  9(10)V9(11) COMP-6
           VALUE  5671006446.22052230126.
       77  FLD0386B                       PIC  9(07)V9(21) COMP-3
           VALUE  7538453.430795608589676248811.

       77  FLD0387A                       PIC  9(08)V9(03) COMP-6
           VALUE  30516405.931.
       77  FLD0387B                       PIC  9(09)V9(16) COMP-3
           VALUE  660134959.6835575095354897.

       77  FLD0388A                       PIC  9(10)V9(11) COMP-6
           VALUE  5691303425.20841603359.
       77  FLD0388B                       PIC  9(03)       COMP-6
           VALUE  099.

       77  FLD0389A                       PIC S9(10)V9(06) COMP-3
           VALUE +4300560615.719126.
       77  FLD0389B                       PIC  9(10)V9(12) COMP-6
           VALUE  5882065365.633618592156.

       77  FLD0390A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0390B                       PIC  9(03)       COMP-6
           VALUE  095.

       77  FLD0391A                       PIC S9(08)V9(03) COMP-3
           VALUE +30066642.536.
       77  FLD0391B                       PIC S9(08)V9(02) COMP-3
           VALUE -26329271.26.

       77  FLD0392A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7627258628673261320329856971511617.
       77  FLD0392B                       PIC  9(10)V9(07) COMP-6
           VALUE  4682510725.0510572.

       77  FLD0393A                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0393B                       PIC  9(04)V9(30) COMP-6
           VALUE  9067.420163680885991652758093550801.

       77  FLD0394A                       PIC  9(05)V9(01) COMP-6
           VALUE  16807.8.
       77  FLD0394B                       PIC S9(10)V9(08) COMP-3
           VALUE -4746288002.63585892.

       77  FLD0395A                       PIC  9(10)V9(09) COMP-3
           VALUE  5206691882.901124390.
       77  FLD0395B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0396A                       PIC  9(09)V9(06) BINARY
           VALUE  419939827.280791.
       77  FLD0396B                       PIC  9(09)V9(07) COMP-6
           VALUE  446487444.5871826.

       77  FLD0397A                       PIC  9(05)V9(27) COMP-6
           VALUE  85569.982924983467587054519754019.
       77  FLD0397B                       PIC S9(02)       COMP-3
           VALUE -07.

       77  FLD0398A                       PIC  9(05)V9(26) COMP-3
           VALUE  84110.85692078776876456913669244.
       77  FLD0398B                       PIC S9(08)V9(02) COMP-3
           VALUE -28358417.67.

       77  FLD0399A                       PIC  9(05)V9(27) COMP-3
           VALUE  86215.377080746946614198122915695.
       77  FLD0399B                       PIC  9(07)V9(02) COMP-6
           VALUE  2481207.70.

       77  FLD0400A                       PIC  9(10)V9(08) COMP-6
           VALUE  4880703034.67910082.
       77  FLD0400B                       PIC  9(06)V9(25) COMP-6
           VALUE  835199.6491942943467989834971376.

       77  FLD0401A                       PIC  9(08)V9(03) COMP-6
           VALUE  30757829.425.
       77  FLD0401B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0402A                       PIC  9(04)V9(29) COMP-3
           VALUE  8843.41306989221531686951038864208.
       77  FLD0402B                       PIC  9(08)V9(18) COMP-6
           VALUE  69652895.633901057426129455.

       77  FLD0403A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351391185.2119278034.
       77  FLD0403B                       PIC  9(03)V9(32) COMP-6
           VALUE  939.96913575689089448417234962107613.

       77  FLD0404A                       PIC S9(10)V9(08) COMP-3
           VALUE -4810592903.51378177.
       77  FLD0404B                       PIC  9(09)V9(16) COMP-3
           VALUE  670850774.7441430080215241.

       77  FLD0405A                       PIC S9(09)V9(04) COMP-3
           VALUE -360620744.0007.
       77  FLD0405B                       PIC S9(05)       COMP-3
           VALUE +14133.

       77  FLD0406A                       PIC S9(07)V9(02) COMP-3
           VALUE -2503018.94.
       77  FLD0406B                       PIC  9(07)V9(23) COMP-6
           VALUE  7996063.91391730064732712435215.

       77  FLD0407A                       PIC  9(09)V9(13) COMP-3
           VALUE  592634898.8738083800598.
       77  FLD0407B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.879241102928391082826919955550692975.

       77  FLD0408A                       PIC  9(09)V9(07) COMP-6
           VALUE  438100099.1119252.
       77  FLD0408B                       PIC  9(08)V9(02) COMP-6
           VALUE  28626783.20.

       77  FLD0409A                       PIC  9(08)V9(02) COMP-6
           VALUE  28575188.65.
       77  FLD0409B                       PIC  9(09)V9(12) COMP-6
           VALUE  576691261.515216657684.

       77  FLD0410A                       PIC  9(09)V9(14) COMP-6
           VALUE  615937928.60877261130525.
       77  FLD0410B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.822719722312858170454319406417198479.

       77  FLD0411A                       PIC  9(09)V9(17) COMP-6
           VALUE  688573322.26995748847286904.
       77  FLD0411B                       PIC  9(07)V9(22) COMP-6
           VALUE  7775778.4281136710369253250973.

       77  FLD0412A                       PIC  9(09)V9(12) COMP-3
           VALUE  572677017.522024045526.
       77  FLD0412B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0413A                       PIC  9(06)V9(25) COMP-6
           VALUE  828822.6462986850728853482905833.
       77  FLD0413B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0414A                       PIC  9(05)V9(27) COMP-3
           VALUE  84413.303017262042438062508153961.
       77  FLD0414B                       PIC S9(05)       COMP-3
           VALUE -15377.

       77  FLD0415A                       PIC  9(09)V9(15) COMP-3
           VALUE  650722988.227690701812377.
       77  FLD0415B                       PIC  9(03)V9(31) COMP-6
           VALUE  919.0351051613949717733476063585840.

       77  FLD0416A                       PIC  9(09)V9(16) COMP-6
           VALUE  675584038.8269652718733482.
       77  FLD0416B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0417A                       PIC  9(03)V9(32) COMP-3
           VALUE  942.59186417160190085695603556814603.
       77  FLD0417B                       PIC  9(04)V9(29) COMP-3
           VALUE  8943.54109346381376255408213182818.

       77  FLD0418A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0418B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0419A                       PIC  9(09)V9(06) COMP-6
           VALUE  415695619.544491.
       77  FLD0419B                       PIC  9(10)V9(10) COMP-3
           VALUE  5349169017.3884820502.

       77  FLD0420A                       PIC  9(08)V9(02) COMP-6
           VALUE  26881191.37.
       77  FLD0420B                       PIC  9(04)V9(30) COMP-6
           VALUE  9092.387304867948216724471421912312.

       77  FLD0421A                       PIC  9(08)V9(19) COMP-3
           VALUE  71124707.9077118260492795798.
       77  FLD0421B                       PIC S9(06)V9(01) COMP-3
           VALUE +210383.3.

       77  FLD0422A                       PIC  9(08)V9(18) COMP-3
           VALUE  69276472.004700051510184266.
       77  FLD0422B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7464238557165900900258748151827603.

       77  FLD0423A                       PIC  9(09)V9(13) COMP-6
           VALUE  595417774.2919815052857.
       77  FLD0423B                       PIC  9(09)V9(17) COMP-6
           VALUE  689527286.14626146441679566.

       77  FLD0424A                       PIC  9(09)V9(11) COMP-3
           VALUE  551151541.59885582085.
       77  FLD0424B                       PIC  9(08)V9(19) COMP-6
           VALUE  72724692.5117367437607640567.

       77  FLD0425A                       PIC S9(10)V9(08) COMP-3
           VALUE -4741628720.81754727.
       77  FLD0425B                       PIC  9(10)V9(12) COMP-3
           VALUE  5846836543.074439562772.

       77  FLD0426A                       PIC  9(10)V9(11) COMP-3
           VALUE  5601456695.80725313885.
       77  FLD0426B                       PIC  9(10)V9(11) COMP-6
           VALUE  5581868249.31393821280.

       77  FLD0427A                       PIC  9(09)V9(04) COMP-6
           VALUE  365284621.5641.
       77  FLD0427B                       PIC  9(07)V9(22) COMP-6
           VALUE  7792109.4871910845380824639505.

       77  FLD0428A                       PIC  9(05)V9(27) COMP-6
           VALUE  85913.234918316627730661139139556.
       77  FLD0428B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.753152813075189886404814387788064777.

       77  FLD0429A                       PIC  9(07)V9(22) COMP-3
           VALUE  7833347.6062909002113343603923.
       77  FLD0429B                       PIC  9(09)V9(06) COMP-6
           VALUE  415311789.274485.

       77  FLD0430A                       PIC  9(08)V9(03) COMP-6
           VALUE  30820998.502.
       77  FLD0430B                       PIC  9(09)V9(04) COMP-6
           VALUE  345613119.3468.

       77  FLD0431A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0431B                       PIC  9(03)V9(31) COMP-3
           VALUE  920.3928254587173674039490833820309.

       77  FLD0432A                       PIC  9(10)V9(11) COMP-3
           VALUE  5612307034.00538710745.
       77  FLD0432B                       PIC S9(06)       COMP-3
           VALUE -161655.

       77  FLD0433A                       PIC  9(08)V9(19) COMP-3
           VALUE  72012955.8244768763763943297.
       77  FLD0433B                       PIC  9(06)V9(01) COMP-6
           VALUE  206502.1.

       77  FLD0434A                       PIC S9(10)V9(07) COMP-3
           VALUE -4547054675.3415619.
       77  FLD0434B                       PIC  9(03)V9(32) COMP-3
           VALUE  931.50114075800283242045907172723673.

       77  FLD0435A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0435B                       PIC  9(10)V9(12) COMP-3
           VALUE  5848414344.863717140299.

       77  FLD0436A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0436B                       PIC  9(06)V9(25) COMP-3
           VALUE  830719.5843004202551185244374210.

       77  FLD0437A                       PIC  9(09)V9(15) COMP-3
           VALUE  632897272.198471361193128.
       77  FLD0437B                       PIC  9(09)V9(15) COMP-3
           VALUE  644015379.475938010145341.

       77  FLD0438A                       PIC  9(09)V9(16) COMP-3
           VALUE  664694021.6365745390802999.
       77  FLD0438B                       PIC  9(05)V9(28) COMP-3
           VALUE  87427.7230957161255453513604152249.

       77  FLD0439A                       PIC  9(10)V9(08) COMP-6
           VALUE  4961134805.43429519.
       77  FLD0439B                       PIC  9(10)V9(11) COMP-3
           VALUE  5610850764.78219813012.

       77  FLD0440A                       PIC  9(04)V9(29) COMP-6
           VALUE  8899.07507055040514210020319296745.
       77  FLD0440B                       PIC  9(10)V9(07) COMP-6
           VALUE  4554701137.8932739.

       77  FLD0441A                       PIC  9(08)V9(19) COMP-3
           VALUE  71126905.4406556744396539215.
       77  FLD0441B                       PIC S9(10)V9(06) COMP-3
           VALUE +4339238601.837461.

       77  FLD0442A                       PIC  9(05)V9(01) COMP-6
           VALUE  16995.1.
       77  FLD0442B                       PIC  9(03)V9(31) COMP-6
           VALUE  915.7753741786495149668212434335146.

       77  FLD0443A                       PIC S9(10)V9(08) COMP-3
           VALUE -4744984255.46487689.
       77  FLD0443B                       PIC  9(09)V9(14) COMP-3
           VALUE  620915031.52970173307068.

       77  FLD0444A                       PIC  9(02)V9(33) COMP-6
           VALUE  94.673816662087151296844922399031929.
       77  FLD0444B                       PIC  9(10)V9(09) COMP-3
           VALUE  5047752845.189990011.

       77  FLD0445A                       PIC  9(10)V9(10) COMP-3
           VALUE  5416554544.5299512206.
       77  FLD0445B                       PIC S9(10)V9(07) COMP-3
           VALUE -4623541965.4562581.

       77  FLD0446A                       PIC  9(10)V9(09) COMP-3
           VALUE  5044897846.697211640.
       77  FLD0446B                       PIC  9(09)V9(16) COMP-6
           VALUE  665206327.4939082893055797.

       77  FLD0447A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0447B                       PIC  9(08)V9(02) COMP-6
           VALUE  27717300.69.

       77  FLD0448A                       PIC  9(06)V9(01) COMP-6
           VALUE  186565.4.
       77  FLD0448B                       PIC  9(10)V9(10) COMP-6
           VALUE  5373290497.5367845601.

       77  FLD0449A                       PIC S9(09)V9(05) COMP-3
           VALUE -384988094.18704.
       77  FLD0449B                       PIC S9(08)V9(04) COMP-3
           VALUE +34016016.2924.

       77  FLD0450A                       PIC  9(09)V9(14) COMP-6
           VALUE  625578375.50228334588808.
       77  FLD0450B                       PIC  9(09)V9(13) COMP-6
           VALUE  597300618.6146695428718.

       77  FLD0451A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0451B                       PIC S9(07)V9(02) COMP-3
           VALUE -2517390.40.

       77  FLD0452A                       PIC  9(08)V9(02) COMP-6
           VALUE  26826484.18.
       77  FLD0452B                       PIC  9(10)V9(11) COMP-6
           VALUE  5576443525.30127562772.

       77  FLD0453A                       PIC  9(10)V9(10) COMP-6
           VALUE  5383526546.5392911909.
       77  FLD0453B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7573296701221163829131910461001098.

       77  FLD0454A                       PIC S9(03)       COMP-3
           VALUE -090.
       77  FLD0454B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0455A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0455B                       PIC  9(05)V9(27) COMP-3
           VALUE  85105.998788168291113720442808698.

       77  FLD0456A                       PIC S9(03)       COMP-3
           VALUE -093.
       77  FLD0456B                       PIC  9(05)       COMP-6
           VALUE  15509.

       77  FLD0457A                       PIC  9(04)V9(30) COMP-6
           VALUE  9063.641671624598217249513254500925.
       77  FLD0457B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0458A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0458B                       PIC  9(09)V9(03) COMP-6
           VALUE  319507540.378.

       77  FLD0459A                       PIC  9(06)V9(01) COMP-6
           VALUE  198479.9.
       77  FLD0459B                       PIC  9(10)V9(11) COMP-3
           VALUE  5635468078.16151518188.

       77  FLD0460A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0460B                       PIC  9(07)V9(22) COMP-3
           VALUE  7834589.5335320658858790920930.

       77  FLD0461A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0461B                       PIC S9(07)V9(01) COMP-3
           VALUE +2146839.2.

       77  FLD0462A                       PIC  9(08)V9(02) COMP-6
           VALUE  26776595.69.
       77  FLD0462B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.2391194548525610308331579290097579.

       77  FLD0463A                       PIC  9(05)V9(27) COMP-3
           VALUE  85490.666934027292889197724434779.
       77  FLD0463B                       PIC  9(09)V9(06) COMP-6
           VALUE  407249114.981761.

       77  FLD0464A                       PIC  9(10)V9(07) COMP-6
           VALUE  4587031190.3834293.
       77  FLD0464B                       PIC  9(08)V9(19) COMP-6
           VALUE  71857481.5704608793609509120.

       77  FLD0465A                       PIC  9(10)V9(12) COMP-3
           VALUE  5816563985.597106301028.
       77  FLD0465B                       PIC  9(06)V9(25) COMP-6
           VALUE  837937.1800695708527584315561398.

       77  FLD0466A                       PIC  9(09)V9(15) COMP-3
           VALUE  654381306.333900236715805.
       77  FLD0466B                       PIC  9(05)       COMP-6
           VALUE  14616.

       77  FLD0467A                       PIC S9(07)V9(01) COMP-3
           VALUE +2343287.0.
       77  FLD0467B                       PIC  9(04)V9(29) COMP-3
           VALUE  8929.74677715112297171629052172647.

       77  FLD0468A                       PIC S9(10)V9(06) COMP-3
           VALUE +4344132145.767680.
       77  FLD0468B                       PIC  9(08)V9(03) COMP-6
           VALUE  29592230.696.

       77  FLD0469A                       PIC  9(08)V9(18) COMP-6
           VALUE  70961503.876956555370014712.
       77  FLD0469B                       PIC  9(10)V9(09) COMP-3
           VALUE  5200119971.346918168.

       77  FLD0470A                       PIC  9(03)V9(31) COMP-3
           VALUE  913.6810028966669827710234130790922.
       77  FLD0470B                       PIC S9(09)V9(05) COMP-3
           VALUE -383130523.18889.

       77  FLD0471A                       PIC S9(07)V9(02) COMP-3
           VALUE -2507103.69.
       77  FLD0471B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0472A                       PIC  9(10)V9(09) COMP-3
           VALUE  5103990869.050332168.
       77  FLD0472B                       PIC  9(06)V9(26) COMP-3
           VALUE  843393.74409143441635450244575622.

       77  FLD0473A                       PIC  9(08)V9(20) COMP-3
           VALUE  74367162.06805468187823748849.
       77  FLD0473B                       PIC  9(08)V9(18) COMP-3
           VALUE  70143773.259305752798553612.

       77  FLD0474A                       PIC  9(08)V9(19) COMP-6
           VALUE  72625744.5118117406224200749.
       77  FLD0474B                       PIC S9(05)       COMP-3
           VALUE +13295.

       77  FLD0475A                       PIC  9(10)V9(07) COMP-6
           VALUE  4588724634.2999971.
       77  FLD0475B                       PIC S9(09)V9(06) COMP-3
           VALUE +420010897.357724.

       77  FLD0476A                       PIC  9(08)V9(02) COMP-6
           VALUE  28869933.49.
       77  FLD0476B                       PIC  9(06)V9(01) COMP-6
           VALUE  197306.5.

       77  FLD0477A                       PIC  9(08)V9(20) COMP-3
           VALUE  74492482.99155191155307420558.
       77  FLD0477B                       PIC S9(09)V9(05) COMP-3
           VALUE -380644102.28203.

       77  FLD0478A                       PIC  9(08)V9(19) COMP-6
           VALUE  72616162.5751895356550846827.
       77  FLD0478B                       PIC  9(09)V9(04) COMP-6
           VALUE  345871637.9604.

       77  FLD0479A                       PIC S9(09)V9(06) COMP-3
           VALUE +413502052.896697.
       77  FLD0479B                       PIC  9(06)V9(25) COMP-3
           VALUE  820524.8465168897276100778981344.

       77  FLD0480A                       PIC S9(06)V9(01) COMP-3
           VALUE +203017.8.
       77  FLD0480B                       PIC  9(08)V9(20) COMP-6
           VALUE  74798417.21657910502685240317.

       77  FLD0481A                       PIC  9(05)       COMP-6
           VALUE  15658.
       77  FLD0481B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.907459007614364265847939350351225584.

       77  FLD0482A                       PIC  9(08)V9(18) COMP-6
           VALUE  70905037.950447225014727337.
       77  FLD0482B                       PIC S9(10)V9(08) COMP-3
           VALUE -4922020906.16106868.

       77  FLD0483A                       PIC  9(03)       COMP-6
           VALUE  079.
       77  FLD0483B                       PIC S9(09)V9(03) COMP-3
           VALUE +323420049.144.

       77  FLD0484A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0484B                       PIC  9(09)V9(12) COMP-6
           VALUE  577123861.473882282524.

       77  FLD0485A                       PIC  9(07)V9(02) COMP-6
           VALUE  2567572.97.
       77  FLD0485B                       PIC  9(05)V9(01) COMP-6
           VALUE  16688.0.

       77  FLD0486A                       PIC  9(05)       COMP-6
           VALUE  13937.
       77  FLD0486B                       PIC  9(10)V9(07) COMP-6
           VALUE  4583814690.4965959.

       77  FLD0487A                       PIC  9(06)V9(01) COMP-6
           VALUE  209384.2.
       77  FLD0487B                       PIC  9(08)V9(18) COMP-3
           VALUE  70207035.549040885946681100.

       77  FLD0488A                       PIC S9(10)V9(07) COMP-3
           VALUE -4519198906.7966076.
       77  FLD0488B                       PIC  9(09)V9(16) COMP-6
           VALUE  669660091.3134611587906874.

       77  FLD0489A                       PIC S9(05)V9(01) COMP-3
           VALUE -17360.6.
       77  FLD0489B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.950567826331271348294649214949458837.

       77  FLD0490A                       PIC  9(10)V9(10) COMP-6
           VALUE  5352566580.2623056954.
       77  FLD0490B                       PIC  9(08)V9(02) COMP-6
           VALUE  28596817.06.

       77  FLD0491A                       PIC  9(03)V9(31) COMP-6
           VALUE  918.2459205467069507378141679510008.
       77  FLD0491B                       PIC  9(09)V9(16) COMP-3
           VALUE  661285516.5476814178759923.

       77  FLD0492A                       PIC  9(06)V9(25) COMP-6
           VALUE  819266.4570447540928199714471702.
       77  FLD0492B                       PIC S9(09)V9(04) COMP-3
           VALUE +343135449.1145.

       77  FLD0493A                       PIC S9(05)V9(01) BINARY
           VALUE -18038.5.
       77  FLD0493B                       PIC  9(06)V9(24) COMP-6
           VALUE  808734.959278862186593528349476.

       77  FLD0494A                       PIC  9(05)V9(28) COMP-6
           VALUE  87574.5417791477964719604187848744.
       77  FLD0494B                       PIC  9(10)V9(09) COMP-3
           VALUE  5133082903.157394349.

       77  FLD0495A                       PIC S9(02)       COMP-3
           VALUE -05.
       77  FLD0495B                       PIC  9(09)V9(15) COMP-6
           VALUE  646882578.915106698502768.

       77  FLD0496A                       PIC  9(06)V9(25) COMP-6
           VALUE  816763.6415427422802437718019064.
       77  FLD0496B                       PIC S9(04)       COMP-3
           VALUE +1240.

       77  FLD0497A                       PIC  9(06)V9(25) COMP-6
           VALUE  836230.6435874340415637107071233.
       77  FLD0497B                       PIC  9(09)V9(16) COMP-6
           VALUE  665491997.9684780217965567.

       77  FLD0498A                       PIC  9(10)V9(08) COMP-6
           VALUE  4792455293.49441590.
       77  FLD0498B                       PIC  9(06)V9(01) COMP-6
           VALUE  189449.4.

       77  FLD0499A                       PIC  9(02)       COMP-6
           VALUE  05.
       77  FLD0499B                       PIC  9(09)V9(15) COMP-3
           VALUE  634131211.402607308791345.


      * RESULTS-AREA.
       78  XPC-FLD0001B
           VALUE X'04'.
       78  XPC-FLD0002B
           VALUE X'01571925154608921904042517780914'.
       78  XPC-FLD0003B
           VALUE X'497691662540136914'.
       78  XPC-FLD0004B
           VALUE X'316172'.
       78  XPC-FLD0005B
           VALUE X'0326669126773C'.
       78  XPC-FLD0006B
           VALUE X'02564149945687535678828794516448398F'.
       78  XPC-FLD0007B
           VALUE X'02703102891D'.
       78  XPC-FLD0008B
           VALUE X'091D'.
       78  XPC-FLD0009B
           VALUE X'750598888818416259625343627703841F'.
       78  XPC-FLD0010B
           VALUE X'401313154225654C'.
       78  XPC-FLD0011B
           VALUE X'0716073640695890795927880390081554'.
       78  XPC-FLD0012B
           VALUE X'714856822486604356929547066F'.
       78  XPC-FLD0013B
           VALUE X'0249701360'.
       78  XPC-FLD0014B
           VALUE X'07563565'.
       78  XPC-FLD0015B
           VALUE X'496103206190910525'.
       78  XPC-FLD0016B
           VALUE X'04316078086835850C'.
       78  XPC-FLD0017B
           VALUE X'8983341087204116393039043941826093'.
       78  XPC-FLD0018B
           VALUE X'7D'.
       78  XPC-FLD0019B
           VALUE X'527908669140271D'.
       78  XPC-FLD0020B
           VALUE X'009154677345638306819F'.
       78  XPC-FLD0021B
           VALUE X'0C'.
       78  XPC-FLD0022B
           VALUE X'06800620448921426031141379553F'.
       78  XPC-FLD0023B
           VALUE X'0011865432391802879230624512274516746F'.
       78  XPC-FLD0024B
           VALUE X'081262603108476C'.
       78  XPC-FLD0025B
           VALUE X'0249748827'.
       78  XPC-FLD0026B
           VALUE X'038375719620564D'.
       78  XPC-FLD0027B
           VALUE X'08427161982877569013082921992870'.
       78  XPC-FLD0028B
           VALUE X'5D'.
       78  XPC-FLD0029B
           VALUE X'068438817718294422258378517F'.
       78  XPC-FLD0030B
           VALUE X'070264210169553353857452293F'.
       78  XPC-FLD0031B
           VALUE X'070450280588407820925311852F'.
       78  XPC-FLD0032B
           VALUE X'0947220571791D'.
       78  XPC-FLD0033B
           VALUE X'960256540212'.
       78  XPC-FLD0034B
           VALUE X'021267719C'.
       78  XPC-FLD0035B
           VALUE X'30926017'.
       78  XPC-FLD0036B
           VALUE X'84780746063121390621031281398245'.
       78  XPC-FLD0037B
           VALUE X'15352D'.
       78  XPC-FLD0038B
           VALUE X'08192466589219795159659831540467'.
       78  XPC-FLD0039B
           VALUE X'02142775'.
       78  XPC-FLD0040B
           VALUE X'328C'.
       78  XPC-FLD0041B
           VALUE X'5719955231502458548F'.
       78  XPC-FLD0042B
           VALUE X'53913067269542921267'.
       78  XPC-FLD0043B
           VALUE X'08947428650524259539551508169097361F'.
       78  XPC-FLD0044B
           VALUE X'03593279914883'.
       78  XPC-FLD0045B
           VALUE X'40565136957830'.
       78  XPC-FLD0046B
           VALUE X'086000025910646182847330010190489F'.
       78  XPC-FLD0047B
           VALUE X'500920610887845814'.
       78  XPC-FLD0048B
           VALUE X'0012727D'.
       78  XPC-FLD0049B
           VALUE X'06818217198975972105429554915463086217'.
       78  XPC-FLD0050B
           VALUE X'0079122399722566'.
       78  XPC-FLD0051B
           VALUE X'4768561362631936750203005938732530'.
       78  XPC-FLD0052B
           VALUE X'018378999229403754265F'.
       78  XPC-FLD0053B
           VALUE X'3589163888701D'.
       78  XPC-FLD0054B
           VALUE X'319288758232'.
       78  XPC-FLD0055B
           VALUE X'9048691568994934320002240F'.
       78  XPC-FLD0056B
           VALUE X'2564409583'.
       78  XPC-FLD0057B
           VALUE X'024C'.
       78  XPC-FLD0058B
           VALUE X'3436235653794C'.
       78  XPC-FLD0059B
           VALUE X'062832873919564874525472'.
       78  XPC-FLD0060B
           VALUE X'159140'.
       78  XPC-FLD0061B
           VALUE X'08166592123096498172785118185856'.
       78  XPC-FLD0062B
           VALUE X'09769550469250686264269F'.
       78  XPC-FLD0063B
           VALUE X'753004763264897311507922950F'.
       78  XPC-FLD0064B
           VALUE X'07440D'.
       78  XPC-FLD0065B
           VALUE X'05378C'.
       78  XPC-FLD0066B
           VALUE X'085085260849998822774153950376785F'.
       78  XPC-FLD0067B
           VALUE X'1D'.
       78  XPC-FLD0068B
           VALUE X'06'.
       78  XPC-FLD0069B
           VALUE X'0097'.
       78  XPC-FLD0070B
           VALUE X'8473394D'.
       78  XPC-FLD0071B
           VALUE X'1274'.
       78  XPC-FLD0072B
           VALUE X'655377313792015250284373'.
       78  XPC-FLD0073B
           VALUE X'70717240702803545859163048'.
       78  XPC-FLD0074B
           VALUE X'6009119595528942259221594213158817808F'.
       78  XPC-FLD0075B
           VALUE X'082894007C'.
       78  XPC-FLD0076B
           VALUE X'0889922269538142470324260102643165738F'.
       78  XPC-FLD0077B
           VALUE X'0297736583767979700245026833727024'.
       78  XPC-FLD0078B
           VALUE X'52639083334727222580'.
       78  XPC-FLD0079B
           VALUE X'324C'.
       78  XPC-FLD0080B
           VALUE X'3711534372339D'.
       78  XPC-FLD0081B
           VALUE X'03672069622885'.
       78  XPC-FLD0082B
           VALUE X'039908942738066827524420432382'.
       78  XPC-FLD0083B
           VALUE X'886546406C'.
       78  XPC-FLD0084B
           VALUE X'0405109331835069'.
       78  XPC-FLD0085B
           VALUE X'4354243534611629'.
       78  XPC-FLD0086B
           VALUE X'571167021401449572360F'.
       78  XPC-FLD0087B
           VALUE X'9773'.
       78  XPC-FLD0088B
           VALUE X'481540354519'.
       78  XPC-FLD0089B
           VALUE X'08552781102827879955441403577769802F'.
       78  XPC-FLD0090B
           VALUE X'00751809682D'.
       78  XPC-FLD0091B
           VALUE X'08617201884902925811235356'.
       78  XPC-FLD0092B
           VALUE X'03179100098465547968089595087804'.
       78  XPC-FLD0093B
           VALUE X'0790919325337388512409120266966F'.
       78  XPC-FLD0094B
           VALUE X'053066656460354850645F'.
       78  XPC-FLD0095B
           VALUE X'05167739798081453228562054391361'.
       78  XPC-FLD0096B
           VALUE X'0875053049076218392166026660561328'.
       78  XPC-FLD0097B
           VALUE X'076639044132902548449948199049'.
       78  XPC-FLD0098B
           VALUE X'334130309069'.
       78  XPC-FLD0099B
           VALUE X'16802810991D'.
       78  XPC-FLD0100B
           VALUE X'053883959962677607717265'.
       78  XPC-FLD0101B
           VALUE X'512112051D'.
       78  XPC-FLD0102B
           VALUE X'062599568832775289662151'.
       78  XPC-FLD0103B
           VALUE X'09'.
       78  XPC-FLD0104B
           VALUE X'0481255505832174334D'.
       78  XPC-FLD0105B
           VALUE X'0152268966'.
       78  XPC-FLD0106B
           VALUE X'02636217829D'.
       78  XPC-FLD0107B
           VALUE X'0491683543555178959039153289'.
       78  XPC-FLD0108B
           VALUE X'03863193550D'.
       78  XPC-FLD0109B
           VALUE X'00156720262660837374113498299266211F'.
       78  XPC-FLD0110B
           VALUE X'61781025727648194445507102'.
       78  XPC-FLD0111B
           VALUE X'05582373934795217912'.
       78  XPC-FLD0112B
           VALUE X'09837197320D'.
       78  XPC-FLD0113B
           VALUE X'0370'.
       78  XPC-FLD0114B
           VALUE X'873969'.
       78  XPC-FLD0115B
           VALUE X'30236778644C'.
       78  XPC-FLD0116B
           VALUE X'03'.
       78  XPC-FLD0117B
           VALUE X'013612'.
       78  XPC-FLD0118B
           VALUE X'806D'.
       78  XPC-FLD0119B
           VALUE X'0253932450'.
       78  XPC-FLD0120B
           VALUE X'067D'.
       78  XPC-FLD0121B
           VALUE X'0323330267022C'.
       78  XPC-FLD0122B
           VALUE X'2693757152'.
       78  XPC-FLD0123B
           VALUE X'07502022502690824523057244732F'.
       78  XPC-FLD0124B
           VALUE X'04223876720963152C'.
       78  XPC-FLD0125B
           VALUE X'637787216045794358443288'.
       78  XPC-FLD0126B
           VALUE X'14776980'.
       78  XPC-FLD0127B
           VALUE X'0968598991861849889506430599794838'.
       78  XPC-FLD0128B
           VALUE X'7158526709'.
       78  XPC-FLD0129B
           VALUE X'066302536762228508700376'.
       78  XPC-FLD0130B
           VALUE X'030500681275'.
       78  XPC-FLD0131B
           VALUE X'97542725692831921848454612'.
       78  XPC-FLD0132B
           VALUE X'21622287'.
       78  XPC-FLD0133B
           VALUE X'252842198D'.
       78  XPC-FLD0134B
           VALUE X'6035745627324759055021275F'.
       78  XPC-FLD0135B
           VALUE X'0089682198'.
       78  XPC-FLD0136B
           VALUE X'721064189695820607747975827F'.
       78  XPC-FLD0137B
           VALUE X'39815975038716593768839402400772088F'.
       78  XPC-FLD0138B
           VALUE X'2805087202945691003095503219810780'.
       78  XPC-FLD0139B
           VALUE X'04629717477620841718762676464393'.
       78  XPC-FLD0140B
           VALUE X'09134502802484925076953459210926666F'.
       78  XPC-FLD0141B
           VALUE X'01980465'.
       78  XPC-FLD0142B
           VALUE X'00112D'.
       78  XPC-FLD0143B
           VALUE X'04030994'.
       78  XPC-FLD0144B
           VALUE X'24553993'.
       78  XPC-FLD0145B
           VALUE X'0009479682736521'.
       78  XPC-FLD0146B
           VALUE X'05926753717490164309811F'.
       78  XPC-FLD0147B
           VALUE X'0397442042521838'.
       78  XPC-FLD0148B
           VALUE X'335821179980'.
       78  XPC-FLD0149B
           VALUE X'005D'.
       78  XPC-FLD0150B
           VALUE X'05779789481524289174174668914929497987'.
       78  XPC-FLD0151B
           VALUE X'03489779895385769491943608024F'.
       78  XPC-FLD0152B
           VALUE X'976189035330467796747200281970435753'.
       78  XPC-FLD0153B
           VALUE X'69465356575944581241088818012F'.
       78  XPC-FLD0154B
           VALUE X'040490022953226414'.
       78  XPC-FLD0155B
           VALUE X'07822691488762339967770021576143335F'.
       78  XPC-FLD0156B
           VALUE X'8985588062372004625188992577022872'.
       78  XPC-FLD0157B
           VALUE X'4359875032276696'.
       78  XPC-FLD0158B
           VALUE X'19917526243063020197192F'.
       78  XPC-FLD0159B
           VALUE X'0643529357674236912600918F'.
       78  XPC-FLD0160B
           VALUE X'04490300'.
       78  XPC-FLD0161B
           VALUE X'0795897533357509001650242908'.
       78  XPC-FLD0162B
           VALUE X'0566814386458160899086'.
       78  XPC-FLD0163B
           VALUE X'0269208611024764676855618F'.
       78  XPC-FLD0164B
           VALUE X'3001'.
       78  XPC-FLD0165B
           VALUE X'1267'.
       78  XPC-FLD0166B
           VALUE X'429599'.
       78  XPC-FLD0167B
           VALUE X'00917440942478405142746282763255'.
       78  XPC-FLD0168B
           VALUE X'04326936005661665C'.
       78  XPC-FLD0169B
           VALUE X'71534750846474368213279150'.
       78  XPC-FLD0170B
           VALUE X'02603177530164159092505813954945188016'.
       78  XPC-FLD0171B
           VALUE X'4933823716025803'.
       78  XPC-FLD0172B
           VALUE X'8903776753838588409184495731096831'.
       78  XPC-FLD0173B
           VALUE X'519945412779417204'.
       78  XPC-FLD0174B
           VALUE X'05152585493087611057'.
       78  XPC-FLD0175B
           VALUE X'051C'.
       78  XPC-FLD0176B
           VALUE X'021895219257'.
       78  XPC-FLD0177B
           VALUE X'0999225365'.
       78  XPC-FLD0178B
           VALUE X'24104366113D'.
       78  XPC-FLD0179B
           VALUE X'0664'.
       78  XPC-FLD0180B
           VALUE X'054351034931997414107F'.
       78  XPC-FLD0181B
           VALUE X'0474073583253910868D'.
       78  XPC-FLD0182B
           VALUE X'0417908352338649757839920F'.
       78  XPC-FLD0183B
           VALUE X'003C'.
       78  XPC-FLD0184B
           VALUE X'036019692D'.
       78  XPC-FLD0185B
           VALUE X'7395132638753716096465495866'.
       78  XPC-FLD0186B
           VALUE X'8407708947119312415452441200613F'.
       78  XPC-FLD0187B
           VALUE X'6497950041934480558403'.
       78  XPC-FLD0188B
           VALUE X'00471158677246608093014401354F'.
       78  XPC-FLD0189B
           VALUE X'0078359569344531809751'.
       78  XPC-FLD0190B
           VALUE X'062476651140273569806415'.
       78  XPC-FLD0191B
           VALUE X'0817437168989411478996487403492F'.
       78  XPC-FLD0192B
           VALUE X'03580342295012'.
       78  XPC-FLD0193B
           VALUE X'86499232126294976690766F'.
       78  XPC-FLD0194B
           VALUE X'0217285653058917626499679F'.
       78  XPC-FLD0195B
           VALUE X'060767'.
       78  XPC-FLD0196B
           VALUE X'0180007D'.
       78  XPC-FLD0197B
           VALUE X'05'.
       78  XPC-FLD0198B
           VALUE X'79036D'.
       78  XPC-FLD0199B
           VALUE X'045232741410605347571106449322'.
       78  XPC-FLD0200B
           VALUE X'095184480153268257'.
       78  XPC-FLD0201B
           VALUE X'0792759590444417882612526682351F'.
       78  XPC-FLD0202B
           VALUE X'037943227555010013122256395945441909'.
       78  XPC-FLD0203B
           VALUE X'05835712416517114804656539879215415F'.
       78  XPC-FLD0204B
           VALUE X'23632656'.
       78  XPC-FLD0205B
           VALUE X'288741127747638715028699'.
       78  XPC-FLD0206B
           VALUE X'70639388766434425840361654'.
       78  XPC-FLD0207B
           VALUE X'07691791385730962560263179739F'.
       78  XPC-FLD0208B
           VALUE X'21514986'.
       78  XPC-FLD0209B
           VALUE X'795271109412971503516143201296'.
       78  XPC-FLD0210B
           VALUE X'08'.
       78  XPC-FLD0211B
           VALUE X'04421137707554604C'.
       78  XPC-FLD0212B
           VALUE X'026496836026413D'.
       78  XPC-FLD0213B
           VALUE X'07525639770631302875997903356F'.
       78  XPC-FLD0214B
           VALUE X'06668932704655321508369070'.
       78  XPC-FLD0215B
           VALUE X'0173002D'.
       78  XPC-FLD0216B
           VALUE X'5663716874'.
       78  XPC-FLD0217B
           VALUE X'05191266215287889C'.
       78  XPC-FLD0218B
           VALUE X'04467255193327033602201936446363106369'.
       78  XPC-FLD0219B
           VALUE X'58766925082182334127'.
       78  XPC-FLD0220B
           VALUE X'29365D'.
       78  XPC-FLD0221B
           VALUE X'0878910367794605407176788958167890'.
       78  XPC-FLD0222B
           VALUE X'98033D'.
       78  XPC-FLD0223B
           VALUE X'69950927082806102497158917'.
       78  XPC-FLD0224B
           VALUE X'038300768427666D'.
       78  XPC-FLD0225B
           VALUE X'572612409808938978169F'.
       78  XPC-FLD0226B
           VALUE X'021150954C'.
       78  XPC-FLD0227B
           VALUE X'2038736443582994661522477889957372'.
       78  XPC-FLD0228B
           VALUE X'6560309403122602756042169858119450510F'.
       78  XPC-FLD0229B
           VALUE X'7383802976208535540081356884'.
       78  XPC-FLD0230B
           VALUE X'098D'.
       78  XPC-FLD0231B
           VALUE X'02709433475D'.
       78  XPC-FLD0232B
           VALUE X'4749842313738054193504353861500F'.
       78  XPC-FLD0233B
           VALUE X'412919251494'.
       78  XPC-FLD0234B
           VALUE X'05600680922670572133253F'.
       78  XPC-FLD0235B
           VALUE X'0480831518719295639D'.
       78  XPC-FLD0236B
           VALUE X'070471341881577547199277944F'.
       78  XPC-FLD0237B
           VALUE X'0088849488581330880890618573175743'.
       78  XPC-FLD0238B
           VALUE X'03227001'.
       78  XPC-FLD0239B
           VALUE X'29332566026370832101832F'.
       78  XPC-FLD0240B
           VALUE X'0204109650584163561111186027120F'.
       78  XPC-FLD0241B
           VALUE X'060875735723205993171444'.
       78  XPC-FLD0242B
           VALUE X'1820842D'.
       78  XPC-FLD0243B
           VALUE X'0870255257093214798613800553539476'.
       78  XPC-FLD0244B
           VALUE X'5964541497067354924865'.
       78  XPC-FLD0245B
           VALUE X'264333833210099267317333'.
       78  XPC-FLD0246B
           VALUE X'01209826'.
       78  XPC-FLD0247B
           VALUE X'742067276785553808782225359F'.
       78  XPC-FLD0248B
           VALUE X'0568358594454923286003'.
       78  XPC-FLD0249B
           VALUE X'3516462579097082707946242F'.
       78  XPC-FLD0250B
           VALUE X'9267251332164047061614164335129317'.
       78  XPC-FLD0251B
           VALUE X'3790591152463825338016431487631F'.
       78  XPC-FLD0252B
           VALUE X'023614266C'.
       78  XPC-FLD0253B
           VALUE X'21598977'.
       78  XPC-FLD0254B
           VALUE X'949043622D'.
       78  XPC-FLD0255B
           VALUE X'054081435076039155115F'.
       78  XPC-FLD0256B
           VALUE X'08751500721603051085707734273455571F'.
       78  XPC-FLD0257B
           VALUE X'408C'.
       78  XPC-FLD0258B
           VALUE X'08373758705249056762416399345967'.
       78  XPC-FLD0259B
           VALUE X'037466830472594D'.
       78  XPC-FLD0260B
           VALUE X'06017366610583895639607F'.
       78  XPC-FLD0261B
           VALUE X'00567161858323'.
       78  XPC-FLD0262B
           VALUE X'68757658126759821329241049'.
       78  XPC-FLD0263B
           VALUE X'040C'.
       78  XPC-FLD0264B
           VALUE X'166846'.
       78  XPC-FLD0265B
           VALUE X'02298778729177715439249141127220354975'.
       78  XPC-FLD0266B
           VALUE X'0115052360207692161431225486003512427F'.
       78  XPC-FLD0267B
           VALUE X'023489014C'.
       78  XPC-FLD0268B
           VALUE X'8211500957830146774085733341053F'.
       78  XPC-FLD0269B
           VALUE X'00'.
       78  XPC-FLD0270B
           VALUE X'03736D'.
       78  XPC-FLD0271B
           VALUE X'0052759203'.
       78  XPC-FLD0272B
           VALUE X'0516000696302733685D'.
       78  XPC-FLD0273B
           VALUE X'09036109253095580C'.
       78  XPC-FLD0274B
           VALUE X'52694748208586675958'.
       78  XPC-FLD0275B
           VALUE X'242413794C'.
       78  XPC-FLD0276B
           VALUE X'026452912587946930678128865110919777'.
       78  XPC-FLD0277B
           VALUE X'499215458601645512'.
       78  XPC-FLD0278B
           VALUE X'07922277502052260016194509262277280F'.
       78  XPC-FLD0279B
           VALUE X'28001839602575101420001146834692918F'.
       78  XPC-FLD0280B
           VALUE X'686572532054675839148262639F'.
       78  XPC-FLD0281B
           VALUE X'050053214871016073'.
       78  XPC-FLD0282B
           VALUE X'080366298088737049271049105300'.
       78  XPC-FLD0283B
           VALUE X'0182739D'.
       78  XPC-FLD0284B
           VALUE X'01'.
       78  XPC-FLD0285B
           VALUE X'7369214262351649891158444916'.
       78  XPC-FLD0286B
           VALUE X'82453436'.
       78  XPC-FLD0287B
           VALUE X'362829'.
       78  XPC-FLD0288B
           VALUE X'558809488025126643861391416517087F'.
       78  XPC-FLD0289B
           VALUE X'0567633089214293657540'.
       78  XPC-FLD0290B
           VALUE X'113C'.
       78  XPC-FLD0291B
           VALUE X'8300179929109657213726070068560F'.
       78  XPC-FLD0292B
           VALUE X'00'.
       78  XPC-FLD0293B
           VALUE X'030744391924'.
       78  XPC-FLD0294B
           VALUE X'09'.
       78  XPC-FLD0295B
           VALUE X'003641744D'.
       78  XPC-FLD0296B
           VALUE X'574464025736577889141F'.
       78  XPC-FLD0297B
           VALUE X'05211000497602709295'.
       78  XPC-FLD0298B
           VALUE X'09865365009908295859892746193509083241'.
       78  XPC-FLD0299B
           VALUE X'07346908584680565956758964'.
       78  XPC-FLD0300B
           VALUE X'55012674381377925092451F'.
       78  XPC-FLD0301B
           VALUE X'0C'.
       78  XPC-FLD0302B
           VALUE X'4291773342239684'.
       78  XPC-FLD0303B
           VALUE X'09'.
       78  XPC-FLD0304B
           VALUE X'0556573438984127234968'.
       78  XPC-FLD0305B
           VALUE X'5C'.
       78  XPC-FLD0306B
           VALUE X'0493641888717687181D'.
       78  XPC-FLD0307B
           VALUE X'068005145163846554765597747973515652'.
       78  XPC-FLD0308B
           VALUE X'0711937634336942757585120489238761366F'.
       78  XPC-FLD0309B
           VALUE X'093D'.
       78  XPC-FLD0310B
           VALUE X'0039167648388876'.
       78  XPC-FLD0311B
           VALUE X'3931117203050255914931199185957666486F'.
       78  XPC-FLD0312B
           VALUE X'04'.
       78  XPC-FLD0313B
           VALUE X'37515306459621'.
       78  XPC-FLD0314B
           VALUE X'69720778107690404600560896'.
       78  XPC-FLD0315B
           VALUE X'69624112217793877932514589'.
       78  XPC-FLD0316B
           VALUE X'561166875766384822086F'.
       78  XPC-FLD0317B
           VALUE X'0331361572492C'.
       78  XPC-FLD0318B
           VALUE X'754934282553785965724557627254399F'.
       78  XPC-FLD0319B
           VALUE X'0720371110100740574821997F'.
       78  XPC-FLD0320B
           VALUE X'547024228165748174212F'.
       78  XPC-FLD0321B
           VALUE X'6656687959056812873818967F'.
       78  XPC-FLD0322B
           VALUE X'017591106469607443841432'.
       78  XPC-FLD0323B
           VALUE X'0726633859846741159138616694690426812F'.
       78  XPC-FLD0324B
           VALUE X'002824576327848049573F'.
       78  XPC-FLD0325B
           VALUE X'723337602353324218528882738F'.
       78  XPC-FLD0326B
           VALUE X'049D'.
       78  XPC-FLD0327B
           VALUE X'021224467C'.
       78  XPC-FLD0328B
           VALUE X'046432253464059D'.
       78  XPC-FLD0329B
           VALUE X'0952096907591406971249625712516717612F'.
       78  XPC-FLD0330B
           VALUE X'732550190262212211019805617980'.
       78  XPC-FLD0331B
           VALUE X'2990286983'.
       78  XPC-FLD0332B
           VALUE X'03558444199192'.
       78  XPC-FLD0333B
           VALUE X'243133331C'.
       78  XPC-FLD0334B
           VALUE X'297044413515'.
       78  XPC-FLD0335B
           VALUE X'05106189445459805064'.
       78  XPC-FLD0336B
           VALUE X'29331698899D'.
       78  XPC-FLD0337B
           VALUE X'434132279525498709915609650F'.
       78  XPC-FLD0338B
           VALUE X'053047689000456310637F'.
       78  XPC-FLD0339B
           VALUE X'05943728837259434154840F'.
       78  XPC-FLD0340B
           VALUE X'3898813490788D'.
       78  XPC-FLD0341B
           VALUE X'248392469156514472666F'.
       78  XPC-FLD0342B
           VALUE X'45329231208135124D'.
       78  XPC-FLD0343B
           VALUE X'00620927'.
       78  XPC-FLD0344B
           VALUE X'606359905437156143820618581230520F'.
       78  XPC-FLD0345B
           VALUE X'0405441574894889'.
       78  XPC-FLD0346B
           VALUE X'6665377278444964848080900F'.
       78  XPC-FLD0347B
           VALUE X'324381'.
       78  XPC-FLD0348B
           VALUE X'0541608383617544100863'.
       78  XPC-FLD0349B
           VALUE X'99162869882943715535583214659709483F'.
       78  XPC-FLD0350B
           VALUE X'08264871389960360762501068165875'.
       78  XPC-FLD0351B
           VALUE X'53884121311052648707'.
       78  XPC-FLD0352B
           VALUE X'01946919'.
       78  XPC-FLD0353B
           VALUE X'94389336945631099347053805104224012F'.
       78  XPC-FLD0354B
           VALUE X'31167660742D'.
       78  XPC-FLD0355B
           VALUE X'93287C'.
       78  XPC-FLD0356B
           VALUE X'83673557978976841628508509529638'.
       78  XPC-FLD0357B
           VALUE X'0079'.
       78  XPC-FLD0358B
           VALUE X'65874749059638552239264936'.
       78  XPC-FLD0359B
           VALUE X'9526039934819852117442415817981772124F'.
       78  XPC-FLD0360B
           VALUE X'7361138723'.
       78  XPC-FLD0361B
           VALUE X'07851848643793046811367730697339'.
       78  XPC-FLD0362B
           VALUE X'8970899599407193836242413453874178'.
       78  XPC-FLD0363B
           VALUE X'04961135231796696550847514117776881F'.
       78  XPC-FLD0364B
           VALUE X'8287940009277749559970516202156F'.
       78  XPC-FLD0365B
           VALUE X'02107493896139311928536102'.
       78  XPC-FLD0366B
           VALUE X'00157659331265924684828405588633'.
       78  XPC-FLD0367B
           VALUE X'7840586C'.
       78  XPC-FLD0368B
           VALUE X'03'.
       78  XPC-FLD0369B
           VALUE X'31224128387C'.
       78  XPC-FLD0370B
           VALUE X'0C'.
       78  XPC-FLD0371B
           VALUE X'082D'.
       78  XPC-FLD0372B
           VALUE X'0049999527433343127F'.
       78  XPC-FLD0373B
           VALUE X'3525595775040D'.
       78  XPC-FLD0374B
           VALUE X'711264497973442155753787119F'.
       78  XPC-FLD0375B
           VALUE X'03'.
       78  XPC-FLD0376B
           VALUE X'5240009617041836336F'.
       78  XPC-FLD0377B
           VALUE X'78137191821795531497030218304F'.
       78  XPC-FLD0378B
           VALUE X'0163135D'.
       78  XPC-FLD0379B
           VALUE X'04'.
       78  XPC-FLD0380B
           VALUE X'9D'.
       78  XPC-FLD0381B
           VALUE X'0096'.
       78  XPC-FLD0382B
           VALUE X'1909'.
       78  XPC-FLD0383B
           VALUE X'0810435186395222418864747737642F'.
       78  XPC-FLD0384B
           VALUE X'01'.
       78  XPC-FLD0385B
           VALUE X'774134932514714546452413131744833F'.
       78  XPC-FLD0386B
           VALUE X'03467992789726692670323751189F'.
       78  XPC-FLD0387B
           VALUE X'6906513656145575095354897F'.
       78  XPC-FLD0388B
           VALUE X'0326'.
       78  XPC-FLD0389B
           VALUE X'0182625981352744592156'.
       78  XPC-FLD0390B
           VALUE X'0102'.
       78  XPC-FLD0391B
           VALUE X'00373737127C'.
       78  XPC-FLD0392B
           VALUE X'046825106292883313'.
       78  XPC-FLD0393B
           VALUE X'9072420163680885991652758093550801'.
       78  XPC-FLD0394B
           VALUE X'0474630481043585892D'.
       78  XPC-FLD0395B
           VALUE X'3C'.
       78  XPC-FLD0396B
           VALUE X'0265476173063916'.
       78  XPC-FLD0397B
           VALUE X'007D'.
       78  XPC-FLD0398B
           VALUE X'02844252852D'.
       78  XPC-FLD0399B
           VALUE X'0256742307'.
       78  XPC-FLD0400B
           VALUE X'08678350299065256532010165028624'.
       78  XPC-FLD0401B
           VALUE X'00'.
       78  XPC-FLD0402B
           VALUE X'69644052220831165210812585'.
       78  XPC-FLD0403B
           VALUE X'012518106356029089448417234962107613'.
       78  XPC-FLD0404B
           VALUE X'4814436782579247780215241F'.
       78  XPC-FLD0405B
           VALUE X'14133C'.
       78  XPC-FLD0406B
           VALUE X'049908285391730064732712435215'.
       78  XPC-FLD0407B
           VALUE X'08753049482988191082826919955550692975'.
       78  XPC-FLD0408B
           VALUE X'0947331591'.
       78  XPC-FLD0409B
           VALUE X'0605266450165216657684'.
       78  XPC-FLD0410B
           VALUE X'8786052888992391829545680593582801521F'.
       78  XPC-FLD0411B
           VALUE X'063491006980711595097943650973'.
       78  XPC-FLD0412B
           VALUE X'8D'.
       78  XPC-FLD0413B
           VALUE X'0C'.
       78  XPC-FLD0414B
           VALUE X'99790D'.
       78  XPC-FLD0415B
           VALUE X'9072627958632073487733476063585840'.
       78  XPC-FLD0416B
           VALUE X'8D'.
       78  XPC-FLD0417B
           VALUE X'988613295763541566341103816739633F'.
       78  XPC-FLD0418B
           VALUE X'00'.
       78  XPC-FLD0419B
           VALUE X'057648646369329730502F'.
       78  XPC-FLD0420B
           VALUE X'2098982695132051783275528578087688'.
       78  XPC-FLD0421B
           VALUE X'2103833C'.
       78  XPC-FLD0422B
           VALUE X'752582761957935941759741251848172397'.
       78  XPC-FLD0423B
           VALUE X'28494506043824296970249566'.
       78  XPC-FLD0424B
           VALUE X'0784268490871190770892359433'.
       78  XPC-FLD0425B
           VALUE X'01105207822256892292772F'.
       78  XPC-FLD0426B
           VALUE X'0001958844649331492605'.
       78  XPC-FLD0427B
           VALUE X'030767310512910845380824639505'.
       78  XPC-FLD0428B
           VALUE X'03481765503552540774734325168211935223'.
       78  XPC-FLD0429B
           VALUE X'0415311789274485'.
       78  XPC-FLD0430B
           VALUE X'03147921208448'.
       78  XPC-FLD0431B
           VALUE X'09203928254587173674039490833820309F'.
       78  XPC-FLD0432B
           VALUE X'0468689D'.
       78  XPC-FLD0433B
           VALUE X'02194580'.
       78  XPC-FLD0434B
           VALUE X'60684270265800283242045907172723673F'.
       78  XPC-FLD0435B
           VALUE X'05848414431863717140299F'.
       78  XPC-FLD0436B
           VALUE X'8307195843004202551185244374210F'.
       78  XPC-FLD0437B
           VALUE X'0276912651674409371338469F'.
       78  XPC-FLD0438B
           VALUE X'065939134788229547545486395847751F'.
       78  XPC-FLD0439B
           VALUE X'057198557021649332012F'.
       78  XPC-FLD0440B
           VALUE X'045546922388182033'.
       78  XPC-FLD0441B
           VALUE X'04410365507278117C'.
       78  XPC-FLD0442B
           VALUE X'0793246258213504850331787565664854'.
       78  XPC-FLD0443B
           VALUE X'12406922393517515692932F'.
       78  XPC-FLD0444B
           VALUE X'5047752750516173349F'.
       78  XPC-FLD0445B
           VALUE X'46235419654562581D'.
       78  XPC-FLD0446B
           VALUE X'03796915192033033506944203'.
       78  XPC-FLD0447B
           VALUE X'2771730669'.
       78  XPC-FLD0448B
           VALUE X'53731039321367845601'.
       78  XPC-FLD0449B
           VALUE X'0509720778947D'.
       78  XPC-FLD0450B
           VALUE X'0282777568876138030163'.
       78  XPC-FLD0451B
           VALUE X'251739040D'.
       78  XPC-FLD0452B
           VALUE X'0554961704112127562772'.
       78  XPC-FLD0453B
           VALUE X'432966208610221163829131910461001098'.
       78  XPC-FLD0454B
           VALUE X'0C'.
       78  XPC-FLD0455B
           VALUE X'085105998788168291113720442808698F'.
       78  XPC-FLD0456B
           VALUE X'015602'.
       78  XPC-FLD0457B
           VALUE X'04'.
       78  XPC-FLD0458B
           VALUE X'319507534378'.
       78  XPC-FLD0459B
           VALUE X'563566655806151518188F'.
       78  XPC-FLD0460B
           VALUE X'78345895335320658858790920930F'.
       78  XPC-FLD0461B
           VALUE X'021468392C'.
       78  XPC-FLD0462B
           VALUE X'0004508805451474389691668420709902421F'.
       78  XPC-FLD0463B
           VALUE X'0407334605648695'.
       78  XPC-FLD0464B
           VALUE X'0151737088129684206390490880'.
       78  XPC-FLD0465B
           VALUE X'04019227771758718807584315561398'.
       78  XPC-FLD0466B
           VALUE X'066690'.
       78  XPC-FLD0467B
           VALUE X'221674677715112297171629052172647F'.
       78  XPC-FLD0468B
           VALUE X'014539915072'.
       78  XPC-FLD0469B
           VALUE X'5200119971346918168F'.
       78  XPC-FLD0470B
           VALUE X'038313143686989D'.
       78  XPC-FLD0471B
           VALUE X'04'.
       78  XPC-FLD0472B
           VALUE X'014747530624073358364549755424378F'.
       78  XPC-FLD0473B
           VALUE X'044510935327360434676791101F'.
       78  XPC-FLD0474B
           VALUE X'12450D'.
       78  XPC-FLD0475B
           VALUE X'008735531657721C'.
       78  XPC-FLD0476B
           VALUE X'06726270'.
       78  XPC-FLD0477B
           VALUE X'038064410228203D'.
       78  XPC-FLD0478B
           VALUE X'02732554753853'.
       78  XPC-FLD0479B
           VALUE X'3225777432138897276100778981344F'.
       78  XPC-FLD0480B
           VALUE X'7459539941657910502685240317'.
       78  XPC-FLD0481B
           VALUE X'7907459007614364265847939350351225584F'.
       78  XPC-FLD0482B
           VALUE X'0499292594411151591D'.
       78  XPC-FLD0483B
           VALUE X'0323420128144C'.
       78  XPC-FLD0484B
           VALUE X'0577123861473882282524'.
       78  XPC-FLD0485B
           VALUE X'166880'.
       78  XPC-FLD0486B
           VALUE X'045838007534965959'.
       78  XPC-FLD0487B
           VALUE X'070416419749040885946681100F'.
       78  XPC-FLD0488B
           VALUE X'01888589981100687587906874'.
       78  XPC-FLD0489B
           VALUE X'00649432173668728651705350785050541163'.
       78  XPC-FLD0490B
           VALUE X'2396976320'.
       78  XPC-FLD0491B
           VALUE X'6612864347936019645829430F'.
       78  XPC-FLD0492B
           VALUE X'3423161826575C'.
       78  XPC-FLD0493B
           VALUE X'790696459278862186593528349476'.
       78  XPC-FLD0494B
           VALUE X'5132995328615615202F'.
       78  XPC-FLD0495B
           VALUE X'646882573915106698502768'.
       78  XPC-FLD0496B
           VALUE X'05523D'.
       78  XPC-FLD0497B
           VALUE X'06663282286120654558381205'.
       78  XPC-FLD0498B
           VALUE X'02658441'.
       78  XPC-FLD0499B
           VALUE X'0634131216402607308791345F'.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           ADD FLD0001A        TO FLD0001B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0002A        FROM FLD0002B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0003A        TO FLD0003B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0004A        FROM FLD0004B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0005A        TO FLD0005B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0006A        FROM FLD0006B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0007A        TO FLD0007B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0008A        FROM FLD0008B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0009A        TO FLD0009B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0010A        FROM FLD0010B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0011A        TO FLD0011B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0012A        FROM FLD0012B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0013A        TO FLD0013B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0014A        FROM FLD0014B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0015A        TO FLD0015B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0016A        FROM FLD0016B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0017A        TO FLD0017B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0018A        FROM FLD0018B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0019A        TO FLD0019B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0020A        FROM FLD0020B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0021A        TO FLD0021B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0022A        FROM FLD0022B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0023A        TO FLD0023B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0024A        FROM FLD0024B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0025A        TO FLD0025B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0026A        FROM FLD0026B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0027A        TO FLD0027B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0028A        FROM FLD0028B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0029A        TO FLD0029B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0030A        FROM FLD0030B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0031A        TO FLD0031B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0032A        FROM FLD0032B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0033A        TO FLD0033B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0034A        FROM FLD0034B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0035A        TO FLD0035B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0036A        FROM FLD0036B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0037A        TO FLD0037B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0038A        FROM FLD0038B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0039A        TO FLD0039B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0040A        FROM FLD0040B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0041A        TO FLD0041B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0042A        FROM FLD0042B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0043A        TO FLD0043B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0044A        FROM FLD0044B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0045A        TO FLD0045B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0046A        FROM FLD0046B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0047A        TO FLD0047B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0048A        FROM FLD0048B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0049A        TO FLD0049B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0050A        FROM FLD0050B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0051A        TO FLD0051B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0052A        FROM FLD0052B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0053A        TO FLD0053B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0054A        FROM FLD0054B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0055A        TO FLD0055B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0056A        FROM FLD0056B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0057A        TO FLD0057B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0058A        FROM FLD0058B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0059A        TO FLD0059B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0060A        FROM FLD0060B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0061A        TO FLD0061B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0062A        FROM FLD0062B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0063A        TO FLD0063B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0064A        FROM FLD0064B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0065A        TO FLD0065B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0066A        FROM FLD0066B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0067A        TO FLD0067B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0068A        FROM FLD0068B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0069A        TO FLD0069B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0070A        FROM FLD0070B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0071A        TO FLD0071B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0072A        FROM FLD0072B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0073A        TO FLD0073B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0074A        FROM FLD0074B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0075A        TO FLD0075B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0076A        FROM FLD0076B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0077A        TO FLD0077B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0078A        FROM FLD0078B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0079A        TO FLD0079B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0080A        FROM FLD0080B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0081A        TO FLD0081B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0082A        FROM FLD0082B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0083A        TO FLD0083B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0084A        FROM FLD0084B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0085A        TO FLD0085B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0086A        FROM FLD0086B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0087A        TO FLD0087B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0088A        FROM FLD0088B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0089A        TO FLD0089B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0090A        FROM FLD0090B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0091A        TO FLD0091B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0092A        FROM FLD0092B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0093A        TO FLD0093B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0094A        FROM FLD0094B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0095A        TO FLD0095B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0096A        FROM FLD0096B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0097A        TO FLD0097B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0098A        FROM FLD0098B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0099A        TO FLD0099B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0100A        FROM FLD0100B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0101A        TO FLD0101B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0102A        FROM FLD0102B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0103A        TO FLD0103B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0104A        FROM FLD0104B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0105A        TO FLD0105B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0106A        FROM FLD0106B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0107A        TO FLD0107B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0108A        FROM FLD0108B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0109A        TO FLD0109B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0110A        FROM FLD0110B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0111A        TO FLD0111B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0112A        FROM FLD0112B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0113A        TO FLD0113B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0114A        FROM FLD0114B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0115A        TO FLD0115B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0116A        FROM FLD0116B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0117A        TO FLD0117B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0118A        FROM FLD0118B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0119A        TO FLD0119B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0120A        FROM FLD0120B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0121A        TO FLD0121B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0122A        FROM FLD0122B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0123A        TO FLD0123B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0124A        FROM FLD0124B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0125A        TO FLD0125B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0126A        FROM FLD0126B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0127A        TO FLD0127B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0128A        FROM FLD0128B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0129A        TO FLD0129B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0130A        FROM FLD0130B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0131A        TO FLD0131B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0132A        FROM FLD0132B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0133A        TO FLD0133B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0134A        FROM FLD0134B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0135A        TO FLD0135B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0136A        FROM FLD0136B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0137A        TO FLD0137B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0138A        FROM FLD0138B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0139A        TO FLD0139B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0140A        FROM FLD0140B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0141A        TO FLD0141B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0142A        FROM FLD0142B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0143A        TO FLD0143B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0144A        FROM FLD0144B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0145A        TO FLD0145B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0146A        FROM FLD0146B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0147A        TO FLD0147B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0148A        FROM FLD0148B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0149A        TO FLD0149B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0150A        FROM FLD0150B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0151A        TO FLD0151B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0152A        FROM FLD0152B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0153A        TO FLD0153B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0154A        FROM FLD0154B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0155A        TO FLD0155B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0156A        FROM FLD0156B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0157A        TO FLD0157B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0158A        FROM FLD0158B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0159A        TO FLD0159B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0160A        FROM FLD0160B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0161A        TO FLD0161B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0162A        FROM FLD0162B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0163A        TO FLD0163B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0164A        FROM FLD0164B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0165A        TO FLD0165B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0166A        FROM FLD0166B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0167A        TO FLD0167B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0168A        FROM FLD0168B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0169A        TO FLD0169B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0170A        FROM FLD0170B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0171A        TO FLD0171B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0172A        FROM FLD0172B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0173A        TO FLD0173B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0174A        FROM FLD0174B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0175A        TO FLD0175B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0176A        FROM FLD0176B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0177A        TO FLD0177B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0178A        FROM FLD0178B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0179A        TO FLD0179B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0180A        FROM FLD0180B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0181A        TO FLD0181B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0182A        FROM FLD0182B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0183A        TO FLD0183B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0184A        FROM FLD0184B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0185A        TO FLD0185B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0186A        FROM FLD0186B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0187A        TO FLD0187B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0188A        FROM FLD0188B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0189A        TO FLD0189B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0190A        FROM FLD0190B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0191A        TO FLD0191B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0192A        FROM FLD0192B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0193A        TO FLD0193B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0194A        FROM FLD0194B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0195A        TO FLD0195B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0196A        FROM FLD0196B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0197A        TO FLD0197B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0198A        FROM FLD0198B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0199A        TO FLD0199B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0200A        FROM FLD0200B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0201A        TO FLD0201B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0202A        FROM FLD0202B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0203A        TO FLD0203B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0204A        FROM FLD0204B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0205A        TO FLD0205B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0206A        FROM FLD0206B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0207A        TO FLD0207B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0208A        FROM FLD0208B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0209A        TO FLD0209B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0210A        FROM FLD0210B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0211A        TO FLD0211B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0212A        FROM FLD0212B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0213A        TO FLD0213B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0214A        FROM FLD0214B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0215A        TO FLD0215B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0216A        FROM FLD0216B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0217A        TO FLD0217B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0218A        FROM FLD0218B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0219A        TO FLD0219B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0220A        FROM FLD0220B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0221A        TO FLD0221B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0222A        FROM FLD0222B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0223A        TO FLD0223B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0224A        FROM FLD0224B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0225A        TO FLD0225B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0226A        FROM FLD0226B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0227A        TO FLD0227B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0228A        FROM FLD0228B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0229A        TO FLD0229B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0230A        FROM FLD0230B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0231A        TO FLD0231B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0232A        FROM FLD0232B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0233A        TO FLD0233B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0234A        FROM FLD0234B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0235A        TO FLD0235B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0236A        FROM FLD0236B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0237A        TO FLD0237B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0238A        FROM FLD0238B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0239A        TO FLD0239B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0240A        FROM FLD0240B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0241A        TO FLD0241B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0242A        FROM FLD0242B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0243A        TO FLD0243B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0244A        FROM FLD0244B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0245A        TO FLD0245B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0246A        FROM FLD0246B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0247A        TO FLD0247B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0248A        FROM FLD0248B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0249A        TO FLD0249B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0250A        FROM FLD0250B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0251A        TO FLD0251B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0252A        FROM FLD0252B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0253A        TO FLD0253B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0254A        FROM FLD0254B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0255A        TO FLD0255B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0256A        FROM FLD0256B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0257A        TO FLD0257B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0258A        FROM FLD0258B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0259A        TO FLD0259B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0260A        FROM FLD0260B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0261A        TO FLD0261B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0262A        FROM FLD0262B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0263A        TO FLD0263B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0264A        FROM FLD0264B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0265A        TO FLD0265B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0266A        FROM FLD0266B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0267A        TO FLD0267B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0268A        FROM FLD0268B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0269A        TO FLD0269B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0270A        FROM FLD0270B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0271A        TO FLD0271B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0272A        FROM FLD0272B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0273A        TO FLD0273B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0274A        FROM FLD0274B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0275A        TO FLD0275B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0276A        FROM FLD0276B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0277A        TO FLD0277B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0278A        FROM FLD0278B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0279A        TO FLD0279B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0280A        FROM FLD0280B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0281A        TO FLD0281B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0282A        FROM FLD0282B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0283A        TO FLD0283B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0284A        FROM FLD0284B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0285A        TO FLD0285B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0286A        FROM FLD0286B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0287A        TO FLD0287B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0288A        FROM FLD0288B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0289A        TO FLD0289B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0290A        FROM FLD0290B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0291A        TO FLD0291B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0292A        FROM FLD0292B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0293A        TO FLD0293B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0294A        FROM FLD0294B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0295A        TO FLD0295B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0296A        FROM FLD0296B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0297A        TO FLD0297B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0298A        FROM FLD0298B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0299A        TO FLD0299B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0300A        FROM FLD0300B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0301A        TO FLD0301B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0302A        FROM FLD0302B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0303A        TO FLD0303B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0304A        FROM FLD0304B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0305A        TO FLD0305B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0306A        FROM FLD0306B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0307A        TO FLD0307B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0308A        FROM FLD0308B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0309A        TO FLD0309B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0310A        FROM FLD0310B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0311A        TO FLD0311B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0312A        FROM FLD0312B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0313A        TO FLD0313B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0314A        FROM FLD0314B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0315A        TO FLD0315B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0316A        FROM FLD0316B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0317A        TO FLD0317B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0318A        FROM FLD0318B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0319A        TO FLD0319B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0320A        FROM FLD0320B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0321A        TO FLD0321B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0322A        FROM FLD0322B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0323A        TO FLD0323B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0324A        FROM FLD0324B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0325A        TO FLD0325B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0326A        FROM FLD0326B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0327A        TO FLD0327B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0328A        FROM FLD0328B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0329A        TO FLD0329B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0330A        FROM FLD0330B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0331A        TO FLD0331B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0332A        FROM FLD0332B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0333A        TO FLD0333B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0334A        FROM FLD0334B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0335A        TO FLD0335B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0336A        FROM FLD0336B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0337A        TO FLD0337B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0338A        FROM FLD0338B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0339A        TO FLD0339B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0340A        FROM FLD0340B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0341A        TO FLD0341B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0342A        FROM FLD0342B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0343A        TO FLD0343B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0344A        FROM FLD0344B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0345A        TO FLD0345B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0346A        FROM FLD0346B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0347A        TO FLD0347B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0348A        FROM FLD0348B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0349A        TO FLD0349B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0350A        FROM FLD0350B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0351A        TO FLD0351B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0352A        FROM FLD0352B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0353A        TO FLD0353B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0354A        FROM FLD0354B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0355A        TO FLD0355B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0356A        FROM FLD0356B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0357A        TO FLD0357B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0358A        FROM FLD0358B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0359A        TO FLD0359B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0360A        FROM FLD0360B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0361A        TO FLD0361B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0362A        FROM FLD0362B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0363A        TO FLD0363B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0364A        FROM FLD0364B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0365A        TO FLD0365B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0366A        FROM FLD0366B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0367A        TO FLD0367B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0368A        FROM FLD0368B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0369A        TO FLD0369B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0370A        FROM FLD0370B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0371A        TO FLD0371B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0372A        FROM FLD0372B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0373A        TO FLD0373B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0374A        FROM FLD0374B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0375A        TO FLD0375B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0376A        FROM FLD0376B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0377A        TO FLD0377B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0378A        FROM FLD0378B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0379A        TO FLD0379B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0380A        FROM FLD0380B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0381A        TO FLD0381B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0382A        FROM FLD0382B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0383A        TO FLD0383B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0384A        FROM FLD0384B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0385A        TO FLD0385B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0386A        FROM FLD0386B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0387A        TO FLD0387B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0388A        FROM FLD0388B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0389A        TO FLD0389B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0390A        FROM FLD0390B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0391A        TO FLD0391B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0392A        FROM FLD0392B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0393A        TO FLD0393B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0394A        FROM FLD0394B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0395A        TO FLD0395B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0396A        FROM FLD0396B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0397A        TO FLD0397B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0398A        FROM FLD0398B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0399A        TO FLD0399B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0400A        FROM FLD0400B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0401A        TO FLD0401B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0402A        FROM FLD0402B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0403A        TO FLD0403B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0404A        FROM FLD0404B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0405A        TO FLD0405B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0406A        FROM FLD0406B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0407A        TO FLD0407B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0408A        FROM FLD0408B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0409A        TO FLD0409B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0410A        FROM FLD0410B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0411A        TO FLD0411B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0412A        FROM FLD0412B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0413A        TO FLD0413B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0414A        FROM FLD0414B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0415A        TO FLD0415B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0416A        FROM FLD0416B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0417A        TO FLD0417B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0418A        FROM FLD0418B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0419A        TO FLD0419B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0420A        FROM FLD0420B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0421A        TO FLD0421B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0422A        FROM FLD0422B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0423A        TO FLD0423B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0424A        FROM FLD0424B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0425A        TO FLD0425B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0426A        FROM FLD0426B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0427A        TO FLD0427B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0428A        FROM FLD0428B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0429A        TO FLD0429B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0430A        FROM FLD0430B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0431A        TO FLD0431B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0432A        FROM FLD0432B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0433A        TO FLD0433B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0434A        FROM FLD0434B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0435A        TO FLD0435B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0436A        FROM FLD0436B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0437A        TO FLD0437B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0438A        FROM FLD0438B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0439A        TO FLD0439B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0440A        FROM FLD0440B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0441A        TO FLD0441B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0442A        FROM FLD0442B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0443A        TO FLD0443B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0444A        FROM FLD0444B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0445A        TO FLD0445B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0446A        FROM FLD0446B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0447A        TO FLD0447B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0448A        FROM FLD0448B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0449A        TO FLD0449B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0450A        FROM FLD0450B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0451A        TO FLD0451B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0452A        FROM FLD0452B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0453A        TO FLD0453B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0454A        FROM FLD0454B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0455A        TO FLD0455B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0456A        FROM FLD0456B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0457A        TO FLD0457B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0458A        FROM FLD0458B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0459A        TO FLD0459B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0460A        FROM FLD0460B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0461A        TO FLD0461B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0462A        FROM FLD0462B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0463A        TO FLD0463B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0464A        FROM FLD0464B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0465A        TO FLD0465B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0466A        FROM FLD0466B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0467A        TO FLD0467B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0468A        FROM FLD0468B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0469A        TO FLD0469B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0470A        FROM FLD0470B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0471A        TO FLD0471B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0472A        FROM FLD0472B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0473A        TO FLD0473B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0474A        FROM FLD0474B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0475A        TO FLD0475B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0476A        FROM FLD0476B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0477A        TO FLD0477B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0478A        FROM FLD0478B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0479A        TO FLD0479B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0480A        FROM FLD0480B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0481A        TO FLD0481B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0482A        FROM FLD0482B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0483A        TO FLD0483B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0484A        FROM FLD0484B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0485A        TO FLD0485B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0486A        FROM FLD0486B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0487A        TO FLD0487B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0488A        FROM FLD0488B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0489A        TO FLD0489B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0490A        FROM FLD0490B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0491A        TO FLD0491B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0492A        FROM FLD0492B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0493A        TO FLD0493B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0494A        FROM FLD0494B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0495A        TO FLD0495B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0496A        FROM FLD0496B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0497A        TO FLD0497B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0498A        FROM FLD0498B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0499A        TO FLD0499B
               ROUNDED MODE IS NEAREST-EVEN          .

      *4000-COMPARE.

           IF FLD0001B (1:)    NOT EQUAL XPC-FLD0001B
              DISPLAY 'FLD0001B ==> ' HEX-OF (FLD0001B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0001B).
           IF FLD0002B (1:)    NOT EQUAL XPC-FLD0002B
              DISPLAY 'FLD0002B ==> ' HEX-OF (FLD0002B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0002B).
           IF FLD0003B (1:)    NOT EQUAL XPC-FLD0003B
              DISPLAY 'FLD0003B ==> ' HEX-OF (FLD0003B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0003B).
           IF FLD0004B (1:)    NOT EQUAL XPC-FLD0004B
              DISPLAY 'FLD0004B ==> ' HEX-OF (FLD0004B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0004B).
           IF FLD0005B (1:)    NOT EQUAL XPC-FLD0005B
              DISPLAY 'FLD0005B ==> ' HEX-OF (FLD0005B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0005B).
           IF FLD0006B (1:)    NOT EQUAL XPC-FLD0006B
              DISPLAY 'FLD0006B ==> ' HEX-OF (FLD0006B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0006B).
           IF FLD0007B (1:)    NOT EQUAL XPC-FLD0007B
              DISPLAY 'FLD0007B ==> ' HEX-OF (FLD0007B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0007B).
           IF FLD0008B (1:)    NOT EQUAL XPC-FLD0008B
              DISPLAY 'FLD0008B ==> ' HEX-OF (FLD0008B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0008B).
           IF FLD0009B (1:)    NOT EQUAL XPC-FLD0009B
              DISPLAY 'FLD0009B ==> ' HEX-OF (FLD0009B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0009B).
           IF FLD0010B (1:)    NOT EQUAL XPC-FLD0010B
              DISPLAY 'FLD0010B ==> ' HEX-OF (FLD0010B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0010B).
           IF FLD0011B (1:)    NOT EQUAL XPC-FLD0011B
              DISPLAY 'FLD0011B ==> ' HEX-OF (FLD0011B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0011B).
           IF FLD0012B (1:)    NOT EQUAL XPC-FLD0012B
              DISPLAY 'FLD0012B ==> ' HEX-OF (FLD0012B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0012B).
           IF FLD0013B (1:)    NOT EQUAL XPC-FLD0013B
              DISPLAY 'FLD0013B ==> ' HEX-OF (FLD0013B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0013B).
           IF FLD0014B (1:)    NOT EQUAL XPC-FLD0014B
              DISPLAY 'FLD0014B ==> ' HEX-OF (FLD0014B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0014B).
           IF FLD0015B (1:)    NOT EQUAL XPC-FLD0015B
              DISPLAY 'FLD0015B ==> ' HEX-OF (FLD0015B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0015B).
           IF FLD0016B (1:)    NOT EQUAL XPC-FLD0016B
              DISPLAY 'FLD0016B ==> ' HEX-OF (FLD0016B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0016B).
           IF FLD0017B (1:)    NOT EQUAL XPC-FLD0017B
              DISPLAY 'FLD0017B ==> ' HEX-OF (FLD0017B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0017B).
           IF FLD0018B (1:)    NOT EQUAL XPC-FLD0018B
              DISPLAY 'FLD0018B ==> ' HEX-OF (FLD0018B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0018B).
           IF FLD0019B (1:)    NOT EQUAL XPC-FLD0019B
              DISPLAY 'FLD0019B ==> ' HEX-OF (FLD0019B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0019B).
           IF FLD0020B (1:)    NOT EQUAL XPC-FLD0020B
              DISPLAY 'FLD0020B ==> ' HEX-OF (FLD0020B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0020B).
           IF FLD0021B (1:)    NOT EQUAL XPC-FLD0021B
              DISPLAY 'FLD0021B ==> ' HEX-OF (FLD0021B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0021B).
           IF FLD0022B (1:)    NOT EQUAL XPC-FLD0022B
              DISPLAY 'FLD0022B ==> ' HEX-OF (FLD0022B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0022B).
           IF FLD0023B (1:)    NOT EQUAL XPC-FLD0023B
              DISPLAY 'FLD0023B ==> ' HEX-OF (FLD0023B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0023B).
           IF FLD0024B (1:)    NOT EQUAL XPC-FLD0024B
              DISPLAY 'FLD0024B ==> ' HEX-OF (FLD0024B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0024B).
           IF FLD0025B (1:)    NOT EQUAL XPC-FLD0025B
              DISPLAY 'FLD0025B ==> ' HEX-OF (FLD0025B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0025B).
           IF FLD0026B (1:)    NOT EQUAL XPC-FLD0026B
              DISPLAY 'FLD0026B ==> ' HEX-OF (FLD0026B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0026B).
           IF FLD0027B (1:)    NOT EQUAL XPC-FLD0027B
              DISPLAY 'FLD0027B ==> ' HEX-OF (FLD0027B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0027B).
           IF FLD0028B (1:)    NOT EQUAL XPC-FLD0028B
              DISPLAY 'FLD0028B ==> ' HEX-OF (FLD0028B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0028B).
           IF FLD0029B (1:)    NOT EQUAL XPC-FLD0029B
              DISPLAY 'FLD0029B ==> ' HEX-OF (FLD0029B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0029B).
           IF FLD0030B (1:)    NOT EQUAL XPC-FLD0030B
              DISPLAY 'FLD0030B ==> ' HEX-OF (FLD0030B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0030B).
           IF FLD0031B (1:)    NOT EQUAL XPC-FLD0031B
              DISPLAY 'FLD0031B ==> ' HEX-OF (FLD0031B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0031B).
           IF FLD0032B (1:)    NOT EQUAL XPC-FLD0032B
              DISPLAY 'FLD0032B ==> ' HEX-OF (FLD0032B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0032B).
           IF FLD0033B (1:)    NOT EQUAL XPC-FLD0033B
              DISPLAY 'FLD0033B ==> ' HEX-OF (FLD0033B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0033B).
           IF FLD0034B (1:)    NOT EQUAL XPC-FLD0034B
              DISPLAY 'FLD0034B ==> ' HEX-OF (FLD0034B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0034B).
           IF FLD0035B (1:)    NOT EQUAL XPC-FLD0035B
              DISPLAY 'FLD0035B ==> ' HEX-OF (FLD0035B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0035B).
           IF FLD0036B (1:)    NOT EQUAL XPC-FLD0036B
              DISPLAY 'FLD0036B ==> ' HEX-OF (FLD0036B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0036B).
           IF FLD0037B (1:)    NOT EQUAL XPC-FLD0037B
              DISPLAY 'FLD0037B ==> ' HEX-OF (FLD0037B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0037B).
           IF FLD0038B (1:)    NOT EQUAL XPC-FLD0038B
              DISPLAY 'FLD0038B ==> ' HEX-OF (FLD0038B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0038B).
           IF FLD0039B (1:)    NOT EQUAL XPC-FLD0039B
              DISPLAY 'FLD0039B ==> ' HEX-OF (FLD0039B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0039B).
           IF FLD0040B (1:)    NOT EQUAL XPC-FLD0040B
              DISPLAY 'FLD0040B ==> ' HEX-OF (FLD0040B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0040B).
           IF FLD0041B (1:)    NOT EQUAL XPC-FLD0041B
              DISPLAY 'FLD0041B ==> ' HEX-OF (FLD0041B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0041B).
           IF FLD0042B (1:)    NOT EQUAL XPC-FLD0042B
              DISPLAY 'FLD0042B ==> ' HEX-OF (FLD0042B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0042B).
           IF FLD0043B (1:)    NOT EQUAL XPC-FLD0043B
              DISPLAY 'FLD0043B ==> ' HEX-OF (FLD0043B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0043B).
           IF FLD0044B (1:)    NOT EQUAL XPC-FLD0044B
              DISPLAY 'FLD0044B ==> ' HEX-OF (FLD0044B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0044B).
           IF FLD0045B (1:)    NOT EQUAL XPC-FLD0045B
              DISPLAY 'FLD0045B ==> ' HEX-OF (FLD0045B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0045B).
           IF FLD0046B (1:)    NOT EQUAL XPC-FLD0046B
              DISPLAY 'FLD0046B ==> ' HEX-OF (FLD0046B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0046B).
           IF FLD0047B (1:)    NOT EQUAL XPC-FLD0047B
              DISPLAY 'FLD0047B ==> ' HEX-OF (FLD0047B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0047B).
           IF FLD0048B (1:)    NOT EQUAL XPC-FLD0048B
              DISPLAY 'FLD0048B ==> ' HEX-OF (FLD0048B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0048B).
           IF FLD0049B (1:)    NOT EQUAL XPC-FLD0049B
              DISPLAY 'FLD0049B ==> ' HEX-OF (FLD0049B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0049B).
           IF FLD0050B (1:)    NOT EQUAL XPC-FLD0050B
              DISPLAY 'FLD0050B ==> ' HEX-OF (FLD0050B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0050B).
           IF FLD0051B (1:)    NOT EQUAL XPC-FLD0051B
              DISPLAY 'FLD0051B ==> ' HEX-OF (FLD0051B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0051B).
           IF FLD0052B (1:)    NOT EQUAL XPC-FLD0052B
              DISPLAY 'FLD0052B ==> ' HEX-OF (FLD0052B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0052B).
           IF FLD0053B (1:)    NOT EQUAL XPC-FLD0053B
              DISPLAY 'FLD0053B ==> ' HEX-OF (FLD0053B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0053B).
           IF FLD0054B (1:)    NOT EQUAL XPC-FLD0054B
              DISPLAY 'FLD0054B ==> ' HEX-OF (FLD0054B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0054B).
           IF FLD0055B (1:)    NOT EQUAL XPC-FLD0055B
              DISPLAY 'FLD0055B ==> ' HEX-OF (FLD0055B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0055B).
           IF FLD0056B (1:)    NOT EQUAL XPC-FLD0056B
              DISPLAY 'FLD0056B ==> ' HEX-OF (FLD0056B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0056B).
           IF FLD0057B (1:)    NOT EQUAL XPC-FLD0057B
              DISPLAY 'FLD0057B ==> ' HEX-OF (FLD0057B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0057B).
           IF FLD0058B (1:)    NOT EQUAL XPC-FLD0058B
              DISPLAY 'FLD0058B ==> ' HEX-OF (FLD0058B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0058B).
           IF FLD0059B (1:)    NOT EQUAL XPC-FLD0059B
              DISPLAY 'FLD0059B ==> ' HEX-OF (FLD0059B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0059B).
           IF FLD0060B (1:)    NOT EQUAL XPC-FLD0060B
              DISPLAY 'FLD0060B ==> ' HEX-OF (FLD0060B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0060B).
           IF FLD0061B (1:)    NOT EQUAL XPC-FLD0061B
              DISPLAY 'FLD0061B ==> ' HEX-OF (FLD0061B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0061B).
           IF FLD0062B (1:)    NOT EQUAL XPC-FLD0062B
              DISPLAY 'FLD0062B ==> ' HEX-OF (FLD0062B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0062B).
           IF FLD0063B (1:)    NOT EQUAL XPC-FLD0063B
              DISPLAY 'FLD0063B ==> ' HEX-OF (FLD0063B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0063B).
           IF FLD0064B (1:)    NOT EQUAL XPC-FLD0064B
              DISPLAY 'FLD0064B ==> ' HEX-OF (FLD0064B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0064B).
           IF FLD0065B (1:)    NOT EQUAL XPC-FLD0065B
              DISPLAY 'FLD0065B ==> ' HEX-OF (FLD0065B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0065B).
           IF FLD0066B (1:)    NOT EQUAL XPC-FLD0066B
              DISPLAY 'FLD0066B ==> ' HEX-OF (FLD0066B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0066B).
           IF FLD0067B (1:)    NOT EQUAL XPC-FLD0067B
              DISPLAY 'FLD0067B ==> ' HEX-OF (FLD0067B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0067B).
           IF FLD0068B (1:)    NOT EQUAL XPC-FLD0068B
              DISPLAY 'FLD0068B ==> ' HEX-OF (FLD0068B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0068B).
           IF FLD0069B (1:)    NOT EQUAL XPC-FLD0069B
              DISPLAY 'FLD0069B ==> ' HEX-OF (FLD0069B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0069B).
           IF FLD0070B (1:)    NOT EQUAL XPC-FLD0070B
              DISPLAY 'FLD0070B ==> ' HEX-OF (FLD0070B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0070B).
           IF FLD0071B (1:)    NOT EQUAL XPC-FLD0071B
              DISPLAY 'FLD0071B ==> ' HEX-OF (FLD0071B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0071B).
           IF FLD0072B (1:)    NOT EQUAL XPC-FLD0072B
              DISPLAY 'FLD0072B ==> ' HEX-OF (FLD0072B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0072B).
           IF FLD0073B (1:)    NOT EQUAL XPC-FLD0073B
              DISPLAY 'FLD0073B ==> ' HEX-OF (FLD0073B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0073B).
           IF FLD0074B (1:)    NOT EQUAL XPC-FLD0074B
              DISPLAY 'FLD0074B ==> ' HEX-OF (FLD0074B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0074B).
           IF FLD0075B (1:)    NOT EQUAL XPC-FLD0075B
              DISPLAY 'FLD0075B ==> ' HEX-OF (FLD0075B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0075B).
           IF FLD0076B (1:)    NOT EQUAL XPC-FLD0076B
              DISPLAY 'FLD0076B ==> ' HEX-OF (FLD0076B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0076B).
           IF FLD0077B (1:)    NOT EQUAL XPC-FLD0077B
              DISPLAY 'FLD0077B ==> ' HEX-OF (FLD0077B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0077B).
           IF FLD0078B (1:)    NOT EQUAL XPC-FLD0078B
              DISPLAY 'FLD0078B ==> ' HEX-OF (FLD0078B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0078B).
           IF FLD0079B (1:)    NOT EQUAL XPC-FLD0079B
              DISPLAY 'FLD0079B ==> ' HEX-OF (FLD0079B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0079B).
           IF FLD0080B (1:)    NOT EQUAL XPC-FLD0080B
              DISPLAY 'FLD0080B ==> ' HEX-OF (FLD0080B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0080B).
           IF FLD0081B (1:)    NOT EQUAL XPC-FLD0081B
              DISPLAY 'FLD0081B ==> ' HEX-OF (FLD0081B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0081B).
           IF FLD0082B (1:)    NOT EQUAL XPC-FLD0082B
              DISPLAY 'FLD0082B ==> ' HEX-OF (FLD0082B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0082B).
           IF FLD0083B (1:)    NOT EQUAL XPC-FLD0083B
              DISPLAY 'FLD0083B ==> ' HEX-OF (FLD0083B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0083B).
           IF FLD0084B (1:)    NOT EQUAL XPC-FLD0084B
              DISPLAY 'FLD0084B ==> ' HEX-OF (FLD0084B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0084B).
           IF FLD0085B (1:)    NOT EQUAL XPC-FLD0085B
              DISPLAY 'FLD0085B ==> ' HEX-OF (FLD0085B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0085B).
           IF FLD0086B (1:)    NOT EQUAL XPC-FLD0086B
              DISPLAY 'FLD0086B ==> ' HEX-OF (FLD0086B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0086B).
           IF FLD0087B (1:)    NOT EQUAL XPC-FLD0087B
              DISPLAY 'FLD0087B ==> ' HEX-OF (FLD0087B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0087B).
           IF FLD0088B (1:)    NOT EQUAL XPC-FLD0088B
              DISPLAY 'FLD0088B ==> ' HEX-OF (FLD0088B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0088B).
           IF FLD0089B (1:)    NOT EQUAL XPC-FLD0089B
              DISPLAY 'FLD0089B ==> ' HEX-OF (FLD0089B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0089B).
           IF FLD0090B (1:)    NOT EQUAL XPC-FLD0090B
              DISPLAY 'FLD0090B ==> ' HEX-OF (FLD0090B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0090B).
           IF FLD0091B (1:)    NOT EQUAL XPC-FLD0091B
              DISPLAY 'FLD0091B ==> ' HEX-OF (FLD0091B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0091B).
           IF FLD0092B (1:)    NOT EQUAL XPC-FLD0092B
              DISPLAY 'FLD0092B ==> ' HEX-OF (FLD0092B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0092B).
           IF FLD0093B (1:)    NOT EQUAL XPC-FLD0093B
              DISPLAY 'FLD0093B ==> ' HEX-OF (FLD0093B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0093B).
           IF FLD0094B (1:)    NOT EQUAL XPC-FLD0094B
              DISPLAY 'FLD0094B ==> ' HEX-OF (FLD0094B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0094B).
           IF FLD0095B (1:)    NOT EQUAL XPC-FLD0095B
              DISPLAY 'FLD0095B ==> ' HEX-OF (FLD0095B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0095B).
           IF FLD0096B (1:)    NOT EQUAL XPC-FLD0096B
              DISPLAY 'FLD0096B ==> ' HEX-OF (FLD0096B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0096B).
           IF FLD0097B (1:)    NOT EQUAL XPC-FLD0097B
              DISPLAY 'FLD0097B ==> ' HEX-OF (FLD0097B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0097B).
           IF FLD0098B (1:)    NOT EQUAL XPC-FLD0098B
              DISPLAY 'FLD0098B ==> ' HEX-OF (FLD0098B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0098B).
           IF FLD0099B (1:)    NOT EQUAL XPC-FLD0099B
              DISPLAY 'FLD0099B ==> ' HEX-OF (FLD0099B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0099B).
           IF FLD0100B (1:)    NOT EQUAL XPC-FLD0100B
              DISPLAY 'FLD0100B ==> ' HEX-OF (FLD0100B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0100B).
           IF FLD0101B (1:)    NOT EQUAL XPC-FLD0101B
              DISPLAY 'FLD0101B ==> ' HEX-OF (FLD0101B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0101B).
           IF FLD0102B (1:)    NOT EQUAL XPC-FLD0102B
              DISPLAY 'FLD0102B ==> ' HEX-OF (FLD0102B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0102B).
           IF FLD0103B (1:)    NOT EQUAL XPC-FLD0103B
              DISPLAY 'FLD0103B ==> ' HEX-OF (FLD0103B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0103B).
           IF FLD0104B (1:)    NOT EQUAL XPC-FLD0104B
              DISPLAY 'FLD0104B ==> ' HEX-OF (FLD0104B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0104B).
           IF FLD0105B (1:)    NOT EQUAL XPC-FLD0105B
              DISPLAY 'FLD0105B ==> ' HEX-OF (FLD0105B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0105B).
           IF FLD0106B (1:)    NOT EQUAL XPC-FLD0106B
              DISPLAY 'FLD0106B ==> ' HEX-OF (FLD0106B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0106B).
           IF FLD0107B (1:)    NOT EQUAL XPC-FLD0107B
              DISPLAY 'FLD0107B ==> ' HEX-OF (FLD0107B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0107B).
           IF FLD0108B (1:)    NOT EQUAL XPC-FLD0108B
              DISPLAY 'FLD0108B ==> ' HEX-OF (FLD0108B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0108B).
           IF FLD0109B (1:)    NOT EQUAL XPC-FLD0109B
              DISPLAY 'FLD0109B ==> ' HEX-OF (FLD0109B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0109B).
           IF FLD0110B (1:)    NOT EQUAL XPC-FLD0110B
              DISPLAY 'FLD0110B ==> ' HEX-OF (FLD0110B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0110B).
           IF FLD0111B (1:)    NOT EQUAL XPC-FLD0111B
              DISPLAY 'FLD0111B ==> ' HEX-OF (FLD0111B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0111B).
           IF FLD0112B (1:)    NOT EQUAL XPC-FLD0112B
              DISPLAY 'FLD0112B ==> ' HEX-OF (FLD0112B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0112B).
           IF FLD0113B (1:)    NOT EQUAL XPC-FLD0113B
              DISPLAY 'FLD0113B ==> ' HEX-OF (FLD0113B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0113B).
           IF FLD0114B (1:)    NOT EQUAL XPC-FLD0114B
              DISPLAY 'FLD0114B ==> ' HEX-OF (FLD0114B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0114B).
           IF FLD0115B (1:)    NOT EQUAL XPC-FLD0115B
              DISPLAY 'FLD0115B ==> ' HEX-OF (FLD0115B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0115B).
           IF FLD0116B (1:)    NOT EQUAL XPC-FLD0116B
              DISPLAY 'FLD0116B ==> ' HEX-OF (FLD0116B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0116B).
           IF FLD0117B (1:)    NOT EQUAL XPC-FLD0117B
              DISPLAY 'FLD0117B ==> ' HEX-OF (FLD0117B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0117B).
           IF FLD0118B (1:)    NOT EQUAL XPC-FLD0118B
              DISPLAY 'FLD0118B ==> ' HEX-OF (FLD0118B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0118B).
           IF FLD0119B (1:)    NOT EQUAL XPC-FLD0119B
              DISPLAY 'FLD0119B ==> ' HEX-OF (FLD0119B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0119B).
           IF FLD0120B (1:)    NOT EQUAL XPC-FLD0120B
              DISPLAY 'FLD0120B ==> ' HEX-OF (FLD0120B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0120B).
           IF FLD0121B (1:)    NOT EQUAL XPC-FLD0121B
              DISPLAY 'FLD0121B ==> ' HEX-OF (FLD0121B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0121B).
           IF FLD0122B (1:)    NOT EQUAL XPC-FLD0122B
              DISPLAY 'FLD0122B ==> ' HEX-OF (FLD0122B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0122B).
           IF FLD0123B (1:)    NOT EQUAL XPC-FLD0123B
              DISPLAY 'FLD0123B ==> ' HEX-OF (FLD0123B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0123B).
           IF FLD0124B (1:)    NOT EQUAL XPC-FLD0124B
              DISPLAY 'FLD0124B ==> ' HEX-OF (FLD0124B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0124B).
           IF FLD0125B (1:)    NOT EQUAL XPC-FLD0125B
              DISPLAY 'FLD0125B ==> ' HEX-OF (FLD0125B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0125B).
           IF FLD0126B (1:)    NOT EQUAL XPC-FLD0126B
              DISPLAY 'FLD0126B ==> ' HEX-OF (FLD0126B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0126B).
           IF FLD0127B (1:)    NOT EQUAL XPC-FLD0127B
              DISPLAY 'FLD0127B ==> ' HEX-OF (FLD0127B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0127B).
           IF FLD0128B (1:)    NOT EQUAL XPC-FLD0128B
              DISPLAY 'FLD0128B ==> ' HEX-OF (FLD0128B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0128B).
           IF FLD0129B (1:)    NOT EQUAL XPC-FLD0129B
              DISPLAY 'FLD0129B ==> ' HEX-OF (FLD0129B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0129B).
           IF FLD0130B (1:)    NOT EQUAL XPC-FLD0130B
              DISPLAY 'FLD0130B ==> ' HEX-OF (FLD0130B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0130B).
           IF FLD0131B (1:)    NOT EQUAL XPC-FLD0131B
              DISPLAY 'FLD0131B ==> ' HEX-OF (FLD0131B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0131B).
           IF FLD0132B (1:)    NOT EQUAL XPC-FLD0132B
              DISPLAY 'FLD0132B ==> ' HEX-OF (FLD0132B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0132B).
           IF FLD0133B (1:)    NOT EQUAL XPC-FLD0133B
              DISPLAY 'FLD0133B ==> ' HEX-OF (FLD0133B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0133B).
           IF FLD0134B (1:)    NOT EQUAL XPC-FLD0134B
              DISPLAY 'FLD0134B ==> ' HEX-OF (FLD0134B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0134B).
           IF FLD0135B (1:)    NOT EQUAL XPC-FLD0135B
              DISPLAY 'FLD0135B ==> ' HEX-OF (FLD0135B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0135B).
           IF FLD0136B (1:)    NOT EQUAL XPC-FLD0136B
              DISPLAY 'FLD0136B ==> ' HEX-OF (FLD0136B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0136B).
           IF FLD0137B (1:)    NOT EQUAL XPC-FLD0137B
              DISPLAY 'FLD0137B ==> ' HEX-OF (FLD0137B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0137B).
           IF FLD0138B (1:)    NOT EQUAL XPC-FLD0138B
              DISPLAY 'FLD0138B ==> ' HEX-OF (FLD0138B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0138B).
           IF FLD0139B (1:)    NOT EQUAL XPC-FLD0139B
              DISPLAY 'FLD0139B ==> ' HEX-OF (FLD0139B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0139B).
           IF FLD0140B (1:)    NOT EQUAL XPC-FLD0140B
              DISPLAY 'FLD0140B ==> ' HEX-OF (FLD0140B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0140B).
           IF FLD0141B (1:)    NOT EQUAL XPC-FLD0141B
              DISPLAY 'FLD0141B ==> ' HEX-OF (FLD0141B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0141B).
           IF FLD0142B (1:)    NOT EQUAL XPC-FLD0142B
              DISPLAY 'FLD0142B ==> ' HEX-OF (FLD0142B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0142B).
           IF FLD0143B (1:)    NOT EQUAL XPC-FLD0143B
              DISPLAY 'FLD0143B ==> ' HEX-OF (FLD0143B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0143B).
           IF FLD0144B (1:)    NOT EQUAL XPC-FLD0144B
              DISPLAY 'FLD0144B ==> ' HEX-OF (FLD0144B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0144B).
           IF FLD0145B (1:)    NOT EQUAL XPC-FLD0145B
              DISPLAY 'FLD0145B ==> ' HEX-OF (FLD0145B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0145B).
           IF FLD0146B (1:)    NOT EQUAL XPC-FLD0146B
              DISPLAY 'FLD0146B ==> ' HEX-OF (FLD0146B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0146B).
           IF FLD0147B (1:)    NOT EQUAL XPC-FLD0147B
              DISPLAY 'FLD0147B ==> ' HEX-OF (FLD0147B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0147B).
           IF FLD0148B (1:)    NOT EQUAL XPC-FLD0148B
              DISPLAY 'FLD0148B ==> ' HEX-OF (FLD0148B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0148B).
           IF FLD0149B (1:)    NOT EQUAL XPC-FLD0149B
              DISPLAY 'FLD0149B ==> ' HEX-OF (FLD0149B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0149B).
           IF FLD0150B (1:)    NOT EQUAL XPC-FLD0150B
              DISPLAY 'FLD0150B ==> ' HEX-OF (FLD0150B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0150B).
           IF FLD0151B (1:)    NOT EQUAL XPC-FLD0151B
              DISPLAY 'FLD0151B ==> ' HEX-OF (FLD0151B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0151B).
           IF FLD0152B (1:)    NOT EQUAL XPC-FLD0152B
              DISPLAY 'FLD0152B ==> ' HEX-OF (FLD0152B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0152B).
           IF FLD0153B (1:)    NOT EQUAL XPC-FLD0153B
              DISPLAY 'FLD0153B ==> ' HEX-OF (FLD0153B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0153B).
           IF FLD0154B (1:)    NOT EQUAL XPC-FLD0154B
              DISPLAY 'FLD0154B ==> ' HEX-OF (FLD0154B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0154B).
           IF FLD0155B (1:)    NOT EQUAL XPC-FLD0155B
              DISPLAY 'FLD0155B ==> ' HEX-OF (FLD0155B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0155B).
           IF FLD0156B (1:)    NOT EQUAL XPC-FLD0156B
              DISPLAY 'FLD0156B ==> ' HEX-OF (FLD0156B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0156B).
           IF FLD0157B (1:)    NOT EQUAL XPC-FLD0157B
              DISPLAY 'FLD0157B ==> ' HEX-OF (FLD0157B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0157B).
           IF FLD0158B (1:)    NOT EQUAL XPC-FLD0158B
              DISPLAY 'FLD0158B ==> ' HEX-OF (FLD0158B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0158B).
           IF FLD0159B (1:)    NOT EQUAL XPC-FLD0159B
              DISPLAY 'FLD0159B ==> ' HEX-OF (FLD0159B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0159B).
           IF FLD0160B (1:)    NOT EQUAL XPC-FLD0160B
              DISPLAY 'FLD0160B ==> ' HEX-OF (FLD0160B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0160B).
           IF FLD0161B (1:)    NOT EQUAL XPC-FLD0161B
              DISPLAY 'FLD0161B ==> ' HEX-OF (FLD0161B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0161B).
           IF FLD0162B (1:)    NOT EQUAL XPC-FLD0162B
              DISPLAY 'FLD0162B ==> ' HEX-OF (FLD0162B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0162B).
           IF FLD0163B (1:)    NOT EQUAL XPC-FLD0163B
              DISPLAY 'FLD0163B ==> ' HEX-OF (FLD0163B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0163B).
           IF FLD0164B (1:)    NOT EQUAL XPC-FLD0164B
              DISPLAY 'FLD0164B ==> ' HEX-OF (FLD0164B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0164B).
           IF FLD0165B (1:)    NOT EQUAL XPC-FLD0165B
              DISPLAY 'FLD0165B ==> ' HEX-OF (FLD0165B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0165B).
           IF FLD0166B (1:)    NOT EQUAL XPC-FLD0166B
              DISPLAY 'FLD0166B ==> ' HEX-OF (FLD0166B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0166B).
           IF FLD0167B (1:)    NOT EQUAL XPC-FLD0167B
              DISPLAY 'FLD0167B ==> ' HEX-OF (FLD0167B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0167B).
           IF FLD0168B (1:)    NOT EQUAL XPC-FLD0168B
              DISPLAY 'FLD0168B ==> ' HEX-OF (FLD0168B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0168B).
           IF FLD0169B (1:)    NOT EQUAL XPC-FLD0169B
              DISPLAY 'FLD0169B ==> ' HEX-OF (FLD0169B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0169B).
           IF FLD0170B (1:)    NOT EQUAL XPC-FLD0170B
              DISPLAY 'FLD0170B ==> ' HEX-OF (FLD0170B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0170B).
           IF FLD0171B (1:)    NOT EQUAL XPC-FLD0171B
              DISPLAY 'FLD0171B ==> ' HEX-OF (FLD0171B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0171B).
           IF FLD0172B (1:)    NOT EQUAL XPC-FLD0172B
              DISPLAY 'FLD0172B ==> ' HEX-OF (FLD0172B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0172B).
           IF FLD0173B (1:)    NOT EQUAL XPC-FLD0173B
              DISPLAY 'FLD0173B ==> ' HEX-OF (FLD0173B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0173B).
           IF FLD0174B (1:)    NOT EQUAL XPC-FLD0174B
              DISPLAY 'FLD0174B ==> ' HEX-OF (FLD0174B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0174B).
           IF FLD0175B (1:)    NOT EQUAL XPC-FLD0175B
              DISPLAY 'FLD0175B ==> ' HEX-OF (FLD0175B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0175B).
           IF FLD0176B (1:)    NOT EQUAL XPC-FLD0176B
              DISPLAY 'FLD0176B ==> ' HEX-OF (FLD0176B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0176B).
           IF FLD0177B (1:)    NOT EQUAL XPC-FLD0177B
              DISPLAY 'FLD0177B ==> ' HEX-OF (FLD0177B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0177B).
           IF FLD0178B (1:)    NOT EQUAL XPC-FLD0178B
              DISPLAY 'FLD0178B ==> ' HEX-OF (FLD0178B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0178B).
           IF FLD0179B (1:)    NOT EQUAL XPC-FLD0179B
              DISPLAY 'FLD0179B ==> ' HEX-OF (FLD0179B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0179B).
           IF FLD0180B (1:)    NOT EQUAL XPC-FLD0180B
              DISPLAY 'FLD0180B ==> ' HEX-OF (FLD0180B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0180B).
           IF FLD0181B (1:)    NOT EQUAL XPC-FLD0181B
              DISPLAY 'FLD0181B ==> ' HEX-OF (FLD0181B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0181B).
           IF FLD0182B (1:)    NOT EQUAL XPC-FLD0182B
              DISPLAY 'FLD0182B ==> ' HEX-OF (FLD0182B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0182B).
           IF FLD0183B (1:)    NOT EQUAL XPC-FLD0183B
              DISPLAY 'FLD0183B ==> ' HEX-OF (FLD0183B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0183B).
           IF FLD0184B (1:)    NOT EQUAL XPC-FLD0184B
              DISPLAY 'FLD0184B ==> ' HEX-OF (FLD0184B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0184B).
           IF FLD0185B (1:)    NOT EQUAL XPC-FLD0185B
              DISPLAY 'FLD0185B ==> ' HEX-OF (FLD0185B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0185B).
           IF FLD0186B (1:)    NOT EQUAL XPC-FLD0186B
              DISPLAY 'FLD0186B ==> ' HEX-OF (FLD0186B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0186B).
           IF FLD0187B (1:)    NOT EQUAL XPC-FLD0187B
              DISPLAY 'FLD0187B ==> ' HEX-OF (FLD0187B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0187B).
           IF FLD0188B (1:)    NOT EQUAL XPC-FLD0188B
              DISPLAY 'FLD0188B ==> ' HEX-OF (FLD0188B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0188B).
           IF FLD0189B (1:)    NOT EQUAL XPC-FLD0189B
              DISPLAY 'FLD0189B ==> ' HEX-OF (FLD0189B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0189B).
           IF FLD0190B (1:)    NOT EQUAL XPC-FLD0190B
              DISPLAY 'FLD0190B ==> ' HEX-OF (FLD0190B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0190B).
           IF FLD0191B (1:)    NOT EQUAL XPC-FLD0191B
              DISPLAY 'FLD0191B ==> ' HEX-OF (FLD0191B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0191B).
           IF FLD0192B (1:)    NOT EQUAL XPC-FLD0192B
              DISPLAY 'FLD0192B ==> ' HEX-OF (FLD0192B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0192B).
           IF FLD0193B (1:)    NOT EQUAL XPC-FLD0193B
              DISPLAY 'FLD0193B ==> ' HEX-OF (FLD0193B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0193B).
           IF FLD0194B (1:)    NOT EQUAL XPC-FLD0194B
              DISPLAY 'FLD0194B ==> ' HEX-OF (FLD0194B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0194B).
           IF FLD0195B (1:)    NOT EQUAL XPC-FLD0195B
              DISPLAY 'FLD0195B ==> ' HEX-OF (FLD0195B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0195B).
           IF FLD0196B (1:)    NOT EQUAL XPC-FLD0196B
              DISPLAY 'FLD0196B ==> ' HEX-OF (FLD0196B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0196B).
           IF FLD0197B (1:)    NOT EQUAL XPC-FLD0197B
              DISPLAY 'FLD0197B ==> ' HEX-OF (FLD0197B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0197B).
           IF FLD0198B (1:)    NOT EQUAL XPC-FLD0198B
              DISPLAY 'FLD0198B ==> ' HEX-OF (FLD0198B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0198B).
           IF FLD0199B (1:)    NOT EQUAL XPC-FLD0199B
              DISPLAY 'FLD0199B ==> ' HEX-OF (FLD0199B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0199B).
           IF FLD0200B (1:)    NOT EQUAL XPC-FLD0200B
              DISPLAY 'FLD0200B ==> ' HEX-OF (FLD0200B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0200B).
           IF FLD0201B (1:)    NOT EQUAL XPC-FLD0201B
              DISPLAY 'FLD0201B ==> ' HEX-OF (FLD0201B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0201B).
           IF FLD0202B (1:)    NOT EQUAL XPC-FLD0202B
              DISPLAY 'FLD0202B ==> ' HEX-OF (FLD0202B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0202B).
           IF FLD0203B (1:)    NOT EQUAL XPC-FLD0203B
              DISPLAY 'FLD0203B ==> ' HEX-OF (FLD0203B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0203B).
           IF FLD0204B (1:)    NOT EQUAL XPC-FLD0204B
              DISPLAY 'FLD0204B ==> ' HEX-OF (FLD0204B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0204B).
           IF FLD0205B (1:)    NOT EQUAL XPC-FLD0205B
              DISPLAY 'FLD0205B ==> ' HEX-OF (FLD0205B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0205B).
           IF FLD0206B (1:)    NOT EQUAL XPC-FLD0206B
              DISPLAY 'FLD0206B ==> ' HEX-OF (FLD0206B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0206B).
           IF FLD0207B (1:)    NOT EQUAL XPC-FLD0207B
              DISPLAY 'FLD0207B ==> ' HEX-OF (FLD0207B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0207B).
           IF FLD0208B (1:)    NOT EQUAL XPC-FLD0208B
              DISPLAY 'FLD0208B ==> ' HEX-OF (FLD0208B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0208B).
           IF FLD0209B (1:)    NOT EQUAL XPC-FLD0209B
              DISPLAY 'FLD0209B ==> ' HEX-OF (FLD0209B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0209B).
           IF FLD0210B (1:)    NOT EQUAL XPC-FLD0210B
              DISPLAY 'FLD0210B ==> ' HEX-OF (FLD0210B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0210B).
           IF FLD0211B (1:)    NOT EQUAL XPC-FLD0211B
              DISPLAY 'FLD0211B ==> ' HEX-OF (FLD0211B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0211B).
           IF FLD0212B (1:)    NOT EQUAL XPC-FLD0212B
              DISPLAY 'FLD0212B ==> ' HEX-OF (FLD0212B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0212B).
           IF FLD0213B (1:)    NOT EQUAL XPC-FLD0213B
              DISPLAY 'FLD0213B ==> ' HEX-OF (FLD0213B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0213B).
           IF FLD0214B (1:)    NOT EQUAL XPC-FLD0214B
              DISPLAY 'FLD0214B ==> ' HEX-OF (FLD0214B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0214B).
           IF FLD0215B (1:)    NOT EQUAL XPC-FLD0215B
              DISPLAY 'FLD0215B ==> ' HEX-OF (FLD0215B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0215B).
           IF FLD0216B (1:)    NOT EQUAL XPC-FLD0216B
              DISPLAY 'FLD0216B ==> ' HEX-OF (FLD0216B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0216B).
           IF FLD0217B (1:)    NOT EQUAL XPC-FLD0217B
              DISPLAY 'FLD0217B ==> ' HEX-OF (FLD0217B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0217B).
           IF FLD0218B (1:)    NOT EQUAL XPC-FLD0218B
              DISPLAY 'FLD0218B ==> ' HEX-OF (FLD0218B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0218B).
           IF FLD0219B (1:)    NOT EQUAL XPC-FLD0219B
              DISPLAY 'FLD0219B ==> ' HEX-OF (FLD0219B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0219B).
           IF FLD0220B (1:)    NOT EQUAL XPC-FLD0220B
              DISPLAY 'FLD0220B ==> ' HEX-OF (FLD0220B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0220B).
           IF FLD0221B (1:)    NOT EQUAL XPC-FLD0221B
              DISPLAY 'FLD0221B ==> ' HEX-OF (FLD0221B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0221B).
           IF FLD0222B (1:)    NOT EQUAL XPC-FLD0222B
              DISPLAY 'FLD0222B ==> ' HEX-OF (FLD0222B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0222B).
           IF FLD0223B (1:)    NOT EQUAL XPC-FLD0223B
              DISPLAY 'FLD0223B ==> ' HEX-OF (FLD0223B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0223B).
           IF FLD0224B (1:)    NOT EQUAL XPC-FLD0224B
              DISPLAY 'FLD0224B ==> ' HEX-OF (FLD0224B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0224B).
           IF FLD0225B (1:)    NOT EQUAL XPC-FLD0225B
              DISPLAY 'FLD0225B ==> ' HEX-OF (FLD0225B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0225B).
           IF FLD0226B (1:)    NOT EQUAL XPC-FLD0226B
              DISPLAY 'FLD0226B ==> ' HEX-OF (FLD0226B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0226B).
           IF FLD0227B (1:)    NOT EQUAL XPC-FLD0227B
              DISPLAY 'FLD0227B ==> ' HEX-OF (FLD0227B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0227B).
           IF FLD0228B (1:)    NOT EQUAL XPC-FLD0228B
              DISPLAY 'FLD0228B ==> ' HEX-OF (FLD0228B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0228B).
           IF FLD0229B (1:)    NOT EQUAL XPC-FLD0229B
              DISPLAY 'FLD0229B ==> ' HEX-OF (FLD0229B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0229B).
           IF FLD0230B (1:)    NOT EQUAL XPC-FLD0230B
              DISPLAY 'FLD0230B ==> ' HEX-OF (FLD0230B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0230B).
           IF FLD0231B (1:)    NOT EQUAL XPC-FLD0231B
              DISPLAY 'FLD0231B ==> ' HEX-OF (FLD0231B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0231B).
           IF FLD0232B (1:)    NOT EQUAL XPC-FLD0232B
              DISPLAY 'FLD0232B ==> ' HEX-OF (FLD0232B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0232B).
           IF FLD0233B (1:)    NOT EQUAL XPC-FLD0233B
              DISPLAY 'FLD0233B ==> ' HEX-OF (FLD0233B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0233B).
           IF FLD0234B (1:)    NOT EQUAL XPC-FLD0234B
              DISPLAY 'FLD0234B ==> ' HEX-OF (FLD0234B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0234B).
           IF FLD0235B (1:)    NOT EQUAL XPC-FLD0235B
              DISPLAY 'FLD0235B ==> ' HEX-OF (FLD0235B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0235B).
           IF FLD0236B (1:)    NOT EQUAL XPC-FLD0236B
              DISPLAY 'FLD0236B ==> ' HEX-OF (FLD0236B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0236B).
           IF FLD0237B (1:)    NOT EQUAL XPC-FLD0237B
              DISPLAY 'FLD0237B ==> ' HEX-OF (FLD0237B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0237B).
           IF FLD0238B (1:)    NOT EQUAL XPC-FLD0238B
              DISPLAY 'FLD0238B ==> ' HEX-OF (FLD0238B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0238B).
           IF FLD0239B (1:)    NOT EQUAL XPC-FLD0239B
              DISPLAY 'FLD0239B ==> ' HEX-OF (FLD0239B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0239B).
           IF FLD0240B (1:)    NOT EQUAL XPC-FLD0240B
              DISPLAY 'FLD0240B ==> ' HEX-OF (FLD0240B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0240B).
           IF FLD0241B (1:)    NOT EQUAL XPC-FLD0241B
              DISPLAY 'FLD0241B ==> ' HEX-OF (FLD0241B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0241B).
           IF FLD0242B (1:)    NOT EQUAL XPC-FLD0242B
              DISPLAY 'FLD0242B ==> ' HEX-OF (FLD0242B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0242B).
           IF FLD0243B (1:)    NOT EQUAL XPC-FLD0243B
              DISPLAY 'FLD0243B ==> ' HEX-OF (FLD0243B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0243B).
           IF FLD0244B (1:)    NOT EQUAL XPC-FLD0244B
              DISPLAY 'FLD0244B ==> ' HEX-OF (FLD0244B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0244B).
           IF FLD0245B (1:)    NOT EQUAL XPC-FLD0245B
              DISPLAY 'FLD0245B ==> ' HEX-OF (FLD0245B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0245B).
           IF FLD0246B (1:)    NOT EQUAL XPC-FLD0246B
              DISPLAY 'FLD0246B ==> ' HEX-OF (FLD0246B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0246B).
           IF FLD0247B (1:)    NOT EQUAL XPC-FLD0247B
              DISPLAY 'FLD0247B ==> ' HEX-OF (FLD0247B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0247B).
           IF FLD0248B (1:)    NOT EQUAL XPC-FLD0248B
              DISPLAY 'FLD0248B ==> ' HEX-OF (FLD0248B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0248B).
           IF FLD0249B (1:)    NOT EQUAL XPC-FLD0249B
              DISPLAY 'FLD0249B ==> ' HEX-OF (FLD0249B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0249B).
           IF FLD0250B (1:)    NOT EQUAL XPC-FLD0250B
              DISPLAY 'FLD0250B ==> ' HEX-OF (FLD0250B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0250B).
           IF FLD0251B (1:)    NOT EQUAL XPC-FLD0251B
              DISPLAY 'FLD0251B ==> ' HEX-OF (FLD0251B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0251B).
           IF FLD0252B (1:)    NOT EQUAL XPC-FLD0252B
              DISPLAY 'FLD0252B ==> ' HEX-OF (FLD0252B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0252B).
           IF FLD0253B (1:)    NOT EQUAL XPC-FLD0253B
              DISPLAY 'FLD0253B ==> ' HEX-OF (FLD0253B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0253B).
           IF FLD0254B (1:)    NOT EQUAL XPC-FLD0254B
              DISPLAY 'FLD0254B ==> ' HEX-OF (FLD0254B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0254B).
           IF FLD0255B (1:)    NOT EQUAL XPC-FLD0255B
              DISPLAY 'FLD0255B ==> ' HEX-OF (FLD0255B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0255B).
           IF FLD0256B (1:)    NOT EQUAL XPC-FLD0256B
              DISPLAY 'FLD0256B ==> ' HEX-OF (FLD0256B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0256B).
           IF FLD0257B (1:)    NOT EQUAL XPC-FLD0257B
              DISPLAY 'FLD0257B ==> ' HEX-OF (FLD0257B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0257B).
           IF FLD0258B (1:)    NOT EQUAL XPC-FLD0258B
              DISPLAY 'FLD0258B ==> ' HEX-OF (FLD0258B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0258B).
           IF FLD0259B (1:)    NOT EQUAL XPC-FLD0259B
              DISPLAY 'FLD0259B ==> ' HEX-OF (FLD0259B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0259B).
           IF FLD0260B (1:)    NOT EQUAL XPC-FLD0260B
              DISPLAY 'FLD0260B ==> ' HEX-OF (FLD0260B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0260B).
           IF FLD0261B (1:)    NOT EQUAL XPC-FLD0261B
              DISPLAY 'FLD0261B ==> ' HEX-OF (FLD0261B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0261B).
           IF FLD0262B (1:)    NOT EQUAL XPC-FLD0262B
              DISPLAY 'FLD0262B ==> ' HEX-OF (FLD0262B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0262B).
           IF FLD0263B (1:)    NOT EQUAL XPC-FLD0263B
              DISPLAY 'FLD0263B ==> ' HEX-OF (FLD0263B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0263B).
           IF FLD0264B (1:)    NOT EQUAL XPC-FLD0264B
              DISPLAY 'FLD0264B ==> ' HEX-OF (FLD0264B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0264B).
           IF FLD0265B (1:)    NOT EQUAL XPC-FLD0265B
              DISPLAY 'FLD0265B ==> ' HEX-OF (FLD0265B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0265B).
           IF FLD0266B (1:)    NOT EQUAL XPC-FLD0266B
              DISPLAY 'FLD0266B ==> ' HEX-OF (FLD0266B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0266B).
           IF FLD0267B (1:)    NOT EQUAL XPC-FLD0267B
              DISPLAY 'FLD0267B ==> ' HEX-OF (FLD0267B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0267B).
           IF FLD0268B (1:)    NOT EQUAL XPC-FLD0268B
              DISPLAY 'FLD0268B ==> ' HEX-OF (FLD0268B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0268B).
           IF FLD0269B (1:)    NOT EQUAL XPC-FLD0269B
              DISPLAY 'FLD0269B ==> ' HEX-OF (FLD0269B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0269B).
           IF FLD0270B (1:)    NOT EQUAL XPC-FLD0270B
              DISPLAY 'FLD0270B ==> ' HEX-OF (FLD0270B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0270B).
           IF FLD0271B (1:)    NOT EQUAL XPC-FLD0271B
              DISPLAY 'FLD0271B ==> ' HEX-OF (FLD0271B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0271B).
           IF FLD0272B (1:)    NOT EQUAL XPC-FLD0272B
              DISPLAY 'FLD0272B ==> ' HEX-OF (FLD0272B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0272B).
           IF FLD0273B (1:)    NOT EQUAL XPC-FLD0273B
              DISPLAY 'FLD0273B ==> ' HEX-OF (FLD0273B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0273B).
           IF FLD0274B (1:)    NOT EQUAL XPC-FLD0274B
              DISPLAY 'FLD0274B ==> ' HEX-OF (FLD0274B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0274B).
           IF FLD0275B (1:)    NOT EQUAL XPC-FLD0275B
              DISPLAY 'FLD0275B ==> ' HEX-OF (FLD0275B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0275B).
           IF FLD0276B (1:)    NOT EQUAL XPC-FLD0276B
              DISPLAY 'FLD0276B ==> ' HEX-OF (FLD0276B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0276B).
           IF FLD0277B (1:)    NOT EQUAL XPC-FLD0277B
              DISPLAY 'FLD0277B ==> ' HEX-OF (FLD0277B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0277B).
           IF FLD0278B (1:)    NOT EQUAL XPC-FLD0278B
              DISPLAY 'FLD0278B ==> ' HEX-OF (FLD0278B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0278B).
           IF FLD0279B (1:)    NOT EQUAL XPC-FLD0279B
              DISPLAY 'FLD0279B ==> ' HEX-OF (FLD0279B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0279B).
           IF FLD0280B (1:)    NOT EQUAL XPC-FLD0280B
              DISPLAY 'FLD0280B ==> ' HEX-OF (FLD0280B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0280B).
           IF FLD0281B (1:)    NOT EQUAL XPC-FLD0281B
              DISPLAY 'FLD0281B ==> ' HEX-OF (FLD0281B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0281B).
           IF FLD0282B (1:)    NOT EQUAL XPC-FLD0282B
              DISPLAY 'FLD0282B ==> ' HEX-OF (FLD0282B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0282B).
           IF FLD0283B (1:)    NOT EQUAL XPC-FLD0283B
              DISPLAY 'FLD0283B ==> ' HEX-OF (FLD0283B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0283B).
           IF FLD0284B (1:)    NOT EQUAL XPC-FLD0284B
              DISPLAY 'FLD0284B ==> ' HEX-OF (FLD0284B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0284B).
           IF FLD0285B (1:)    NOT EQUAL XPC-FLD0285B
              DISPLAY 'FLD0285B ==> ' HEX-OF (FLD0285B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0285B).
           IF FLD0286B (1:)    NOT EQUAL XPC-FLD0286B
              DISPLAY 'FLD0286B ==> ' HEX-OF (FLD0286B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0286B).
           IF FLD0287B (1:)    NOT EQUAL XPC-FLD0287B
              DISPLAY 'FLD0287B ==> ' HEX-OF (FLD0287B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0287B).
           IF FLD0288B (1:)    NOT EQUAL XPC-FLD0288B
              DISPLAY 'FLD0288B ==> ' HEX-OF (FLD0288B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0288B).
           IF FLD0289B (1:)    NOT EQUAL XPC-FLD0289B
              DISPLAY 'FLD0289B ==> ' HEX-OF (FLD0289B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0289B).
           IF FLD0290B (1:)    NOT EQUAL XPC-FLD0290B
              DISPLAY 'FLD0290B ==> ' HEX-OF (FLD0290B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0290B).
           IF FLD0291B (1:)    NOT EQUAL XPC-FLD0291B
              DISPLAY 'FLD0291B ==> ' HEX-OF (FLD0291B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0291B).
           IF FLD0292B (1:)    NOT EQUAL XPC-FLD0292B
              DISPLAY 'FLD0292B ==> ' HEX-OF (FLD0292B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0292B).
           IF FLD0293B (1:)    NOT EQUAL XPC-FLD0293B
              DISPLAY 'FLD0293B ==> ' HEX-OF (FLD0293B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0293B).
           IF FLD0294B (1:)    NOT EQUAL XPC-FLD0294B
              DISPLAY 'FLD0294B ==> ' HEX-OF (FLD0294B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0294B).
           IF FLD0295B (1:)    NOT EQUAL XPC-FLD0295B
              DISPLAY 'FLD0295B ==> ' HEX-OF (FLD0295B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0295B).
           IF FLD0296B (1:)    NOT EQUAL XPC-FLD0296B
              DISPLAY 'FLD0296B ==> ' HEX-OF (FLD0296B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0296B).
           IF FLD0297B (1:)    NOT EQUAL XPC-FLD0297B
              DISPLAY 'FLD0297B ==> ' HEX-OF (FLD0297B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0297B).
           IF FLD0298B (1:)    NOT EQUAL XPC-FLD0298B
              DISPLAY 'FLD0298B ==> ' HEX-OF (FLD0298B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0298B).
           IF FLD0299B (1:)    NOT EQUAL XPC-FLD0299B
              DISPLAY 'FLD0299B ==> ' HEX-OF (FLD0299B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0299B).
           IF FLD0300B (1:)    NOT EQUAL XPC-FLD0300B
              DISPLAY 'FLD0300B ==> ' HEX-OF (FLD0300B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0300B).
           IF FLD0301B (1:)    NOT EQUAL XPC-FLD0301B
              DISPLAY 'FLD0301B ==> ' HEX-OF (FLD0301B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0301B).
           IF FLD0302B (1:)    NOT EQUAL XPC-FLD0302B
              DISPLAY 'FLD0302B ==> ' HEX-OF (FLD0302B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0302B).
           IF FLD0303B (1:)    NOT EQUAL XPC-FLD0303B
              DISPLAY 'FLD0303B ==> ' HEX-OF (FLD0303B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0303B).
           IF FLD0304B (1:)    NOT EQUAL XPC-FLD0304B
              DISPLAY 'FLD0304B ==> ' HEX-OF (FLD0304B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0304B).
           IF FLD0305B (1:)    NOT EQUAL XPC-FLD0305B
              DISPLAY 'FLD0305B ==> ' HEX-OF (FLD0305B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0305B).
           IF FLD0306B (1:)    NOT EQUAL XPC-FLD0306B
              DISPLAY 'FLD0306B ==> ' HEX-OF (FLD0306B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0306B).
           IF FLD0307B (1:)    NOT EQUAL XPC-FLD0307B
              DISPLAY 'FLD0307B ==> ' HEX-OF (FLD0307B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0307B).
           IF FLD0308B (1:)    NOT EQUAL XPC-FLD0308B
              DISPLAY 'FLD0308B ==> ' HEX-OF (FLD0308B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0308B).
           IF FLD0309B (1:)    NOT EQUAL XPC-FLD0309B
              DISPLAY 'FLD0309B ==> ' HEX-OF (FLD0309B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0309B).
           IF FLD0310B (1:)    NOT EQUAL XPC-FLD0310B
              DISPLAY 'FLD0310B ==> ' HEX-OF (FLD0310B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0310B).
           IF FLD0311B (1:)    NOT EQUAL XPC-FLD0311B
              DISPLAY 'FLD0311B ==> ' HEX-OF (FLD0311B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0311B).
           IF FLD0312B (1:)    NOT EQUAL XPC-FLD0312B
              DISPLAY 'FLD0312B ==> ' HEX-OF (FLD0312B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0312B).
           IF FLD0313B (1:)    NOT EQUAL XPC-FLD0313B
              DISPLAY 'FLD0313B ==> ' HEX-OF (FLD0313B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0313B).
           IF FLD0314B (1:)    NOT EQUAL XPC-FLD0314B
              DISPLAY 'FLD0314B ==> ' HEX-OF (FLD0314B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0314B).
           IF FLD0315B (1:)    NOT EQUAL XPC-FLD0315B
              DISPLAY 'FLD0315B ==> ' HEX-OF (FLD0315B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0315B).
           IF FLD0316B (1:)    NOT EQUAL XPC-FLD0316B
              DISPLAY 'FLD0316B ==> ' HEX-OF (FLD0316B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0316B).
           IF FLD0317B (1:)    NOT EQUAL XPC-FLD0317B
              DISPLAY 'FLD0317B ==> ' HEX-OF (FLD0317B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0317B).
           IF FLD0318B (1:)    NOT EQUAL XPC-FLD0318B
              DISPLAY 'FLD0318B ==> ' HEX-OF (FLD0318B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0318B).
           IF FLD0319B (1:)    NOT EQUAL XPC-FLD0319B
              DISPLAY 'FLD0319B ==> ' HEX-OF (FLD0319B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0319B).
           IF FLD0320B (1:)    NOT EQUAL XPC-FLD0320B
              DISPLAY 'FLD0320B ==> ' HEX-OF (FLD0320B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0320B).
           IF FLD0321B (1:)    NOT EQUAL XPC-FLD0321B
              DISPLAY 'FLD0321B ==> ' HEX-OF (FLD0321B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0321B).
           IF FLD0322B (1:)    NOT EQUAL XPC-FLD0322B
              DISPLAY 'FLD0322B ==> ' HEX-OF (FLD0322B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0322B).
           IF FLD0323B (1:)    NOT EQUAL XPC-FLD0323B
              DISPLAY 'FLD0323B ==> ' HEX-OF (FLD0323B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0323B).
           IF FLD0324B (1:)    NOT EQUAL XPC-FLD0324B
              DISPLAY 'FLD0324B ==> ' HEX-OF (FLD0324B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0324B).
           IF FLD0325B (1:)    NOT EQUAL XPC-FLD0325B
              DISPLAY 'FLD0325B ==> ' HEX-OF (FLD0325B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0325B).
           IF FLD0326B (1:)    NOT EQUAL XPC-FLD0326B
              DISPLAY 'FLD0326B ==> ' HEX-OF (FLD0326B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0326B).
           IF FLD0327B (1:)    NOT EQUAL XPC-FLD0327B
              DISPLAY 'FLD0327B ==> ' HEX-OF (FLD0327B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0327B).
           IF FLD0328B (1:)    NOT EQUAL XPC-FLD0328B
              DISPLAY 'FLD0328B ==> ' HEX-OF (FLD0328B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0328B).
           IF FLD0329B (1:)    NOT EQUAL XPC-FLD0329B
              DISPLAY 'FLD0329B ==> ' HEX-OF (FLD0329B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0329B).
           IF FLD0330B (1:)    NOT EQUAL XPC-FLD0330B
              DISPLAY 'FLD0330B ==> ' HEX-OF (FLD0330B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0330B).
           IF FLD0331B (1:)    NOT EQUAL XPC-FLD0331B
              DISPLAY 'FLD0331B ==> ' HEX-OF (FLD0331B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0331B).
           IF FLD0332B (1:)    NOT EQUAL XPC-FLD0332B
              DISPLAY 'FLD0332B ==> ' HEX-OF (FLD0332B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0332B).
           IF FLD0333B (1:)    NOT EQUAL XPC-FLD0333B
              DISPLAY 'FLD0333B ==> ' HEX-OF (FLD0333B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0333B).
           IF FLD0334B (1:)    NOT EQUAL XPC-FLD0334B
              DISPLAY 'FLD0334B ==> ' HEX-OF (FLD0334B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0334B).
           IF FLD0335B (1:)    NOT EQUAL XPC-FLD0335B
              DISPLAY 'FLD0335B ==> ' HEX-OF (FLD0335B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0335B).
           IF FLD0336B (1:)    NOT EQUAL XPC-FLD0336B
              DISPLAY 'FLD0336B ==> ' HEX-OF (FLD0336B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0336B).
           IF FLD0337B (1:)    NOT EQUAL XPC-FLD0337B
              DISPLAY 'FLD0337B ==> ' HEX-OF (FLD0337B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0337B).
           IF FLD0338B (1:)    NOT EQUAL XPC-FLD0338B
              DISPLAY 'FLD0338B ==> ' HEX-OF (FLD0338B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0338B).
           IF FLD0339B (1:)    NOT EQUAL XPC-FLD0339B
              DISPLAY 'FLD0339B ==> ' HEX-OF (FLD0339B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0339B).
           IF FLD0340B (1:)    NOT EQUAL XPC-FLD0340B
              DISPLAY 'FLD0340B ==> ' HEX-OF (FLD0340B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0340B).
           IF FLD0341B (1:)    NOT EQUAL XPC-FLD0341B
              DISPLAY 'FLD0341B ==> ' HEX-OF (FLD0341B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0341B).
           IF FLD0342B (1:)    NOT EQUAL XPC-FLD0342B
              DISPLAY 'FLD0342B ==> ' HEX-OF (FLD0342B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0342B).
           IF FLD0343B (1:)    NOT EQUAL XPC-FLD0343B
              DISPLAY 'FLD0343B ==> ' HEX-OF (FLD0343B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0343B).
           IF FLD0344B (1:)    NOT EQUAL XPC-FLD0344B
              DISPLAY 'FLD0344B ==> ' HEX-OF (FLD0344B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0344B).
           IF FLD0345B (1:)    NOT EQUAL XPC-FLD0345B
              DISPLAY 'FLD0345B ==> ' HEX-OF (FLD0345B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0345B).
           IF FLD0346B (1:)    NOT EQUAL XPC-FLD0346B
              DISPLAY 'FLD0346B ==> ' HEX-OF (FLD0346B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0346B).
           IF FLD0347B (1:)    NOT EQUAL XPC-FLD0347B
              DISPLAY 'FLD0347B ==> ' HEX-OF (FLD0347B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0347B).
           IF FLD0348B (1:)    NOT EQUAL XPC-FLD0348B
              DISPLAY 'FLD0348B ==> ' HEX-OF (FLD0348B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0348B).
           IF FLD0349B (1:)    NOT EQUAL XPC-FLD0349B
              DISPLAY 'FLD0349B ==> ' HEX-OF (FLD0349B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0349B).
           IF FLD0350B (1:)    NOT EQUAL XPC-FLD0350B
              DISPLAY 'FLD0350B ==> ' HEX-OF (FLD0350B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0350B).
           IF FLD0351B (1:)    NOT EQUAL XPC-FLD0351B
              DISPLAY 'FLD0351B ==> ' HEX-OF (FLD0351B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0351B).
           IF FLD0352B (1:)    NOT EQUAL XPC-FLD0352B
              DISPLAY 'FLD0352B ==> ' HEX-OF (FLD0352B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0352B).
           IF FLD0353B (1:)    NOT EQUAL XPC-FLD0353B
              DISPLAY 'FLD0353B ==> ' HEX-OF (FLD0353B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0353B).
           IF FLD0354B (1:)    NOT EQUAL XPC-FLD0354B
              DISPLAY 'FLD0354B ==> ' HEX-OF (FLD0354B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0354B).
           IF FLD0355B (1:)    NOT EQUAL XPC-FLD0355B
              DISPLAY 'FLD0355B ==> ' HEX-OF (FLD0355B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0355B).
           IF FLD0356B (1:)    NOT EQUAL XPC-FLD0356B
              DISPLAY 'FLD0356B ==> ' HEX-OF (FLD0356B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0356B).
           IF FLD0357B (1:)    NOT EQUAL XPC-FLD0357B
              DISPLAY 'FLD0357B ==> ' HEX-OF (FLD0357B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0357B).
           IF FLD0358B (1:)    NOT EQUAL XPC-FLD0358B
              DISPLAY 'FLD0358B ==> ' HEX-OF (FLD0358B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0358B).
           IF FLD0359B (1:)    NOT EQUAL XPC-FLD0359B
              DISPLAY 'FLD0359B ==> ' HEX-OF (FLD0359B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0359B).
           IF FLD0360B (1:)    NOT EQUAL XPC-FLD0360B
              DISPLAY 'FLD0360B ==> ' HEX-OF (FLD0360B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0360B).
           IF FLD0361B (1:)    NOT EQUAL XPC-FLD0361B
              DISPLAY 'FLD0361B ==> ' HEX-OF (FLD0361B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0361B).
           IF FLD0362B (1:)    NOT EQUAL XPC-FLD0362B
              DISPLAY 'FLD0362B ==> ' HEX-OF (FLD0362B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0362B).
           IF FLD0363B (1:)    NOT EQUAL XPC-FLD0363B
              DISPLAY 'FLD0363B ==> ' HEX-OF (FLD0363B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0363B).
           IF FLD0364B (1:)    NOT EQUAL XPC-FLD0364B
              DISPLAY 'FLD0364B ==> ' HEX-OF (FLD0364B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0364B).
           IF FLD0365B (1:)    NOT EQUAL XPC-FLD0365B
              DISPLAY 'FLD0365B ==> ' HEX-OF (FLD0365B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0365B).
           IF FLD0366B (1:)    NOT EQUAL XPC-FLD0366B
              DISPLAY 'FLD0366B ==> ' HEX-OF (FLD0366B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0366B).
           IF FLD0367B (1:)    NOT EQUAL XPC-FLD0367B
              DISPLAY 'FLD0367B ==> ' HEX-OF (FLD0367B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0367B).
           IF FLD0368B (1:)    NOT EQUAL XPC-FLD0368B
              DISPLAY 'FLD0368B ==> ' HEX-OF (FLD0368B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0368B).
           IF FLD0369B (1:)    NOT EQUAL XPC-FLD0369B
              DISPLAY 'FLD0369B ==> ' HEX-OF (FLD0369B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0369B).
           IF FLD0370B (1:)    NOT EQUAL XPC-FLD0370B
              DISPLAY 'FLD0370B ==> ' HEX-OF (FLD0370B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0370B).
           IF FLD0371B (1:)    NOT EQUAL XPC-FLD0371B
              DISPLAY 'FLD0371B ==> ' HEX-OF (FLD0371B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0371B).
           IF FLD0372B (1:)    NOT EQUAL XPC-FLD0372B
              DISPLAY 'FLD0372B ==> ' HEX-OF (FLD0372B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0372B).
           IF FLD0373B (1:)    NOT EQUAL XPC-FLD0373B
              DISPLAY 'FLD0373B ==> ' HEX-OF (FLD0373B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0373B).
           IF FLD0374B (1:)    NOT EQUAL XPC-FLD0374B
              DISPLAY 'FLD0374B ==> ' HEX-OF (FLD0374B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0374B).
           IF FLD0375B (1:)    NOT EQUAL XPC-FLD0375B
              DISPLAY 'FLD0375B ==> ' HEX-OF (FLD0375B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0375B).
           IF FLD0376B (1:)    NOT EQUAL XPC-FLD0376B
              DISPLAY 'FLD0376B ==> ' HEX-OF (FLD0376B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0376B).
           IF FLD0377B (1:)    NOT EQUAL XPC-FLD0377B
              DISPLAY 'FLD0377B ==> ' HEX-OF (FLD0377B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0377B).
           IF FLD0378B (1:)    NOT EQUAL XPC-FLD0378B
              DISPLAY 'FLD0378B ==> ' HEX-OF (FLD0378B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0378B).
           IF FLD0379B (1:)    NOT EQUAL XPC-FLD0379B
              DISPLAY 'FLD0379B ==> ' HEX-OF (FLD0379B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0379B).
           IF FLD0380B (1:)    NOT EQUAL XPC-FLD0380B
              DISPLAY 'FLD0380B ==> ' HEX-OF (FLD0380B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0380B).
           IF FLD0381B (1:)    NOT EQUAL XPC-FLD0381B
              DISPLAY 'FLD0381B ==> ' HEX-OF (FLD0381B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0381B).
           IF FLD0382B (1:)    NOT EQUAL XPC-FLD0382B
              DISPLAY 'FLD0382B ==> ' HEX-OF (FLD0382B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0382B).
           IF FLD0383B (1:)    NOT EQUAL XPC-FLD0383B
              DISPLAY 'FLD0383B ==> ' HEX-OF (FLD0383B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0383B).
           IF FLD0384B (1:)    NOT EQUAL XPC-FLD0384B
              DISPLAY 'FLD0384B ==> ' HEX-OF (FLD0384B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0384B).
           IF FLD0385B (1:)    NOT EQUAL XPC-FLD0385B
              DISPLAY 'FLD0385B ==> ' HEX-OF (FLD0385B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0385B).
           IF FLD0386B (1:)    NOT EQUAL XPC-FLD0386B
              DISPLAY 'FLD0386B ==> ' HEX-OF (FLD0386B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0386B).
           IF FLD0387B (1:)    NOT EQUAL XPC-FLD0387B
              DISPLAY 'FLD0387B ==> ' HEX-OF (FLD0387B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0387B).
           IF FLD0388B (1:)    NOT EQUAL XPC-FLD0388B
              DISPLAY 'FLD0388B ==> ' HEX-OF (FLD0388B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0388B).
           IF FLD0389B (1:)    NOT EQUAL XPC-FLD0389B
              DISPLAY 'FLD0389B ==> ' HEX-OF (FLD0389B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0389B).
           IF FLD0390B (1:)    NOT EQUAL XPC-FLD0390B
              DISPLAY 'FLD0390B ==> ' HEX-OF (FLD0390B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0390B).
           IF FLD0391B (1:)    NOT EQUAL XPC-FLD0391B
              DISPLAY 'FLD0391B ==> ' HEX-OF (FLD0391B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0391B).
           IF FLD0392B (1:)    NOT EQUAL XPC-FLD0392B
              DISPLAY 'FLD0392B ==> ' HEX-OF (FLD0392B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0392B).
           IF FLD0393B (1:)    NOT EQUAL XPC-FLD0393B
              DISPLAY 'FLD0393B ==> ' HEX-OF (FLD0393B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0393B).
           IF FLD0394B (1:)    NOT EQUAL XPC-FLD0394B
              DISPLAY 'FLD0394B ==> ' HEX-OF (FLD0394B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0394B).
           IF FLD0395B (1:)    NOT EQUAL XPC-FLD0395B
              DISPLAY 'FLD0395B ==> ' HEX-OF (FLD0395B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0395B).
           IF FLD0396B (1:)    NOT EQUAL XPC-FLD0396B
              DISPLAY 'FLD0396B ==> ' HEX-OF (FLD0396B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0396B).
           IF FLD0397B (1:)    NOT EQUAL XPC-FLD0397B
              DISPLAY 'FLD0397B ==> ' HEX-OF (FLD0397B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0397B).
           IF FLD0398B (1:)    NOT EQUAL XPC-FLD0398B
              DISPLAY 'FLD0398B ==> ' HEX-OF (FLD0398B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0398B).
           IF FLD0399B (1:)    NOT EQUAL XPC-FLD0399B
              DISPLAY 'FLD0399B ==> ' HEX-OF (FLD0399B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0399B).
           IF FLD0400B (1:)    NOT EQUAL XPC-FLD0400B
              DISPLAY 'FLD0400B ==> ' HEX-OF (FLD0400B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0400B).
           IF FLD0401B (1:)    NOT EQUAL XPC-FLD0401B
              DISPLAY 'FLD0401B ==> ' HEX-OF (FLD0401B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0401B).
           IF FLD0402B (1:)    NOT EQUAL XPC-FLD0402B
              DISPLAY 'FLD0402B ==> ' HEX-OF (FLD0402B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0402B).
           IF FLD0403B (1:)    NOT EQUAL XPC-FLD0403B
              DISPLAY 'FLD0403B ==> ' HEX-OF (FLD0403B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0403B).
           IF FLD0404B (1:)    NOT EQUAL XPC-FLD0404B
              DISPLAY 'FLD0404B ==> ' HEX-OF (FLD0404B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0404B).
           IF FLD0405B (1:)    NOT EQUAL XPC-FLD0405B
              DISPLAY 'FLD0405B ==> ' HEX-OF (FLD0405B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0405B).
           IF FLD0406B (1:)    NOT EQUAL XPC-FLD0406B
              DISPLAY 'FLD0406B ==> ' HEX-OF (FLD0406B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0406B).
           IF FLD0407B (1:)    NOT EQUAL XPC-FLD0407B
              DISPLAY 'FLD0407B ==> ' HEX-OF (FLD0407B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0407B).
           IF FLD0408B (1:)    NOT EQUAL XPC-FLD0408B
              DISPLAY 'FLD0408B ==> ' HEX-OF (FLD0408B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0408B).
           IF FLD0409B (1:)    NOT EQUAL XPC-FLD0409B
              DISPLAY 'FLD0409B ==> ' HEX-OF (FLD0409B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0409B).
           IF FLD0410B (1:)    NOT EQUAL XPC-FLD0410B
              DISPLAY 'FLD0410B ==> ' HEX-OF (FLD0410B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0410B).
           IF FLD0411B (1:)    NOT EQUAL XPC-FLD0411B
              DISPLAY 'FLD0411B ==> ' HEX-OF (FLD0411B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0411B).
           IF FLD0412B (1:)    NOT EQUAL XPC-FLD0412B
              DISPLAY 'FLD0412B ==> ' HEX-OF (FLD0412B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0412B).
           IF FLD0413B (1:)    NOT EQUAL XPC-FLD0413B
              DISPLAY 'FLD0413B ==> ' HEX-OF (FLD0413B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0413B).
           IF FLD0414B (1:)    NOT EQUAL XPC-FLD0414B
              DISPLAY 'FLD0414B ==> ' HEX-OF (FLD0414B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0414B).
           IF FLD0415B (1:)    NOT EQUAL XPC-FLD0415B
              DISPLAY 'FLD0415B ==> ' HEX-OF (FLD0415B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0415B).
           IF FLD0416B (1:)    NOT EQUAL XPC-FLD0416B
              DISPLAY 'FLD0416B ==> ' HEX-OF (FLD0416B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0416B).
           IF FLD0417B (1:)    NOT EQUAL XPC-FLD0417B
              DISPLAY 'FLD0417B ==> ' HEX-OF (FLD0417B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0417B).
           IF FLD0418B (1:)    NOT EQUAL XPC-FLD0418B
              DISPLAY 'FLD0418B ==> ' HEX-OF (FLD0418B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0418B).
           IF FLD0419B (1:)    NOT EQUAL XPC-FLD0419B
              DISPLAY 'FLD0419B ==> ' HEX-OF (FLD0419B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0419B).
           IF FLD0420B (1:)    NOT EQUAL XPC-FLD0420B
              DISPLAY 'FLD0420B ==> ' HEX-OF (FLD0420B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0420B).
           IF FLD0421B (1:)    NOT EQUAL XPC-FLD0421B
              DISPLAY 'FLD0421B ==> ' HEX-OF (FLD0421B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0421B).
           IF FLD0422B (1:)    NOT EQUAL XPC-FLD0422B
              DISPLAY 'FLD0422B ==> ' HEX-OF (FLD0422B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0422B).
           IF FLD0423B (1:)    NOT EQUAL XPC-FLD0423B
              DISPLAY 'FLD0423B ==> ' HEX-OF (FLD0423B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0423B).
           IF FLD0424B (1:)    NOT EQUAL XPC-FLD0424B
              DISPLAY 'FLD0424B ==> ' HEX-OF (FLD0424B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0424B).
           IF FLD0425B (1:)    NOT EQUAL XPC-FLD0425B
              DISPLAY 'FLD0425B ==> ' HEX-OF (FLD0425B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0425B).
           IF FLD0426B (1:)    NOT EQUAL XPC-FLD0426B
              DISPLAY 'FLD0426B ==> ' HEX-OF (FLD0426B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0426B).
           IF FLD0427B (1:)    NOT EQUAL XPC-FLD0427B
              DISPLAY 'FLD0427B ==> ' HEX-OF (FLD0427B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0427B).
           IF FLD0428B (1:)    NOT EQUAL XPC-FLD0428B
              DISPLAY 'FLD0428B ==> ' HEX-OF (FLD0428B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0428B).
           IF FLD0429B (1:)    NOT EQUAL XPC-FLD0429B
              DISPLAY 'FLD0429B ==> ' HEX-OF (FLD0429B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0429B).
           IF FLD0430B (1:)    NOT EQUAL XPC-FLD0430B
              DISPLAY 'FLD0430B ==> ' HEX-OF (FLD0430B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0430B).
           IF FLD0431B (1:)    NOT EQUAL XPC-FLD0431B
              DISPLAY 'FLD0431B ==> ' HEX-OF (FLD0431B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0431B).
           IF FLD0432B (1:)    NOT EQUAL XPC-FLD0432B
              DISPLAY 'FLD0432B ==> ' HEX-OF (FLD0432B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0432B).
           IF FLD0433B (1:)    NOT EQUAL XPC-FLD0433B
              DISPLAY 'FLD0433B ==> ' HEX-OF (FLD0433B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0433B).
           IF FLD0434B (1:)    NOT EQUAL XPC-FLD0434B
              DISPLAY 'FLD0434B ==> ' HEX-OF (FLD0434B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0434B).
           IF FLD0435B (1:)    NOT EQUAL XPC-FLD0435B
              DISPLAY 'FLD0435B ==> ' HEX-OF (FLD0435B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0435B).
           IF FLD0436B (1:)    NOT EQUAL XPC-FLD0436B
              DISPLAY 'FLD0436B ==> ' HEX-OF (FLD0436B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0436B).
           IF FLD0437B (1:)    NOT EQUAL XPC-FLD0437B
              DISPLAY 'FLD0437B ==> ' HEX-OF (FLD0437B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0437B).
           IF FLD0438B (1:)    NOT EQUAL XPC-FLD0438B
              DISPLAY 'FLD0438B ==> ' HEX-OF (FLD0438B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0438B).
           IF FLD0439B (1:)    NOT EQUAL XPC-FLD0439B
              DISPLAY 'FLD0439B ==> ' HEX-OF (FLD0439B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0439B).
           IF FLD0440B (1:)    NOT EQUAL XPC-FLD0440B
              DISPLAY 'FLD0440B ==> ' HEX-OF (FLD0440B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0440B).
           IF FLD0441B (1:)    NOT EQUAL XPC-FLD0441B
              DISPLAY 'FLD0441B ==> ' HEX-OF (FLD0441B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0441B).
           IF FLD0442B (1:)    NOT EQUAL XPC-FLD0442B
              DISPLAY 'FLD0442B ==> ' HEX-OF (FLD0442B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0442B).
           IF FLD0443B (1:)    NOT EQUAL XPC-FLD0443B
              DISPLAY 'FLD0443B ==> ' HEX-OF (FLD0443B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0443B).
           IF FLD0444B (1:)    NOT EQUAL XPC-FLD0444B
              DISPLAY 'FLD0444B ==> ' HEX-OF (FLD0444B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0444B).
           IF FLD0445B (1:)    NOT EQUAL XPC-FLD0445B
              DISPLAY 'FLD0445B ==> ' HEX-OF (FLD0445B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0445B).
           IF FLD0446B (1:)    NOT EQUAL XPC-FLD0446B
              DISPLAY 'FLD0446B ==> ' HEX-OF (FLD0446B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0446B).
           IF FLD0447B (1:)    NOT EQUAL XPC-FLD0447B
              DISPLAY 'FLD0447B ==> ' HEX-OF (FLD0447B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0447B).
           IF FLD0448B (1:)    NOT EQUAL XPC-FLD0448B
              DISPLAY 'FLD0448B ==> ' HEX-OF (FLD0448B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0448B).
           IF FLD0449B (1:)    NOT EQUAL XPC-FLD0449B
              DISPLAY 'FLD0449B ==> ' HEX-OF (FLD0449B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0449B).
           IF FLD0450B (1:)    NOT EQUAL XPC-FLD0450B
              DISPLAY 'FLD0450B ==> ' HEX-OF (FLD0450B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0450B).
           IF FLD0451B (1:)    NOT EQUAL XPC-FLD0451B
              DISPLAY 'FLD0451B ==> ' HEX-OF (FLD0451B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0451B).
           IF FLD0452B (1:)    NOT EQUAL XPC-FLD0452B
              DISPLAY 'FLD0452B ==> ' HEX-OF (FLD0452B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0452B).
           IF FLD0453B (1:)    NOT EQUAL XPC-FLD0453B
              DISPLAY 'FLD0453B ==> ' HEX-OF (FLD0453B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0453B).
           IF FLD0454B (1:)    NOT EQUAL XPC-FLD0454B
              DISPLAY 'FLD0454B ==> ' HEX-OF (FLD0454B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0454B).
           IF FLD0455B (1:)    NOT EQUAL XPC-FLD0455B
              DISPLAY 'FLD0455B ==> ' HEX-OF (FLD0455B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0455B).
           IF FLD0456B (1:)    NOT EQUAL XPC-FLD0456B
              DISPLAY 'FLD0456B ==> ' HEX-OF (FLD0456B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0456B).
           IF FLD0457B (1:)    NOT EQUAL XPC-FLD0457B
              DISPLAY 'FLD0457B ==> ' HEX-OF (FLD0457B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0457B).
           IF FLD0458B (1:)    NOT EQUAL XPC-FLD0458B
              DISPLAY 'FLD0458B ==> ' HEX-OF (FLD0458B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0458B).
           IF FLD0459B (1:)    NOT EQUAL XPC-FLD0459B
              DISPLAY 'FLD0459B ==> ' HEX-OF (FLD0459B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0459B).
           IF FLD0460B (1:)    NOT EQUAL XPC-FLD0460B
              DISPLAY 'FLD0460B ==> ' HEX-OF (FLD0460B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0460B).
           IF FLD0461B (1:)    NOT EQUAL XPC-FLD0461B
              DISPLAY 'FLD0461B ==> ' HEX-OF (FLD0461B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0461B).
           IF FLD0462B (1:)    NOT EQUAL XPC-FLD0462B
              DISPLAY 'FLD0462B ==> ' HEX-OF (FLD0462B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0462B).
           IF FLD0463B (1:)    NOT EQUAL XPC-FLD0463B
              DISPLAY 'FLD0463B ==> ' HEX-OF (FLD0463B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0463B).
           IF FLD0464B (1:)    NOT EQUAL XPC-FLD0464B
              DISPLAY 'FLD0464B ==> ' HEX-OF (FLD0464B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0464B).
           IF FLD0465B (1:)    NOT EQUAL XPC-FLD0465B
              DISPLAY 'FLD0465B ==> ' HEX-OF (FLD0465B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0465B).
           IF FLD0466B (1:)    NOT EQUAL XPC-FLD0466B
              DISPLAY 'FLD0466B ==> ' HEX-OF (FLD0466B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0466B).
           IF FLD0467B (1:)    NOT EQUAL XPC-FLD0467B
              DISPLAY 'FLD0467B ==> ' HEX-OF (FLD0467B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0467B).
           IF FLD0468B (1:)    NOT EQUAL XPC-FLD0468B
              DISPLAY 'FLD0468B ==> ' HEX-OF (FLD0468B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0468B).
           IF FLD0469B (1:)    NOT EQUAL XPC-FLD0469B
              DISPLAY 'FLD0469B ==> ' HEX-OF (FLD0469B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0469B).
           IF FLD0470B (1:)    NOT EQUAL XPC-FLD0470B
              DISPLAY 'FLD0470B ==> ' HEX-OF (FLD0470B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0470B).
           IF FLD0471B (1:)    NOT EQUAL XPC-FLD0471B
              DISPLAY 'FLD0471B ==> ' HEX-OF (FLD0471B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0471B).
           IF FLD0472B (1:)    NOT EQUAL XPC-FLD0472B
              DISPLAY 'FLD0472B ==> ' HEX-OF (FLD0472B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0472B).
           IF FLD0473B (1:)    NOT EQUAL XPC-FLD0473B
              DISPLAY 'FLD0473B ==> ' HEX-OF (FLD0473B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0473B).
           IF FLD0474B (1:)    NOT EQUAL XPC-FLD0474B
              DISPLAY 'FLD0474B ==> ' HEX-OF (FLD0474B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0474B).
           IF FLD0475B (1:)    NOT EQUAL XPC-FLD0475B
              DISPLAY 'FLD0475B ==> ' HEX-OF (FLD0475B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0475B).
           IF FLD0476B (1:)    NOT EQUAL XPC-FLD0476B
              DISPLAY 'FLD0476B ==> ' HEX-OF (FLD0476B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0476B).
           IF FLD0477B (1:)    NOT EQUAL XPC-FLD0477B
              DISPLAY 'FLD0477B ==> ' HEX-OF (FLD0477B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0477B).
           IF FLD0478B (1:)    NOT EQUAL XPC-FLD0478B
              DISPLAY 'FLD0478B ==> ' HEX-OF (FLD0478B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0478B).
           IF FLD0479B (1:)    NOT EQUAL XPC-FLD0479B
              DISPLAY 'FLD0479B ==> ' HEX-OF (FLD0479B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0479B).
           IF FLD0480B (1:)    NOT EQUAL XPC-FLD0480B
              DISPLAY 'FLD0480B ==> ' HEX-OF (FLD0480B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0480B).
           IF FLD0481B (1:)    NOT EQUAL XPC-FLD0481B
              DISPLAY 'FLD0481B ==> ' HEX-OF (FLD0481B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0481B).
           IF FLD0482B (1:)    NOT EQUAL XPC-FLD0482B
              DISPLAY 'FLD0482B ==> ' HEX-OF (FLD0482B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0482B).
           IF FLD0483B (1:)    NOT EQUAL XPC-FLD0483B
              DISPLAY 'FLD0483B ==> ' HEX-OF (FLD0483B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0483B).
           IF FLD0484B (1:)    NOT EQUAL XPC-FLD0484B
              DISPLAY 'FLD0484B ==> ' HEX-OF (FLD0484B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0484B).
           IF FLD0485B (1:)    NOT EQUAL XPC-FLD0485B
              DISPLAY 'FLD0485B ==> ' HEX-OF (FLD0485B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0485B).
           IF FLD0486B (1:)    NOT EQUAL XPC-FLD0486B
              DISPLAY 'FLD0486B ==> ' HEX-OF (FLD0486B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0486B).
           IF FLD0487B (1:)    NOT EQUAL XPC-FLD0487B
              DISPLAY 'FLD0487B ==> ' HEX-OF (FLD0487B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0487B).
           IF FLD0488B (1:)    NOT EQUAL XPC-FLD0488B
              DISPLAY 'FLD0488B ==> ' HEX-OF (FLD0488B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0488B).
           IF FLD0489B (1:)    NOT EQUAL XPC-FLD0489B
              DISPLAY 'FLD0489B ==> ' HEX-OF (FLD0489B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0489B).
           IF FLD0490B (1:)    NOT EQUAL XPC-FLD0490B
              DISPLAY 'FLD0490B ==> ' HEX-OF (FLD0490B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0490B).
           IF FLD0491B (1:)    NOT EQUAL XPC-FLD0491B
              DISPLAY 'FLD0491B ==> ' HEX-OF (FLD0491B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0491B).
           IF FLD0492B (1:)    NOT EQUAL XPC-FLD0492B
              DISPLAY 'FLD0492B ==> ' HEX-OF (FLD0492B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0492B).
           IF FLD0493B (1:)    NOT EQUAL XPC-FLD0493B
              DISPLAY 'FLD0493B ==> ' HEX-OF (FLD0493B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0493B).
           IF FLD0494B (1:)    NOT EQUAL XPC-FLD0494B
              DISPLAY 'FLD0494B ==> ' HEX-OF (FLD0494B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0494B).
           IF FLD0495B (1:)    NOT EQUAL XPC-FLD0495B
              DISPLAY 'FLD0495B ==> ' HEX-OF (FLD0495B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0495B).
           IF FLD0496B (1:)    NOT EQUAL XPC-FLD0496B
              DISPLAY 'FLD0496B ==> ' HEX-OF (FLD0496B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0496B).
           IF FLD0497B (1:)    NOT EQUAL XPC-FLD0497B
              DISPLAY 'FLD0497B ==> ' HEX-OF (FLD0497B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0497B).
           IF FLD0498B (1:)    NOT EQUAL XPC-FLD0498B
              DISPLAY 'FLD0498B ==> ' HEX-OF (FLD0498B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0498B).
           IF FLD0499B (1:)    NOT EQUAL XPC-FLD0499B
              DISPLAY 'FLD0499B ==> ' HEX-OF (FLD0499B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0499B).
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:34793: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_packed.at:34793"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:34793"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:34794: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_packed.at:34794"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:34794"
$at_failed && at_fn_log_failure
$at_traceon; }


cat >prog2.cob <<'_ATEOF'

       IDENTIFICATION DIVISION.
       PROGRAM-ID. PDTESTR2.

       ENVIRONMENT DIVISION.
       CONFIGURATION SECTION.
       REPOSITORY.
       FUNCTION HEX-OF INTRINSIC.

       DATA DIVISION.
       WORKING-STORAGE SECTION.

      * DATA-AREA

       77  FLD0500A                       PIC S9(10)V9(08) COMP-3
           VALUE -4830218621.81680639.
       77  FLD0500B                       PIC  9(03)       COMP-6
           VALUE  087.

       77  FLD0501A                       PIC  9(09)V9(15) COMP-3
           VALUE  652910855.370784748430423.
       77  FLD0501B                       PIC  9(09)V9(14) COMP-6
           VALUE  628093348.73677369337485.

       77  FLD0502A                       PIC  9(03)       COMP-6
           VALUE  079.
       77  FLD0502B                       PIC  9(07)V9(22) COMP-6
           VALUE  7893241.6286150020034995122841.

       77  FLD0503A                       PIC  9(10)V9(11) COMP-6
           VALUE  5662523582.77427925159.
       77  FLD0503B                       PIC  9(04)V9(29) COMP-3
           VALUE  8834.70722999726620905391882843105.

       77  FLD0504A                       PIC S9(08)V9(02) COMP-3
           VALUE -28360864.01.
       77  FLD0504B                       PIC  9(10)V9(09) COMP-3
           VALUE  5000570062.577901486.

       77  FLD0505A                       PIC  9(04)V9(30) COMP-3
           VALUE  9110.332843503369248949752545740921.
       77  FLD0505B                       PIC  9(10)V9(10) COMP-3
           VALUE  5407979633.7587637822.

       77  FLD0506A                       PIC  9(10)V9(11) COMP-3
           VALUE  5546838940.35467472960.
       77  FLD0506B                       PIC S9(07)V9(01) COMP-3
           VALUE +2340559.3.

       77  FLD0507A                       PIC  9(08)V9(18) COMP-6
           VALUE  70736506.262277043521891073.
       77  FLD0507B                       PIC  9(10)V9(09) COMP-3
           VALUE  5205430142.820132166.

       77  FLD0508A                       PIC  9(09)V9(16) COMP-6
           VALUE  658855971.9467786957025623.
       77  FLD0508B                       PIC S9(09)V9(07) COMP-3
           VALUE +444447149.8618901.

       77  FLD0509A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0509B                       PIC  9(10)V9(08) COMP-6
           VALUE  4889373386.26299289.

       77  FLD0510A                       PIC  9(04)       COMP-6
           VALUE  1295.
       77  FLD0510B                       PIC S9(03)       COMP-3
           VALUE -092.

       77  FLD0511A                       PIC  9(06)V9(25) COMP-6
           VALUE  815863.7850571600624860479911149.
       77  FLD0511B                       PIC  9(10)V9(09) COMP-6
           VALUE  5256921146.480894035.

       77  FLD0512A                       PIC  9(05)       COMP-6
           VALUE  13945.
       77  FLD0512B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.908282031313487836499120930966455489.

       77  FLD0513A                       PIC  9(09)V9(15) COMP-3
           VALUE  653773832.246937192103075.
       77  FLD0513B                       PIC  9(08)V9(20) COMP-3
           VALUE  74124087.47450585089211472222.

       77  FLD0514A                       PIC  9(08)V9(18) COMP-3
           VALUE  70109343.593910689040882289.
       77  FLD0514B                       PIC  9(09)V9(04) COMP-6
           VALUE  348891343.2762.

       77  FLD0515A                       PIC  9(09)V9(16) COMP-6
           VALUE  658210435.7548693718271692.
       77  FLD0515B                       PIC  9(03)V9(32) COMP-3
           VALUE  941.14524908048735607479784448514692.

       77  FLD0516A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.884403805479323734672902901365887373.
       77  FLD0516B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0517A                       PIC  9(10)V9(07) COMP-6
           VALUE  4497620438.0577999.
       77  FLD0517B                       PIC S9(10)V9(08) COMP-3
           VALUE -4811021778.48490686.

       77  FLD0518A                       PIC  9(09)V9(16) COMP-3
           VALUE  664556684.1155496895510168.
       77  FLD0518B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0519A                       PIC  9(09)V9(14) COMP-3
           VALUE  630097608.79846921088898.
       77  FLD0519B                       PIC  9(08)V9(17) COMP-3
           VALUE  68412596.06583623975595287.

       77  FLD0520A                       PIC  9(04)V9(30) COMP-6
           VALUE  9052.329380117529744609328190563246.
       77  FLD0520B                       PIC  9(09)V9(14) COMP-3
           VALUE  610604586.65389061305717.

       77  FLD0521A                       PIC  9(05)       COMP-6
           VALUE  13956.
       77  FLD0521B                       PIC S9(05)       COMP-3
           VALUE +14099.

       77  FLD0522A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0522B                       PIC S9(09)V9(04) COMP-3
           VALUE -351067614.4076.

       77  FLD0523A                       PIC  9(08)V9(18) COMP-6
           VALUE  70807149.512639711019801325.
       77  FLD0523B                       PIC S9(08)V9(02) COMP-3
           VALUE -28004002.44.

       77  FLD0524A                       PIC S9(06)V9(01) COMP-3
           VALUE +201515.3.
       77  FLD0524B                       PIC  9(10)V9(09) COMP-3
           VALUE  5046210377.505329081.

       77  FLD0525A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0525B                       PIC  9(04)V9(29) COMP-6
           VALUE  8873.36156634660588871099662355845.

       77  FLD0526A                       PIC  9(07)V9(22) COMP-3
           VALUE  7812896.0072540409864672028561.
       77  FLD0526B                       PIC  9(07)V9(02) COMP-6
           VALUE  2461308.93.

       77  FLD0527A                       PIC  9(10)V9(12) COMP-6
           VALUE  5853770318.384275972434.
       77  FLD0527B                       PIC  9(10)V9(09) COMP-3
           VALUE  5140096263.891610339.

       77  FLD0528A                       PIC  9(10)V9(08) COMP-6
           VALUE  4856797949.89136714.
       77  FLD0528B                       PIC S9(04)       COMP-3
           VALUE +1207.

       77  FLD0529A                       PIC  9(10)V9(10) COMP-6
           VALUE  5298570971.4885653731.
       77  FLD0529B                       PIC S9(10)V9(07) COMP-3
           VALUE -4613280273.7797717.

       77  FLD0530A                       PIC  9(05)V9(28) COMP-6
           VALUE  87536.5484141958027919372398173436.
       77  FLD0530B                       PIC S9(02)       COMP-3
           VALUE -06.

       77  FLD0531A                       PIC  9(09)V9(03) COMP-6
           VALUE  317487049.751.
       77  FLD0531B                       PIC S9(07)V9(01) COMP-3
           VALUE +2322772.2.

       77  FLD0532A                       PIC  9(09)V9(15) COMP-3
           VALUE  653250626.044252880042506.
       77  FLD0532B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0533A                       PIC  9(07)V9(02) COMP-6
           VALUE  2559928.55.
       77  FLD0533B                       PIC  9(03)       COMP-6
           VALUE  086.

       77  FLD0534A                       PIC  9(09)V9(06) COMP-6
           VALUE  408226706.354108.
       77  FLD0534B                       PIC  9(10)V9(09) COMP-3
           VALUE  5204512753.981520578.

       77  FLD0535A                       PIC  9(10)V9(11) COMP-6
           VALUE  5556101599.27967472981.
       77  FLD0535B                       PIC  9(05)V9(27) COMP-3
           VALUE  85335.564071638048133650045201648.

       77  FLD0536A                       PIC S9(08)V9(03) COMP-3
           VALUE -29061270.882.
       77  FLD0536B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0537A                       PIC  9(08)V9(03) COMP-6
           VALUE  29943354.242.
       77  FLD0537B                       PIC  9(04)       COMP-6
           VALUE  1199.

       77  FLD0538A                       PIC  9(03)V9(32) COMP-3
           VALUE  922.29859860523566439383102988358587.
       77  FLD0538B                       PIC  9(04)V9(29) COMP-6
           VALUE  8861.76614320458799767266100388951.

       77  FLD0539A                       PIC  9(05)V9(27) COMP-6
           VALUE  85666.721070025741990860979058197.
       77  FLD0539B                       PIC  9(05)V9(27) COMP-3
           VALUE  84375.338828007329095015620623598.

       77  FLD0540A                       PIC S9(04)       COMP-3
           VALUE +1227.
       77  FLD0540B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0541A                       PIC  9(09)V9(05) COMP-6
           VALUE  387240740.80744.
       77  FLD0541B                       PIC  9(07)V9(22) COMP-6
           VALUE  7676023.3773886621388982121061.

       77  FLD0542A                       PIC  9(06)V9(25) COMP-3
           VALUE  831706.5789473143677668076634290.
       77  FLD0542B                       PIC  9(10)V9(11) COMP-3
           VALUE  5532908670.51828949563.

       77  FLD0543A                       PIC  9(06)V9(01) COMP-6
           VALUE  188772.9.
       77  FLD0543B                       PIC  9(07)V9(02) COMP-6
           VALUE  2581387.79.

       77  FLD0544A                       PIC  9(10)V9(09) COMP-3
           VALUE  5241766194.366106468.
       77  FLD0544B                       PIC  9(08)V9(02) COMP-6
           VALUE  27953166.13.

       77  FLD0545A                       PIC  9(09)V9(14) COMP-3
           VALUE  622229285.46684597161942.
       77  FLD0545B                       PIC  9(08)V9(19) COMP-3
           VALUE  72256359.1476747091313370674.

       77  FLD0546A                       PIC  9(06)V9(25) COMP-3
           VALUE  820358.8689269564193651262939965.
       77  FLD0546B                       PIC  9(09)V9(14) COMP-3
           VALUE  610779194.05314462508727.

       77  FLD0547A                       PIC  9(06)V9(25) COMP-3
           VALUE  821925.7242001770658035297856258.
       77  FLD0547B                       PIC S9(09)V9(04) COMP-3
           VALUE -360691511.9302.

       77  FLD0548A                       PIC  9(07)V9(23) COMP-6
           VALUE  7955385.78445739497091437897324.
       77  FLD0548B                       PIC  9(09)V9(17) COMP-6
           VALUE  689149957.90453892343663255.

       77  FLD0549A                       PIC  9(07)V9(01) COMP-6
           VALUE  2367856.7.
       77  FLD0549B                       PIC  9(09)V9(06) COMP-6
           VALUE  415548355.051954.

       77  FLD0550A                       PIC  9(09)V9(15) COMP-6
           VALUE  656651700.520587522369453.
       77  FLD0550B                       PIC  9(02)       COMP-6
           VALUE  06.

       77  FLD0551A                       PIC  9(07)V9(02) COMP-6
           VALUE  2589973.73.
       77  FLD0551B                       PIC  9(09)V9(15) COMP-3
           VALUE  652529070.867454263904505.

       77  FLD0552A                       PIC  9(10)V9(07) COMP-6
           VALUE  4579590761.6898545.
       77  FLD0552B                       PIC  9(05)       COMP-6
           VALUE  14745.

       77  FLD0553A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0553B                       PIC S9(09)V9(04) COMP-3
           VALUE -360871096.9090.

       77  FLD0554A                       PIC  9(07)V9(02) COMP-6
           VALUE  2568219.15.
       77  FLD0554B                       PIC  9(03)V9(32) COMP-3
           VALUE  932.99236247731820448336748086148872.

       77  FLD0555A                       PIC  9(09)V9(05) COMP-6
           VALUE  388184875.66560.
       77  FLD0555B                       PIC  9(10)V9(09) COMP-3
           VALUE  5217501857.988002811.

       77  FLD0556A                       PIC  9(04)V9(30) COMP-6
           VALUE  8983.209260005348140154524116951506.
       77  FLD0556B                       PIC  9(10)V9(11) COMP-6
           VALUE  5685562200.43860527368.

       77  FLD0557A                       PIC  9(09)V9(15) COMP-3
           VALUE  650877011.601572519339242.
       77  FLD0557B                       PIC S9(05)       COMP-3
           VALUE +13329.

       77  FLD0558A                       PIC  9(09)V9(13) COMP-6
           VALUE  595830550.3266489999703.
       77  FLD0558B                       PIC  9(06)V9(01) COMP-6
           VALUE  209604.9.

       77  FLD0559A                       PIC  9(10)V9(09) COMP-3
           VALUE  5242032248.235551916.
       77  FLD0559B                       PIC  9(07)V9(22) COMP-6
           VALUE  7882034.1791675385678672682843.

       77  FLD0560A                       PIC S9(09)V9(06) COMP-3
           VALUE +403640603.914505.
       77  FLD0560B                       PIC  9(09)V9(07) COMP-6
           VALUE  438743115.5223073.

       77  FLD0561A                       PIC  9(05)       COMP-6
           VALUE  14931.
       77  FLD0561B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0562A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0562B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.8208334412512741096179524902254343.

       77  FLD0563A                       PIC  9(10)V9(09) COMP-3
           VALUE  5040974749.501065943.
       77  FLD0563B                       PIC S9(08)V9(03) COMP-3
           VALUE +31252590.212.

       77  FLD0564A                       PIC  9(09)V9(16) COMP-6
           VALUE  666123633.8391588462926051.
       77  FLD0564B                       PIC  9(03)V9(32) COMP-6
           VALUE  925.73034981753798966508384182816371.

       77  FLD0565A                       PIC  9(04)V9(30) COMP-6
           VALUE  8999.472704059103822515908177592791.
       77  FLD0565B                       PIC  9(06)V9(01) COMP-6
           VALUE  209088.7.

       77  FLD0566A                       PIC  9(10)V9(10) COMP-6
           VALUE  5451645287.6426646501.
       77  FLD0566B                       PIC  9(09)V9(03) COMP-6
           VALUE  317445075.017.

       77  FLD0567A                       PIC S9(07)V9(02) COMP-3
           VALUE -2621767.34.
       77  FLD0567B                       PIC  9(04)V9(29) COMP-6
           VALUE  8789.70351596639054569948257267242.

       77  FLD0568A                       PIC S9(08)V9(02) COMP-3
           VALUE -28119737.76.
       77  FLD0568B                       PIC  9(09)V9(14) COMP-6
           VALUE  616894259.97583058336459.

       77  FLD0569A                       PIC  9(10)V9(10) COMP-3
           VALUE  5301098669.5201622875.
       77  FLD0569B                       PIC S9(09)V9(06) COMP-3
           VALUE +421009403.834593.

       77  FLD0570A                       PIC  9(05)       COMP-6
           VALUE  13775.
       77  FLD0570B                       PIC  9(08)V9(19) COMP-3
           VALUE  72019797.5322646066764775696.

       77  FLD0571A                       PIC  9(10)V9(08) COMP-6
           VALUE  4995844884.12155025.
       77  FLD0571B                       PIC  9(09)V9(16) COMP-6
           VALUE  666328034.4715885039619251.

       77  FLD0572A                       PIC  9(06)V9(01) COMP-6
           VALUE  199648.9.
       77  FLD0572B                       PIC S9(06)       COMP-3
           VALUE -163410.

       77  FLD0573A                       PIC  9(10)V9(11) COMP-6
           VALUE  5579051586.61930800079.
       77  FLD0573B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.908582147727897915245875992695800960.

       77  FLD0574A                       PIC  9(10)V9(09) COMP-3
           VALUE  5021035726.447702352.
       77  FLD0574B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0575A                       PIC  9(02)V9(34) COMP-3
           VALUE  96.0495649054037059499933093320578336.
       77  FLD0575B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0576A                       PIC  9(09)V9(11) COMP-3
           VALUE  551289746.02273483895.
       77  FLD0576B                       PIC  9(10)V9(10) COMP-6
           VALUE  5275129807.0789420791.

       77  FLD0577A                       PIC S9(10)V9(06) COMP-3
           VALUE +4245433083.607936.
       77  FLD0577B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8922152301445405164770363626303151.

       77  FLD0578A                       PIC S9(07)V9(02) COMP-3
           VALUE +2444375.29.
       77  FLD0578B                       PIC  9(05)V9(01) COMP-6
           VALUE  16994.3.

       77  FLD0579A                       PIC  9(09)V9(17) COMP-6
           VALUE  688719854.55414208576740975.
       77  FLD0579B                       PIC  9(10)V9(09) COMP-3
           VALUE  5219660742.233359629.

       77  FLD0580A                       PIC S9(08)V9(04) COMP-3
           VALUE +33455460.0291.
       77  FLD0580B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3840741032953354228141051862621679.

       77  FLD0581A                       PIC S9(08)V9(02) COMP-3
           VALUE -28271118.43.
       77  FLD0581B                       PIC  9(09)V9(15) COMP-6
           VALUE  638334092.073881143036828.

       77  FLD0582A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.0957041455027018983514608407858759.
       77  FLD0582B                       PIC  9(09)V9(14) COMP-6
           VALUE  628562844.11633944753106.

       77  FLD0583A                       PIC  9(04)V9(30) COMP-3
           VALUE  9004.015213488590907431330379040446.
       77  FLD0583B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0584A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0584B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5867594557756605766485336062032729.

       77  FLD0585A                       PIC S9(10)V9(06) COMP-3
           VALUE +4326355872.600766.
       77  FLD0585B                       PIC  9(03)V9(32) COMP-6
           VALUE  926.67442032915370297985191427869722.

       77  FLD0586A                       PIC  9(05)V9(27) COMP-6
           VALUE  85722.001340062370378092282408033.
       77  FLD0586B                       PIC  9(07)V9(22) COMP-6
           VALUE  7865140.9974229868904416207442.

       77  FLD0587A                       PIC S9(09)V9(05) COMP-3
           VALUE -381433349.51035.
       77  FLD0587B                       PIC S9(04)       COMP-3
           VALUE +1221.

       77  FLD0588A                       PIC  9(10)V9(09) COMP-6
           VALUE  5181115773.570048599.
       77  FLD0588B                       PIC  9(04)V9(30) COMP-3
           VALUE  9002.074772136551272794235956098418.

       77  FLD0589A                       PIC S9(09)V9(06) COMP-3
           VALUE +401102073.275349.
       77  FLD0589B                       PIC S9(04)       COMP-3
           VALUE +1219.

       77  FLD0590A                       PIC  9(08)V9(18) COMP-3
           VALUE  70309799.830174168899787900.
       77  FLD0590B                       PIC S9(06)V9(01) COMP-3
           VALUE +203587.9.

       77  FLD0591A                       PIC  9(09)V9(12) COMP-6
           VALUE  576933255.371857245386.
       77  FLD0591B                       PIC  9(10)V9(09) COMP-3
           VALUE  5123728162.782491546.

       77  FLD0592A                       PIC  9(09)V9(15) COMP-3
           VALUE  644514829.253344467829833.
       77  FLD0592B                       PIC S9(08)V9(03) COMP-3
           VALUE -29392268.940.

       77  FLD0593A                       PIC  9(08)V9(19) COMP-3
           VALUE  72063942.4137167527995018190.
       77  FLD0593B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0594A                       PIC S9(08)V9(02) COMP-3
           VALUE -27405154.91.
       77  FLD0594B                       PIC  9(07)V9(22) COMP-3
           VALUE  7738893.5043103479483050932685.

       77  FLD0595A                       PIC  9(08)V9(18) COMP-3
           VALUE  70489201.749069052560514592.
       77  FLD0595B                       PIC  9(06)V9(25) COMP-3
           VALUE  830535.6563477365172687427730124.

       77  FLD0596A                       PIC  9(04)V9(30) COMP-6
           VALUE  9050.358418523600789740157779306173.
       77  FLD0596B                       PIC  9(09)V9(15) COMP-6
           VALUE  657865013.656926733709440.

       77  FLD0597A                       PIC S9(10)V9(07) COMP-3
           VALUE -4611492066.1642122.
       77  FLD0597B                       PIC  9(06)V9(25) COMP-6
           VALUE  816255.9991782142310157155407068.

       77  FLD0598A                       PIC  9(10)V9(12) COMP-6
           VALUE  5888650589.753158248740.
       77  FLD0598B                       PIC S9(09)V9(06) COMP-3
           VALUE +420172956.568651.

       77  FLD0599A                       PIC  9(05)V9(27) COMP-6
           VALUE  85689.140306102984379066356268594.
       77  FLD0599B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0600A                       PIC S9(09)V9(06) COMP-3
           VALUE +401694362.049109.
       77  FLD0600B                       PIC  9(06)V9(24) COMP-3
           VALUE  804504.375985138686644404515391.

       77  FLD0601A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.763793413809590537866256454435642808.
       77  FLD0601B                       PIC  9(08)V9(03) COMP-6
           VALUE  29749803.347.

       77  FLD0602A                       PIC  9(09)V9(17) COMP-6
           VALUE  685435627.00727922454291274.
       77  FLD0602B                       PIC  9(07)V9(02) COMP-6
           VALUE  2399467.62.

       77  FLD0603A                       PIC  9(09)V9(16) COMP-6
           VALUE  679265807.5584466770280300.
       77  FLD0603B                       PIC S9(05)V9(01) COMP-3
           VALUE -17089.6.

       77  FLD0604A                       PIC  9(08)V9(19) COMP-6
           VALUE  72862711.3591577502127449861.
       77  FLD0604B                       PIC  9(10)V9(11) COMP-6
           VALUE  5587264166.34705347341.

       77  FLD0605A                       PIC  9(04)       COMP-6
           VALUE  1194.
       77  FLD0605B                       PIC  9(10)V9(06) COMP-6
           VALUE  4256956703.307752.

       77  FLD0606A                       PIC  9(07)V9(23) COMP-6
           VALUE  7955557.56926823565144957228767.
       77  FLD0606B                       PIC S9(08)V9(04) COMP-3
           VALUE +33373395.9174.

       77  FLD0607A                       PIC  9(10)V9(08) COMP-6
           VALUE  4950511846.00309279.
       77  FLD0607B                       PIC  9(05)       COMP-6
           VALUE  13935.

       77  FLD0608A                       PIC  9(09)V9(03) COMP-6
           VALUE  328182518.441.
       77  FLD0608B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.9183130416232931914066739409463480.

       77  FLD0609A                       PIC  9(08)V9(04) COMP-6
           VALUE  33948712.4475.
       77  FLD0609B                       PIC  9(10)V9(07) COMP-6
           VALUE  4478674210.4372267.

       77  FLD0610A                       PIC  9(06)V9(24) COMP-6
           VALUE  807988.537497822956190418608457.
       77  FLD0610B                       PIC  9(08)V9(02) COMP-6
           VALUE  28672541.25.

       77  FLD0611A                       PIC  9(07)V9(22) COMP-3
           VALUE  7747853.4043620861382350994972.
       77  FLD0611B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0612A                       PIC  9(10)V9(11) COMP-3
           VALUE  5644161799.14422944108.
       77  FLD0612B                       PIC  9(07)V9(22) COMP-6
           VALUE  7874462.2890006543691754359315.

       77  FLD0613A                       PIC  9(05)       COMP-6
           VALUE  15551.
       77  FLD0613B                       PIC S9(07)V9(01) COMP-3
           VALUE +2249276.6.

       77  FLD0614A                       PIC  9(10)V9(09) COMP-3
           VALUE  5201647014.630440546.
       77  FLD0614B                       PIC  9(09)V9(13) COMP-6
           VALUE  596348860.2168276475623.

       77  FLD0615A                       PIC S9(03)       COMP-3
           VALUE +101.
       77  FLD0615B                       PIC S9(07)V9(01) COMP-3
           VALUE +2334095.1.

       77  FLD0616A                       PIC  9(07)V9(22) COMP-3
           VALUE  7639230.3574527464782306651613.
       77  FLD0616B                       PIC  9(02)       COMP-6
           VALUE  07.

       77  FLD0617A                       PIC S9(01)       COMP-3
           VALUE -0.
       77  FLD0617B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0618A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.817148549708982763206677191192284226.
       77  FLD0618B                       PIC  9(03)       COMP-6
           VALUE  089.

       77  FLD0619A                       PIC  9(06)V9(24) COMP-3
           VALUE  801850.998363624500875346257089.
       77  FLD0619B                       PIC  9(10)V9(10) COMP-3
           VALUE  5342180526.7555677598.

       77  FLD0620A                       PIC  9(08)V9(19) COMP-6
           VALUE  71717267.3810957062023874186.
       77  FLD0620B                       PIC  9(09)V9(15) COMP-6
           VALUE  655677089.730182127702562.

       77  FLD0621A                       PIC  9(04)V9(30) COMP-3
           VALUE  9035.013690395441443570234696380794.
       77  FLD0621B                       PIC  9(08)V9(19) COMP-3
           VALUE  73424367.1686218957184166811.

       77  FLD0622A                       PIC  9(09)V9(13) COMP-3
           VALUE  592420192.5737704321761.
       77  FLD0622B                       PIC S9(09)V9(04) COMP-3
           VALUE -361821982.1111.

       77  FLD0623A                       PIC S9(03)       COMP-3
           VALUE +104.
       77  FLD0623B                       PIC  9(09)V9(15) COMP-3
           VALUE  641616818.896418195095066.

       77  FLD0624A                       PIC S9(06)       COMP-3
           VALUE -162056.
       77  FLD0624B                       PIC  9(10)V9(06) COMP-6
           VALUE  4356343039.582531.

       77  FLD0625A                       PIC  9(04)       COMP-6
           VALUE  1296.
       77  FLD0625B                       PIC  9(07)V9(22) COMP-3
           VALUE  7829547.5769811728739000500354.

       77  FLD0626A                       PIC  9(04)V9(29) COMP-3
           VALUE  8839.60373056715265072114107169909.
       77  FLD0626B                       PIC S9(09)V9(05) COMP-3
           VALUE -374265939.71690.

       77  FLD0627A                       PIC  9(04)       COMP-6
           VALUE  1093.
       77  FLD0627B                       PIC S9(07)V9(01) COMP-3
           VALUE +2323895.2.

       77  FLD0628A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.943034041886028573387079632084351032.
       77  FLD0628B                       PIC  9(08)V9(03) COMP-6
           VALUE  29681737.673.

       77  FLD0629A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.54391942612090904418664649710990.
       77  FLD0629B                       PIC  9(05)V9(28) COMP-3
           VALUE  87091.5644969416202769707524566911.

       77  FLD0630A                       PIC S9(09)V9(06) COMP-3
           VALUE +400669561.119235.
       77  FLD0630B                       PIC  9(09)V9(12) COMP-6
           VALUE  575188656.368988304734.

       77  FLD0631A                       PIC  9(09)V9(15) COMP-3
           VALUE  644864894.904831453814608.
       77  FLD0631B                       PIC  9(05)V9(01) COMP-6
           VALUE  17568.5.

       77  FLD0632A                       PIC  9(08)V9(18) COMP-6
           VALUE  69998401.036213298009869276.
       77  FLD0632B                       PIC  9(10)V9(09) COMP-6
           VALUE  5082278856.741135886.

       77  FLD0633A                       PIC  9(08)V9(19) COMP-3
           VALUE  72186800.0789349095747127194.
       77  FLD0633B                       PIC S9(09)V9(03) COMP-3
           VALUE +332989951.149.

       77  FLD0634A                       PIC S9(10)V9(06) COMP-3
           VALUE +4236607402.255205.
       77  FLD0634B                       PIC  9(07)V9(23) COMP-3
           VALUE  7926419.75404680843020344127580.

       77  FLD0635A                       PIC S9(06)V9(01) COMP-3
           VALUE -190863.2.
       77  FLD0635B                       PIC  9(10)V9(11) COMP-6
           VALUE  5580856572.20784292498.

       77  FLD0636A                       PIC S9(07)V9(01) COMP-3
           VALUE +2326055.8.
       77  FLD0636B                       PIC  9(05)       COMP-6
           VALUE  15706.

       77  FLD0637A                       PIC  9(08)V9(19) COMP-3
           VALUE  73470187.3111827330475875896.
       77  FLD0637B                       PIC  9(10)V9(10) COMP-3
           VALUE  5305678545.6603405837.

       77  FLD0638A                       PIC  9(07)V9(22) COMP-6
           VALUE  7752451.2041246673721417437263.
       77  FLD0638B                       PIC  9(06)V9(25) COMP-3
           VALUE  822351.5027967045476486873667454.

       77  FLD0639A                       PIC S9(09)V9(03) COMP-3
           VALUE +320313574.327.
       77  FLD0639B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.751092072024196699686626743641681969.

       77  FLD0640A                       PIC  9(04)V9(29) COMP-3
           VALUE  8818.61493829378950692898797569796.
       77  FLD0640B                       PIC  9(03)V9(32) COMP-3
           VALUE  921.50555740058603948483550993842072.

       77  FLD0641A                       PIC  9(07)V9(22) COMP-6
           VALUE  7672056.2697199168322725881807.
       77  FLD0641B                       PIC  9(08)V9(19) COMP-6
           VALUE  72539277.3386829170512157816.

       77  FLD0642A                       PIC  9(08)V9(18) COMP-6
           VALUE  70806494.663622721041917884.
       77  FLD0642B                       PIC  9(09)V9(13) COMP-3
           VALUE  592898946.8504934912118.

       77  FLD0643A                       PIC  9(07)V9(01) COMP-6
           VALUE  2194714.9.
       77  FLD0643B                       PIC  9(08)V9(02) COMP-6
           VALUE  26711153.59.

       77  FLD0644A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0644B                       PIC  9(03)V9(32) COMP-6
           VALUE  936.97460492260109532480782945640385.

       77  FLD0645A                       PIC  9(03)V9(31) COMP-3
           VALUE  913.1000502995376688630813077907077.
       77  FLD0645B                       PIC  9(07)V9(02) COMP-6
           VALUE  2467302.34.

       77  FLD0646A                       PIC  9(07)V9(21) COMP-3
           VALUE  7520596.805608434909373727350.
       77  FLD0646B                       PIC  9(09)V9(13) COMP-6
           VALUE  595843790.0187590896550.

       77  FLD0647A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0647B                       PIC  9(09)V9(16) COMP-6
           VALUE  659893156.1456289340839020.

       77  FLD0648A                       PIC S9(04)       COMP-3
           VALUE +1149.
       77  FLD0648B                       PIC  9(09)V9(15) COMP-3
           VALUE  634287010.942461315643470.

       77  FLD0649A                       PIC  9(07)V9(23) COMP-3
           VALUE  7912687.10466688007798552462190.
       77  FLD0649B                       PIC  9(10)V9(09) COMP-3
           VALUE  5026519944.429308495.

       77  FLD0650A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.878734262172308433491707546636462211.
       77  FLD0650B                       PIC  9(09)V9(16) COMP-3
           VALUE  671574601.9768447094833163.

       77  FLD0651A                       PIC  9(08)V9(18) COMP-6
           VALUE  69993795.648145529231243244.
       77  FLD0651B                       PIC S9(09)V9(05) COMP-3
           VALUE -390933259.39761.

       77  FLD0652A                       PIC  9(05)V9(01) COMP-6
           VALUE  16676.6.
       77  FLD0652B                       PIC S9(07)V9(01) COMP-3
           VALUE +2109381.3.

       77  FLD0653A                       PIC  9(09)V9(14) COMP-3
           VALUE  620233215.83922497168828.
       77  FLD0653B                       PIC  9(06)       COMP-6
           VALUE  165087.

       77  FLD0654A                       PIC  9(09)V9(15) COMP-6
           VALUE  639337130.284049814932245.
       77  FLD0654B                       PIC  9(08)V9(02) COMP-6
           VALUE  27813223.51.

       77  FLD0655A                       PIC  9(06)V9(25) COMP-6
           VALUE  818013.3890362937254536745967925.
       77  FLD0655B                       PIC  9(09)V9(13) COMP-3
           VALUE  594166317.4495728227952.

       77  FLD0656A                       PIC S9(06)V9(01) COMP-3
           VALUE +200859.7.
       77  FLD0656B                       PIC  9(09)V9(15) COMP-3
           VALUE  650208537.267117914204561.

       77  FLD0657A                       PIC  9(03)V9(32) COMP-6
           VALUE  936.17194619070143168926279031438753.
       77  FLD0657B                       PIC  9(08)V9(18) COMP-3
           VALUE  70468283.988380520099781278.

       77  FLD0658A                       PIC  9(08)V9(18) COMP-3
           VALUE  70069365.832955088357891781.
       77  FLD0658B                       PIC  9(10)V9(10) COMP-3
           VALUE  5438086690.5335789596.

       77  FLD0659A                       PIC  9(04)V9(30) COMP-3
           VALUE  9044.337793801533464943531726021319.
       77  FLD0659B                       PIC  9(08)V9(19) COMP-6
           VALUE  71946522.3294514011342926096.

       77  FLD0660A                       PIC  9(10)V9(09) COMP-3
           VALUE  5240012407.843260833.
       77  FLD0660B                       PIC S9(05)       COMP-3
           VALUE -15464.

       77  FLD0661A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.5581569624071600621562083688331767.
       77  FLD0661B                       PIC  9(10)V9(11) COMP-3
           VALUE  5705409453.15247127744.

       77  FLD0662A                       PIC S9(07)V9(01) COMP-3
           VALUE +2131985.0.
       77  FLD0662B                       PIC  9(09)V9(16) COMP-6
           VALUE  669960203.6476681732324323.

       77  FLD0663A                       PIC  9(05)       COMP-6
           VALUE  15788.
       77  FLD0663B                       PIC  9(04)V9(29) COMP-6
           VALUE  8894.69232052811142885673234559362.

       77  FLD0664A                       PIC S9(05)       COMP-3
           VALUE +14371.
       77  FLD0664B                       PIC S9(09)V9(07) COMP-3
           VALUE +440580330.5288489.

       77  FLD0665A                       PIC  9(07)V9(02) COMP-6
           VALUE  2455875.37.
       77  FLD0665B                       PIC  9(09)V9(16) COMP-3
           VALUE  674160289.5706166886924393.

       77  FLD0666A                       PIC  9(05)V9(27) COMP-3
           VALUE  86015.549175288641414738322055200.
       77  FLD0666B                       PIC  9(02)       COMP-6
           VALUE  05.

       77  FLD0667A                       PIC  9(02)V9(33) COMP-3
           VALUE  94.482499794694274619644147605868056.
       77  FLD0667B                       PIC  9(09)V9(15) COMP-3
           VALUE  632143875.790169951223163.

       77  FLD0668A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.15331845029669999291854765033349.
       77  FLD0668B                       PIC  9(10)V9(09) COMP-3
           VALUE  5144629393.825745911.

       77  FLD0669A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.937328225295053441001869032334070652.
       77  FLD0669B                       PIC  9(10)V9(05) COMP-6
           VALUE  3959366397.86081.

       77  FLD0670A                       PIC  9(07)V9(02) COMP-6
           VALUE  2567113.54.
       77  FLD0670B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.1019073438902258210703166696475818.

       77  FLD0671A                       PIC  9(09)V9(03) COMP-6
           VALUE  326622169.718.
       77  FLD0671B                       PIC  9(06)V9(01) COMP-6
           VALUE  186874.6.

       77  FLD0672A                       PIC  9(10)V9(07) COMP-6
           VALUE  4564917934.3294549.
       77  FLD0672B                       PIC  9(09)V9(15) COMP-6
           VALUE  637002039.815689924395769.

       77  FLD0673A                       PIC  9(10)V9(06) COMP-6
           VALUE  4285002333.462958.
       77  FLD0673B                       PIC  9(07)V9(02) COMP-6
           VALUE  2489778.77.

       77  FLD0674A                       PIC  9(10)V9(10) COMP-6
           VALUE  5491650640.0821929467.
       77  FLD0674B                       PIC  9(06)V9(25) COMP-6
           VALUE  828061.3110769976525915581078152.

       77  FLD0675A                       PIC  9(05)V9(27) COMP-6
           VALUE  84609.285471017914304070473008323.
       77  FLD0675B                       PIC  9(10)V9(09) COMP-6
           VALUE  5083540664.870341840.

       77  FLD0676A                       PIC  9(03)       COMP-6
           VALUE  096.
       77  FLD0676B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.4664170342459437179627457226160913.

       77  FLD0677A                       PIC S9(07)V9(01) COMP-3
           VALUE +2248183.1.
       77  FLD0677B                       PIC  9(04)V9(29) COMP-3
           VALUE  8903.66445455624266891447859961772.

       77  FLD0678A                       PIC S9(03)       COMP-3
           VALUE -092.
       77  FLD0678B                       PIC  9(05)V9(27) COMP-6
           VALUE  85887.366357613359468814451247453.

       77  FLD0679A                       PIC S9(03)       COMP-3
           VALUE -080.
       77  FLD0679B                       PIC  9(10)V9(07) COMP-6
           VALUE  4490278235.6612852.

       77  FLD0680A                       PIC S9(08)V9(02) COMP-3
           VALUE -28119381.66.
       77  FLD0680B                       PIC  9(10)V9(11) COMP-3
           VALUE  5617591008.16083600804.

       77  FLD0681A                       PIC  9(08)V9(17) COMP-3
           VALUE  68244115.95644890304868113.
       77  FLD0681B                       PIC  9(06)V9(25) COMP-3
           VALUE  821371.7547801553386932482681004.

       77  FLD0682A                       PIC S9(10)V9(08) COMP-3
           VALUE -4949729784.45772315.
       77  FLD0682B                       PIC  9(06)V9(25) COMP-3
           VALUE  831097.0812489861803129542749957.

       77  FLD0683A                       PIC  9(05)V9(28) COMP-6
           VALUE  86894.3068817851549390240961656672.
       77  FLD0683B                       PIC  9(10)V9(12) COMP-3
           VALUE  5829735573.963021888488.

       77  FLD0684A                       PIC  9(10)V9(13) COMP-6
           VALUE  6059233373.6406744915115.
       77  FLD0684B                       PIC  9(09)V9(07) COMP-6
           VALUE  438339473.7646870.

       77  FLD0685A                       PIC S9(07)V9(02) COMP-3
           VALUE -2545714.99.
       77  FLD0685B                       PIC  9(07)V9(23) COMP-3
           VALUE  7915567.03876752143500539204978.

       77  FLD0686A                       PIC  9(09)V9(14) COMP-3
           VALUE  621044693.11257093355749.
       77  FLD0686B                       PIC  9(09)V9(13) COMP-3
           VALUE  602970496.8531952591348.

       77  FLD0687A                       PIC S9(09)V9(05) COMP-3
           VALUE -394005874.76898.
       77  FLD0687B                       PIC  9(10)V9(08) COMP-6
           VALUE  4960980508.03440715.

       77  FLD0688A                       PIC  9(03)V9(32) COMP-3
           VALUE  932.26844955554755145499257196206599.
       77  FLD0688B                       PIC  9(04)       COMP-6
           VALUE  1064.

       77  FLD0689A                       PIC  9(10)V9(07) COMP-6
           VALUE  4559306991.4341932.
       77  FLD0689B                       PIC S9(08)V9(04) COMP-3
           VALUE +34024840.8710.

       77  FLD0690A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.793660005922469879990899244148749858.
       77  FLD0690B                       PIC S9(08)V9(02) COMP-3
           VALUE -28078949.75.

       77  FLD0691A                       PIC  9(09)V9(07) COMP-6
           VALUE  439500550.5938089.
       77  FLD0691B                       PIC S9(10)V9(06) COMP-3
           VALUE +4308484639.535531.

       77  FLD0692A                       PIC  9(09)V9(04) COMP-6
           VALUE  358382577.7464.
       77  FLD0692B                       PIC  9(09)V9(15) COMP-6
           VALUE  636450165.553045121846764.

       77  FLD0693A                       PIC S9(07)V9(01) COMP-3
           VALUE +2127399.6.
       77  FLD0693B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0694A                       PIC  9(09)V9(05) COMP-6
           VALUE  378019656.01658.
       77  FLD0694B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0695A                       PIC S9(09)V9(04) COMP-3
           VALUE -354304867.1111.
       77  FLD0695B                       PIC  9(09)V9(15) COMP-6
           VALUE  639721730.127885357397587.

       77  FLD0696A                       PIC  9(04)V9(30) COMP-6
           VALUE  9067.945209731629319094281527213752.
       77  FLD0696B                       PIC  9(09)V9(03) COMP-6
           VALUE  318871778.848.

       77  FLD0697A                       PIC S9(09)V9(06) COMP-3
           VALUE +414586353.841170.
       77  FLD0697B                       PIC  9(10)V9(09) COMP-6
           VALUE  5161837194.897523906.

       77  FLD0698A                       PIC  9(08)V9(18) COMP-3
           VALUE  69447533.832122987362822641.
       77  FLD0698B                       PIC S9(03)       COMP-3
           VALUE -080.

       77  FLD0699A                       PIC  9(09)V9(13) COMP-6
           VALUE  597064952.5204202445749.
       77  FLD0699B                       PIC  9(09)V9(14) COMP-3
           VALUE  630288401.27729701681147.

       77  FLD0700A                       PIC  9(06)V9(25) COMP-3
           VALUE  820234.3139012789885455845251271.
       77  FLD0700B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0701A                       PIC  9(06)V9(24) COMP-6
           VALUE  809485.363390515577641792788199.
       77  FLD0701B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0800419877562270620785511709982529.

       77  FLD0702A                       PIC  9(04)V9(30) COMP-3
           VALUE  9021.848589518318695112952809722628.
       77  FLD0702B                       PIC  9(07)V9(01) COMP-6
           VALUE  2351439.7.

       77  FLD0703A                       PIC S9(04)       COMP-3
           VALUE +1126.
       77  FLD0703B                       PIC  9(08)V9(04) COMP-6
           VALUE  33525578.1235.

       77  FLD0704A                       PIC  9(10)V9(07) COMP-6
           VALUE  4696322933.5995404.
       77  FLD0704B                       PIC  9(09)V9(14) COMP-3
           VALUE  611168884.71092423174013.

       77  FLD0705A                       PIC  9(10)V9(10) COMP-6
           VALUE  5381864238.0664638569.
       77  FLD0705B                       PIC  9(10)V9(07) COMP-6
           VALUE  4699950479.7278301.

       77  FLD0706A                       PIC  9(07)V9(22) COMP-3
           VALUE  7815442.4104873465584120140192.
       77  FLD0706B                       PIC S9(05)V9(01) COMP-3
           VALUE -17297.4.

       77  FLD0707A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0707B                       PIC  9(10)V9(09) COMP-3
           VALUE  5129442198.407349051.

       77  FLD0708A                       PIC  9(02)V9(34) COMP-3
           VALUE  95.1225570140109555339336111501324921.
       77  FLD0708B                       PIC  9(08)V9(04) COMP-6
           VALUE  33834894.3169.

       77  FLD0709A                       PIC S9(04)       COMP-3
           VALUE +1124.
       77  FLD0709B                       PIC  9(09)V9(05) COMP-6
           VALUE  379344826.68404.

       77  FLD0710A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.946833086486408515014545628218911588.
       77  FLD0710B                       PIC S9(09)V9(03) COMP-3
           VALUE +322996298.459.

       77  FLD0711A                       PIC  9(09)V9(16) COMP-6
           VALUE  677754067.1912668512888444.
       77  FLD0711B                       PIC  9(02)       COMP-6
           VALUE  06.

       77  FLD0712A                       PIC  9(09)V9(14) COMP-3
           VALUE  610433230.32745544498567.
       77  FLD0712B                       PIC S9(10)V9(08) COMP-3
           VALUE -4947392148.88603839.

       77  FLD0713A                       PIC S9(08)V9(03) COMP-3
           VALUE -29280564.557.
       77  FLD0713B                       PIC  9(07)V9(01) COMP-6
           VALUE  2168463.7.

       77  FLD0714A                       PIC  9(10)V9(07) COMP-6
           VALUE  4593980567.3719869.
       77  FLD0714B                       PIC  9(09)V9(04) COMP-6
           VALUE  347385951.5252.

       77  FLD0715A                       PIC  9(09)V9(06) COMP-6
           VALUE  406643755.503527.
       77  FLD0715B                       PIC  9(10)V9(10) COMP-6
           VALUE  5480282475.3098877685.

       77  FLD0716A                       PIC S9(08)V9(03) COMP-3
           VALUE -29497495.128.
       77  FLD0716B                       PIC  9(03)V9(31) COMP-3
           VALUE  914.3056916239737930141018296126276.

       77  FLD0717A                       PIC  9(05)V9(28) COMP-6
           VALUE  86936.9843469434133709228262887336.
       77  FLD0717B                       PIC  9(07)V9(21) COMP-6
           VALUE  7570171.861371541854879296806.

       77  FLD0718A                       PIC  9(06)       COMP-6
           VALUE  158746.
       77  FLD0718B                       PIC  9(10)V9(06) COMP-6
           VALUE  4283417063.648062.

       77  FLD0719A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0719B                       PIC  9(07)V9(02) COMP-6
           VALUE  2390904.61.

       77  FLD0720A                       PIC  9(03)       COMP-6
           VALUE  087.
       77  FLD0720B                       PIC S9(09)V9(06) COMP-3
           VALUE +404886316.426392.

       77  FLD0721A                       PIC S9(09)V9(03) COMP-3
           VALUE +332294869.962.
       77  FLD0721B                       PIC  9(07)V9(01) COMP-6
           VALUE  2285954.3.

       77  FLD0722A                       PIC S9(05)V9(01) COMP-3
           VALUE -17094.9.
       77  FLD0722B                       PIC  9(07)V9(21) COMP-3
           VALUE  7607809.920924922808538326535.

       77  FLD0723A                       PIC  9(05)V9(28) COMP-3
           VALUE  87349.0901765646254872876852459739.
       77  FLD0723B                       PIC  9(02)       COMP-6
           VALUE  07.

       77  FLD0724A                       PIC  9(09)V9(03) COMP-6
           VALUE  317474559.928.
       77  FLD0724B                       PIC  9(10)V9(09) COMP-6
           VALUE  5251486411.115240393.

       77  FLD0725A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.1169879467740964074096154945436.
       77  FLD0725B                       PIC S9(09)V9(07) COMP-3
           VALUE +444412819.1361023.

       77  FLD0726A                       PIC  9(05)       COMP-6
           VALUE  14771.
       77  FLD0726B                       PIC S9(09)V9(06) COMP-3
           VALUE +401835639.675800.

       77  FLD0727A                       PIC  9(10)V9(10) COMP-3
           VALUE  5412169008.2113094177.
       77  FLD0727B                       PIC  9(09)V9(16) COMP-6
           VALUE  677439277.9021225496904889.

       77  FLD0728A                       PIC  9(09)V9(07) COMP-6
           VALUE  439411444.5456123.
       77  FLD0728B                       PIC S9(09)V9(05) COMP-3
           VALUE -371357711.97684.

       77  FLD0729A                       PIC  9(02)V9(33) COMP-6
           VALUE  94.514768998125520127473464526701718.
       77  FLD0729B                       PIC  9(07)V9(23) COMP-6
           VALUE  7959700.26538914909863819957536.

       77  FLD0730A                       PIC  9(06)V9(25) COMP-3
           VALUE  822685.8594490329412707296796725.
       77  FLD0730B                       PIC  9(09)V9(14) COMP-3
           VALUE  630270988.23946403616247.

       77  FLD0731A                       PIC  9(10)V9(12) COMP-3
           VALUE  5808279049.356201984011.
       77  FLD0731B                       PIC  9(09)V9(13) COMP-3
           VALUE  600372700.6085320949679.

       77  FLD0732A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.5080332184045710519626481982413.
       77  FLD0732B                       PIC S9(04)       COMP-3
           VALUE +1229.

       77  FLD0733A                       PIC  9(09)V9(03) COMP-6
           VALUE  328019305.824.
       77  FLD0733B                       PIC  9(09)V9(15) COMP-6
           VALUE  637621846.224700750127567.

       77  FLD0734A                       PIC S9(06)       COMP-3
           VALUE -164821.
       77  FLD0734B                       PIC  9(02)       COMP-6
           VALUE  05.

       77  FLD0735A                       PIC S9(06)V9(01) COMP-3
           VALUE -190229.8.
       77  FLD0735B                       PIC  9(09)V9(15) COMP-3
           VALUE  641899075.827484955070190.

       77  FLD0736A                       PIC  9(10)V9(09) COMP-3
           VALUE  5128678158.202983894.
       77  FLD0736B                       PIC  9(07)V9(23) COMP-6
           VALUE  7952260.56216242538354777025233.

       77  FLD0737A                       PIC S9(07)V9(02) COMP-3
           VALUE -2601084.10.
       77  FLD0737B                       PIC S9(07)V9(02) COMP-3
           VALUE -2623355.12.

       77  FLD0738A                       PIC  9(10)V9(09) COMP-6
           VALUE  5071467647.954436275.
       77  FLD0738B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.7470462418068333221299326396547257.

       77  FLD0739A                       PIC S9(09)V9(03) COMP-3
           VALUE +324797211.447.
       77  FLD0739B                       PIC S9(10)V9(08) COMP-3
           VALUE -4916417996.38161292.

       77  FLD0740A                       PIC S9(08)V9(03) COMP-3
           VALUE +30394739.303.
       77  FLD0740B                       PIC  9(05)V9(28) COMP-3
           VALUE  87461.9397808273024708114462555386.

       77  FLD0741A                       PIC S9(09)V9(03) COMP-3
           VALUE +322386723.831.
       77  FLD0741B                       PIC S9(09)V9(03) COMP-3
           VALUE +321782512.880.

       77  FLD0742A                       PIC  9(09)V9(06) COMP-6
           VALUE  419367234.713135.
       77  FLD0742B                       PIC S9(08)V9(03) COMP-3
           VALUE +30468212.851.

       77  FLD0743A                       PIC  9(05)V9(27) COMP-6
           VALUE  85864.867305029812794003873932524.
       77  FLD0743B                       PIC  9(06)V9(01) COMP-6
           VALUE  209820.2.

       77  FLD0744A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0744B                       PIC  9(08)V9(02) COMP-6
           VALUE  26956228.79.

       77  FLD0745A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.759709501186564217789509712019935250.
       77  FLD0745B                       PIC  9(05)       COMP-6
           VALUE  13548.

       77  FLD0746A                       PIC  9(10)V9(10) COMP-3
           VALUE  5435731573.3552813430.
       77  FLD0746B                       PIC  9(10)V9(09) COMP-3
           VALUE  5204204473.599284286.

       77  FLD0747A                       PIC  9(10)V9(11) COMP-6
           VALUE  5681676571.07930934579.
       77  FLD0747B                       PIC  9(03)V9(31) COMP-6
           VALUE  916.9159297409485986918298294767737.

       77  FLD0748A                       PIC  9(03)       COMP-6
           VALUE  086.
       77  FLD0748B                       PIC S9(05)V9(01) COMP-3
           VALUE -18032.7.

       77  FLD0749A                       PIC S9(10)V9(07) COMP-3
           VALUE -4609096560.3942379.
       77  FLD0749B                       PIC  9(06)V9(25) COMP-3
           VALUE  820519.2560948625368766329302161.

       77  FLD0750A                       PIC  9(07)V9(22) COMP-6
           VALUE  7666736.3171436386792834127845.
       77  FLD0750B                       PIC  9(08)V9(04) COMP-6
           VALUE  33966692.5145.

       77  FLD0751A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0751B                       PIC S9(05)       COMP-3
           VALUE -15176.

       77  FLD0752A                       PIC  9(02)       COMP-6
           VALUE  07.
       77  FLD0752B                       PIC  9(03)V9(32) COMP-3
           VALUE  922.38508268330654527034084821934811.

       77  FLD0753A                       PIC  9(08)V9(19) COMP-3
           VALUE  73379118.3872512742247806727.
       77  FLD0753B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0754A                       PIC S9(09)V9(03) COMP-3
           VALUE +322061792.108.
       77  FLD0754B                       PIC  9(07)V9(02) COMP-6
           VALUE  2450066.21.

       77  FLD0755A                       PIC  9(06)V9(25) COMP-6
           VALUE  835592.8333445592492978448717622.
       77  FLD0755B                       PIC  9(10)V9(10) COMP-3
           VALUE  5346301002.0417645051.

       77  FLD0756A                       PIC  9(09)V9(04) COMP-6
           VALUE  366295057.8421.
       77  FLD0756B                       PIC S9(05)       COMP-3
           VALUE -15366.

       77  FLD0757A                       PIC  9(08)V9(19) COMP-3
           VALUE  71466976.1113856494283425035.
       77  FLD0757B                       PIC S9(07)V9(02) COMP-3
           VALUE +2429438.31.

       77  FLD0758A                       PIC  9(07)V9(01) COMP-6
           VALUE  2293699.9.
       77  FLD0758B                       PIC S9(06)       COMP-3
           VALUE -162229.

       77  FLD0759A                       PIC  9(03)V9(32) COMP-3
           VALUE  931.38963166127219928114300273591652.
       77  FLD0759B                       PIC  9(07)V9(21) COMP-3
           VALUE  7621303.882836163445801958005.

       77  FLD0760A                       PIC  9(06)V9(01) COMP-6
           VALUE  188511.3.
       77  FLD0760B                       PIC  9(04)V9(30) COMP-3
           VALUE  9041.413390221895163278986728982999.

       77  FLD0761A                       PIC  9(09)V9(17) COMP-3
           VALUE  690006529.44346418937726639.
       77  FLD0761B                       PIC  9(09)V9(14) COMP-6
           VALUE  629261290.31917010792085.

       77  FLD0762A                       PIC  9(09)V9(16) COMP-3
           VALUE  671435372.9957326377686399.
       77  FLD0762B                       PIC  9(07)V9(02) COMP-6
           VALUE  2591343.61.

       77  FLD0763A                       PIC  9(08)V9(19) COMP-3
           VALUE  71468145.3175585401638159055.
       77  FLD0763B                       PIC  9(06)V9(24) COMP-6
           VALUE  815545.608346078032546699887461.

       77  FLD0764A                       PIC  9(10)V9(11) COMP-3
           VALUE  5535007698.50315821329.
       77  FLD0764B                       PIC  9(10)V9(08) COMP-6
           VALUE  4979398183.62831021.

       77  FLD0765A                       PIC  9(04)V9(29) COMP-6
           VALUE  8855.80582773889624093044403707608.
       77  FLD0765B                       PIC S9(04)       COMP-3
           VALUE +1212.

       77  FLD0766A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0766B                       PIC  9(07)V9(01) COMP-6
           VALUE  2294943.2.

       77  FLD0767A                       PIC S9(10)V9(08) COMP-3
           VALUE -4848285740.27346248.
       77  FLD0767B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0768A                       PIC  9(09)V9(17) COMP-3
           VALUE  684230789.92735519854306858.
       77  FLD0768B                       PIC S9(02)       COMP-3
           VALUE -07.

       77  FLD0769A                       PIC  9(07)V9(02) COMP-6
           VALUE  2565731.27.
       77  FLD0769B                       PIC  9(09)V9(04) COMP-6
           VALUE  356094054.4649.

       77  FLD0770A                       PIC  9(09)V9(12) COMP-3
           VALUE  574214303.174467532997.
       77  FLD0770B                       PIC  9(10)V9(13) COMP-6
           VALUE  6057194691.9895736094474.

       77  FLD0771A                       PIC  9(08)V9(18) COMP-6
           VALUE  69721614.519732855175249142.
       77  FLD0771B                       PIC  9(09)V9(17) COMP-3
           VALUE  690190375.47148320843604096.

       77  FLD0772A                       PIC  9(10)V9(08) COMP-6
           VALUE  4868623585.10471993.
       77  FLD0772B                       PIC  9(10)V9(05) COMP-6
           VALUE  3959689116.24786.

       77  FLD0773A                       PIC S9(07)V9(01) COMP-3
           VALUE +2339835.9.
       77  FLD0773B                       PIC  9(03)V9(32) COMP-3
           VALUE  931.93997423560348547511011929600499.

       77  FLD0774A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0774B                       PIC S9(07)V9(02) COMP-3
           VALUE +2425891.04.

       77  FLD0775A                       PIC  9(09)V9(06) COMP-6
           VALUE  418947899.183504.
       77  FLD0775B                       PIC  9(03)V9(32) COMP-3
           VALUE  930.87735098341006789723905967548489.

       77  FLD0776A                       PIC  9(09)V9(06) COMP-6
           VALUE  418950765.017868.
       77  FLD0776B                       PIC  9(05)V9(27) COMP-6
           VALUE  84781.081485203291236985023715533.

       77  FLD0777A                       PIC S9(08)V9(03) COMP-3
           VALUE +31438250.184.
       77  FLD0777B                       PIC  9(10)V9(11) COMP-3
           VALUE  5606560858.83416754889.

       77  FLD0778A                       PIC S9(06)V9(01) COMP-3
           VALUE -192739.4.
       77  FLD0778B                       PIC  9(03)V9(31) COMP-6
           VALUE  916.8465464730475300569878527312539.

       77  FLD0779A                       PIC  9(04)V9(30) COMP-3
           VALUE  9029.333248069044692840634525055065.
       77  FLD0779B                       PIC S9(10)V9(08) COMP-3
           VALUE -4740907582.59428035.

       77  FLD0780A                       PIC  9(09)V9(03) COMP-6
           VALUE  318241207.749.
       77  FLD0780B                       PIC  9(06)V9(25) COMP-3
           VALUE  822759.6235369002419801631731388.

       77  FLD0781A                       PIC  9(10)V9(08) COMP-6
           VALUE  4967153543.73054196.
       77  FLD0781B                       PIC  9(08)V9(03) COMP-6
           VALUE  29720911.669.

       77  FLD0782A                       PIC  9(05)       COMP-6
           VALUE  13793.
       77  FLD0782B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5158015091007617236584792408393695.

       77  FLD0783A                       PIC  9(04)V9(29) COMP-3
           VALUE  8813.39219378433402773964644438819.
       77  FLD0783B                       PIC S9(10)V9(06) COMP-3
           VALUE +4236433759.282261.

       77  FLD0784A                       PIC  9(09)V9(15) COMP-3
           VALUE  641964802.793786426526878.
       77  FLD0784B                       PIC  9(06)V9(25) COMP-3
           VALUE  824637.3935062285553954097849782.

       77  FLD0785A                       PIC  9(08)V9(17) COMP-3
           VALUE  68097654.34600172362422654.
       77  FLD0785B                       PIC  9(09)V9(03) COMP-6
           VALUE  325202869.704.

       77  FLD0786A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.820249933224565186407062356011010706.
       77  FLD0786B                       PIC  9(05)V9(27) COMP-3
           VALUE  85417.725929538756979297886573476.

       77  FLD0787A                       PIC  9(10)V9(11) COMP-6
           VALUE  5592847098.07636559730.
       77  FLD0787B                       PIC  9(06)V9(01) COMP-6
           VALUE  199330.4.

       77  FLD0788A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6557531637097668841818176588276401.
       77  FLD0788B                       PIC  9(07)V9(22) COMP-6
           VALUE  7789929.3063459995600794627534.

       77  FLD0789A                       PIC S9(05)V9(01) COMP-3
           VALUE -17101.7.
       77  FLD0789B                       PIC  9(09)V9(16) COMP-3
           VALUE  660444958.2132847496040994.

       77  FLD0790A                       PIC  9(07)V9(02) COMP-6
           VALUE  2384369.54.
       77  FLD0790B                       PIC S9(08)V9(03) COMP-3
           VALUE -29309999.122.

       77  FLD0791A                       PIC  9(03)       COMP-6
           VALUE  088.
       77  FLD0791B                       PIC  9(08)V9(20) COMP-6
           VALUE  73827325.48868294886190710712.

       77  FLD0792A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.5230059106088935649836457741912454.
       77  FLD0792B                       PIC  9(09)V9(05) COMP-6
           VALUE  379824535.06313.

       77  FLD0793A                       PIC  9(06)V9(01) COMP-6
           VALUE  199221.9.
       77  FLD0793B                       PIC  9(10)V9(11) COMP-6
           VALUE  5591577156.30166807230.

       77  FLD0794A                       PIC S9(08)V9(04) COMP-3
           VALUE +33437009.5807.
       77  FLD0794B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0795A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0795B                       PIC S9(08)V9(04) COMP-3
           VALUE +33494400.6958.

       77  FLD0796A                       PIC  9(07)V9(21) COMP-6
           VALUE  7565685.006144580171394409262.
       77  FLD0796B                       PIC  9(08)V9(19) COMP-6
           VALUE  72949831.5977354816475042298.

       77  FLD0797A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0797B                       PIC  9(09)V9(04) COMP-6
           VALUE  348777486.0252.

       77  FLD0798A                       PIC S9(09)V9(03) COMP-3
           VALUE +332243375.906.
       77  FLD0798B                       PIC  9(09)V9(16) COMP-3
           VALUE  673821443.1439371043808250.

       77  FLD0799A                       PIC  9(09)V9(17) COMP-3
           VALUE  690866271.33683375934225523.
       77  FLD0799B                       PIC  9(09)V9(11) COMP-3
           VALUE  551526790.74963362193.

       77  FLD0800A                       PIC  9(08)V9(18) COMP-3
           VALUE  70036112.416705975647346349.
       77  FLD0800B                       PIC  9(08)V9(02) COMP-6
           VALUE  26662512.18.

       77  FLD0801A                       PIC S9(09)V9(07) COMP-3
           VALUE +443093279.8052367.
       77  FLD0801B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.827967002397862694706986985693220049.

       77  FLD0802A                       PIC S9(07)V9(02) COMP-3
           VALUE +2449505.23.
       77  FLD0802B                       PIC  9(04)V9(29) COMP-3
           VALUE  8911.32090012832223102634543465683.

       77  FLD0803A                       PIC S9(05)V9(01) COMP-3
           VALUE -17467.0.
       77  FLD0803B                       PIC  9(10)V9(11) COMP-6
           VALUE  5556247901.99399698487.

       77  FLD0804A                       PIC  9(07)V9(02) COMP-6
           VALUE  2599541.84.
       77  FLD0804B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0805A                       PIC  9(07)V9(01) COMP-6
           VALUE  2358341.0.
       77  FLD0805B                       PIC  9(10)V9(08) COMP-6
           VALUE  4796323563.66873291.

       77  FLD0806A                       PIC  9(10)V9(11) COMP-3
           VALUE  5703927562.80738821850.
       77  FLD0806B                       PIC  9(09)V9(07) COMP-6
           VALUE  445849105.9648416.

       77  FLD0807A                       PIC  9(09)V9(17) COMP-6
           VALUE  689326682.16034242991696601.
       77  FLD0807B                       PIC S9(03)       COMP-3
           VALUE -090.

       77  FLD0808A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0808B                       PIC  9(10)V9(07) COMP-6
           VALUE  4574455047.5690953.

       77  FLD0809A                       PIC  9(05)V9(28) COMP-6
           VALUE  86873.4196996681751201663246320094.
       77  FLD0809B                       PIC S9(09)V9(07) COMP-3
           VALUE +440334288.3961999.

       77  FLD0810A                       PIC S9(04)       COMP-3
           VALUE +1129.
       77  FLD0810B                       PIC S9(07)V9(01) COMP-3
           VALUE +2130584.0.

       77  FLD0811A                       PIC  9(09)V9(15) COMP-6
           VALUE  648943185.643321429623142.
       77  FLD0811B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.811592432324195423021251372119877487.

       77  FLD0812A                       PIC S9(08)V9(03) COMP-3
           VALUE -29270905.795.
       77  FLD0812B                       PIC  9(08)V9(02) COMP-6
           VALUE  27514068.39.

       77  FLD0813A                       PIC  9(10)V9(08) COMP-6
           VALUE  4881724662.84412076.
       77  FLD0813B                       PIC S9(08)V9(03) COMP-3
           VALUE -29113136.400.

       77  FLD0814A                       PIC S9(02)       COMP-3
           VALUE -07.
       77  FLD0814B                       PIC  9(07)V9(21) COMP-3
           VALUE  7525112.595496631362479433846.

       77  FLD0815A                       PIC  9(06)V9(25) COMP-6
           VALUE  838676.0467962863785373883729334.
       77  FLD0815B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.3836598694868031955707010638434439.

       77  FLD0816A                       PIC  9(08)V9(18) COMP-6
           VALUE  70774184.783492177786001775.
       77  FLD0816B                       PIC  9(04)V9(29) COMP-6
           VALUE  8859.15144904112161761133847903693.

       77  FLD0817A                       PIC  9(10)V9(09) COMP-6
           VALUE  5163345142.860672476.
       77  FLD0817B                       PIC  9(10)V9(09) COMP-6
           VALUE  5158922133.304477686.

       77  FLD0818A                       PIC  9(08)V9(03) COMP-6
           VALUE  30586164.664.
       77  FLD0818B                       PIC  9(08)V9(19) COMP-6
           VALUE  71565910.0751609544843745425.

       77  FLD0819A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.844708607145921108738662042014766484.
       77  FLD0819B                       PIC S9(03)       COMP-3
           VALUE -092.

       77  FLD0820A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0820B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.6537139953218984445015848905313760.

       77  FLD0821A                       PIC  9(09)V9(11) COMP-3
           VALUE  550576956.44832715942.
       77  FLD0821B                       PIC S9(09)V9(05) COMP-3
           VALUE -383656536.39422.

       77  FLD0822A                       PIC S9(05)       COMP-3
           VALUE +14037.
       77  FLD0822B                       PIC  9(04)       COMP-6
           VALUE  1092.

       77  FLD0823A                       PIC  9(08)V9(20) COMP-6
           VALUE  73880168.20028298070610617287.
       77  FLD0823B                       PIC S9(09)V9(06) COMP-3
           VALUE +410430433.569272.

       77  FLD0824A                       PIC  9(10)V9(10) COMP-6
           VALUE  5351534260.3280557920.
       77  FLD0824B                       PIC  9(09)V9(14) COMP-6
           VALUE  619637811.24301098301998.

       77  FLD0825A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0825B                       PIC S9(05)V9(01) COMP-3
           VALUE -17069.2.

       77  FLD0826A                       PIC S9(06)V9(01) COMP-3
           VALUE -190786.5.
       77  FLD0826B                       PIC S9(10)V9(08) COMP-3
           VALUE -4805976358.59735916.

       77  FLD0827A                       PIC  9(07)V9(22) COMP-6
           VALUE  7763847.1978375678261841130733.
       77  FLD0827B                       PIC  9(10)V9(07) COMP-6
           VALUE  4683286251.1747114.

       77  FLD0828A                       PIC S9(10)V9(07) COMP-3
           VALUE -4530916009.2405642.
       77  FLD0828B                       PIC S9(05)       COMP-3
           VALUE -15016.

       77  FLD0829A                       PIC  9(09)V9(17) COMP-3
           VALUE  691486534.21926165041355716.
       77  FLD0829B                       PIC  9(07)V9(23) COMP-6
           VALUE  7963194.44710118728991687930829.

       77  FLD0830A                       PIC  9(04)V9(30) COMP-6
           VALUE  8965.722935126121395654763546190224.
       77  FLD0830B                       PIC  9(10)V9(11) COMP-6
           VALUE  5655358049.53465004452.

       77  FLD0831A                       PIC  9(04)V9(30) COMP-6
           VALUE  8956.555580996397036841472072410397.
       77  FLD0831B                       PIC  9(09)V9(16) COMP-3
           VALUE  660284490.9595845246386147.

       77  FLD0832A                       PIC  9(04)       COMP-6
           VALUE  1185.
       77  FLD0832B                       PIC  9(09)V9(06) COMP-6
           VALUE  419049138.539795.

       77  FLD0833A                       PIC  9(06)V9(24) COMP-3
           VALUE  804859.798300300854911881742737.
       77  FLD0833B                       PIC  9(09)V9(16) COMP-3
           VALUE  664990588.4825918489511309.

       77  FLD0834A                       PIC  9(09)V9(04) COMP-6
           VALUE  349209744.2881.
       77  FLD0834B                       PIC  9(08)V9(19) COMP-3
           VALUE  71191898.1740956136050613167.

       77  FLD0835A                       PIC  9(08)V9(19) COMP-3
           VALUE  71178359.2779248075466114187.
       77  FLD0835B                       PIC  9(07)V9(22) COMP-6
           VALUE  7891261.8513661014763016510187.

       77  FLD0836A                       PIC  9(09)V9(07) COMP-6
           VALUE  446141389.3412962.
       77  FLD0836B                       PIC  9(09)V9(13) COMP-3
           VALUE  594066179.3005866941896.

       77  FLD0837A                       PIC  9(04)V9(30) COMP-6
           VALUE  8982.008694278872384941792006429750.
       77  FLD0837B                       PIC S9(08)V9(03) COMP-3
           VALUE -29146758.519.

       77  FLD0838A                       PIC  9(10)V9(12) COMP-6
           VALUE  5873188106.793812979233.
       77  FLD0838B                       PIC  9(07)V9(22) COMP-3
           VALUE  7748686.2151072521953665273031.

       77  FLD0839A                       PIC  9(08)V9(19) COMP-3
           VALUE  71324671.8649382605015318858.
       77  FLD0839B                       PIC  9(06)V9(01) COMP-6
           VALUE  205379.6.

       77  FLD0840A                       PIC S9(03)       COMP-3
           VALUE -094.
       77  FLD0840B                       PIC  9(04)       COMP-6
           VALUE  1059.

       77  FLD0841A                       PIC  9(08)V9(18) COMP-3
           VALUE  70179428.042996372383299785.
       77  FLD0841B                       PIC  9(06)V9(24) COMP-3
           VALUE  813553.693586876014443021176703.

       77  FLD0842A                       PIC  9(09)V9(16) COMP-3
           VALUE  661649948.5739699704112126.
       77  FLD0842B                       PIC  9(02)V9(33) COMP-6
           VALUE  94.543261545044898763734408930758945.

       77  FLD0843A                       PIC  9(06)V9(25) COMP-6
           VALUE  818928.0761087860405211813485948.
       77  FLD0843B                       PIC S9(08)V9(03) COMP-3
           VALUE +30347988.647.

       77  FLD0844A                       PIC  9(07)V9(22) COMP-6
           VALUE  7754458.9142564990247308287507.
       77  FLD0844B                       PIC  9(10)V9(07) COMP-6
           VALUE  4487113046.2525055.

       77  FLD0845A                       PIC  9(10)V9(12) COMP-3
           VALUE  5903835745.060688200425.
       77  FLD0845B                       PIC  9(09)V9(15) COMP-3
           VALUE  651184321.418812994686220.

       77  FLD0846A                       PIC  9(08)V9(03) COMP-6
           VALUE  29802576.878.
       77  FLD0846B                       PIC  9(10)V9(07) COMP-6
           VALUE  4580030325.9646085.

       77  FLD0847A                       PIC  9(05)V9(26) COMP-3
           VALUE  84041.42690564196938041163775778.
       77  FLD0847B                       PIC  9(08)V9(03) COMP-6
           VALUE  29618694.346.

       77  FLD0848A                       PIC  9(07)V9(23) COMP-3
           VALUE  7949747.62786875510656159349309.
       77  FLD0848B                       PIC  9(08)V9(19) COMP-3
           VALUE  71130247.7845018432667245633.

       77  FLD0849A                       PIC  9(09)V9(13) COMP-6
           VALUE  595598045.8961575019216.
       77  FLD0849B                       PIC  9(07)V9(21) COMP-3
           VALUE  7527838.155592773139446194363.

       77  FLD0850A                       PIC  9(09)V9(06) COMP-6
           VALUE  418716850.605351.
       77  FLD0850B                       PIC  9(09)V9(15) COMP-3
           VALUE  631787055.454641532925563.

       77  FLD0851A                       PIC S9(03)       COMP-3
           VALUE -082.
       77  FLD0851B                       PIC  9(07)V9(01) COMP-6
           VALUE  2252059.3.

       77  FLD0852A                       PIC  9(10)V9(11) COMP-3
           VALUE  5643399909.75319838462.
       77  FLD0852B                       PIC  9(08)V9(02) COMP-6
           VALUE  28682579.88.

       77  FLD0853A                       PIC  9(06)V9(24) COMP-3
           VALUE  801200.590406665469345171004533.
       77  FLD0853B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0854A                       PIC  9(01)V9(35) COMP-3
           VALUE  9.72377885073923198255840816273121163.
       77  FLD0854B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0855A                       PIC  9(08)V9(19) COMP-6
           VALUE  73562901.0042854747375429269.
       77  FLD0855B                       PIC  9(05)V9(01) COMP-6
           VALUE  16705.4.

       77  FLD0856A                       PIC  9(09)V9(04) COMP-6
           VALUE  356144099.6704.
       77  FLD0856B                       PIC S9(05)       COMP-3
           VALUE +13257.

       77  FLD0857A                       PIC  9(03)V9(31) COMP-6
           VALUE  915.3286634102202334872799838194623.
       77  FLD0857B                       PIC S9(02)       COMP-3
           VALUE -05.

       77  FLD0858A                       PIC  9(10)V9(11) COMP-6
           VALUE  5560594458.08950059131.
       77  FLD0858B                       PIC  9(08)V9(03) COMP-6
           VALUE  30966624.473.

       77  FLD0859A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0859B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.1628168143447767945986015547532588.

       77  FLD0860A                       PIC  9(07)V9(02) COMP-6
           VALUE  2576407.94.
       77  FLD0860B                       PIC  9(08)V9(04) COMP-6
           VALUE  33654706.3315.

       77  FLD0861A                       PIC S9(10)V9(07) COMP-3
           VALUE -4605509961.3842453.
       77  FLD0861B                       PIC  9(04)       COMP-6
           VALUE  1091.

       77  FLD0862A                       PIC  9(07)V9(22) COMP-6
           VALUE  7652464.2157409383802502134130.
       77  FLD0862B                       PIC  9(09)V9(12) COMP-6
           VALUE  576630833.581719182134.

       77  FLD0863A                       PIC  9(05)V9(27) COMP-3
           VALUE  85070.091557533766835064170663827.
       77  FLD0863B                       PIC  9(10)V9(09) COMP-6
           VALUE  5171260723.603198217.

       77  FLD0864A                       PIC  9(10)V9(11) COMP-3
           VALUE  5711242885.34377577697.
       77  FLD0864B                       PIC  9(04)V9(29) COMP-6
           VALUE  8791.30787212824560405977081245509.

       77  FLD0865A                       PIC  9(06)V9(24) COMP-6
           VALUE  807409.725415061507725056344497.
       77  FLD0865B                       PIC S9(03)       COMP-3
           VALUE -082.

       77  FLD0866A                       PIC  9(09)V9(05) COMP-6
           VALUE  376060050.51851.
       77  FLD0866B                       PIC  9(04)V9(30) COMP-6
           VALUE  9076.867019798932068042063292523380.

       77  FLD0867A                       PIC S9(05)       COMP-3
           VALUE +14084.
       77  FLD0867B                       PIC  9(08)V9(19) COMP-6
           VALUE  72879777.6966572774526298417.

       77  FLD0868A                       PIC  9(07)V9(22) COMP-3
           VALUE  7648419.8420910554094831468319.
       77  FLD0868B                       PIC  9(10)V9(12) COMP-3
           VALUE  5849128371.667725589944.

       77  FLD0869A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0869B                       PIC  9(08)V9(17) COMP-3
           VALUE  68157822.06919422936408636.

       77  FLD0870A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0870B                       PIC  9(09)V9(15) COMP-6
           VALUE  657570531.523696821807334.

       77  FLD0871A                       PIC  9(09)V9(14) COMP-6
           VALUE  609764683.38536315982878.
       77  FLD0871B                       PIC  9(10)V9(09) COMP-3
           VALUE  5134836781.377033476.

       77  FLD0872A                       PIC  9(04)V9(29) COMP-3
           VALUE  8816.31176263962479389135751262074.
       77  FLD0872B                       PIC  9(10)V9(07) COMP-6
           VALUE  4591409950.7884903.

       77  FLD0873A                       PIC  9(07)V9(21) COMP-6
           VALUE  7561255.223942077163812314211.
       77  FLD0873B                       PIC  9(05)       COMP-6
           VALUE  15597.

       77  FLD0874A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0874B                       PIC  9(06)V9(01) COMP-6
           VALUE  188106.3.

       77  FLD0875A                       PIC S9(06)V9(01) COMP-3
           VALUE +204126.0.
       77  FLD0875B                       PIC  9(02)       COMP-6
           VALUE  06.

       77  FLD0876A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0876B                       PIC  9(07)V9(23) COMP-3
           VALUE  7928238.87607293276147402139031.

       77  FLD0877A                       PIC  9(08)V9(18) COMP-6
           VALUE  69924605.886404200827399790.
       77  FLD0877B                       PIC  9(09)V9(15) COMP-3
           VALUE  651975862.412979334514773.

       77  FLD0878A                       PIC  9(07)V9(22) COMP-3
           VALUE  7831260.9220719830993573395971.
       77  FLD0878B                       PIC  9(04)V9(29) COMP-3
           VALUE  8832.64528360225620318146866338793.

       77  FLD0879A                       PIC  9(07)V9(02) COMP-6
           VALUE  2371533.81.
       77  FLD0879B                       PIC  9(05)V9(27) COMP-3
           VALUE  85230.962794591269560129376259283.

       77  FLD0880A                       PIC S9(10)V9(06) COMP-3
           VALUE +4237732309.742536.
       77  FLD0880B                       PIC  9(05)V9(26) COMP-6
           VALUE  83915.37539577657023315282458497.

       77  FLD0881A                       PIC  9(10)V9(11) COMP-6
           VALUE  5571129514.90407404264.
       77  FLD0881B                       PIC S9(09)V9(04) COMP-3
           VALUE -360610120.1846.

       77  FLD0882A                       PIC  9(10)V9(12) COMP-6
           VALUE  5888713345.878072713546.
       77  FLD0882B                       PIC  9(09)V9(16) COMP-6
           VALUE  677832951.8186110291821933.

       77  FLD0883A                       PIC  9(09)V9(16) COMP-3
           VALUE  672192258.1526228457349247.
       77  FLD0883B                       PIC  9(07)V9(21) COMP-6
           VALUE  7561874.624389478549701948395.

       77  FLD0884A                       PIC  9(10)V9(08) COMP-6
           VALUE  4954020911.85092596.
       77  FLD0884B                       PIC  9(07)V9(21) COMP-3
           VALUE  7530519.818486510752464369033.

       77  FLD0885A                       PIC S9(05)       COMP-3
           VALUE +13360.
       77  FLD0885B                       PIC S9(05)       COMP-3
           VALUE -15432.

       77  FLD0886A                       PIC S9(09)V9(05) COMP-3
           VALUE -374529584.88504.
       77  FLD0886B                       PIC S9(09)V9(05) COMP-3
           VALUE -380480275.58811.

       77  FLD0887A                       PIC S9(07)V9(01) COMP-3
           VALUE +2114795.5.
       77  FLD0887B                       PIC  9(06)V9(25) COMP-6
           VALUE  815821.3018675709582439026235078.

       77  FLD0888A                       PIC  9(08)V9(19) COMP-6
           VALUE  73580519.1914812417586233550.
       77  FLD0888B                       PIC  9(07)V9(02) COMP-6
           VALUE  2394446.18.

       77  FLD0889A                       PIC S9(05)       COMP-3
           VALUE -15225.
       77  FLD0889B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.3719675610497206186266794247785583.

       77  FLD0890A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0890B                       PIC  9(08)V9(19) COMP-3
           VALUE  72161358.3480198661490589984.

       77  FLD0891A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7956124985634538404610793804749846.
       77  FLD0891B                       PIC  9(08)V9(19) COMP-6
           VALUE  73526985.6204998628612656830.

       77  FLD0892A                       PIC  9(10)V9(09) COMP-6
           VALUE  5079027644.377075434.
       77  FLD0892B                       PIC  9(03)       COMP-6
           VALUE  088.

       77  FLD0893A                       PIC  9(10)V9(12) COMP-3
           VALUE  5900775083.003402254888.
       77  FLD0893B                       PIC  9(02)       COMP-6
           VALUE  07.

       77  FLD0894A                       PIC  9(06)V9(25) COMP-6
           VALUE  819872.1409522375935807758651208.
       77  FLD0894B                       PIC  9(09)V9(15) COMP-6
           VALUE  655129000.141700390535959.

       77  FLD0895A                       PIC  9(10)V9(09) COMP-6
           VALUE  5099949658.575000377.
       77  FLD0895B                       PIC  9(08)V9(02) COMP-6
           VALUE  28944204.51.

       77  FLD0896A                       PIC  9(10)V9(07) COMP-6
           VALUE  4576511370.6787369.
       77  FLD0896B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0897A                       PIC  9(01)V9(36) COMP-6
           VALUE  9.997543976245016894566219889384228736.
       77  FLD0897B                       PIC S9(09)V9(07) COMP-3
           VALUE +440492210.0858147.

       77  FLD0898A                       PIC  9(09)V9(05) COMP-6
           VALUE  378033726.09171.
       77  FLD0898B                       PIC  9(06)V9(01) COMP-6
           VALUE  199374.1.

       77  FLD0899A                       PIC  9(08)V9(20) COMP-6
           VALUE  74918436.40783237834313013081.
       77  FLD0899B                       PIC  9(09)V9(07) COMP-6
           VALUE  438142184.6749312.

       77  FLD0900A                       PIC  9(03)V9(32) COMP-6
           VALUE  929.41329164379282712360463847289793.
       77  FLD0900B                       PIC  9(06)V9(01) COMP-6
           VALUE  185639.8.

       77  FLD0901A                       PIC  9(10)V9(07) COMP-6
           VALUE  4563598931.5070740.
       77  FLD0901B                       PIC  9(01)V9(36) COMP-6
           VALUE  9.782322298369796609307513790554367005.

       77  FLD0902A                       PIC  9(05)V9(28) COMP-3
           VALUE  87405.6741908566081633580324705690.
       77  FLD0902B                       PIC  9(10)V9(09) COMP-3
           VALUE  5131137190.755751253.

       77  FLD0903A                       PIC  9(08)V9(02) COMP-6
           VALUE  28616952.10.
       77  FLD0903B                       PIC S9(02)       COMP-3
           VALUE -06.

       77  FLD0904A                       PIC S9(04)       COMP-3
           VALUE +1137.
       77  FLD0904B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0905A                       PIC  9(09)V9(04) COMP-6
           VALUE  357938124.4724.
       77  FLD0905B                       PIC  9(09)V9(04) COMP-6
           VALUE  349599231.9688.

       77  FLD0906A                       PIC  9(09)V9(16) COMP-6
           VALUE  669388906.6218295935684068.
       77  FLD0906B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0907A                       PIC S9(09)V9(05) COMP-3
           VALUE -390800584.69506.
       77  FLD0907B                       PIC  9(10)V9(11) COMP-6
           VALUE  5692874702.16027324809.

       77  FLD0908A                       PIC S9(10)V9(06) COMP-3
           VALUE +4306350776.286586.
       77  FLD0908B                       PIC  9(03)V9(31) COMP-3
           VALUE  912.0472776451683527554337160836439.

       77  FLD0909A                       PIC  9(08)V9(03) COMP-6
           VALUE  30663800.453.
       77  FLD0909B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0910A                       PIC S9(06)V9(01) COMP-3
           VALUE -193158.9.
       77  FLD0910B                       PIC  9(04)V9(30) COMP-6
           VALUE  9098.433765600096867487422969134058.

       77  FLD0911A                       PIC S9(10)V9(07) COMP-3
           VALUE -4611964452.0728980.
       77  FLD0911B                       PIC  9(08)V9(20) COMP-3
           VALUE  74305071.04102702653491974160.

       77  FLD0912A                       PIC  9(10)V9(09) COMP-3
           VALUE  5000191930.396378214.
       77  FLD0912B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0913A                       PIC S9(04)       COMP-3
           VALUE +1246.
       77  FLD0913B                       PIC  9(03)       COMP-6
           VALUE  079.

       77  FLD0914A                       PIC  9(03)V9(31) COMP-6
           VALUE  917.2012666333545505281676923914346.
       77  FLD0914B                       PIC  9(01)V9(36) COMP-3
           VALUE  9.801144784183424274459639491396956145.

       77  FLD0915A                       PIC  9(08)V9(20) COMP-6
           VALUE  74750906.49492384109464637731.
       77  FLD0915B                       PIC S9(04)       COMP-3
           VALUE +1130.

       77  FLD0916A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0916B                       PIC  9(10)V9(06) COMP-6
           VALUE  4372777685.598984.

       77  FLD0917A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0917B                       PIC  9(04)       COMP-6
           VALUE  1084.

       77  FLD0918A                       PIC  9(04)       COMP-6
           VALUE  1059.
       77  FLD0918B                       PIC  9(10)V9(11) COMP-6
           VALUE  5693106161.94893204244.

       77  FLD0919A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0919B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0920A                       PIC S9(05)V9(01) COMP-3
           VALUE -17474.9.
       77  FLD0920B                       PIC  9(09)V9(16) COMP-6
           VALUE  669843285.3658151664433262.

       77  FLD0921A                       PIC  9(10)V9(10) COMP-6
           VALUE  5463494999.0456427304.
       77  FLD0921B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0922A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0922B                       PIC S9(05)V9(01) COMP-3
           VALUE -18331.8.

       77  FLD0923A                       PIC  9(06)       COMP-6
           VALUE  159582.
       77  FLD0923B                       PIC S9(04)       COMP-3
           VALUE +1310.

       77  FLD0924A                       PIC  9(10)V9(11) COMP-6
           VALUE  5650505738.70210182114.
       77  FLD0924B                       PIC  9(06)V9(25) COMP-3
           VALUE  830413.4742864166529585645548650.

       77  FLD0925A                       PIC S9(04)       COMP-3
           VALUE +1236.
       77  FLD0925B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0926A                       PIC  9(08)V9(18) COMP-6
           VALUE  69535643.175280814620720093.
       77  FLD0926B                       PIC S9(07)V9(02) COMP-3
           VALUE -2533128.95.

       77  FLD0927A                       PIC  9(06)V9(24) COMP-3
           VALUE  800954.558131814597921049880824.
       77  FLD0927B                       PIC  9(10)V9(09) COMP-3
           VALUE  5121064754.192180545.

       77  FLD0928A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0928B                       PIC  9(07)V9(02) COMP-6
           VALUE  2551694.92.

       77  FLD0929A                       PIC  9(05)V9(28) COMP-3
           VALUE  87174.0739403786824013309342262800.
       77  FLD0929B                       PIC  9(08)V9(19) COMP-3
           VALUE  71306594.2354483839338286088.

       77  FLD0930A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.911281003002671008417223674769047647.
       77  FLD0930B                       PIC  9(09)V9(13) COMP-3
           VALUE  591594874.8305130955316.

       77  FLD0931A                       PIC  9(09)V9(12) COMP-3
           VALUE  573747057.720371378408.
       77  FLD0931B                       PIC S9(07)V9(02) COMP-3
           VALUE -2503283.13.

       77  FLD0932A                       PIC  9(10)V9(09) COMP-6
           VALUE  5079506475.355934913.
       77  FLD0932B                       PIC  9(10)V9(09) COMP-6
           VALUE  5196217943.575858200.

       77  FLD0933A                       PIC  9(07)V9(22) COMP-6
           VALUE  7776883.1704294028028812135744.
       77  FLD0933B                       PIC  9(09)V9(03) COMP-6
           VALUE  328435728.864.

       77  FLD0934A                       PIC  9(05)V9(01) COMP-6
           VALUE  16899.6.
       77  FLD0934B                       PIC  9(07)V9(02) COMP-6
           VALUE  2394400.51.

       77  FLD0935A                       PIC  9(05)V9(01) COMP-6
           VALUE  16691.2.
       77  FLD0935B                       PIC  9(10)V9(08) COMP-6
           VALUE  4853829665.64275264.

       77  FLD0936A                       PIC  9(08)V9(03) COMP-6
           VALUE  29560937.131.
       77  FLD0936B                       PIC  9(02)V9(34) COMP-3
           VALUE  95.2998853185021421730027668672846630.

       77  FLD0937A                       PIC  9(02)V9(33) COMP-3
           VALUE  94.462893191714936147462822191300801.
       77  FLD0937B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0938A                       PIC  9(09)V9(12) COMP-6
           VALUE  578242437.999430092254.
       77  FLD0938B                       PIC  9(08)V9(18) COMP-6
           VALUE  70721875.972746128802270959.

       77  FLD0939A                       PIC  9(10)V9(13) COMP-6
           VALUE  6084884727.3780637401330.
       77  FLD0939B                       PIC S9(01)       COMP-3
           VALUE -0.

       77  FLD0940A                       PIC  9(09)V9(12) COMP-6
           VALUE  577997061.609985873786.
       77  FLD0940B                       PIC  9(10)V9(08) COMP-6
           VALUE  4780052522.48498546.

       77  FLD0941A                       PIC  9(09)V9(16) COMP-3
           VALUE  670449367.9367865555107641.
       77  FLD0941B                       PIC  9(09)V9(04) COMP-6
           VALUE  345028332.3540.

       77  FLD0942A                       PIC  9(10)V9(10) COMP-3
           VALUE  5309347867.8071082121.
       77  FLD0942B                       PIC  9(03)V9(32) COMP-3
           VALUE  922.70492697630424050458941565011627.

       77  FLD0943A                       PIC S9(09)V9(03) COMP-3
           VALUE +323766798.919.
       77  FLD0943B                       PIC S9(06)V9(01) COMP-3
           VALUE +203018.6.

       77  FLD0944A                       PIC  9(02)V9(34) COMP-6
           VALUE  95.7363239628727824559462078468641266.
       77  FLD0944B                       PIC S9(07)V9(02) COMP-3
           VALUE -2600465.21.

       77  FLD0945A                       PIC  9(10)V9(10) COMP-3
           VALUE  5427766423.1255295934.
       77  FLD0945B                       PIC S9(10)V9(06) COMP-3
           VALUE +4211785767.712989.

       77  FLD0946A                       PIC S9(07)V9(02) COMP-3
           VALUE -2603132.30.
       77  FLD0946B                       PIC  9(02)V9(34) COMP-3
           VALUE  96.2407519811451561686510558502050116.

       77  FLD0947A                       PIC  9(05)V9(27) COMP-6
           VALUE  85846.989065825540787812997223227.
       77  FLD0947B                       PIC  9(09)V9(16) COMP-3
           VALUE  671942080.3697424560141371.

       77  FLD0948A                       PIC  9(04)       COMP-6
           VALUE  1058.
       77  FLD0948B                       PIC  9(07)V9(21) COMP-6
           VALUE  7582594.805549627281493485497.

       77  FLD0949A                       PIC S9(10)V9(06) COMP-3
           VALUE +4307044196.647341.
       77  FLD0949B                       PIC  9(10)V9(07) COMP-6
           VALUE  4670230467.6696332.

       77  FLD0950A                       PIC  9(09)V9(14) COMP-3
           VALUE  614898523.03850200954116.
       77  FLD0950B                       PIC  9(04)V9(30) COMP-6
           VALUE  9056.465512238127679722765606129541.

       77  FLD0951A                       PIC S9(08)V9(03) COMP-3
           VALUE +31116955.475.
       77  FLD0951B                       PIC  9(08)V9(20) COMP-6
           VALUE  74599134.92992847894313968026.

       77  FLD0952A                       PIC  9(09)V9(03) COMP-6
           VALUE  315844571.317.
       77  FLD0952B                       PIC  9(02)       COMP-6
           VALUE  06.

       77  FLD0953A                       PIC  9(06)       COMP-6
           VALUE  166635.
       77  FLD0953B                       PIC  9(10)V9(09) COMP-6
           VALUE  5187782319.462912461.

       77  FLD0954A                       PIC  9(10)V9(11) COMP-6
           VALUE  5577123049.60128579800.
       77  FLD0954B                       PIC  9(02)V9(34) COMP-3
           VALUE  97.0603521071659591790137255884474143.

       77  FLD0955A                       PIC S9(08)V9(02) COMP-3
           VALUE -27357789.23.
       77  FLD0955B                       PIC  9(06)V9(25) COMP-3
           VALUE  823687.4590304759102821208216482.

       77  FLD0956A                       PIC S9(08)V9(02) COMP-3
           VALUE -27355040.84.
       77  FLD0956B                       PIC  9(08)V9(18) COMP-3
           VALUE  70029518.862281070479269828.

       77  FLD0957A                       PIC  9(09)V9(15) COMP-6
           VALUE  637627083.330792543414133.
       77  FLD0957B                       PIC S9(04)       COMP-3
           VALUE +1212.

       77  FLD0958A                       PIC S9(08)V9(03) COMP-3
           VALUE -29370744.150.
       77  FLD0958B                       PIC  9(10)V9(06) COMP-6
           VALUE  4358178846.720288.

       77  FLD0959A                       PIC  9(06)V9(25) COMP-6
           VALUE  827211.6833605048791255853757320.
       77  FLD0959B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0960A                       PIC  9(10)V9(11) COMP-6
           VALUE  5559976801.18206716315.
       77  FLD0960B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0961A                       PIC  9(08)V9(19) COMP-6
           VALUE  72708740.7191407630868695832.
       77  FLD0961B                       PIC S9(04)       COMP-3
           VALUE +1315.

       77  FLD0962A                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8081984946274620718043024680810049.
       77  FLD0962B                       PIC  9(08)V9(17) COMP-3
           VALUE  68265700.44059103725686554.

       77  FLD0963A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.803573230667260718362854277074802666.
       77  FLD0963B                       PIC  9(09)V9(16) COMP-6
           VALUE  657950850.8072698935720268.

       77  FLD0964A                       PIC  9(09)V9(15) COMP-6
           VALUE  639504907.969730918004813.
       77  FLD0964B                       PIC  9(09)V9(13) COMP-6
           VALUE  599568613.7680703575725.

       77  FLD0965A                       PIC  9(05)       COMP-6
           VALUE  13581.
       77  FLD0965B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0966A                       PIC  9(06)V9(01) COMP-6
           VALUE  189200.6.
       77  FLD0966B                       PIC  9(06)V9(01) COMP-6
           VALUE  189757.7.

       77  FLD0967A                       PIC  9(02)       COMP-6
           VALUE  06.
       77  FLD0967B                       PIC  9(09)V9(04) COMP-6
           VALUE  356045641.3147.

       77  FLD0968A                       PIC  9(09)V9(15) COMP-6
           VALUE  649996663.320669743058033.
       77  FLD0968B                       PIC S9(04)       COMP-3
           VALUE +1132.

       77  FLD0969A                       PIC S9(05)       COMP-3
           VALUE -15366.
       77  FLD0969B                       PIC  9(09)V9(13) COMP-3
           VALUE  594539058.0989867723715.

       77  FLD0970A                       PIC  9(09)V9(14) COMP-3
           VALUE  631417540.20798013247173.
       77  FLD0970B                       PIC  9(02)V9(34) COMP-6
           VALUE  96.8862081091470539462306987843476235.

       77  FLD0971A                       PIC  9(07)V9(01) COMP-6
           VALUE  2161446.9.
       77  FLD0971B                       PIC S9(09)V9(06) COMP-3
           VALUE +400705169.115322.

       77  FLD0972A                       PIC  9(09)V9(15) COMP-6
           VALUE  647710182.878484586055378.
       77  FLD0972B                       PIC  9(05)       COMP-6
           VALUE  13649.

       77  FLD0973A                       PIC  9(05)       COMP-6
           VALUE  13817.
       77  FLD0973B                       PIC  9(06)V9(25) COMP-6
           VALUE  828260.5282429751358819203232997.

       77  FLD0974A                       PIC  9(04)       COMP-6
           VALUE  1180.
       77  FLD0974B                       PIC S9(03)       COMP-3
           VALUE +104.

       77  FLD0975A                       PIC S9(02)       COMP-3
           VALUE -06.
       77  FLD0975B                       PIC  9(09)V9(03) COMP-6
           VALUE  329183580.054.

       77  FLD0976A                       PIC S9(07)V9(01) COMP-3
           VALUE +2206144.7.
       77  FLD0976B                       PIC  9(10)V9(09) COMP-6
           VALUE  5191401776.232426046.

       77  FLD0977A                       PIC  9(09)V9(03) COMP-6
           VALUE  327431372.704.
       77  FLD0977B                       PIC S9(09)V9(05) COMP-3
           VALUE -393208707.80387.

       77  FLD0978A                       PIC  9(09)V9(16) COMP-6
           VALUE  675062190.8116747338368668.
       77  FLD0978B                       PIC S9(09)V9(06) COMP-3
           VALUE +411411057.685845.

       77  FLD0979A                       PIC  9(03)V9(32) COMP-6
           VALUE  925.33169671466619643496187563869170.
       77  FLD0979B                       PIC  9(09)V9(05) COMP-6
           VALUE  388509802.38797.

       77  FLD0980A                       PIC  9(03)V9(32) COMP-6
           VALUE  935.82234581280043794748735308530740.
       77  FLD0980B                       PIC  9(09)V9(15) COMP-6
           VALUE  647159992.565670250108667.

       77  FLD0981A                       PIC  9(06)V9(01) COMP-6
           VALUE  195132.7.
       77  FLD0981B                       PIC S9(09)V9(04) COMP-3
           VALUE -360473610.9762.

       77  FLD0982A                       PIC  9(06)V9(25) COMP-6
           VALUE  816610.1728260642955703474399342.
       77  FLD0982B                       PIC S9(08)V9(03) COMP-3
           VALUE +31469845.616.

       77  FLD0983A                       PIC  9(10)V9(09) COMP-3
           VALUE  5114754992.436914005.
       77  FLD0983B                       PIC  9(02)V9(34) COMP-6
           VALUE  95.8147071945383510538363225350622087.

       77  FLD0984A                       PIC  9(09)V9(15) COMP-3
           VALUE  632949921.330981046807551.
       77  FLD0984B                       PIC  9(10)V9(09) COMP-6
           VALUE  5090793805.153389639.

       77  FLD0985A                       PIC  9(10)V9(06) COMP-6
           VALUE  4296662473.303992.
       77  FLD0985B                       PIC  9(05)V9(28) COMP-3
           VALUE  87137.5808353749947698929645412135.

       77  FLD0986A                       PIC  9(05)       COMP-6
           VALUE  14588.
       77  FLD0986B                       PIC  9(01)       COMP-6
           VALUE  0.

       77  FLD0987A                       PIC  9(01)V9(36) COMP-3
           VALUE  9.834402345123109956404050535638816654.
       77  FLD0987B                       PIC  9(06)V9(26) COMP-3
           VALUE  842525.10302045313661523096016026.

       77  FLD0988A                       PIC  9(01)       COMP-6
           VALUE  0.
       77  FLD0988B                       PIC S9(05)V9(01) COMP-3
           VALUE -18152.0.

       77  FLD0989A                       PIC S9(04)       COMP-3
           VALUE +1235.
       77  FLD0989B                       PIC  9(09)V9(13) COMP-3
           VALUE  593212782.9792923634499.

       77  FLD0990A                       PIC  9(07)V9(22) COMP-3
           VALUE  7806084.0781040319313888176111.
       77  FLD0990B                       PIC  9(06)V9(01) COMP-6
           VALUE  208986.1.

       77  FLD0991A                       PIC  9(06)V9(24) COMP-6
           VALUE  807774.663029880435338725419569.
       77  FLD0991B                       PIC S9(09)V9(06) COMP-3
           VALUE +403465254.324070.

       77  FLD0992A                       PIC  9(07)V9(22) COMP-6
           VALUE  7784108.2583169551867285917978.
       77  FLD0992B                       PIC  9(04)V9(29) COMP-3
           VALUE  8920.19846678347883006665597349638.

       77  FLD0993A                       PIC  9(08)V9(20) COMP-6
           VALUE  74534466.64416291111976420324.
       77  FLD0993B                       PIC S9(04)       COMP-3
           VALUE +1132.

       77  FLD0994A                       PIC  9(06)V9(24) COMP-6
           VALUE  815107.307501011568717785849003.
       77  FLD0994B                       PIC S9(10)V9(08) COMP-3
           VALUE -4847118976.22432053.

       77  FLD0995A                       PIC S9(01)       COMP-3
           VALUE +0.
       77  FLD0995B                       PIC  9(06)V9(01) COMP-6
           VALUE  188825.8.

       77  FLD0996A                       PIC  9(09)V9(14) COMP-6
           VALUE  619241405.61761309431432.
       77  FLD0996B                       PIC  9(09)V9(16) COMP-6
           VALUE  669751940.2443259384227758.

       77  FLD0997A                       PIC  9(10)V9(09) COMP-3
           VALUE  5006446394.611311356.
       77  FLD0997B                       PIC  9(10)V9(09) COMP-3
           VALUE  5005353152.147143935.

       77  FLD0998A                       PIC  9(09)V9(13) COMP-6
           VALUE  598229443.4201559374386.
       77  FLD0998B                       PIC S9(01)       COMP-3
           VALUE +0.

       77  FLD0999A                       PIC S9(03)       COMP-3
           VALUE -081.
       77  FLD0999B                       PIC S9(01)       COMP-3
           VALUE -0.

      * RESULTS-AREA.

       78  XPC-FLD0500B
           VALUE X'0709'.
       78  XPC-FLD0501B
           VALUE X'062809334873677369337485'.
       78  XPC-FLD0502B
           VALUE X'078931626286150020034995122841'.
       78  XPC-FLD0503B
           VALUE X'241748150924885620905391882843105F'.
       78  XPC-FLD0504B
           VALUE X'5028930926587901486F'.
       78  XPC-FLD0505B
           VALUE X'054079887440916072856F'.
       78  XPC-FLD0506B
           VALUE X'044983811D'.
       78  XPC-FLD0507B
           VALUE X'5276166649082409210F'.
       78  XPC-FLD0508B
           VALUE X'02144088220848886D'.
       78  XPC-FLD0509B
           VALUE X'488937338626299289'.
       78  XPC-FLD0510B
           VALUE X'387D'.
       78  XPC-FLD0511B
           VALUE X'05257737010265951195'.
       78  XPC-FLD0512B
           VALUE X'5091717968686512163500879069033544511F'.
       78  XPC-FLD0513B
           VALUE X'02789791972144304299518972222F'.
       78  XPC-FLD0514B
           VALUE X'02787819996823'.
       78  XPC-FLD0515B
           VALUE X'37690011845231452527479784448514692F'.
       78  XPC-FLD0516B
           VALUE X'00'.
       78  XPC-FLD0517B
           VALUE X'0031340134042710696D'.
       78  XPC-FLD0518B
           VALUE X'089D'.
       78  XPC-FLD0519B
           VALUE X'9851020486430545064493287F'.
       78  XPC-FLD0520B
           VALUE X'61059553432451049552742F'.
       78  XPC-FLD0521B
           VALUE X'28055C'.
       78  XPC-FLD0522B
           VALUE X'3510676144076D'.
       78  XPC-FLD0523B
           VALUE X'04280314707C'.
       78  XPC-FLD0524B
           VALUE X'5046008862205329081F'.
       78  XPC-FLD0525B
           VALUE X'0887336156634660588871099662355845'.
       78  XPC-FLD0526B
           VALUE X'0535158707'.
       78  XPC-FLD0527B
           VALUE X'0993866582275886311F'.
       78  XPC-FLD0528B
           VALUE X'06742D'.
       78  XPC-FLD0529B
           VALUE X'06852906977087937C'.
       78  XPC-FLD0530B
           VALUE X'043D'.
       78  XPC-FLD0531B
           VALUE X'098098220C'.
       78  XPC-FLD0532B
           VALUE X'6D'.
       78  XPC-FLD0533B
           VALUE X'0086'.
       78  XPC-FLD0534B
           VALUE X'4796286047627412578F'.
       78  XPC-FLD0535B
           VALUE X'086934843746367858133650045201648F'.
       78  XPC-FLD0536B
           VALUE X'0C'.
       78  XPC-FLD0537B
           VALUE X'4554'.
       78  XPC-FLD0538B
           VALUE X'0793946754459935233327882997400592'.
       78  XPC-FLD0539B
           VALUE X'070042059898033071085876599681795F'.
       78  XPC-FLD0540B
           VALUE X'07'.
       78  XPC-FLD0541B
           VALUE X'049167641848286621388982121061'.
       78  XPC-FLD0542B
           VALUE X'553207696393934218127F'.
       78  XPC-FLD0543B
           VALUE X'0277016069'.
       78  XPC-FLD0544B
           VALUE X'1381302823'.
       78  XPC-FLD0545B
           VALUE X'944856446145206807507570674F'.
       78  XPC-FLD0546B
           VALUE X'60995883518421766866790F'.
       78  XPC-FLD0547B
           VALUE X'3598695862060D'.
       78  XPC-FLD0548B
           VALUE X'68119457212008152846571817'.
       78  XPC-FLD0549B
           VALUE X'0417916211751954'.
       78  XPC-FLD0550B
           VALUE X'94'.
       78  XPC-FLD0551B
           VALUE X'0655119044597454263904505F'.
       78  XPC-FLD0552B
           VALUE X'076016'.
       78  XPC-FLD0553B
           VALUE X'3608710969090D'.
       78  XPC-FLD0554B
           VALUE X'28615763752268179551663251913851128F'.
       78  XPC-FLD0555B
           VALUE X'5605686733653602811F'.
       78  XPC-FLD0556B
           VALUE X'0568555321722934526833'.
       78  XPC-FLD0557B
           VALUE X'13329C'.
       78  XPC-FLD0558B
           VALUE X'06209454'.
       78  XPC-FLD0559B
           VALUE X'099142824147194545678672682843'.
       78  XPC-FLD0560B
           VALUE X'0351025116078023'.
       78  XPC-FLD0561B
           VALUE X'01'.
       78  XPC-FLD0562B
           VALUE X'958208334412512741096179524902254343'.
       78  XPC-FLD0563B
           VALUE X'72227339713C'.
       78  XPC-FLD0564B
           VALUE X'070810880902875461543491615817183629'.
       78  XPC-FLD0565B
           VALUE X'02090887'.
       78  XPC-FLD0566B
           VALUE X'134200212625'.
       78  XPC-FLD0567B
           VALUE X'0297763648403360945430051742732758'.
       78  XPC-FLD0568B
           VALUE X'064501399773583058336459'.
       78  XPC-FLD0569B
           VALUE X'722108073354756C'.
       78  XPC-FLD0570B
           VALUE X'720060225322646066764775696F'.
       78  XPC-FLD0571B
           VALUE X'06621729185931387539619251'.
       78  XPC-FLD0572B
           VALUE X'0363059D'.
       78  XPC-FLD0573B
           VALUE X'6527890148517897915245875992695800960F'.
       78  XPC-FLD0574B
           VALUE X'6D'.
       78  XPC-FLD0575B
           VALUE X'6C'.
       78  XPC-FLD0576B
           VALUE X'47238400610562072401'.
       78  XPC-FLD0577B
           VALUE X'805001512301445405164770363626303151'.
       78  XPC-FLD0578B
           VALUE X'273810'.
       78  XPC-FLD0579B
           VALUE X'5908380596787501715F'.
       78  XPC-FLD0580B
           VALUE X'0646450258967046645771858948137378321F'.
       78  XPC-FLD0581B
           VALUE X'610062973643881143036828'.
       78  XPC-FLD0582B
           VALUE X'062856274902063530202836'.
       78  XPC-FLD0583B
           VALUE X'4C'.
       78  XPC-FLD0584B
           VALUE X'955867594557756605766485336062032729'.
       78  XPC-FLD0585B
           VALUE X'079927518632915370297985191427869722'.
       78  XPC-FLD0586B
           VALUE X'077794189960829245200635284618'.
       78  XPC-FLD0587B
           VALUE X'02129D'.
       78  XPC-FLD0588B
           VALUE X'06771495276462448727205764043901582F'.
       78  XPC-FLD0589B
           VALUE X'01219C'.
       78  XPC-FLD0590B
           VALUE X'1062119D'.
       78  XPC-FLD0591B
           VALUE X'5700661418154348791F'.
       78  XPC-FLD0592B
           VALUE X'73907098193D'.
       78  XPC-FLD0593B
           VALUE X'038C'.
       78  XPC-FLD0594B
           VALUE X'51440484143103479483050932685F'.
       78  XPC-FLD0595B
           VALUE X'3197374054167890777833347730124F'.
       78  XPC-FLD0596B
           VALUE X'657855963298508210108650'.
       78  XPC-FLD0597B
           VALUE X'06758101650339857689842844592932'.
       78  XPC-FLD0598B
           VALUE X'468477633184507D'.
       78  XPC-FLD0599B
           VALUE X'09'.
       78  XPC-FLD0600B
           VALUE X'0889857673123861313355595484609F'.
       78  XPC-FLD0601B
           VALUE X'029749813111'.
       78  XPC-FLD0602B
           VALUE X'0303615939'.
       78  XPC-FLD0603B
           VALUE X'0487180C'.
       78  XPC-FLD0604B
           VALUE X'0551440145498789572320'.
       78  XPC-FLD0605B
           VALUE X'4256957897307752'.
       78  XPC-FLD0606B
           VALUE X'0254178383482C'.
       78  XPC-FLD0607B
           VALUE X'025781'.
       78  XPC-FLD0608B
           VALUE X'225226869583767068085933260590536520'.
       78  XPC-FLD0609B
           VALUE X'045126229228847267'.
       78  XPC-FLD0610B
           VALUE X'2786455271'.
       78  XPC-FLD0611B
           VALUE X'03'.
       78  XPC-FLD0612B
           VALUE X'062873368552287867108245640685'.
       78  XPC-FLD0613B
           VALUE X'022648276C'.
       78  XPC-FLD0614B
           VALUE X'6052981544136128984377'.
       78  XPC-FLD0615B
           VALUE X'023341961C'.
       78  XPC-FLD0616B
           VALUE X'23'.
       78  XPC-FLD0617B
           VALUE X'00'.
       78  XPC-FLD0618B
           VALUE X'0079'.
       78  XPC-FLD0619B
           VALUE X'053429823777539313843F'.
       78  XPC-FLD0620B
           VALUE X'583959822349086421500175'.
       78  XPC-FLD0621B
           VALUE X'734243671686218957184166811F'.
       78  XPC-FLD0622B
           VALUE X'9542421746848D'.
       78  XPC-FLD0623B
           VALUE X'0641616922896418195095066F'.
       78  XPC-FLD0624B
           VALUE X'4356505095582531'.
       78  XPC-FLD0625B
           VALUE X'78308435769811728739000500354F'.
       78  XPC-FLD0626B
           VALUE X'037427477932063D'.
       78  XPC-FLD0627B
           VALUE X'023249882C'.
       78  XPC-FLD0628B
           VALUE X'029681727730'.
       78  XPC-FLD0629B
           VALUE X'870915644969416202769707524566911F'.
       78  XPC-FLD0630B
           VALUE X'0174519095249753304734'.
       78  XPC-FLD0631B
           VALUE X'824634'.
       78  XPC-FLD0632B
           VALUE X'05012280455704922587'.
       78  XPC-FLD0633B
           VALUE X'0405176751228C'.
       78  XPC-FLD0634B
           VALUE X'0868098250115819156979655872420F'.
       78  XPC-FLD0635B
           VALUE X'0558066570900784292498'.
       78  XPC-FLD0636B
           VALUE X'010350'.
       78  XPC-FLD0637B
           VALUE X'053056785456603405837F'.
       78  XPC-FLD0638B
           VALUE X'9300997013279628244930563595546F'.
       78  XPC-FLD0639B
           VALUE X'04078092072024196699686626743641681969'.
       78  XPC-FLD0640B
           VALUE X'89710938089320346744415246575953928F'.
       78  XPC-FLD0641B
           VALUE X'0802113336084028338834883698'.
       78  XPC-FLD0642B
           VALUE X'05220924521868707701699F'.
       78  XPC-FLD0643B
           VALUE X'2890586849'.
       78  XPC-FLD0644B
           VALUE X'092997460492260109532480782945640385'.
       78  XPC-FLD0645B
           VALUE X'0246730234'.
       78  XPC-FLD0646B
           VALUE X'5883231932131506547457'.
       78  XPC-FLD0647B
           VALUE X'06598931491456289340839020'.
       78  XPC-FLD0648B
           VALUE X'0634285861942461315643470F'.
       78  XPC-FLD0649B
           VALUE X'5034432631533975376F'.
       78  XPC-FLD0650B
           VALUE X'6715745920981104473110079F'.
       78  XPC-FLD0651B
           VALUE X'032093946374946D'.
       78  XPC-FLD0652B
           VALUE X'020927047C'.
       78  XPC-FLD0653B
           VALUE X'165087'.
       78  XPC-FLD0654B
           VALUE X'1152390677'.
       78  XPC-FLD0655B
           VALUE X'05949843308386091165206F'.
       78  XPC-FLD0656B
           VALUE X'0650007677567117914204561F'.
       78  XPC-FLD0657B
           VALUE X'070469220160326710801212968F'.
       78  XPC-FLD0658B
           VALUE X'053680173247006238712F'.
       78  XPC-FLD0659B
           VALUE X'0719555666672452026677575531'.
       78  XPC-FLD0660B
           VALUE X'27872D'.
       78  XPC-FLD0661B
           VALUE X'570540945315247127744F'.
       78  XPC-FLD0662B
           VALUE X'06678282186476681732324323'.
       78  XPC-FLD0663B
           VALUE X'0468269232052811142885673234559362'.
       78  XPC-FLD0664B
           VALUE X'04405659595288489C'.
       78  XPC-FLD0665B
           VALUE X'6766161649406166886924393F'.
       78  XPC-FLD0666B
           VALUE X'11'.
       78  XPC-FLD0667B
           VALUE X'0632143970272669745917438F'.
       78  XPC-FLD0668B
           VALUE X'5144628458672427461F'.
       78  XPC-FLD0669B
           VALUE X'0395936639786081'.
       78  XPC-FLD0670B
           VALUE X'0164380926561097741789296833303524182F'.
       78  XPC-FLD0671B
           VALUE X'08090443'.
       78  XPC-FLD0672B
           VALUE X'927915894513764975604231'.
       78  XPC-FLD0673B
           VALUE X'0749211224'.
       78  XPC-FLD0674B
           VALUE X'08225787711159490474084418921848'.
       78  XPC-FLD0675B
           VALUE X'05083625274155812858'.
       78  XPC-FLD0676B
           VALUE X'0004664170342459437179627457226160913F'.
       78  XPC-FLD0677B
           VALUE X'708676445455624266891447859961772F'.
       78  XPC-FLD0678B
           VALUE X'85979366357613359468814451247453'.
       78  XPC-FLD0679B
           VALUE X'044902781556612852'.
       78  XPC-FLD0680B
           VALUE X'564571038982083600804F'.
       78  XPC-FLD0681B
           VALUE X'0654877112290583873743782681004F'.
       78  XPC-FLD0682B
           VALUE X'5608815389721361803129542749957F'.
       78  XPC-FLD0683B
           VALUE X'05829822468269903673643F'.
       78  XPC-FLD0684B
           VALUE X'6208938998759875'.
       78  XPC-FLD0685B
           VALUE X'0536985204876752143500539204978F'.
       78  XPC-FLD0686B
           VALUE X'00180741962593756744226F'.
       78  XPC-FLD0687B
           VALUE X'456697463326542715'.
       78  XPC-FLD0688B
           VALUE X'0131'.
       78  XPC-FLD0689B
           VALUE X'0933318323052C'.
       78  XPC-FLD0690B
           VALUE X'02807895954D'.
       78  XPC-FLD0691B
           VALUE X'04747985190129340C'.
       78  XPC-FLD0692B
           VALUE X'278067587806645121846764'.
       78  XPC-FLD0693B
           VALUE X'0C'.
       78  XPC-FLD0694B
           VALUE X'06'.
       78  XPC-FLD0695B
           VALUE X'285416863016785357397587'.
       78  XPC-FLD0696B
           VALUE X'318862710902'.
       78  XPC-FLD0697B
           VALUE X'05576423548738693906'.
       78  XPC-FLD0698B
           VALUE X'614D'.
       78  XPC-FLD0699B
           VALUE X'22735335379771726138637F'.
       78  XPC-FLD0700B
           VALUE X'4D'.
       78  XPC-FLD0701B
           VALUE X'0824434325033338688548667501709982529F'.
       78  XPC-FLD0702B
           VALUE X'23424179'.
       78  XPC-FLD0703B
           VALUE X'335267041235'.
       78  XPC-FLD0704B
           VALUE X'08515404888861616825987F'.
       78  XPC-FLD0705B
           VALUE X'000818147177942940'.
       78  XPC-FLD0706B
           VALUE X'0327398D'.
       78  XPC-FLD0707B
           VALUE X'5129442198407349051F'.
       78  XPC-FLD0708B
           VALUE X'338347991943'.
       78  XPC-FLD0709B
           VALUE X'37934595068404'.
       78  XPC-FLD0710B
           VALUE X'0322996288513C'.
       78  XPC-FLD0711B
           VALUE X'73'.
       78  XPC-FLD0712B
           VALUE X'0555782537921349383D'.
       78  XPC-FLD0713B
           VALUE X'71121009'.
       78  XPC-FLD0714B
           VALUE X'02465946158468'.
       78  XPC-FLD0715B
           VALUE X'58869262308134147685'.
       78  XPC-FLD0716B
           VALUE X'04094336916239737930141018296126276F'.
       78  XPC-FLD0717B
           VALUE X'7570171861371541854879296806'.
       78  XPC-FLD0718B
           VALUE X'4283258317648062'.
       78  XPC-FLD0719B
           VALUE X'0239090461'.
       78  XPC-FLD0720B
           VALUE X'404886229426392C'.
       78  XPC-FLD0721B
           VALUE X'45808243'.
       78  XPC-FLD0722B
           VALUE X'07624904820924922808538326535F'.
       78  XPC-FLD0723B
           VALUE X'56'.
       78  XPC-FLD0724B
           VALUE X'04934011851187240393'.
       78  XPC-FLD0725B
           VALUE X'04444128191361023C'.
       78  XPC-FLD0726B
           VALUE X'401820868675800C'.
       78  XPC-FLD0727B
           VALUE X'00896082861134319673904889'.
       78  XPC-FLD0728B
           VALUE X'081076915652245D'.
       78  XPC-FLD0729B
           VALUE X'795979478015814722415832704883'.
       78  XPC-FLD0730B
           VALUE X'62944830238001500322120F'.
       78  XPC-FLD0731B
           VALUE X'04086517499647340789789F'.
       78  XPC-FLD0732B
           VALUE X'00313C'.
       78  XPC-FLD0733B
           VALUE X'965641152048700750127567'.
       78  XPC-FLD0734B
           VALUE X'26'.
       78  XPC-FLD0735B
           VALUE X'0641708846027484955070190F'.
       78  XPC-FLD0736B
           VALUE X'072589764082146861645222974767'.
       78  XPC-FLD0737B
           VALUE X'522443922D'.
       78  XPC-FLD0738B
           VALUE X'512073900331931666778700673603452743'.
       78  XPC-FLD0739B
           VALUE X'0459162078493461292D'.
       78  XPC-FLD0740B
           VALUE X'072773632191726975291885537444614F'.
       78  XPC-FLD0741B
           VALUE X'0644169236711C'.
       78  XPC-FLD0742B
           VALUE X'88899021862D'.
       78  XPC-FLD0743B
           VALUE X'02956850'.
       78  XPC-FLD0744B
           VALUE X'2695622879'.
       78  XPC-FLD0745B
           VALUE X'013558'.
       78  XPC-FLD0746B
           VALUE X'0231527099755997057F'.
       78  XPC-FLD0747B
           VALUE X'4879952390867385986918298294767737'.
       78  XPC-FLD0748B
           VALUE X'0181187D'.
       78  XPC-FLD0749B
           VALUE X'2760411381430374631233670697839F'.
       78  XPC-FLD0750B
           VALUE X'262999561974'.
       78  XPC-FLD0751B
           VALUE X'15170D'.
       78  XPC-FLD0752B
           VALUE X'91538508268330654527034084821934811F'.
       78  XPC-FLD0753B
           VALUE X'9C'.
       78  XPC-FLD0754B
           VALUE X'0961172590'.
       78  XPC-FLD0755B
           VALUE X'053471365948751090643F'.
       78  XPC-FLD0756B
           VALUE X'10424D'.
       78  XPC-FLD0757B
           VALUE X'242943831C'.
       78  XPC-FLD0758B
           VALUE X'0455928D'.
       78  XPC-FLD0759B
           VALUE X'07622235272467824718001239148F'.
       78  XPC-FLD0760B
           VALUE X'09469886609778104836721013271017001F'.
       78  XPC-FLD0761B
           VALUE X'031926781976263429729812'.
       78  XPC-FLD0762B
           VALUE X'0884402939'.
       78  XPC-FLD0763B
           VALUE X'283690925904618196362605387461'.
       78  XPC-FLD0764B
           VALUE X'055560951487484800'.
       78  XPC-FLD0765B
           VALUE X'01212C'.
       78  XPC-FLD0766B
           VALUE X'22949432'.
       78  XPC-FLD0767B
           VALUE X'1D'.
       78  XPC-FLD0768B
           VALUE X'096D'.
       78  XPC-FLD0769B
           VALUE X'03586597857349'.
       78  XPC-FLD0770B
           VALUE X'054829803888151060764504'.
       78  XPC-FLD0771B
           VALUE X'075991198999121606361129010F'.
       78  XPC-FLD0772B
           VALUE X'0090893446885686'.
       78  XPC-FLD0773B
           VALUE X'76783997423560348547511011929600499F'.
       78  XPC-FLD0774B
           VALUE X'242589104C'.
       78  XPC-FLD0775B
           VALUE X'83006085498341006789723905967548489F'.
       78  XPC-FLD0776B
           VALUE X'65983936382796708763014976284467'.
       78  XPC-FLD0777B
           VALUE X'563799910901816754889F'.
       78  XPC-FLD0778B
           VALUE X'6562465464730475300569878527312539'.
       78  XPC-FLD0779B
           VALUE X'0474089855326103228D'.
       78  XPC-FLD0780B
           VALUE X'4184481254630997580198368268612F'.
       78  XPC-FLD0781B
           VALUE X'029720911669'.
       78  XPC-FLD0782B
           VALUE X'974841984908992382763415207591606305'.
       78  XPC-FLD0783B
           VALUE X'04236442572674454C'.
       78  XPC-FLD0784B
           VALUE X'1401654002801979714825902150218F'.
       78  XPC-FLD0785B
           VALUE X'393300524051'.
       78  XPC-FLD0786B
           VALUE X'085407905679605532414111479511120F'.
       78  XPC-FLD0787B
           VALUE X'00464285'.
       78  XPC-FLD0788B
           VALUE X'077898336505928358503125785716'.
       78  XPC-FLD0789B
           VALUE X'6604278565132847496040994F'.
       78  XPC-FLD0790B
           VALUE X'31694368662D'.
       78  XPC-FLD0791B
           VALUE X'7382741348868294886190710712'.
       78  XPC-FLD0792B
           VALUE X'37982443954012'.
       78  XPC-FLD0793B
           VALUE X'0559177637820166807230'.
       78  XPC-FLD0794B
           VALUE X'0D'.
       78  XPC-FLD0795B
           VALUE X'0334944006958C'.
       78  XPC-FLD0796B
           VALUE X'0653841465915909014761098205'.
       78  XPC-FLD0797B
           VALUE X'03487774860252'.
       78  XPC-FLD0798B
           VALUE X'3415780672379371043808250F'.
       78  XPC-FLD0799B
           VALUE X'024239306208646738127F'.
       78  XPC-FLD0800B
           VALUE X'4337360023'.
       78  XPC-FLD0801B
           VALUE X'9633203702397862694706986985693220049F'.
       78  XPC-FLD0802B
           VALUE X'059390909987167776897365456534317F'.
       78  XPC-FLD0803B
           VALUE X'0555623043499399698487'.
       78  XPC-FLD0804B
           VALUE X'02'.
       78  XPC-FLD0805B
           VALUE X'479868190466873291'.
       78  XPC-FLD0806B
           VALUE X'2580784568425466'.
       78  XPC-FLD0807B
           VALUE X'592C'.
       78  XPC-FLD0808B
           VALUE X'045744550475690953'.
       78  XPC-FLD0809B
           VALUE X'04404211618158996C'.
       78  XPC-FLD0810B
           VALUE X'021294550C'.
       78  XPC-FLD0811B
           VALUE X'5454913861947337423021251372119877487F'.
       78  XPC-FLD0812B
           VALUE X'5678497418'.
       78  XPC-FLD0813B
           VALUE X'29113136400D'.
       78  XPC-FLD0814B
           VALUE X'07525119595496631362479433846F'.
       78  XPC-FLD0815B
           VALUE X'0714304561558653405839436344638434439F'.
       78  XPC-FLD0816B
           VALUE X'0532563204313666438416366152096307'.
       78  XPC-FLD0817B
           VALUE X'00322267276165150162'.
       78  XPC-FLD0818B
           VALUE X'0409797454111609544843745425'.
       78  XPC-FLD0819B
           VALUE X'082D'.
       78  XPC-FLD0820B
           VALUE X'956537139953218984445015848905313760'.
       78  XPC-FLD0821B
           VALUE X'038365653639422D'.
       78  XPC-FLD0822B
           VALUE X'2945'.
       78  XPC-FLD0823B
           VALUE X'484310601769554C'.
       78  XPC-FLD0824B
           VALUE X'073189644908504480898002'.
       78  XPC-FLD0825B
           VALUE X'0170692D'.
       78  XPC-FLD0826B
           VALUE X'0480578557209735916D'.
       78  XPC-FLD0827B
           VALUE X'046910500983725490'.
       78  XPC-FLD0828B
           VALUE X'00993C'.
       78  XPC-FLD0829B
           VALUE X'944972866636283770347403930829'.
       78  XPC-FLD0830B
           VALUE X'0565534908381171491840'.
       78  XPC-FLD0831B
           VALUE X'6602934475151655210356515F'.
       78  XPC-FLD0832B
           VALUE X'0419047953539795'.
       78  XPC-FLD0833B
           VALUE X'6657954482808921498060428F'.
       78  XPC-FLD0834B
           VALUE X'780178461140043863949386833F'.
       78  XPC-FLD0835B
           VALUE X'090696211292909090229130697187'.
       78  XPC-FLD0836B
           VALUE X'01479247899592904941896F'.
       78  XPC-FLD0837B
           VALUE X'29146758519D'.
       78  XPC-FLD0838B
           VALUE X'54394205787057270376334726969F'.
       78  XPC-FLD0839B
           VALUE X'05300514'.
       78  XPC-FLD0840B
           VALUE X'1153'.
       78  XPC-FLD0841B
           VALUE X'0992981736583248397742806176703F'.
       78  XPC-FLD0842B
           VALUE X'054030708425366313836265591069241055'.
       78  XPC-FLD0843B
           VALUE X'31166916723C'.
       78  XPC-FLD0844B
           VALUE X'044793585873382490'.
       78  XPC-FLD0845B
           VALUE X'0555020066479501195111220F'.
       78  XPC-FLD0846B
           VALUE X'045502277490866085'.
       78  XPC-FLD0847B
           VALUE X'029702735772'.
       78  XPC-FLD0848B
           VALUE X'631805001566330881601629698F'.
       78  XPC-FLD0849B
           VALUE X'03125884051750275061046194363F'.
       78  XPC-FLD0850B
           VALUE X'0213070204849290532925563F'.
       78  XPC-FLD0851B
           VALUE X'22519773'.
       78  XPC-FLD0852B
           VALUE X'1471732987'.
       78  XPC-FLD0853B
           VALUE X'0C'.
       78  XPC-FLD0854B
           VALUE X'09'.
       78  XPC-FLD0855B
           VALUE X'796064'.
       78  XPC-FLD0856B
           VALUE X'30842D'.
       78  XPC-FLD0857B
           VALUE X'011C'.
       78  XPC-FLD0858B
           VALUE X'029627833617'.
       78  XPC-FLD0859B
           VALUE X'0971628168143447767945986015547532588F'.
       78  XPC-FLD0860B
           VALUE X'310782983915'.
       78  XPC-FLD0861B
           VALUE X'1091'.
       78  XPC-FLD0862B
           VALUE X'0568978369365978243754'.
       78  XPC-FLD0863B
           VALUE X'05171345793694755750'.
       78  XPC-FLD0864B
           VALUE X'0409403590364872439594022918754491'.
       78  XPC-FLD0865B
           VALUE X'328C'.
       78  XPC-FLD0866B
           VALUE X'0973651490201067931957936707476620'.
       78  XPC-FLD0867B
           VALUE X'0728938616966572774526298417'.
       78  XPC-FLD0868B
           VALUE X'05841479951825634534535F'.
       78  XPC-FLD0869B
           VALUE X'6815782206919422936408636F'.
       78  XPC-FLD0870B
           VALUE X'657570531523696821807334'.
       78  XPC-FLD0871B
           VALUE X'5744601464762396635F'.
       78  XPC-FLD0872B
           VALUE X'045914011344767276'.
       78  XPC-FLD0873B
           VALUE X'076853'.
       78  XPC-FLD0874B
           VALUE X'01881063'.
       78  XPC-FLD0875B
           VALUE X'32'.
       78  XPC-FLD0876B
           VALUE X'0792823887607293276147402139031F'.
       78  XPC-FLD0877B
           VALUE X'0651975862412979334514773F'.
       78  XPC-FLD0878B
           VALUE X'242827678838084315415812843661207F'.
       78  XPC-FLD0879B
           VALUE X'056764772794591269560129376259283F'.
       78  XPC-FLD0880B
           VALUE X'04839436714022342976684717541503'.
       78  XPC-FLD0881B
           VALUE X'2105193947195C'.
       78  XPC-FLD0882B
           VALUE X'02108803940594616843638067'.
       78  XPC-FLD0883B
           VALUE X'9754132777012324284626648395'.
       78  XPC-FLD0884B
           VALUE X'06490392032439449247535630967F'.
       78  XPC-FLD0885B
           VALUE X'02072D'.
       78  XPC-FLD0886B
           VALUE X'000595069070307D'.
       78  XPC-FLD0887B
           VALUE X'09306168018675709582439026235078'.
       78  XPC-FLD0888B
           VALUE X'0118607301'.
       78  XPC-FLD0889B
           VALUE X'0286280324389502793813733205752214417F'.
       78  XPC-FLD0890B
           VALUE X'721613583480198661490589984F'.
       78  XPC-FLD0891B
           VALUE X'0735270814161123614247195235'.
       78  XPC-FLD0892B
           VALUE X'0556'.
       78  XPC-FLD0893B
           VALUE X'07'.
       78  XPC-FLD0894B
           VALUE X'654309128000748152942379'.
       78  XPC-FLD0895B
           VALUE X'2889386308'.
       78  XPC-FLD0896B
           VALUE X'0D'.
       78  XPC-FLD0897B
           VALUE X'04404922200833587C'.
       78  XPC-FLD0898B
           VALUE X'08343520'.
       78  XPC-FLD0899B
           VALUE X'5130606210827636'.
       78  XPC-FLD0900B
           VALUE X'01847104'.
       78  XPC-FLD0901B
           VALUE X'01289396298369796609307513790554367005'.
       78  XPC-FLD0902B
           VALUE X'5131049785081560397F'.
       78  XPC-FLD0903B
           VALUE X'046C'.
       78  XPC-FLD0904B
           VALUE X'7D'.
       78  XPC-FLD0905B
           VALUE X'07075373564412'.
       78  XPC-FLD0906B
           VALUE X'07'.
       78  XPC-FLD0907B
           VALUE X'0530207411746521324809'.
       78  XPC-FLD0908B
           VALUE X'08642393083548316472445662839163561F'.
       78  XPC-FLD0909B
           VALUE X'00'.
       78  XPC-FLD0910B
           VALUE X'2257333765600096867487422969134058'.
       78  XPC-FLD0911B
           VALUE X'03765938103187097346508025840F'.
       78  XPC-FLD0912B
           VALUE X'00'.
       78  XPC-FLD0913B
           VALUE X'0325'.
       78  XPC-FLD0914B
           VALUE X'7400121849171126253708052900037643855F'.
       78  XPC-FLD0915B
           VALUE X'02036C'.
       78  XPC-FLD0916B
           VALUE X'4372777685598984'.
       78  XPC-FLD0917B
           VALUE X'1084'.
       78  XPC-FLD0918B
           VALUE X'0569310510294893204244'.
       78  XPC-FLD0919B
           VALUE X'6D'.
       78  XPC-FLD0920B
           VALUE X'06698607602658151664433262'.
       78  XPC-FLD0921B
           VALUE X'0C'.
       78  XPC-FLD0922B
           VALUE X'0183318D'.
       78  XPC-FLD0923B
           VALUE X'00892C'.
       78  XPC-FLD0924B
           VALUE X'6753252278154044870414354451350F'.
       78  XPC-FLD0925B
           VALUE X'6C'.
       78  XPC-FLD0926B
           VALUE X'206877212D'.
       78  XPC-FLD0927B
           VALUE X'5121865708750312359F'.
       78  XPC-FLD0928B
           VALUE X'0255169492'.
       78  XPC-FLD0929B
           VALUE X'713937683093887626162299398F'.
       78  XPC-FLD0930B
           VALUE X'05915948649192320925289F'.
       78  XPC-FLD0931B
           VALUE X'124377459C'.
       78  XPC-FLD0932B
           VALUE X'00116711468219923287'.
       78  XPC-FLD0933B
           VALUE X'328435728864'.
       78  XPC-FLD0934B
           VALUE X'0237750091'.
       78  XPC-FLD0935B
           VALUE X'485384635684275264'.
       78  XPC-FLD0936B
           VALUE X'0418311146814978578269972331327153370F'.
       78  XPC-FLD0937B
           VALUE X'05'.
       78  XPC-FLD0938B
           VALUE X'07520562026683963451729041'.
       78  XPC-FLD0939B
           VALUE X'7C'.
       78  XPC-FLD0940B
           VALUE X'420205546087499959'.
       78  XPC-FLD0941B
           VALUE X'03450283323540'.
       78  XPC-FLD0942B
           VALUE X'94510218123579575949541058434988373F'.
       78  XPC-FLD0943B
           VALUE X'9698175C'.
       78  XPC-FLD0944B
           VALUE X'260056094D'.
       78  XPC-FLD0945B
           VALUE X'09639552190838519C'.
       78  XPC-FLD0946B
           VALUE X'0285407519811451561686510558502050116F'.
       78  XPC-FLD0947B
           VALUE X'6720279273588082815549249F'.
       78  XPC-FLD0948B
           VALUE X'7581536805549627281493485497'.
       78  XPC-FLD0949B
           VALUE X'089772746643169742'.
       78  XPC-FLD0950B
           VALUE X'9466572989771413480277234393870459'.
       78  XPC-FLD0951B
           VALUE X'0571609040492847894313968026'.
       78  XPC-FLD0952B
           VALUE X'65'.
       78  XPC-FLD0953B
           VALUE X'05187948954462912461'.
       78  XPC-FLD0954B
           VALUE X'0525409336908340408209862744115525857F'.
       78  XPC-FLD0955B
           VALUE X'5341017709695240897178791783518F'.
       78  XPC-FLD0956B
           VALUE X'097384559702281070479269828F'.
       78  XPC-FLD0957B
           VALUE X'01212C'.
       78  XPC-FLD0958B
           VALUE X'4387549590870288'.
       78  XPC-FLD0959B
           VALUE X'1C'.
       78  XPC-FLD0960B
           VALUE X'1D'.
       78  XPC-FLD0961B
           VALUE X'00056C'.
       78  XPC-FLD0962B
           VALUE X'6826560363239254262940347F'.
       78  XPC-FLD0963B
           VALUE X'06579508606108431242392875'.
       78  XPC-FLD0964B
           VALUE X'0399362942016605604323'.
       78  XPC-FLD0965B
           VALUE X'01'.
       78  XPC-FLD0966B
           VALUE X'00005571'.
       78  XPC-FLD0967B
           VALUE X'03560456473147'.
       78  XPC-FLD0968B
           VALUE X'05531D'.
       78  XPC-FLD0969B
           VALUE X'05945236920989867723715F'.
       78  XPC-FLD0970B
           VALUE X'433217720233246760537693012156523765'.
       78  XPC-FLD0971B
           VALUE X'402866616015322C'.
       78  XPC-FLD0972B
           VALUE X'096534'.
       78  XPC-FLD0973B
           VALUE X'08420775282429751358819203232997'.
       78  XPC-FLD0974B
           VALUE X'076D'.
       78  XPC-FLD0975B
           VALUE X'329183574054'.
       78  XPC-FLD0976B
           VALUE X'05189195631532426046'.
       78  XPC-FLD0977B
           VALUE X'006577733509987D'.
       78  XPC-FLD0978B
           VALUE X'263651133125830D'.
       78  XPC-FLD0979B
           VALUE X'38851072771967'.
       78  XPC-FLD0980B
           VALUE X'647159056743324437308229'.
       78  XPC-FLD0981B
           VALUE X'3602784782762D'.
       78  XPC-FLD0982B
           VALUE X'30653235444C'.
       78  XPC-FLD0983B
           VALUE X'882516211995383510538363225350622087'.
       78  XPC-FLD0984B
           VALUE X'04457843883822408592'.
       78  XPC-FLD0985B
           VALUE X'496108848273749947698929645412135F'.
       78  XPC-FLD0986B
           VALUE X'08'.
       78  XPC-FLD0987B
           VALUE X'084253493742279825972518736421080F'.
       78  XPC-FLD0988B
           VALUE X'0181520D'.
       78  XPC-FLD0989B
           VALUE X'05932140179792923634499F'.
       78  XPC-FLD0990B
           VALUE X'05970979'.
       78  XPC-FLD0991B
           VALUE X'404273028987099C'.
       78  XPC-FLD0992B
           VALUE X'518805985017170789852514182650362F'.
       78  XPC-FLD0993B
           VALUE X'05599C'.
       78  XPC-FLD0994B
           VALUE X'0484793408353182154D'.
       78  XPC-FLD0995B
           VALUE X'01888258'.
       78  XPC-FLD0996B
           VALUE X'00505105346267128441084558'.
       78  XPC-FLD0997B
           VALUE X'0011799546758455291F'.
       78  XPC-FLD0998B
           VALUE X'3D'.
       78  XPC-FLD0999B
           VALUE X'1D'.

       01  FILLER       USAGE BINARY-INT VALUE 0.
           88 DO-DISP   VALUE 0.
           88 NO-DISP   VALUE 1.

       REPLACE ==DISPLAY== BY ==IF DO-DISP  DISPLAY==.
       PROCEDURE        DIVISION.
       MAIN.
      *    Test with DISPLAY on error
           PERFORM DO-CHECK.
       >> IF CHECK-PERF IS DEFINED
           SET  NO-DISP    TO TRUE
      *    some performance checks on the way...
           PERFORM DO-CHECK 10000 TIMES.
       >> END-IF
           GOBACK.

       DO-CHECK.
      *2000-TEST.

           SUBTRACT FLD0500A        FROM FLD0500B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0501A        TO FLD0501B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0502A        FROM FLD0502B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0503A        TO FLD0503B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0504A        FROM FLD0504B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0505A        TO FLD0505B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0506A        FROM FLD0506B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0507A        TO FLD0507B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0508A        FROM FLD0508B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0509A        TO FLD0509B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0510A        FROM FLD0510B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0511A        TO FLD0511B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0512A        FROM FLD0512B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0513A        TO FLD0513B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0514A        FROM FLD0514B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0515A        TO FLD0515B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0516A        FROM FLD0516B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0517A        TO FLD0517B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0518A        FROM FLD0518B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0519A        TO FLD0519B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0520A        FROM FLD0520B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0521A        TO FLD0521B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0522A        FROM FLD0522B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0523A        TO FLD0523B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0524A        FROM FLD0524B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0525A        TO FLD0525B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0526A        FROM FLD0526B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0527A        TO FLD0527B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0528A        FROM FLD0528B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0529A        TO FLD0529B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0530A        FROM FLD0530B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0531A        TO FLD0531B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0532A        FROM FLD0532B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0533A        TO FLD0533B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0534A        FROM FLD0534B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0535A        TO FLD0535B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0536A        FROM FLD0536B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0537A        TO FLD0537B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0538A        FROM FLD0538B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0539A        TO FLD0539B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0540A        FROM FLD0540B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0541A        TO FLD0541B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0542A        FROM FLD0542B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0543A        TO FLD0543B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0544A        FROM FLD0544B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0545A        TO FLD0545B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0546A        FROM FLD0546B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0547A        TO FLD0547B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0548A        FROM FLD0548B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0549A        TO FLD0549B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0550A        FROM FLD0550B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0551A        TO FLD0551B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0552A        FROM FLD0552B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0553A        TO FLD0553B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0554A        FROM FLD0554B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0555A        TO FLD0555B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0556A        FROM FLD0556B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0557A        TO FLD0557B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0558A        FROM FLD0558B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0559A        TO FLD0559B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0560A        FROM FLD0560B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0561A        TO FLD0561B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0562A        FROM FLD0562B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0563A        TO FLD0563B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0564A        FROM FLD0564B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0565A        TO FLD0565B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0566A        FROM FLD0566B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0567A        TO FLD0567B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0568A        FROM FLD0568B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0569A        TO FLD0569B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0570A        FROM FLD0570B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0571A        TO FLD0571B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0572A        FROM FLD0572B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0573A        TO FLD0573B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0574A        FROM FLD0574B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0575A        TO FLD0575B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0576A        FROM FLD0576B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0577A        TO FLD0577B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0578A        FROM FLD0578B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0579A        TO FLD0579B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0580A        FROM FLD0580B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0581A        TO FLD0581B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0582A        FROM FLD0582B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0583A        TO FLD0583B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0584A        FROM FLD0584B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0585A        TO FLD0585B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0586A        FROM FLD0586B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0587A        TO FLD0587B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0588A        FROM FLD0588B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0589A        TO FLD0589B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0590A        FROM FLD0590B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0591A        TO FLD0591B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0592A        FROM FLD0592B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0593A        TO FLD0593B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0594A        FROM FLD0594B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0595A        TO FLD0595B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0596A        FROM FLD0596B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0597A        TO FLD0597B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0598A        FROM FLD0598B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0599A        TO FLD0599B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0600A        FROM FLD0600B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0601A        TO FLD0601B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0602A        FROM FLD0602B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0603A        TO FLD0603B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0604A        FROM FLD0604B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0605A        TO FLD0605B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0606A        FROM FLD0606B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0607A        TO FLD0607B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0608A        FROM FLD0608B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0609A        TO FLD0609B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0610A        FROM FLD0610B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0611A        TO FLD0611B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0612A        FROM FLD0612B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0613A        TO FLD0613B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0614A        FROM FLD0614B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0615A        TO FLD0615B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0616A        FROM FLD0616B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0617A        TO FLD0617B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0618A        FROM FLD0618B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0619A        TO FLD0619B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0620A        FROM FLD0620B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0621A        TO FLD0621B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0622A        FROM FLD0622B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0623A        TO FLD0623B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0624A        FROM FLD0624B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0625A        TO FLD0625B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0626A        FROM FLD0626B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0627A        TO FLD0627B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0628A        FROM FLD0628B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0629A        TO FLD0629B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0630A        FROM FLD0630B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0631A        TO FLD0631B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0632A        FROM FLD0632B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0633A        TO FLD0633B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0634A        FROM FLD0634B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0635A        TO FLD0635B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0636A        FROM FLD0636B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0637A        TO FLD0637B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0638A        FROM FLD0638B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0639A        TO FLD0639B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0640A        FROM FLD0640B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0641A        TO FLD0641B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0642A        FROM FLD0642B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0643A        TO FLD0643B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0644A        FROM FLD0644B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0645A        TO FLD0645B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0646A        FROM FLD0646B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0647A        TO FLD0647B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0648A        FROM FLD0648B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0649A        TO FLD0649B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0650A        FROM FLD0650B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0651A        TO FLD0651B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0652A        FROM FLD0652B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0653A        TO FLD0653B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0654A        FROM FLD0654B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0655A        TO FLD0655B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0656A        FROM FLD0656B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0657A        TO FLD0657B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0658A        FROM FLD0658B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0659A        TO FLD0659B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0660A        FROM FLD0660B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0661A        TO FLD0661B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0662A        FROM FLD0662B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0663A        TO FLD0663B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0664A        FROM FLD0664B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0665A        TO FLD0665B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0666A        FROM FLD0666B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0667A        TO FLD0667B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0668A        FROM FLD0668B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0669A        TO FLD0669B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0670A        FROM FLD0670B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0671A        TO FLD0671B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0672A        FROM FLD0672B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0673A        TO FLD0673B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0674A        FROM FLD0674B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0675A        TO FLD0675B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0676A        FROM FLD0676B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0677A        TO FLD0677B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0678A        FROM FLD0678B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0679A        TO FLD0679B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0680A        FROM FLD0680B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0681A        TO FLD0681B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0682A        FROM FLD0682B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0683A        TO FLD0683B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0684A        FROM FLD0684B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0685A        TO FLD0685B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0686A        FROM FLD0686B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0687A        TO FLD0687B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0688A        FROM FLD0688B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0689A        TO FLD0689B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0690A        FROM FLD0690B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0691A        TO FLD0691B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0692A        FROM FLD0692B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0693A        TO FLD0693B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0694A        FROM FLD0694B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0695A        TO FLD0695B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0696A        FROM FLD0696B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0697A        TO FLD0697B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0698A        FROM FLD0698B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0699A        TO FLD0699B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0700A        FROM FLD0700B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0701A        TO FLD0701B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0702A        FROM FLD0702B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0703A        TO FLD0703B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0704A        FROM FLD0704B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0705A        TO FLD0705B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0706A        FROM FLD0706B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0707A        TO FLD0707B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0708A        FROM FLD0708B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0709A        TO FLD0709B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0710A        FROM FLD0710B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0711A        TO FLD0711B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0712A        FROM FLD0712B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0713A        TO FLD0713B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0714A        FROM FLD0714B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0715A        TO FLD0715B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0716A        FROM FLD0716B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0717A        TO FLD0717B
               ROUNDED MODE IS PROHIBITED
              ON SIZE ERROR CONTINUE
             NOT ON SIZE ERROR DISPLAY 'MISSING EC-SIZE FLD0717B'.
           SUBTRACT FLD0718A        FROM FLD0718B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0719A        TO FLD0719B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0720A        FROM FLD0720B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0721A        TO FLD0721B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0722A        FROM FLD0722B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0723A        TO FLD0723B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0724A        FROM FLD0724B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0725A        TO FLD0725B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0726A        FROM FLD0726B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0727A        TO FLD0727B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0728A        FROM FLD0728B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0729A        TO FLD0729B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0730A        FROM FLD0730B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0731A        TO FLD0731B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0732A        FROM FLD0732B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0733A        TO FLD0733B
               ROUNDED MODE IS PROHIBITED
                 ON SIZE ERROR DISPLAY 'UNEXPECTED EC-SIZE FLD0733B'.
           SUBTRACT FLD0734A        FROM FLD0734B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0735A        TO FLD0735B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0736A        FROM FLD0736B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0737A        TO FLD0737B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0738A        FROM FLD0738B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0739A        TO FLD0739B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0740A        FROM FLD0740B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0741A        TO FLD0741B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0742A        FROM FLD0742B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0743A        TO FLD0743B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0744A        FROM FLD0744B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0745A        TO FLD0745B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0746A        FROM FLD0746B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0747A        TO FLD0747B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0748A        FROM FLD0748B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0749A        TO FLD0749B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0750A        FROM FLD0750B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0751A        TO FLD0751B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0752A        FROM FLD0752B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0753A        TO FLD0753B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0754A        FROM FLD0754B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0755A        TO FLD0755B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0756A        FROM FLD0756B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0757A        TO FLD0757B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0758A        FROM FLD0758B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0759A        TO FLD0759B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0760A        FROM FLD0760B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0761A        TO FLD0761B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0762A        FROM FLD0762B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0763A        TO FLD0763B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0764A        FROM FLD0764B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0765A        TO FLD0765B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0766A        FROM FLD0766B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0767A        TO FLD0767B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0768A        FROM FLD0768B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0769A        TO FLD0769B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0770A        FROM FLD0770B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0771A        TO FLD0771B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0772A        FROM FLD0772B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0773A        TO FLD0773B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0774A        FROM FLD0774B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0775A        TO FLD0775B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0776A        FROM FLD0776B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0777A        TO FLD0777B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0778A        FROM FLD0778B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0779A        TO FLD0779B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0780A        FROM FLD0780B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0781A        TO FLD0781B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0782A        FROM FLD0782B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0783A        TO FLD0783B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0784A        FROM FLD0784B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0785A        TO FLD0785B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0786A        FROM FLD0786B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0787A        TO FLD0787B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0788A        FROM FLD0788B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0789A        TO FLD0789B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0790A        FROM FLD0790B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0791A        TO FLD0791B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0792A        FROM FLD0792B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0793A        TO FLD0793B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0794A        FROM FLD0794B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0795A        TO FLD0795B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0796A        FROM FLD0796B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0797A        TO FLD0797B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0798A        FROM FLD0798B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0799A        TO FLD0799B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0800A        FROM FLD0800B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0801A        TO FLD0801B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0802A        FROM FLD0802B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0803A        TO FLD0803B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0804A        FROM FLD0804B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0805A        TO FLD0805B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0806A        FROM FLD0806B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0807A        TO FLD0807B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0808A        FROM FLD0808B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0809A        TO FLD0809B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0810A        FROM FLD0810B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0811A        TO FLD0811B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0812A        FROM FLD0812B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0813A        TO FLD0813B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0814A        FROM FLD0814B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0815A        TO FLD0815B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0816A        FROM FLD0816B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0817A        TO FLD0817B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0818A        FROM FLD0818B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0819A        TO FLD0819B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0820A        FROM FLD0820B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0821A        TO FLD0821B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0822A        FROM FLD0822B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0823A        TO FLD0823B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0824A        FROM FLD0824B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0825A        TO FLD0825B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0826A        FROM FLD0826B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0827A        TO FLD0827B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0828A        FROM FLD0828B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0829A        TO FLD0829B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0830A        FROM FLD0830B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0831A        TO FLD0831B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0832A        FROM FLD0832B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0833A        TO FLD0833B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0834A        FROM FLD0834B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0835A        TO FLD0835B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0836A        FROM FLD0836B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0837A        TO FLD0837B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0838A        FROM FLD0838B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0839A        TO FLD0839B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0840A        FROM FLD0840B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0841A        TO FLD0841B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0842A        FROM FLD0842B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0843A        TO FLD0843B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0844A        FROM FLD0844B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0845A        TO FLD0845B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0846A        FROM FLD0846B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0847A        TO FLD0847B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0848A        FROM FLD0848B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0849A        TO FLD0849B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0850A        FROM FLD0850B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0851A        TO FLD0851B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0852A        FROM FLD0852B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0853A        TO FLD0853B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0854A        FROM FLD0854B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0855A        TO FLD0855B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0856A        FROM FLD0856B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0857A        TO FLD0857B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0858A        FROM FLD0858B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0859A        TO FLD0859B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0860A        FROM FLD0860B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0861A        TO FLD0861B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0862A        FROM FLD0862B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0863A        TO FLD0863B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0864A        FROM FLD0864B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0865A        TO FLD0865B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0866A        FROM FLD0866B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0867A        TO FLD0867B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0868A        FROM FLD0868B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0869A        TO FLD0869B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0870A        FROM FLD0870B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0871A        TO FLD0871B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0872A        FROM FLD0872B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0873A        TO FLD0873B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0874A        FROM FLD0874B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0875A        TO FLD0875B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0876A        FROM FLD0876B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0877A        TO FLD0877B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0878A        FROM FLD0878B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0879A        TO FLD0879B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0880A        FROM FLD0880B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0881A        TO FLD0881B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0882A        FROM FLD0882B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0883A        TO FLD0883B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0884A        FROM FLD0884B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0885A        TO FLD0885B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0886A        FROM FLD0886B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0887A        TO FLD0887B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0888A        FROM FLD0888B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0889A        TO FLD0889B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0890A        FROM FLD0890B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0891A        TO FLD0891B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0892A        FROM FLD0892B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0893A        TO FLD0893B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0894A        FROM FLD0894B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0895A        TO FLD0895B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0896A        FROM FLD0896B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0897A        TO FLD0897B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0898A        FROM FLD0898B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0899A        TO FLD0899B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0900A        FROM FLD0900B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0901A        TO FLD0901B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0902A        FROM FLD0902B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0903A        TO FLD0903B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0904A        FROM FLD0904B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0905A        TO FLD0905B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0906A        FROM FLD0906B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0907A        TO FLD0907B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0908A        FROM FLD0908B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0909A        TO FLD0909B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0910A        FROM FLD0910B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0911A        TO FLD0911B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0912A        FROM FLD0912B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0913A        TO FLD0913B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0914A        FROM FLD0914B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0915A        TO FLD0915B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0916A        FROM FLD0916B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0917A        TO FLD0917B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0918A        FROM FLD0918B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0919A        TO FLD0919B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0920A        FROM FLD0920B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0921A        TO FLD0921B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0922A        FROM FLD0922B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0923A        TO FLD0923B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0924A        FROM FLD0924B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0925A        TO FLD0925B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0926A        FROM FLD0926B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0927A        TO FLD0927B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0928A        FROM FLD0928B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0929A        TO FLD0929B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0930A        FROM FLD0930B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0931A        TO FLD0931B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0932A        FROM FLD0932B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0933A        TO FLD0933B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0934A        FROM FLD0934B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0935A        TO FLD0935B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0936A        FROM FLD0936B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0937A        TO FLD0937B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0938A        FROM FLD0938B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0939A        TO FLD0939B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0940A        FROM FLD0940B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0941A        TO FLD0941B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0942A        FROM FLD0942B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0943A        TO FLD0943B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0944A        FROM FLD0944B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0945A        TO FLD0945B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0946A        FROM FLD0946B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0947A        TO FLD0947B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0948A        FROM FLD0948B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0949A        TO FLD0949B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0950A        FROM FLD0950B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0951A        TO FLD0951B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0952A        FROM FLD0952B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0953A        TO FLD0953B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0954A        FROM FLD0954B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0955A        TO FLD0955B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0956A        FROM FLD0956B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0957A        TO FLD0957B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0958A        FROM FLD0958B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0959A        TO FLD0959B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0960A        FROM FLD0960B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0961A        TO FLD0961B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0962A        FROM FLD0962B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0963A        TO FLD0963B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0964A        FROM FLD0964B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0965A        TO FLD0965B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0966A        FROM FLD0966B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0967A        TO FLD0967B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0968A        FROM FLD0968B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0969A        TO FLD0969B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0970A        FROM FLD0970B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0971A        TO FLD0971B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0972A        FROM FLD0972B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0973A        TO FLD0973B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0974A        FROM FLD0974B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0975A        TO FLD0975B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0976A        FROM FLD0976B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0977A        TO FLD0977B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0978A        FROM FLD0978B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0979A        TO FLD0979B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0980A        FROM FLD0980B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0981A        TO FLD0981B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0982A        FROM FLD0982B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0983A        TO FLD0983B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0984A        FROM FLD0984B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0985A        TO FLD0985B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0986A        FROM FLD0986B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0987A        TO FLD0987B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0988A        FROM FLD0988B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0989A        TO FLD0989B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0990A        FROM FLD0990B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0991A        TO FLD0991B
               ROUNDED MODE IS TOWARD-LESSER         .
           SUBTRACT FLD0992A        FROM FLD0992B
               ROUNDED MODE IS TRUNCATION            .
           ADD FLD0993A        TO FLD0993B
               ROUNDED MODE IS AWAY-FROM-ZERO        .
           SUBTRACT FLD0994A        FROM FLD0994B
               ROUNDED MODE IS NEAREST-AWAY-FROM-ZERO.
           ADD FLD0995A        TO FLD0995B
               ROUNDED MODE IS NEAREST-EVEN          .
           SUBTRACT FLD0996A        FROM FLD0996B
               ROUNDED MODE IS NEAREST-TOWARD-ZERO   .
           ADD FLD0997A        TO FLD0997B
               ROUNDED MODE IS PROHIBITED            .
           SUBTRACT FLD0998A        FROM FLD0998B
               ROUNDED MODE IS TOWARD-GREATER        .
           ADD FLD0999A        TO FLD0999B
               ROUNDED MODE IS TOWARD-LESSER         .

      *4000-COMPARE.

           IF FLD0500B (1:)    NOT EQUAL XPC-FLD0500B
              DISPLAY 'FLD0500B ==> ' HEX-OF (FLD0500B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0500B).
           IF FLD0501B (1:)    NOT EQUAL XPC-FLD0501B
              DISPLAY 'FLD0501B ==> ' HEX-OF (FLD0501B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0501B).
           IF FLD0502B (1:)    NOT EQUAL XPC-FLD0502B
              DISPLAY 'FLD0502B ==> ' HEX-OF (FLD0502B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0502B).
           IF FLD0503B (1:)    NOT EQUAL XPC-FLD0503B
              DISPLAY 'FLD0503B ==> ' HEX-OF (FLD0503B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0503B).
           IF FLD0504B (1:)    NOT EQUAL XPC-FLD0504B
              DISPLAY 'FLD0504B ==> ' HEX-OF (FLD0504B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0504B).
           IF FLD0505B (1:)    NOT EQUAL XPC-FLD0505B
              DISPLAY 'FLD0505B ==> ' HEX-OF (FLD0505B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0505B).
           IF FLD0506B (1:)    NOT EQUAL XPC-FLD0506B
              DISPLAY 'FLD0506B ==> ' HEX-OF (FLD0506B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0506B).
           IF FLD0507B (1:)    NOT EQUAL XPC-FLD0507B
              DISPLAY 'FLD0507B ==> ' HEX-OF (FLD0507B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0507B).
           IF FLD0508B (1:)    NOT EQUAL XPC-FLD0508B
              DISPLAY 'FLD0508B ==> ' HEX-OF (FLD0508B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0508B).
           IF FLD0509B (1:)    NOT EQUAL XPC-FLD0509B
              DISPLAY 'FLD0509B ==> ' HEX-OF (FLD0509B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0509B).
           IF FLD0510B (1:)    NOT EQUAL XPC-FLD0510B
              DISPLAY 'FLD0510B ==> ' HEX-OF (FLD0510B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0510B).
           IF FLD0511B (1:)    NOT EQUAL XPC-FLD0511B
              DISPLAY 'FLD0511B ==> ' HEX-OF (FLD0511B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0511B).
           IF FLD0512B (1:)    NOT EQUAL XPC-FLD0512B
              DISPLAY 'FLD0512B ==> ' HEX-OF (FLD0512B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0512B).
           IF FLD0513B (1:)    NOT EQUAL XPC-FLD0513B
              DISPLAY 'FLD0513B ==> ' HEX-OF (FLD0513B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0513B).
           IF FLD0514B (1:)    NOT EQUAL XPC-FLD0514B
              DISPLAY 'FLD0514B ==> ' HEX-OF (FLD0514B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0514B).
           IF FLD0515B (1:)    NOT EQUAL XPC-FLD0515B
              DISPLAY 'FLD0515B ==> ' HEX-OF (FLD0515B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0515B).
           IF FLD0516B (1:)    NOT EQUAL XPC-FLD0516B
              DISPLAY 'FLD0516B ==> ' HEX-OF (FLD0516B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0516B).
           IF FLD0517B (1:)    NOT EQUAL XPC-FLD0517B
              DISPLAY 'FLD0517B ==> ' HEX-OF (FLD0517B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0517B).
           IF FLD0518B (1:)    NOT EQUAL XPC-FLD0518B
              DISPLAY 'FLD0518B ==> ' HEX-OF (FLD0518B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0518B).
           IF FLD0519B (1:)    NOT EQUAL XPC-FLD0519B
              DISPLAY 'FLD0519B ==> ' HEX-OF (FLD0519B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0519B).
           IF FLD0520B (1:)    NOT EQUAL XPC-FLD0520B
              DISPLAY 'FLD0520B ==> ' HEX-OF (FLD0520B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0520B).
           IF FLD0521B (1:)    NOT EQUAL XPC-FLD0521B
              DISPLAY 'FLD0521B ==> ' HEX-OF (FLD0521B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0521B).
           IF FLD0522B (1:)    NOT EQUAL XPC-FLD0522B
              DISPLAY 'FLD0522B ==> ' HEX-OF (FLD0522B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0522B).
           IF FLD0523B (1:)    NOT EQUAL XPC-FLD0523B
              DISPLAY 'FLD0523B ==> ' HEX-OF (FLD0523B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0523B).
           IF FLD0524B (1:)    NOT EQUAL XPC-FLD0524B
              DISPLAY 'FLD0524B ==> ' HEX-OF (FLD0524B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0524B).
           IF FLD0525B (1:)    NOT EQUAL XPC-FLD0525B
              DISPLAY 'FLD0525B ==> ' HEX-OF (FLD0525B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0525B).
           IF FLD0526B (1:)    NOT EQUAL XPC-FLD0526B
              DISPLAY 'FLD0526B ==> ' HEX-OF (FLD0526B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0526B).
           IF FLD0527B (1:)    NOT EQUAL XPC-FLD0527B
              DISPLAY 'FLD0527B ==> ' HEX-OF (FLD0527B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0527B).
           IF FLD0528B (1:)    NOT EQUAL XPC-FLD0528B
              DISPLAY 'FLD0528B ==> ' HEX-OF (FLD0528B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0528B).
           IF FLD0529B (1:)    NOT EQUAL XPC-FLD0529B
              DISPLAY 'FLD0529B ==> ' HEX-OF (FLD0529B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0529B).
           IF FLD0530B (1:)    NOT EQUAL XPC-FLD0530B
              DISPLAY 'FLD0530B ==> ' HEX-OF (FLD0530B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0530B).
           IF FLD0531B (1:)    NOT EQUAL XPC-FLD0531B
              DISPLAY 'FLD0531B ==> ' HEX-OF (FLD0531B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0531B).
           IF FLD0532B (1:)    NOT EQUAL XPC-FLD0532B
              DISPLAY 'FLD0532B ==> ' HEX-OF (FLD0532B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0532B).
           IF FLD0533B (1:)    NOT EQUAL XPC-FLD0533B
              DISPLAY 'FLD0533B ==> ' HEX-OF (FLD0533B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0533B).
           IF FLD0534B (1:)    NOT EQUAL XPC-FLD0534B
              DISPLAY 'FLD0534B ==> ' HEX-OF (FLD0534B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0534B).
           IF FLD0535B (1:)    NOT EQUAL XPC-FLD0535B
              DISPLAY 'FLD0535B ==> ' HEX-OF (FLD0535B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0535B).
           IF FLD0536B (1:)    NOT EQUAL XPC-FLD0536B
              DISPLAY 'FLD0536B ==> ' HEX-OF (FLD0536B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0536B).
           IF FLD0537B (1:)    NOT EQUAL XPC-FLD0537B
              DISPLAY 'FLD0537B ==> ' HEX-OF (FLD0537B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0537B).
           IF FLD0538B (1:)    NOT EQUAL XPC-FLD0538B
              DISPLAY 'FLD0538B ==> ' HEX-OF (FLD0538B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0538B).
           IF FLD0539B (1:)    NOT EQUAL XPC-FLD0539B
              DISPLAY 'FLD0539B ==> ' HEX-OF (FLD0539B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0539B).
           IF FLD0540B (1:)    NOT EQUAL XPC-FLD0540B
              DISPLAY 'FLD0540B ==> ' HEX-OF (FLD0540B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0540B).
           IF FLD0541B (1:)    NOT EQUAL XPC-FLD0541B
              DISPLAY 'FLD0541B ==> ' HEX-OF (FLD0541B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0541B).
           IF FLD0542B (1:)    NOT EQUAL XPC-FLD0542B
              DISPLAY 'FLD0542B ==> ' HEX-OF (FLD0542B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0542B).
           IF FLD0543B (1:)    NOT EQUAL XPC-FLD0543B
              DISPLAY 'FLD0543B ==> ' HEX-OF (FLD0543B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0543B).
           IF FLD0544B (1:)    NOT EQUAL XPC-FLD0544B
              DISPLAY 'FLD0544B ==> ' HEX-OF (FLD0544B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0544B).
           IF FLD0545B (1:)    NOT EQUAL XPC-FLD0545B
              DISPLAY 'FLD0545B ==> ' HEX-OF (FLD0545B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0545B).
           IF FLD0546B (1:)    NOT EQUAL XPC-FLD0546B
              DISPLAY 'FLD0546B ==> ' HEX-OF (FLD0546B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0546B).
           IF FLD0547B (1:)    NOT EQUAL XPC-FLD0547B
              DISPLAY 'FLD0547B ==> ' HEX-OF (FLD0547B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0547B).
           IF FLD0548B (1:)    NOT EQUAL XPC-FLD0548B
              DISPLAY 'FLD0548B ==> ' HEX-OF (FLD0548B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0548B).
           IF FLD0549B (1:)    NOT EQUAL XPC-FLD0549B
              DISPLAY 'FLD0549B ==> ' HEX-OF (FLD0549B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0549B).
           IF FLD0550B (1:)    NOT EQUAL XPC-FLD0550B
              DISPLAY 'FLD0550B ==> ' HEX-OF (FLD0550B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0550B).
           IF FLD0551B (1:)    NOT EQUAL XPC-FLD0551B
              DISPLAY 'FLD0551B ==> ' HEX-OF (FLD0551B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0551B).
           IF FLD0552B (1:)    NOT EQUAL XPC-FLD0552B
              DISPLAY 'FLD0552B ==> ' HEX-OF (FLD0552B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0552B).
           IF FLD0553B (1:)    NOT EQUAL XPC-FLD0553B
              DISPLAY 'FLD0553B ==> ' HEX-OF (FLD0553B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0553B).
           IF FLD0554B (1:)    NOT EQUAL XPC-FLD0554B
              DISPLAY 'FLD0554B ==> ' HEX-OF (FLD0554B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0554B).
           IF FLD0555B (1:)    NOT EQUAL XPC-FLD0555B
              DISPLAY 'FLD0555B ==> ' HEX-OF (FLD0555B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0555B).
           IF FLD0556B (1:)    NOT EQUAL XPC-FLD0556B
              DISPLAY 'FLD0556B ==> ' HEX-OF (FLD0556B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0556B).
           IF FLD0557B (1:)    NOT EQUAL XPC-FLD0557B
              DISPLAY 'FLD0557B ==> ' HEX-OF (FLD0557B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0557B).
           IF FLD0558B (1:)    NOT EQUAL XPC-FLD0558B
              DISPLAY 'FLD0558B ==> ' HEX-OF (FLD0558B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0558B).
           IF FLD0559B (1:)    NOT EQUAL XPC-FLD0559B
              DISPLAY 'FLD0559B ==> ' HEX-OF (FLD0559B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0559B).
           IF FLD0560B (1:)    NOT EQUAL XPC-FLD0560B
              DISPLAY 'FLD0560B ==> ' HEX-OF (FLD0560B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0560B).
           IF FLD0561B (1:)    NOT EQUAL XPC-FLD0561B
              DISPLAY 'FLD0561B ==> ' HEX-OF (FLD0561B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0561B).
           IF FLD0562B (1:)    NOT EQUAL XPC-FLD0562B
              DISPLAY 'FLD0562B ==> ' HEX-OF (FLD0562B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0562B).
           IF FLD0563B (1:)    NOT EQUAL XPC-FLD0563B
              DISPLAY 'FLD0563B ==> ' HEX-OF (FLD0563B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0563B).
           IF FLD0564B (1:)    NOT EQUAL XPC-FLD0564B
              DISPLAY 'FLD0564B ==> ' HEX-OF (FLD0564B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0564B).
           IF FLD0565B (1:)    NOT EQUAL XPC-FLD0565B
              DISPLAY 'FLD0565B ==> ' HEX-OF (FLD0565B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0565B).
           IF FLD0566B (1:)    NOT EQUAL XPC-FLD0566B
              DISPLAY 'FLD0566B ==> ' HEX-OF (FLD0566B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0566B).
           IF FLD0567B (1:)    NOT EQUAL XPC-FLD0567B
              DISPLAY 'FLD0567B ==> ' HEX-OF (FLD0567B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0567B).
           IF FLD0568B (1:)    NOT EQUAL XPC-FLD0568B
              DISPLAY 'FLD0568B ==> ' HEX-OF (FLD0568B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0568B).
           IF FLD0569B (1:)    NOT EQUAL XPC-FLD0569B
              DISPLAY 'FLD0569B ==> ' HEX-OF (FLD0569B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0569B).
           IF FLD0570B (1:)    NOT EQUAL XPC-FLD0570B
              DISPLAY 'FLD0570B ==> ' HEX-OF (FLD0570B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0570B).
           IF FLD0571B (1:)    NOT EQUAL XPC-FLD0571B
              DISPLAY 'FLD0571B ==> ' HEX-OF (FLD0571B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0571B).
           IF FLD0572B (1:)    NOT EQUAL XPC-FLD0572B
              DISPLAY 'FLD0572B ==> ' HEX-OF (FLD0572B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0572B).
           IF FLD0573B (1:)    NOT EQUAL XPC-FLD0573B
              DISPLAY 'FLD0573B ==> ' HEX-OF (FLD0573B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0573B).
           IF FLD0574B (1:)    NOT EQUAL XPC-FLD0574B
              DISPLAY 'FLD0574B ==> ' HEX-OF (FLD0574B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0574B).
           IF FLD0575B (1:)    NOT EQUAL XPC-FLD0575B
              DISPLAY 'FLD0575B ==> ' HEX-OF (FLD0575B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0575B).
           IF FLD0576B (1:)    NOT EQUAL XPC-FLD0576B
              DISPLAY 'FLD0576B ==> ' HEX-OF (FLD0576B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0576B).
           IF FLD0577B (1:)    NOT EQUAL XPC-FLD0577B
              DISPLAY 'FLD0577B ==> ' HEX-OF (FLD0577B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0577B).
           IF FLD0578B (1:)    NOT EQUAL XPC-FLD0578B
              DISPLAY 'FLD0578B ==> ' HEX-OF (FLD0578B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0578B).
           IF FLD0579B (1:)    NOT EQUAL XPC-FLD0579B
              DISPLAY 'FLD0579B ==> ' HEX-OF (FLD0579B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0579B).
           IF FLD0580B (1:)    NOT EQUAL XPC-FLD0580B
              DISPLAY 'FLD0580B ==> ' HEX-OF (FLD0580B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0580B).
           IF FLD0581B (1:)    NOT EQUAL XPC-FLD0581B
              DISPLAY 'FLD0581B ==> ' HEX-OF (FLD0581B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0581B).
           IF FLD0582B (1:)    NOT EQUAL XPC-FLD0582B
              DISPLAY 'FLD0582B ==> ' HEX-OF (FLD0582B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0582B).
           IF FLD0583B (1:)    NOT EQUAL XPC-FLD0583B
              DISPLAY 'FLD0583B ==> ' HEX-OF (FLD0583B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0583B).
           IF FLD0584B (1:)    NOT EQUAL XPC-FLD0584B
              DISPLAY 'FLD0584B ==> ' HEX-OF (FLD0584B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0584B).
           IF FLD0585B (1:)    NOT EQUAL XPC-FLD0585B
              DISPLAY 'FLD0585B ==> ' HEX-OF (FLD0585B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0585B).
           IF FLD0586B (1:)    NOT EQUAL XPC-FLD0586B
              DISPLAY 'FLD0586B ==> ' HEX-OF (FLD0586B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0586B).
           IF FLD0587B (1:)    NOT EQUAL XPC-FLD0587B
              DISPLAY 'FLD0587B ==> ' HEX-OF (FLD0587B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0587B).
           IF FLD0588B (1:)    NOT EQUAL XPC-FLD0588B
              DISPLAY 'FLD0588B ==> ' HEX-OF (FLD0588B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0588B).
           IF FLD0589B (1:)    NOT EQUAL XPC-FLD0589B
              DISPLAY 'FLD0589B ==> ' HEX-OF (FLD0589B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0589B).
           IF FLD0590B (1:)    NOT EQUAL XPC-FLD0590B
              DISPLAY 'FLD0590B ==> ' HEX-OF (FLD0590B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0590B).
           IF FLD0591B (1:)    NOT EQUAL XPC-FLD0591B
              DISPLAY 'FLD0591B ==> ' HEX-OF (FLD0591B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0591B).
           IF FLD0592B (1:)    NOT EQUAL XPC-FLD0592B
              DISPLAY 'FLD0592B ==> ' HEX-OF (FLD0592B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0592B).
           IF FLD0593B (1:)    NOT EQUAL XPC-FLD0593B
              DISPLAY 'FLD0593B ==> ' HEX-OF (FLD0593B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0593B).
           IF FLD0594B (1:)    NOT EQUAL XPC-FLD0594B
              DISPLAY 'FLD0594B ==> ' HEX-OF (FLD0594B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0594B).
           IF FLD0595B (1:)    NOT EQUAL XPC-FLD0595B
              DISPLAY 'FLD0595B ==> ' HEX-OF (FLD0595B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0595B).
           IF FLD0596B (1:)    NOT EQUAL XPC-FLD0596B
              DISPLAY 'FLD0596B ==> ' HEX-OF (FLD0596B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0596B).
           IF FLD0597B (1:)    NOT EQUAL XPC-FLD0597B
              DISPLAY 'FLD0597B ==> ' HEX-OF (FLD0597B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0597B).
           IF FLD0598B (1:)    NOT EQUAL XPC-FLD0598B
              DISPLAY 'FLD0598B ==> ' HEX-OF (FLD0598B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0598B).
           IF FLD0599B (1:)    NOT EQUAL XPC-FLD0599B
              DISPLAY 'FLD0599B ==> ' HEX-OF (FLD0599B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0599B).
           IF FLD0600B (1:)    NOT EQUAL XPC-FLD0600B
              DISPLAY 'FLD0600B ==> ' HEX-OF (FLD0600B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0600B).
           IF FLD0601B (1:)    NOT EQUAL XPC-FLD0601B
              DISPLAY 'FLD0601B ==> ' HEX-OF (FLD0601B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0601B).
           IF FLD0602B (1:)    NOT EQUAL XPC-FLD0602B
              DISPLAY 'FLD0602B ==> ' HEX-OF (FLD0602B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0602B).
           IF FLD0603B (1:)    NOT EQUAL XPC-FLD0603B
              DISPLAY 'FLD0603B ==> ' HEX-OF (FLD0603B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0603B).
           IF FLD0604B (1:)    NOT EQUAL XPC-FLD0604B
              DISPLAY 'FLD0604B ==> ' HEX-OF (FLD0604B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0604B).
           IF FLD0605B (1:)    NOT EQUAL XPC-FLD0605B
              DISPLAY 'FLD0605B ==> ' HEX-OF (FLD0605B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0605B).
           IF FLD0606B (1:)    NOT EQUAL XPC-FLD0606B
              DISPLAY 'FLD0606B ==> ' HEX-OF (FLD0606B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0606B).
           IF FLD0607B (1:)    NOT EQUAL XPC-FLD0607B
              DISPLAY 'FLD0607B ==> ' HEX-OF (FLD0607B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0607B).
           IF FLD0608B (1:)    NOT EQUAL XPC-FLD0608B
              DISPLAY 'FLD0608B ==> ' HEX-OF (FLD0608B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0608B).
           IF FLD0609B (1:)    NOT EQUAL XPC-FLD0609B
              DISPLAY 'FLD0609B ==> ' HEX-OF (FLD0609B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0609B).
           IF FLD0610B (1:)    NOT EQUAL XPC-FLD0610B
              DISPLAY 'FLD0610B ==> ' HEX-OF (FLD0610B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0610B).
           IF FLD0611B (1:)    NOT EQUAL XPC-FLD0611B
              DISPLAY 'FLD0611B ==> ' HEX-OF (FLD0611B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0611B).
           IF FLD0612B (1:)    NOT EQUAL XPC-FLD0612B
              DISPLAY 'FLD0612B ==> ' HEX-OF (FLD0612B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0612B).
           IF FLD0613B (1:)    NOT EQUAL XPC-FLD0613B
              DISPLAY 'FLD0613B ==> ' HEX-OF (FLD0613B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0613B).
           IF FLD0614B (1:)    NOT EQUAL XPC-FLD0614B
              DISPLAY 'FLD0614B ==> ' HEX-OF (FLD0614B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0614B).
           IF FLD0615B (1:)    NOT EQUAL XPC-FLD0615B
              DISPLAY 'FLD0615B ==> ' HEX-OF (FLD0615B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0615B).
           IF FLD0616B (1:)    NOT EQUAL XPC-FLD0616B
              DISPLAY 'FLD0616B ==> ' HEX-OF (FLD0616B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0616B).
           IF FLD0617B (1:)    NOT EQUAL XPC-FLD0617B
              DISPLAY 'FLD0617B ==> ' HEX-OF (FLD0617B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0617B).
           IF FLD0618B (1:)    NOT EQUAL XPC-FLD0618B
              DISPLAY 'FLD0618B ==> ' HEX-OF (FLD0618B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0618B).
           IF FLD0619B (1:)    NOT EQUAL XPC-FLD0619B
              DISPLAY 'FLD0619B ==> ' HEX-OF (FLD0619B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0619B).
           IF FLD0620B (1:)    NOT EQUAL XPC-FLD0620B
              DISPLAY 'FLD0620B ==> ' HEX-OF (FLD0620B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0620B).
           IF FLD0621B (1:)    NOT EQUAL XPC-FLD0621B
              DISPLAY 'FLD0621B ==> ' HEX-OF (FLD0621B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0621B).
           IF FLD0622B (1:)    NOT EQUAL XPC-FLD0622B
              DISPLAY 'FLD0622B ==> ' HEX-OF (FLD0622B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0622B).
           IF FLD0623B (1:)    NOT EQUAL XPC-FLD0623B
              DISPLAY 'FLD0623B ==> ' HEX-OF (FLD0623B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0623B).
           IF FLD0624B (1:)    NOT EQUAL XPC-FLD0624B
              DISPLAY 'FLD0624B ==> ' HEX-OF (FLD0624B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0624B).
           IF FLD0625B (1:)    NOT EQUAL XPC-FLD0625B
              DISPLAY 'FLD0625B ==> ' HEX-OF (FLD0625B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0625B).
           IF FLD0626B (1:)    NOT EQUAL XPC-FLD0626B
              DISPLAY 'FLD0626B ==> ' HEX-OF (FLD0626B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0626B).
           IF FLD0627B (1:)    NOT EQUAL XPC-FLD0627B
              DISPLAY 'FLD0627B ==> ' HEX-OF (FLD0627B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0627B).
           IF FLD0628B (1:)    NOT EQUAL XPC-FLD0628B
              DISPLAY 'FLD0628B ==> ' HEX-OF (FLD0628B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0628B).
           IF FLD0629B (1:)    NOT EQUAL XPC-FLD0629B
              DISPLAY 'FLD0629B ==> ' HEX-OF (FLD0629B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0629B).
           IF FLD0630B (1:)    NOT EQUAL XPC-FLD0630B
              DISPLAY 'FLD0630B ==> ' HEX-OF (FLD0630B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0630B).
           IF FLD0631B (1:)    NOT EQUAL XPC-FLD0631B
              DISPLAY 'FLD0631B ==> ' HEX-OF (FLD0631B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0631B).
           IF FLD0632B (1:)    NOT EQUAL XPC-FLD0632B
              DISPLAY 'FLD0632B ==> ' HEX-OF (FLD0632B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0632B).
           IF FLD0633B (1:)    NOT EQUAL XPC-FLD0633B
              DISPLAY 'FLD0633B ==> ' HEX-OF (FLD0633B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0633B).
           IF FLD0634B (1:)    NOT EQUAL XPC-FLD0634B
              DISPLAY 'FLD0634B ==> ' HEX-OF (FLD0634B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0634B).
           IF FLD0635B (1:)    NOT EQUAL XPC-FLD0635B
              DISPLAY 'FLD0635B ==> ' HEX-OF (FLD0635B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0635B).
           IF FLD0636B (1:)    NOT EQUAL XPC-FLD0636B
              DISPLAY 'FLD0636B ==> ' HEX-OF (FLD0636B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0636B).
           IF FLD0637B (1:)    NOT EQUAL XPC-FLD0637B
              DISPLAY 'FLD0637B ==> ' HEX-OF (FLD0637B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0637B).
           IF FLD0638B (1:)    NOT EQUAL XPC-FLD0638B
              DISPLAY 'FLD0638B ==> ' HEX-OF (FLD0638B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0638B).
           IF FLD0639B (1:)    NOT EQUAL XPC-FLD0639B
              DISPLAY 'FLD0639B ==> ' HEX-OF (FLD0639B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0639B).
           IF FLD0640B (1:)    NOT EQUAL XPC-FLD0640B
              DISPLAY 'FLD0640B ==> ' HEX-OF (FLD0640B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0640B).
           IF FLD0641B (1:)    NOT EQUAL XPC-FLD0641B
              DISPLAY 'FLD0641B ==> ' HEX-OF (FLD0641B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0641B).
           IF FLD0642B (1:)    NOT EQUAL XPC-FLD0642B
              DISPLAY 'FLD0642B ==> ' HEX-OF (FLD0642B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0642B).
           IF FLD0643B (1:)    NOT EQUAL XPC-FLD0643B
              DISPLAY 'FLD0643B ==> ' HEX-OF (FLD0643B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0643B).
           IF FLD0644B (1:)    NOT EQUAL XPC-FLD0644B
              DISPLAY 'FLD0644B ==> ' HEX-OF (FLD0644B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0644B).
           IF FLD0645B (1:)    NOT EQUAL XPC-FLD0645B
              DISPLAY 'FLD0645B ==> ' HEX-OF (FLD0645B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0645B).
           IF FLD0646B (1:)    NOT EQUAL XPC-FLD0646B
              DISPLAY 'FLD0646B ==> ' HEX-OF (FLD0646B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0646B).
           IF FLD0647B (1:)    NOT EQUAL XPC-FLD0647B
              DISPLAY 'FLD0647B ==> ' HEX-OF (FLD0647B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0647B).
           IF FLD0648B (1:)    NOT EQUAL XPC-FLD0648B
              DISPLAY 'FLD0648B ==> ' HEX-OF (FLD0648B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0648B).
           IF FLD0649B (1:)    NOT EQUAL XPC-FLD0649B
              DISPLAY 'FLD0649B ==> ' HEX-OF (FLD0649B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0649B).
           IF FLD0650B (1:)    NOT EQUAL XPC-FLD0650B
              DISPLAY 'FLD0650B ==> ' HEX-OF (FLD0650B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0650B).
           IF FLD0651B (1:)    NOT EQUAL XPC-FLD0651B
              DISPLAY 'FLD0651B ==> ' HEX-OF (FLD0651B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0651B).
           IF FLD0652B (1:)    NOT EQUAL XPC-FLD0652B
              DISPLAY 'FLD0652B ==> ' HEX-OF (FLD0652B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0652B).
           IF FLD0653B (1:)    NOT EQUAL XPC-FLD0653B
              DISPLAY 'FLD0653B ==> ' HEX-OF (FLD0653B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0653B).
           IF FLD0654B (1:)    NOT EQUAL XPC-FLD0654B
              DISPLAY 'FLD0654B ==> ' HEX-OF (FLD0654B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0654B).
           IF FLD0655B (1:)    NOT EQUAL XPC-FLD0655B
              DISPLAY 'FLD0655B ==> ' HEX-OF (FLD0655B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0655B).
           IF FLD0656B (1:)    NOT EQUAL XPC-FLD0656B
              DISPLAY 'FLD0656B ==> ' HEX-OF (FLD0656B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0656B).
           IF FLD0657B (1:)    NOT EQUAL XPC-FLD0657B
              DISPLAY 'FLD0657B ==> ' HEX-OF (FLD0657B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0657B).
           IF FLD0658B (1:)    NOT EQUAL XPC-FLD0658B
              DISPLAY 'FLD0658B ==> ' HEX-OF (FLD0658B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0658B).
           IF FLD0659B (1:)    NOT EQUAL XPC-FLD0659B
              DISPLAY 'FLD0659B ==> ' HEX-OF (FLD0659B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0659B).
           IF FLD0660B (1:)    NOT EQUAL XPC-FLD0660B
              DISPLAY 'FLD0660B ==> ' HEX-OF (FLD0660B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0660B).
           IF FLD0661B (1:)    NOT EQUAL XPC-FLD0661B
              DISPLAY 'FLD0661B ==> ' HEX-OF (FLD0661B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0661B).
           IF FLD0662B (1:)    NOT EQUAL XPC-FLD0662B
              DISPLAY 'FLD0662B ==> ' HEX-OF (FLD0662B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0662B).
           IF FLD0663B (1:)    NOT EQUAL XPC-FLD0663B
              DISPLAY 'FLD0663B ==> ' HEX-OF (FLD0663B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0663B).
           IF FLD0664B (1:)    NOT EQUAL XPC-FLD0664B
              DISPLAY 'FLD0664B ==> ' HEX-OF (FLD0664B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0664B).
           IF FLD0665B (1:)    NOT EQUAL XPC-FLD0665B
              DISPLAY 'FLD0665B ==> ' HEX-OF (FLD0665B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0665B).
           IF FLD0666B (1:)    NOT EQUAL XPC-FLD0666B
              DISPLAY 'FLD0666B ==> ' HEX-OF (FLD0666B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0666B).
           IF FLD0667B (1:)    NOT EQUAL XPC-FLD0667B
              DISPLAY 'FLD0667B ==> ' HEX-OF (FLD0667B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0667B).
           IF FLD0668B (1:)    NOT EQUAL XPC-FLD0668B
              DISPLAY 'FLD0668B ==> ' HEX-OF (FLD0668B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0668B).
           IF FLD0669B (1:)    NOT EQUAL XPC-FLD0669B
              DISPLAY 'FLD0669B ==> ' HEX-OF (FLD0669B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0669B).
           IF FLD0670B (1:)    NOT EQUAL XPC-FLD0670B
              DISPLAY 'FLD0670B ==> ' HEX-OF (FLD0670B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0670B).
           IF FLD0671B (1:)    NOT EQUAL XPC-FLD0671B
              DISPLAY 'FLD0671B ==> ' HEX-OF (FLD0671B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0671B).
           IF FLD0672B (1:)    NOT EQUAL XPC-FLD0672B
              DISPLAY 'FLD0672B ==> ' HEX-OF (FLD0672B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0672B).
           IF FLD0673B (1:)    NOT EQUAL XPC-FLD0673B
              DISPLAY 'FLD0673B ==> ' HEX-OF (FLD0673B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0673B).
           IF FLD0674B (1:)    NOT EQUAL XPC-FLD0674B
              DISPLAY 'FLD0674B ==> ' HEX-OF (FLD0674B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0674B).
           IF FLD0675B (1:)    NOT EQUAL XPC-FLD0675B
              DISPLAY 'FLD0675B ==> ' HEX-OF (FLD0675B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0675B).
           IF FLD0676B (1:)    NOT EQUAL XPC-FLD0676B
              DISPLAY 'FLD0676B ==> ' HEX-OF (FLD0676B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0676B).
           IF FLD0677B (1:)    NOT EQUAL XPC-FLD0677B
              DISPLAY 'FLD0677B ==> ' HEX-OF (FLD0677B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0677B).
           IF FLD0678B (1:)    NOT EQUAL XPC-FLD0678B
              DISPLAY 'FLD0678B ==> ' HEX-OF (FLD0678B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0678B).
           IF FLD0679B (1:)    NOT EQUAL XPC-FLD0679B
              DISPLAY 'FLD0679B ==> ' HEX-OF (FLD0679B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0679B).
           IF FLD0680B (1:)    NOT EQUAL XPC-FLD0680B
              DISPLAY 'FLD0680B ==> ' HEX-OF (FLD0680B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0680B).
           IF FLD0681B (1:)    NOT EQUAL XPC-FLD0681B
              DISPLAY 'FLD0681B ==> ' HEX-OF (FLD0681B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0681B).
           IF FLD0682B (1:)    NOT EQUAL XPC-FLD0682B
              DISPLAY 'FLD0682B ==> ' HEX-OF (FLD0682B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0682B).
           IF FLD0683B (1:)    NOT EQUAL XPC-FLD0683B
              DISPLAY 'FLD0683B ==> ' HEX-OF (FLD0683B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0683B).
           IF FLD0684B (1:)    NOT EQUAL XPC-FLD0684B
              DISPLAY 'FLD0684B ==> ' HEX-OF (FLD0684B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0684B).
           IF FLD0685B (1:)    NOT EQUAL XPC-FLD0685B
              DISPLAY 'FLD0685B ==> ' HEX-OF (FLD0685B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0685B).
           IF FLD0686B (1:)    NOT EQUAL XPC-FLD0686B
              DISPLAY 'FLD0686B ==> ' HEX-OF (FLD0686B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0686B).
           IF FLD0687B (1:)    NOT EQUAL XPC-FLD0687B
              DISPLAY 'FLD0687B ==> ' HEX-OF (FLD0687B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0687B).
           IF FLD0688B (1:)    NOT EQUAL XPC-FLD0688B
              DISPLAY 'FLD0688B ==> ' HEX-OF (FLD0688B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0688B).
           IF FLD0689B (1:)    NOT EQUAL XPC-FLD0689B
              DISPLAY 'FLD0689B ==> ' HEX-OF (FLD0689B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0689B).
           IF FLD0690B (1:)    NOT EQUAL XPC-FLD0690B
              DISPLAY 'FLD0690B ==> ' HEX-OF (FLD0690B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0690B).
           IF FLD0691B (1:)    NOT EQUAL XPC-FLD0691B
              DISPLAY 'FLD0691B ==> ' HEX-OF (FLD0691B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0691B).
           IF FLD0692B (1:)    NOT EQUAL XPC-FLD0692B
              DISPLAY 'FLD0692B ==> ' HEX-OF (FLD0692B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0692B).
           IF FLD0693B (1:)    NOT EQUAL XPC-FLD0693B
              DISPLAY 'FLD0693B ==> ' HEX-OF (FLD0693B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0693B).
           IF FLD0694B (1:)    NOT EQUAL XPC-FLD0694B
              DISPLAY 'FLD0694B ==> ' HEX-OF (FLD0694B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0694B).
           IF FLD0695B (1:)    NOT EQUAL XPC-FLD0695B
              DISPLAY 'FLD0695B ==> ' HEX-OF (FLD0695B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0695B).
           IF FLD0696B (1:)    NOT EQUAL XPC-FLD0696B
              DISPLAY 'FLD0696B ==> ' HEX-OF (FLD0696B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0696B).
           IF FLD0697B (1:)    NOT EQUAL XPC-FLD0697B
              DISPLAY 'FLD0697B ==> ' HEX-OF (FLD0697B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0697B).
           IF FLD0698B (1:)    NOT EQUAL XPC-FLD0698B
              DISPLAY 'FLD0698B ==> ' HEX-OF (FLD0698B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0698B).
           IF FLD0699B (1:)    NOT EQUAL XPC-FLD0699B
              DISPLAY 'FLD0699B ==> ' HEX-OF (FLD0699B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0699B).
           IF FLD0700B (1:)    NOT EQUAL XPC-FLD0700B
              DISPLAY 'FLD0700B ==> ' HEX-OF (FLD0700B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0700B).
           IF FLD0701B (1:)    NOT EQUAL XPC-FLD0701B
              DISPLAY 'FLD0701B ==> ' HEX-OF (FLD0701B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0701B).
           IF FLD0702B (1:)    NOT EQUAL XPC-FLD0702B
              DISPLAY 'FLD0702B ==> ' HEX-OF (FLD0702B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0702B).
           IF FLD0703B (1:)    NOT EQUAL XPC-FLD0703B
              DISPLAY 'FLD0703B ==> ' HEX-OF (FLD0703B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0703B).
           IF FLD0704B (1:)    NOT EQUAL XPC-FLD0704B
              DISPLAY 'FLD0704B ==> ' HEX-OF (FLD0704B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0704B).
           IF FLD0705B (1:)    NOT EQUAL XPC-FLD0705B
              DISPLAY 'FLD0705B ==> ' HEX-OF (FLD0705B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0705B).
           IF FLD0706B (1:)    NOT EQUAL XPC-FLD0706B
              DISPLAY 'FLD0706B ==> ' HEX-OF (FLD0706B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0706B).
           IF FLD0707B (1:)    NOT EQUAL XPC-FLD0707B
              DISPLAY 'FLD0707B ==> ' HEX-OF (FLD0707B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0707B).
           IF FLD0708B (1:)    NOT EQUAL XPC-FLD0708B
              DISPLAY 'FLD0708B ==> ' HEX-OF (FLD0708B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0708B).
           IF FLD0709B (1:)    NOT EQUAL XPC-FLD0709B
              DISPLAY 'FLD0709B ==> ' HEX-OF (FLD0709B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0709B).
           IF FLD0710B (1:)    NOT EQUAL XPC-FLD0710B
              DISPLAY 'FLD0710B ==> ' HEX-OF (FLD0710B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0710B).
           IF FLD0711B (1:)    NOT EQUAL XPC-FLD0711B
              DISPLAY 'FLD0711B ==> ' HEX-OF (FLD0711B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0711B).
           IF FLD0712B (1:)    NOT EQUAL XPC-FLD0712B
              DISPLAY 'FLD0712B ==> ' HEX-OF (FLD0712B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0712B).
           IF FLD0713B (1:)    NOT EQUAL XPC-FLD0713B
              DISPLAY 'FLD0713B ==> ' HEX-OF (FLD0713B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0713B).
           IF FLD0714B (1:)    NOT EQUAL XPC-FLD0714B
              DISPLAY 'FLD0714B ==> ' HEX-OF (FLD0714B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0714B).
           IF FLD0715B (1:)    NOT EQUAL XPC-FLD0715B
              DISPLAY 'FLD0715B ==> ' HEX-OF (FLD0715B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0715B).
           IF FLD0716B (1:)    NOT EQUAL XPC-FLD0716B
              DISPLAY 'FLD0716B ==> ' HEX-OF (FLD0716B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0716B).
           IF FLD0717B (1:)    NOT EQUAL XPC-FLD0717B
              DISPLAY 'FLD0717B ==> ' HEX-OF (FLD0717B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0717B).
           IF FLD0718B (1:)    NOT EQUAL XPC-FLD0718B
              DISPLAY 'FLD0718B ==> ' HEX-OF (FLD0718B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0718B).
           IF FLD0719B (1:)    NOT EQUAL XPC-FLD0719B
              DISPLAY 'FLD0719B ==> ' HEX-OF (FLD0719B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0719B).
           IF FLD0720B (1:)    NOT EQUAL XPC-FLD0720B
              DISPLAY 'FLD0720B ==> ' HEX-OF (FLD0720B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0720B).
           IF FLD0721B (1:)    NOT EQUAL XPC-FLD0721B
              DISPLAY 'FLD0721B ==> ' HEX-OF (FLD0721B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0721B).
           IF FLD0722B (1:)    NOT EQUAL XPC-FLD0722B
              DISPLAY 'FLD0722B ==> ' HEX-OF (FLD0722B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0722B).
           IF FLD0723B (1:)    NOT EQUAL XPC-FLD0723B
              DISPLAY 'FLD0723B ==> ' HEX-OF (FLD0723B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0723B).
           IF FLD0724B (1:)    NOT EQUAL XPC-FLD0724B
              DISPLAY 'FLD0724B ==> ' HEX-OF (FLD0724B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0724B).
           IF FLD0725B (1:)    NOT EQUAL XPC-FLD0725B
              DISPLAY 'FLD0725B ==> ' HEX-OF (FLD0725B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0725B).
           IF FLD0726B (1:)    NOT EQUAL XPC-FLD0726B
              DISPLAY 'FLD0726B ==> ' HEX-OF (FLD0726B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0726B).
           IF FLD0727B (1:)    NOT EQUAL XPC-FLD0727B
              DISPLAY 'FLD0727B ==> ' HEX-OF (FLD0727B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0727B).
           IF FLD0728B (1:)    NOT EQUAL XPC-FLD0728B
              DISPLAY 'FLD0728B ==> ' HEX-OF (FLD0728B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0728B).
           IF FLD0729B (1:)    NOT EQUAL XPC-FLD0729B
              DISPLAY 'FLD0729B ==> ' HEX-OF (FLD0729B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0729B).
           IF FLD0730B (1:)    NOT EQUAL XPC-FLD0730B
              DISPLAY 'FLD0730B ==> ' HEX-OF (FLD0730B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0730B).
           IF FLD0731B (1:)    NOT EQUAL XPC-FLD0731B
              DISPLAY 'FLD0731B ==> ' HEX-OF (FLD0731B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0731B).
           IF FLD0732B (1:)    NOT EQUAL XPC-FLD0732B
              DISPLAY 'FLD0732B ==> ' HEX-OF (FLD0732B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0732B).
           IF FLD0733B (1:)    NOT EQUAL XPC-FLD0733B
              DISPLAY 'FLD0733B ==> ' HEX-OF (FLD0733B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0733B).
           IF FLD0734B (1:)    NOT EQUAL XPC-FLD0734B
              DISPLAY 'FLD0734B ==> ' HEX-OF (FLD0734B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0734B).
           IF FLD0735B (1:)    NOT EQUAL XPC-FLD0735B
              DISPLAY 'FLD0735B ==> ' HEX-OF (FLD0735B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0735B).
           IF FLD0736B (1:)    NOT EQUAL XPC-FLD0736B
              DISPLAY 'FLD0736B ==> ' HEX-OF (FLD0736B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0736B).
           IF FLD0737B (1:)    NOT EQUAL XPC-FLD0737B
              DISPLAY 'FLD0737B ==> ' HEX-OF (FLD0737B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0737B).
           IF FLD0738B (1:)    NOT EQUAL XPC-FLD0738B
              DISPLAY 'FLD0738B ==> ' HEX-OF (FLD0738B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0738B).
           IF FLD0739B (1:)    NOT EQUAL XPC-FLD0739B
              DISPLAY 'FLD0739B ==> ' HEX-OF (FLD0739B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0739B).
           IF FLD0740B (1:)    NOT EQUAL XPC-FLD0740B
              DISPLAY 'FLD0740B ==> ' HEX-OF (FLD0740B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0740B).
           IF FLD0741B (1:)    NOT EQUAL XPC-FLD0741B
              DISPLAY 'FLD0741B ==> ' HEX-OF (FLD0741B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0741B).
           IF FLD0742B (1:)    NOT EQUAL XPC-FLD0742B
              DISPLAY 'FLD0742B ==> ' HEX-OF (FLD0742B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0742B).
           IF FLD0743B (1:)    NOT EQUAL XPC-FLD0743B
              DISPLAY 'FLD0743B ==> ' HEX-OF (FLD0743B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0743B).
           IF FLD0744B (1:)    NOT EQUAL XPC-FLD0744B
              DISPLAY 'FLD0744B ==> ' HEX-OF (FLD0744B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0744B).
           IF FLD0745B (1:)    NOT EQUAL XPC-FLD0745B
              DISPLAY 'FLD0745B ==> ' HEX-OF (FLD0745B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0745B).
           IF FLD0746B (1:)    NOT EQUAL XPC-FLD0746B
              DISPLAY 'FLD0746B ==> ' HEX-OF (FLD0746B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0746B).
           IF FLD0747B (1:)    NOT EQUAL XPC-FLD0747B
              DISPLAY 'FLD0747B ==> ' HEX-OF (FLD0747B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0747B).
           IF FLD0748B (1:)    NOT EQUAL XPC-FLD0748B
              DISPLAY 'FLD0748B ==> ' HEX-OF (FLD0748B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0748B).
           IF FLD0749B (1:)    NOT EQUAL XPC-FLD0749B
              DISPLAY 'FLD0749B ==> ' HEX-OF (FLD0749B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0749B).
           IF FLD0750B (1:)    NOT EQUAL XPC-FLD0750B
              DISPLAY 'FLD0750B ==> ' HEX-OF (FLD0750B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0750B).
           IF FLD0751B (1:)    NOT EQUAL XPC-FLD0751B
              DISPLAY 'FLD0751B ==> ' HEX-OF (FLD0751B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0751B).
           IF FLD0752B (1:)    NOT EQUAL XPC-FLD0752B
              DISPLAY 'FLD0752B ==> ' HEX-OF (FLD0752B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0752B).
           IF FLD0753B (1:)    NOT EQUAL XPC-FLD0753B
              DISPLAY 'FLD0753B ==> ' HEX-OF (FLD0753B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0753B).
           IF FLD0754B (1:)    NOT EQUAL XPC-FLD0754B
              DISPLAY 'FLD0754B ==> ' HEX-OF (FLD0754B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0754B).
           IF FLD0755B (1:)    NOT EQUAL XPC-FLD0755B
              DISPLAY 'FLD0755B ==> ' HEX-OF (FLD0755B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0755B).
           IF FLD0756B (1:)    NOT EQUAL XPC-FLD0756B
              DISPLAY 'FLD0756B ==> ' HEX-OF (FLD0756B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0756B).
           IF FLD0757B (1:)    NOT EQUAL XPC-FLD0757B
              DISPLAY 'FLD0757B ==> ' HEX-OF (FLD0757B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0757B).
           IF FLD0758B (1:)    NOT EQUAL XPC-FLD0758B
              DISPLAY 'FLD0758B ==> ' HEX-OF (FLD0758B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0758B).
           IF FLD0759B (1:)    NOT EQUAL XPC-FLD0759B
              DISPLAY 'FLD0759B ==> ' HEX-OF (FLD0759B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0759B).
           IF FLD0760B (1:)    NOT EQUAL XPC-FLD0760B
              DISPLAY 'FLD0760B ==> ' HEX-OF (FLD0760B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0760B).
           IF FLD0761B (1:)    NOT EQUAL XPC-FLD0761B
              DISPLAY 'FLD0761B ==> ' HEX-OF (FLD0761B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0761B).
           IF FLD0762B (1:)    NOT EQUAL XPC-FLD0762B
              DISPLAY 'FLD0762B ==> ' HEX-OF (FLD0762B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0762B).
           IF FLD0763B (1:)    NOT EQUAL XPC-FLD0763B
              DISPLAY 'FLD0763B ==> ' HEX-OF (FLD0763B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0763B).
           IF FLD0764B (1:)    NOT EQUAL XPC-FLD0764B
              DISPLAY 'FLD0764B ==> ' HEX-OF (FLD0764B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0764B).
           IF FLD0765B (1:)    NOT EQUAL XPC-FLD0765B
              DISPLAY 'FLD0765B ==> ' HEX-OF (FLD0765B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0765B).
           IF FLD0766B (1:)    NOT EQUAL XPC-FLD0766B
              DISPLAY 'FLD0766B ==> ' HEX-OF (FLD0766B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0766B).
           IF FLD0767B (1:)    NOT EQUAL XPC-FLD0767B
              DISPLAY 'FLD0767B ==> ' HEX-OF (FLD0767B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0767B).
           IF FLD0768B (1:)    NOT EQUAL XPC-FLD0768B
              DISPLAY 'FLD0768B ==> ' HEX-OF (FLD0768B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0768B).
           IF FLD0769B (1:)    NOT EQUAL XPC-FLD0769B
              DISPLAY 'FLD0769B ==> ' HEX-OF (FLD0769B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0769B).
           IF FLD0770B (1:)    NOT EQUAL XPC-FLD0770B
              DISPLAY 'FLD0770B ==> ' HEX-OF (FLD0770B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0770B).
           IF FLD0771B (1:)    NOT EQUAL XPC-FLD0771B
              DISPLAY 'FLD0771B ==> ' HEX-OF (FLD0771B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0771B).
           IF FLD0772B (1:)    NOT EQUAL XPC-FLD0772B
              DISPLAY 'FLD0772B ==> ' HEX-OF (FLD0772B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0772B).
           IF FLD0773B (1:)    NOT EQUAL XPC-FLD0773B
              DISPLAY 'FLD0773B ==> ' HEX-OF (FLD0773B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0773B).
           IF FLD0774B (1:)    NOT EQUAL XPC-FLD0774B
              DISPLAY 'FLD0774B ==> ' HEX-OF (FLD0774B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0774B).
           IF FLD0775B (1:)    NOT EQUAL XPC-FLD0775B
              DISPLAY 'FLD0775B ==> ' HEX-OF (FLD0775B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0775B).
           IF FLD0776B (1:)    NOT EQUAL XPC-FLD0776B
              DISPLAY 'FLD0776B ==> ' HEX-OF (FLD0776B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0776B).
           IF FLD0777B (1:)    NOT EQUAL XPC-FLD0777B
              DISPLAY 'FLD0777B ==> ' HEX-OF (FLD0777B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0777B).
           IF FLD0778B (1:)    NOT EQUAL XPC-FLD0778B
              DISPLAY 'FLD0778B ==> ' HEX-OF (FLD0778B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0778B).
           IF FLD0779B (1:)    NOT EQUAL XPC-FLD0779B
              DISPLAY 'FLD0779B ==> ' HEX-OF (FLD0779B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0779B).
           IF FLD0780B (1:)    NOT EQUAL XPC-FLD0780B
              DISPLAY 'FLD0780B ==> ' HEX-OF (FLD0780B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0780B).
           IF FLD0781B (1:)    NOT EQUAL XPC-FLD0781B
              DISPLAY 'FLD0781B ==> ' HEX-OF (FLD0781B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0781B).
           IF FLD0782B (1:)    NOT EQUAL XPC-FLD0782B
              DISPLAY 'FLD0782B ==> ' HEX-OF (FLD0782B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0782B).
           IF FLD0783B (1:)    NOT EQUAL XPC-FLD0783B
              DISPLAY 'FLD0783B ==> ' HEX-OF (FLD0783B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0783B).
           IF FLD0784B (1:)    NOT EQUAL XPC-FLD0784B
              DISPLAY 'FLD0784B ==> ' HEX-OF (FLD0784B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0784B).
           IF FLD0785B (1:)    NOT EQUAL XPC-FLD0785B
              DISPLAY 'FLD0785B ==> ' HEX-OF (FLD0785B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0785B).
           IF FLD0786B (1:)    NOT EQUAL XPC-FLD0786B
              DISPLAY 'FLD0786B ==> ' HEX-OF (FLD0786B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0786B).
           IF FLD0787B (1:)    NOT EQUAL XPC-FLD0787B
              DISPLAY 'FLD0787B ==> ' HEX-OF (FLD0787B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0787B).
           IF FLD0788B (1:)    NOT EQUAL XPC-FLD0788B
              DISPLAY 'FLD0788B ==> ' HEX-OF (FLD0788B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0788B).
           IF FLD0789B (1:)    NOT EQUAL XPC-FLD0789B
              DISPLAY 'FLD0789B ==> ' HEX-OF (FLD0789B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0789B).
           IF FLD0790B (1:)    NOT EQUAL XPC-FLD0790B
              DISPLAY 'FLD0790B ==> ' HEX-OF (FLD0790B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0790B).
           IF FLD0791B (1:)    NOT EQUAL XPC-FLD0791B
              DISPLAY 'FLD0791B ==> ' HEX-OF (FLD0791B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0791B).
           IF FLD0792B (1:)    NOT EQUAL XPC-FLD0792B
              DISPLAY 'FLD0792B ==> ' HEX-OF (FLD0792B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0792B).
           IF FLD0793B (1:)    NOT EQUAL XPC-FLD0793B
              DISPLAY 'FLD0793B ==> ' HEX-OF (FLD0793B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0793B).
           IF FLD0794B (1:)    NOT EQUAL XPC-FLD0794B
              DISPLAY 'FLD0794B ==> ' HEX-OF (FLD0794B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0794B).
           IF FLD0795B (1:)    NOT EQUAL XPC-FLD0795B
              DISPLAY 'FLD0795B ==> ' HEX-OF (FLD0795B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0795B).
           IF FLD0796B (1:)    NOT EQUAL XPC-FLD0796B
              DISPLAY 'FLD0796B ==> ' HEX-OF (FLD0796B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0796B).
           IF FLD0797B (1:)    NOT EQUAL XPC-FLD0797B
              DISPLAY 'FLD0797B ==> ' HEX-OF (FLD0797B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0797B).
           IF FLD0798B (1:)    NOT EQUAL XPC-FLD0798B
              DISPLAY 'FLD0798B ==> ' HEX-OF (FLD0798B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0798B).
           IF FLD0799B (1:)    NOT EQUAL XPC-FLD0799B
              DISPLAY 'FLD0799B ==> ' HEX-OF (FLD0799B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0799B).
           IF FLD0800B (1:)    NOT EQUAL XPC-FLD0800B
              DISPLAY 'FLD0800B ==> ' HEX-OF (FLD0800B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0800B).
           IF FLD0801B (1:)    NOT EQUAL XPC-FLD0801B
              DISPLAY 'FLD0801B ==> ' HEX-OF (FLD0801B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0801B).
           IF FLD0802B (1:)    NOT EQUAL XPC-FLD0802B
              DISPLAY 'FLD0802B ==> ' HEX-OF (FLD0802B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0802B).
           IF FLD0803B (1:)    NOT EQUAL XPC-FLD0803B
              DISPLAY 'FLD0803B ==> ' HEX-OF (FLD0803B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0803B).
           IF FLD0804B (1:)    NOT EQUAL XPC-FLD0804B
              DISPLAY 'FLD0804B ==> ' HEX-OF (FLD0804B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0804B).
           IF FLD0805B (1:)    NOT EQUAL XPC-FLD0805B
              DISPLAY 'FLD0805B ==> ' HEX-OF (FLD0805B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0805B).
           IF FLD0806B (1:)    NOT EQUAL XPC-FLD0806B
              DISPLAY 'FLD0806B ==> ' HEX-OF (FLD0806B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0806B).
           IF FLD0807B (1:)    NOT EQUAL XPC-FLD0807B
              DISPLAY 'FLD0807B ==> ' HEX-OF (FLD0807B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0807B).
           IF FLD0808B (1:)    NOT EQUAL XPC-FLD0808B
              DISPLAY 'FLD0808B ==> ' HEX-OF (FLD0808B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0808B).
           IF FLD0809B (1:)    NOT EQUAL XPC-FLD0809B
              DISPLAY 'FLD0809B ==> ' HEX-OF (FLD0809B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0809B).
           IF FLD0810B (1:)    NOT EQUAL XPC-FLD0810B
              DISPLAY 'FLD0810B ==> ' HEX-OF (FLD0810B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0810B).
           IF FLD0811B (1:)    NOT EQUAL XPC-FLD0811B
              DISPLAY 'FLD0811B ==> ' HEX-OF (FLD0811B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0811B).
           IF FLD0812B (1:)    NOT EQUAL XPC-FLD0812B
              DISPLAY 'FLD0812B ==> ' HEX-OF (FLD0812B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0812B).
           IF FLD0813B (1:)    NOT EQUAL XPC-FLD0813B
              DISPLAY 'FLD0813B ==> ' HEX-OF (FLD0813B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0813B).
           IF FLD0814B (1:)    NOT EQUAL XPC-FLD0814B
              DISPLAY 'FLD0814B ==> ' HEX-OF (FLD0814B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0814B).
           IF FLD0815B (1:)    NOT EQUAL XPC-FLD0815B
              DISPLAY 'FLD0815B ==> ' HEX-OF (FLD0815B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0815B).
           IF FLD0816B (1:)    NOT EQUAL XPC-FLD0816B
              DISPLAY 'FLD0816B ==> ' HEX-OF (FLD0816B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0816B).
           IF FLD0817B (1:)    NOT EQUAL XPC-FLD0817B
              DISPLAY 'FLD0817B ==> ' HEX-OF (FLD0817B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0817B).
           IF FLD0818B (1:)    NOT EQUAL XPC-FLD0818B
              DISPLAY 'FLD0818B ==> ' HEX-OF (FLD0818B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0818B).
           IF FLD0819B (1:)    NOT EQUAL XPC-FLD0819B
              DISPLAY 'FLD0819B ==> ' HEX-OF (FLD0819B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0819B).
           IF FLD0820B (1:)    NOT EQUAL XPC-FLD0820B
              DISPLAY 'FLD0820B ==> ' HEX-OF (FLD0820B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0820B).
           IF FLD0821B (1:)    NOT EQUAL XPC-FLD0821B
              DISPLAY 'FLD0821B ==> ' HEX-OF (FLD0821B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0821B).
           IF FLD0822B (1:)    NOT EQUAL XPC-FLD0822B
              DISPLAY 'FLD0822B ==> ' HEX-OF (FLD0822B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0822B).
           IF FLD0823B (1:)    NOT EQUAL XPC-FLD0823B
              DISPLAY 'FLD0823B ==> ' HEX-OF (FLD0823B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0823B).
           IF FLD0824B (1:)    NOT EQUAL XPC-FLD0824B
              DISPLAY 'FLD0824B ==> ' HEX-OF (FLD0824B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0824B).
           IF FLD0825B (1:)    NOT EQUAL XPC-FLD0825B
              DISPLAY 'FLD0825B ==> ' HEX-OF (FLD0825B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0825B).
           IF FLD0826B (1:)    NOT EQUAL XPC-FLD0826B
              DISPLAY 'FLD0826B ==> ' HEX-OF (FLD0826B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0826B).
           IF FLD0827B (1:)    NOT EQUAL XPC-FLD0827B
              DISPLAY 'FLD0827B ==> ' HEX-OF (FLD0827B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0827B).
           IF FLD0828B (1:)    NOT EQUAL XPC-FLD0828B
              DISPLAY 'FLD0828B ==> ' HEX-OF (FLD0828B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0828B).
           IF FLD0829B (1:)    NOT EQUAL XPC-FLD0829B
              DISPLAY 'FLD0829B ==> ' HEX-OF (FLD0829B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0829B).
           IF FLD0830B (1:)    NOT EQUAL XPC-FLD0830B
              DISPLAY 'FLD0830B ==> ' HEX-OF (FLD0830B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0830B).
           IF FLD0831B (1:)    NOT EQUAL XPC-FLD0831B
              DISPLAY 'FLD0831B ==> ' HEX-OF (FLD0831B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0831B).
           IF FLD0832B (1:)    NOT EQUAL XPC-FLD0832B
              DISPLAY 'FLD0832B ==> ' HEX-OF (FLD0832B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0832B).
           IF FLD0833B (1:)    NOT EQUAL XPC-FLD0833B
              DISPLAY 'FLD0833B ==> ' HEX-OF (FLD0833B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0833B).
           IF FLD0834B (1:)    NOT EQUAL XPC-FLD0834B
              DISPLAY 'FLD0834B ==> ' HEX-OF (FLD0834B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0834B).
           IF FLD0835B (1:)    NOT EQUAL XPC-FLD0835B
              DISPLAY 'FLD0835B ==> ' HEX-OF (FLD0835B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0835B).
           IF FLD0836B (1:)    NOT EQUAL XPC-FLD0836B
              DISPLAY 'FLD0836B ==> ' HEX-OF (FLD0836B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0836B).
           IF FLD0837B (1:)    NOT EQUAL XPC-FLD0837B
              DISPLAY 'FLD0837B ==> ' HEX-OF (FLD0837B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0837B).
           IF FLD0838B (1:)    NOT EQUAL XPC-FLD0838B
              DISPLAY 'FLD0838B ==> ' HEX-OF (FLD0838B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0838B).
           IF FLD0839B (1:)    NOT EQUAL XPC-FLD0839B
              DISPLAY 'FLD0839B ==> ' HEX-OF (FLD0839B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0839B).
           IF FLD0840B (1:)    NOT EQUAL XPC-FLD0840B
              DISPLAY 'FLD0840B ==> ' HEX-OF (FLD0840B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0840B).
           IF FLD0841B (1:)    NOT EQUAL XPC-FLD0841B
              DISPLAY 'FLD0841B ==> ' HEX-OF (FLD0841B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0841B).
           IF FLD0842B (1:)    NOT EQUAL XPC-FLD0842B
              DISPLAY 'FLD0842B ==> ' HEX-OF (FLD0842B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0842B).
           IF FLD0843B (1:)    NOT EQUAL XPC-FLD0843B
              DISPLAY 'FLD0843B ==> ' HEX-OF (FLD0843B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0843B).
           IF FLD0844B (1:)    NOT EQUAL XPC-FLD0844B
              DISPLAY 'FLD0844B ==> ' HEX-OF (FLD0844B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0844B).
           IF FLD0845B (1:)    NOT EQUAL XPC-FLD0845B
              DISPLAY 'FLD0845B ==> ' HEX-OF (FLD0845B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0845B).
           IF FLD0846B (1:)    NOT EQUAL XPC-FLD0846B
              DISPLAY 'FLD0846B ==> ' HEX-OF (FLD0846B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0846B).
           IF FLD0847B (1:)    NOT EQUAL XPC-FLD0847B
              DISPLAY 'FLD0847B ==> ' HEX-OF (FLD0847B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0847B).
           IF FLD0848B (1:)    NOT EQUAL XPC-FLD0848B
              DISPLAY 'FLD0848B ==> ' HEX-OF (FLD0848B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0848B).
           IF FLD0849B (1:)    NOT EQUAL XPC-FLD0849B
              DISPLAY 'FLD0849B ==> ' HEX-OF (FLD0849B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0849B).
           IF FLD0850B (1:)    NOT EQUAL XPC-FLD0850B
              DISPLAY 'FLD0850B ==> ' HEX-OF (FLD0850B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0850B).
           IF FLD0851B (1:)    NOT EQUAL XPC-FLD0851B
              DISPLAY 'FLD0851B ==> ' HEX-OF (FLD0851B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0851B).
           IF FLD0852B (1:)    NOT EQUAL XPC-FLD0852B
              DISPLAY 'FLD0852B ==> ' HEX-OF (FLD0852B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0852B).
           IF FLD0853B (1:)    NOT EQUAL XPC-FLD0853B
              DISPLAY 'FLD0853B ==> ' HEX-OF (FLD0853B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0853B).
           IF FLD0854B (1:)    NOT EQUAL XPC-FLD0854B
              DISPLAY 'FLD0854B ==> ' HEX-OF (FLD0854B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0854B).
           IF FLD0855B (1:)    NOT EQUAL XPC-FLD0855B
              DISPLAY 'FLD0855B ==> ' HEX-OF (FLD0855B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0855B).
           IF FLD0856B (1:)    NOT EQUAL XPC-FLD0856B
              DISPLAY 'FLD0856B ==> ' HEX-OF (FLD0856B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0856B).
           IF FLD0857B (1:)    NOT EQUAL XPC-FLD0857B
              DISPLAY 'FLD0857B ==> ' HEX-OF (FLD0857B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0857B).
           IF FLD0858B (1:)    NOT EQUAL XPC-FLD0858B
              DISPLAY 'FLD0858B ==> ' HEX-OF (FLD0858B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0858B).
           IF FLD0859B (1:)    NOT EQUAL XPC-FLD0859B
              DISPLAY 'FLD0859B ==> ' HEX-OF (FLD0859B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0859B).
           IF FLD0860B (1:)    NOT EQUAL XPC-FLD0860B
              DISPLAY 'FLD0860B ==> ' HEX-OF (FLD0860B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0860B).
           IF FLD0861B (1:)    NOT EQUAL XPC-FLD0861B
              DISPLAY 'FLD0861B ==> ' HEX-OF (FLD0861B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0861B).
           IF FLD0862B (1:)    NOT EQUAL XPC-FLD0862B
              DISPLAY 'FLD0862B ==> ' HEX-OF (FLD0862B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0862B).
           IF FLD0863B (1:)    NOT EQUAL XPC-FLD0863B
              DISPLAY 'FLD0863B ==> ' HEX-OF (FLD0863B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0863B).
           IF FLD0864B (1:)    NOT EQUAL XPC-FLD0864B
              DISPLAY 'FLD0864B ==> ' HEX-OF (FLD0864B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0864B).
           IF FLD0865B (1:)    NOT EQUAL XPC-FLD0865B
              DISPLAY 'FLD0865B ==> ' HEX-OF (FLD0865B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0865B).
           IF FLD0866B (1:)    NOT EQUAL XPC-FLD0866B
              DISPLAY 'FLD0866B ==> ' HEX-OF (FLD0866B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0866B).
           IF FLD0867B (1:)    NOT EQUAL XPC-FLD0867B
              DISPLAY 'FLD0867B ==> ' HEX-OF (FLD0867B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0867B).
           IF FLD0868B (1:)    NOT EQUAL XPC-FLD0868B
              DISPLAY 'FLD0868B ==> ' HEX-OF (FLD0868B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0868B).
           IF FLD0869B (1:)    NOT EQUAL XPC-FLD0869B
              DISPLAY 'FLD0869B ==> ' HEX-OF (FLD0869B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0869B).
           IF FLD0870B (1:)    NOT EQUAL XPC-FLD0870B
              DISPLAY 'FLD0870B ==> ' HEX-OF (FLD0870B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0870B).
           IF FLD0871B (1:)    NOT EQUAL XPC-FLD0871B
              DISPLAY 'FLD0871B ==> ' HEX-OF (FLD0871B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0871B).
           IF FLD0872B (1:)    NOT EQUAL XPC-FLD0872B
              DISPLAY 'FLD0872B ==> ' HEX-OF (FLD0872B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0872B).
           IF FLD0873B (1:)    NOT EQUAL XPC-FLD0873B
              DISPLAY 'FLD0873B ==> ' HEX-OF (FLD0873B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0873B).
           IF FLD0874B (1:)    NOT EQUAL XPC-FLD0874B
              DISPLAY 'FLD0874B ==> ' HEX-OF (FLD0874B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0874B).
           IF FLD0875B (1:)    NOT EQUAL XPC-FLD0875B
              DISPLAY 'FLD0875B ==> ' HEX-OF (FLD0875B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0875B).
           IF FLD0876B (1:)    NOT EQUAL XPC-FLD0876B
              DISPLAY 'FLD0876B ==> ' HEX-OF (FLD0876B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0876B).
           IF FLD0877B (1:)    NOT EQUAL XPC-FLD0877B
              DISPLAY 'FLD0877B ==> ' HEX-OF (FLD0877B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0877B).
           IF FLD0878B (1:)    NOT EQUAL XPC-FLD0878B
              DISPLAY 'FLD0878B ==> ' HEX-OF (FLD0878B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0878B).
           IF FLD0879B (1:)    NOT EQUAL XPC-FLD0879B
              DISPLAY 'FLD0879B ==> ' HEX-OF (FLD0879B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0879B).
           IF FLD0880B (1:)    NOT EQUAL XPC-FLD0880B
              DISPLAY 'FLD0880B ==> ' HEX-OF (FLD0880B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0880B).
           IF FLD0881B (1:)    NOT EQUAL XPC-FLD0881B
              DISPLAY 'FLD0881B ==> ' HEX-OF (FLD0881B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0881B).
           IF FLD0882B (1:)    NOT EQUAL XPC-FLD0882B
              DISPLAY 'FLD0882B ==> ' HEX-OF (FLD0882B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0882B).
           IF FLD0883B (1:)    NOT EQUAL XPC-FLD0883B
              DISPLAY 'FLD0883B ==> ' HEX-OF (FLD0883B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0883B).
           IF FLD0884B (1:)    NOT EQUAL XPC-FLD0884B
              DISPLAY 'FLD0884B ==> ' HEX-OF (FLD0884B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0884B).
           IF FLD0885B (1:)    NOT EQUAL XPC-FLD0885B
              DISPLAY 'FLD0885B ==> ' HEX-OF (FLD0885B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0885B).
           IF FLD0886B (1:)    NOT EQUAL XPC-FLD0886B
              DISPLAY 'FLD0886B ==> ' HEX-OF (FLD0886B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0886B).
           IF FLD0887B (1:)    NOT EQUAL XPC-FLD0887B
              DISPLAY 'FLD0887B ==> ' HEX-OF (FLD0887B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0887B).
           IF FLD0888B (1:)    NOT EQUAL XPC-FLD0888B
              DISPLAY 'FLD0888B ==> ' HEX-OF (FLD0888B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0888B).
           IF FLD0889B (1:)    NOT EQUAL XPC-FLD0889B
              DISPLAY 'FLD0889B ==> ' HEX-OF (FLD0889B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0889B).
           IF FLD0890B (1:)    NOT EQUAL XPC-FLD0890B
              DISPLAY 'FLD0890B ==> ' HEX-OF (FLD0890B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0890B).
           IF FLD0891B (1:)    NOT EQUAL XPC-FLD0891B
              DISPLAY 'FLD0891B ==> ' HEX-OF (FLD0891B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0891B).
           IF FLD0892B (1:)    NOT EQUAL XPC-FLD0892B
              DISPLAY 'FLD0892B ==> ' HEX-OF (FLD0892B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0892B).
           IF FLD0893B (1:)    NOT EQUAL XPC-FLD0893B
              DISPLAY 'FLD0893B ==> ' HEX-OF (FLD0893B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0893B).
           IF FLD0894B (1:)    NOT EQUAL XPC-FLD0894B
              DISPLAY 'FLD0894B ==> ' HEX-OF (FLD0894B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0894B).
           IF FLD0895B (1:)    NOT EQUAL XPC-FLD0895B
              DISPLAY 'FLD0895B ==> ' HEX-OF (FLD0895B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0895B).
           IF FLD0896B (1:)    NOT EQUAL XPC-FLD0896B
              DISPLAY 'FLD0896B ==> ' HEX-OF (FLD0896B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0896B).
           IF FLD0897B (1:)    NOT EQUAL XPC-FLD0897B
              DISPLAY 'FLD0897B ==> ' HEX-OF (FLD0897B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0897B).
           IF FLD0898B (1:)    NOT EQUAL XPC-FLD0898B
              DISPLAY 'FLD0898B ==> ' HEX-OF (FLD0898B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0898B).
           IF FLD0899B (1:)    NOT EQUAL XPC-FLD0899B
              DISPLAY 'FLD0899B ==> ' HEX-OF (FLD0899B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0899B).
           IF FLD0900B (1:)    NOT EQUAL XPC-FLD0900B
              DISPLAY 'FLD0900B ==> ' HEX-OF (FLD0900B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0900B).
           IF FLD0901B (1:)    NOT EQUAL XPC-FLD0901B
              DISPLAY 'FLD0901B ==> ' HEX-OF (FLD0901B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0901B).
           IF FLD0902B (1:)    NOT EQUAL XPC-FLD0902B
              DISPLAY 'FLD0902B ==> ' HEX-OF (FLD0902B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0902B).
           IF FLD0903B (1:)    NOT EQUAL XPC-FLD0903B
              DISPLAY 'FLD0903B ==> ' HEX-OF (FLD0903B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0903B).
           IF FLD0904B (1:)    NOT EQUAL XPC-FLD0904B
              DISPLAY 'FLD0904B ==> ' HEX-OF (FLD0904B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0904B).
           IF FLD0905B (1:)    NOT EQUAL XPC-FLD0905B
              DISPLAY 'FLD0905B ==> ' HEX-OF (FLD0905B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0905B).
           IF FLD0906B (1:)    NOT EQUAL XPC-FLD0906B
              DISPLAY 'FLD0906B ==> ' HEX-OF (FLD0906B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0906B).
           IF FLD0907B (1:)    NOT EQUAL XPC-FLD0907B
              DISPLAY 'FLD0907B ==> ' HEX-OF (FLD0907B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0907B).
           IF FLD0908B (1:)    NOT EQUAL XPC-FLD0908B
              DISPLAY 'FLD0908B ==> ' HEX-OF (FLD0908B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0908B).
           IF FLD0909B (1:)    NOT EQUAL XPC-FLD0909B
              DISPLAY 'FLD0909B ==> ' HEX-OF (FLD0909B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0909B).
           IF FLD0910B (1:)    NOT EQUAL XPC-FLD0910B
              DISPLAY 'FLD0910B ==> ' HEX-OF (FLD0910B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0910B).
           IF FLD0911B (1:)    NOT EQUAL XPC-FLD0911B
              DISPLAY 'FLD0911B ==> ' HEX-OF (FLD0911B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0911B).
           IF FLD0912B (1:)    NOT EQUAL XPC-FLD0912B
              DISPLAY 'FLD0912B ==> ' HEX-OF (FLD0912B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0912B).
           IF FLD0913B (1:)    NOT EQUAL XPC-FLD0913B
              DISPLAY 'FLD0913B ==> ' HEX-OF (FLD0913B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0913B).
           IF FLD0914B (1:)    NOT EQUAL XPC-FLD0914B
              DISPLAY 'FLD0914B ==> ' HEX-OF (FLD0914B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0914B).
           IF FLD0915B (1:)    NOT EQUAL XPC-FLD0915B
              DISPLAY 'FLD0915B ==> ' HEX-OF (FLD0915B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0915B).
           IF FLD0916B (1:)    NOT EQUAL XPC-FLD0916B
              DISPLAY 'FLD0916B ==> ' HEX-OF (FLD0916B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0916B).
           IF FLD0917B (1:)    NOT EQUAL XPC-FLD0917B
              DISPLAY 'FLD0917B ==> ' HEX-OF (FLD0917B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0917B).
           IF FLD0918B (1:)    NOT EQUAL XPC-FLD0918B
              DISPLAY 'FLD0918B ==> ' HEX-OF (FLD0918B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0918B).
           IF FLD0919B (1:)    NOT EQUAL XPC-FLD0919B
              DISPLAY 'FLD0919B ==> ' HEX-OF (FLD0919B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0919B).
           IF FLD0920B (1:)    NOT EQUAL XPC-FLD0920B
              DISPLAY 'FLD0920B ==> ' HEX-OF (FLD0920B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0920B).
           IF FLD0921B (1:)    NOT EQUAL XPC-FLD0921B
              DISPLAY 'FLD0921B ==> ' HEX-OF (FLD0921B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0921B).
           IF FLD0922B (1:)    NOT EQUAL XPC-FLD0922B
              DISPLAY 'FLD0922B ==> ' HEX-OF (FLD0922B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0922B).
           IF FLD0923B (1:)    NOT EQUAL XPC-FLD0923B
              DISPLAY 'FLD0923B ==> ' HEX-OF (FLD0923B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0923B).
           IF FLD0924B (1:)    NOT EQUAL XPC-FLD0924B
              DISPLAY 'FLD0924B ==> ' HEX-OF (FLD0924B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0924B).
           IF FLD0925B (1:)    NOT EQUAL XPC-FLD0925B
              DISPLAY 'FLD0925B ==> ' HEX-OF (FLD0925B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0925B).
           IF FLD0926B (1:)    NOT EQUAL XPC-FLD0926B
              DISPLAY 'FLD0926B ==> ' HEX-OF (FLD0926B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0926B).
           IF FLD0927B (1:)    NOT EQUAL XPC-FLD0927B
              DISPLAY 'FLD0927B ==> ' HEX-OF (FLD0927B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0927B).
           IF FLD0928B (1:)    NOT EQUAL XPC-FLD0928B
              DISPLAY 'FLD0928B ==> ' HEX-OF (FLD0928B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0928B).
           IF FLD0929B (1:)    NOT EQUAL XPC-FLD0929B
              DISPLAY 'FLD0929B ==> ' HEX-OF (FLD0929B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0929B).
           IF FLD0930B (1:)    NOT EQUAL XPC-FLD0930B
              DISPLAY 'FLD0930B ==> ' HEX-OF (FLD0930B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0930B).
           IF FLD0931B (1:)    NOT EQUAL XPC-FLD0931B
              DISPLAY 'FLD0931B ==> ' HEX-OF (FLD0931B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0931B).
           IF FLD0932B (1:)    NOT EQUAL XPC-FLD0932B
              DISPLAY 'FLD0932B ==> ' HEX-OF (FLD0932B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0932B).
           IF FLD0933B (1:)    NOT EQUAL XPC-FLD0933B
              DISPLAY 'FLD0933B ==> ' HEX-OF (FLD0933B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0933B).
           IF FLD0934B (1:)    NOT EQUAL XPC-FLD0934B
              DISPLAY 'FLD0934B ==> ' HEX-OF (FLD0934B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0934B).
           IF FLD0935B (1:)    NOT EQUAL XPC-FLD0935B
              DISPLAY 'FLD0935B ==> ' HEX-OF (FLD0935B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0935B).
           IF FLD0936B (1:)    NOT EQUAL XPC-FLD0936B
              DISPLAY 'FLD0936B ==> ' HEX-OF (FLD0936B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0936B).
           IF FLD0937B (1:)    NOT EQUAL XPC-FLD0937B
              DISPLAY 'FLD0937B ==> ' HEX-OF (FLD0937B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0937B).
           IF FLD0938B (1:)    NOT EQUAL XPC-FLD0938B
              DISPLAY 'FLD0938B ==> ' HEX-OF (FLD0938B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0938B).
           IF FLD0939B (1:)    NOT EQUAL XPC-FLD0939B
              DISPLAY 'FLD0939B ==> ' HEX-OF (FLD0939B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0939B).
           IF FLD0940B (1:)    NOT EQUAL XPC-FLD0940B
              DISPLAY 'FLD0940B ==> ' HEX-OF (FLD0940B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0940B).
           IF FLD0941B (1:)    NOT EQUAL XPC-FLD0941B
              DISPLAY 'FLD0941B ==> ' HEX-OF (FLD0941B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0941B).
           IF FLD0942B (1:)    NOT EQUAL XPC-FLD0942B
              DISPLAY 'FLD0942B ==> ' HEX-OF (FLD0942B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0942B).
           IF FLD0943B (1:)    NOT EQUAL XPC-FLD0943B
              DISPLAY 'FLD0943B ==> ' HEX-OF (FLD0943B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0943B).
           IF FLD0944B (1:)    NOT EQUAL XPC-FLD0944B
              DISPLAY 'FLD0944B ==> ' HEX-OF (FLD0944B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0944B).
           IF FLD0945B (1:)    NOT EQUAL XPC-FLD0945B
              DISPLAY 'FLD0945B ==> ' HEX-OF (FLD0945B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0945B).
           IF FLD0946B (1:)    NOT EQUAL XPC-FLD0946B
              DISPLAY 'FLD0946B ==> ' HEX-OF (FLD0946B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0946B).
           IF FLD0947B (1:)    NOT EQUAL XPC-FLD0947B
              DISPLAY 'FLD0947B ==> ' HEX-OF (FLD0947B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0947B).
           IF FLD0948B (1:)    NOT EQUAL XPC-FLD0948B
              DISPLAY 'FLD0948B ==> ' HEX-OF (FLD0948B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0948B).
           IF FLD0949B (1:)    NOT EQUAL XPC-FLD0949B
              DISPLAY 'FLD0949B ==> ' HEX-OF (FLD0949B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0949B).
           IF FLD0950B (1:)    NOT EQUAL XPC-FLD0950B
              DISPLAY 'FLD0950B ==> ' HEX-OF (FLD0950B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0950B).
           IF FLD0951B (1:)    NOT EQUAL XPC-FLD0951B
              DISPLAY 'FLD0951B ==> ' HEX-OF (FLD0951B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0951B).
           IF FLD0952B (1:)    NOT EQUAL XPC-FLD0952B
              DISPLAY 'FLD0952B ==> ' HEX-OF (FLD0952B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0952B).
           IF FLD0953B (1:)    NOT EQUAL XPC-FLD0953B
              DISPLAY 'FLD0953B ==> ' HEX-OF (FLD0953B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0953B).
           IF FLD0954B (1:)    NOT EQUAL XPC-FLD0954B
              DISPLAY 'FLD0954B ==> ' HEX-OF (FLD0954B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0954B).
           IF FLD0955B (1:)    NOT EQUAL XPC-FLD0955B
              DISPLAY 'FLD0955B ==> ' HEX-OF (FLD0955B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0955B).
           IF FLD0956B (1:)    NOT EQUAL XPC-FLD0956B
              DISPLAY 'FLD0956B ==> ' HEX-OF (FLD0956B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0956B).
           IF FLD0957B (1:)    NOT EQUAL XPC-FLD0957B
              DISPLAY 'FLD0957B ==> ' HEX-OF (FLD0957B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0957B).
           IF FLD0958B (1:)    NOT EQUAL XPC-FLD0958B
              DISPLAY 'FLD0958B ==> ' HEX-OF (FLD0958B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0958B).
           IF FLD0959B (1:)    NOT EQUAL XPC-FLD0959B
              DISPLAY 'FLD0959B ==> ' HEX-OF (FLD0959B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0959B).
           IF FLD0960B (1:)    NOT EQUAL XPC-FLD0960B
              DISPLAY 'FLD0960B ==> ' HEX-OF (FLD0960B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0960B).
           IF FLD0961B (1:)    NOT EQUAL XPC-FLD0961B
              DISPLAY 'FLD0961B ==> ' HEX-OF (FLD0961B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0961B).
           IF FLD0962B (1:)    NOT EQUAL XPC-FLD0962B
              DISPLAY 'FLD0962B ==> ' HEX-OF (FLD0962B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0962B).
           IF FLD0963B (1:)    NOT EQUAL XPC-FLD0963B
              DISPLAY 'FLD0963B ==> ' HEX-OF (FLD0963B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0963B).
           IF FLD0964B (1:)    NOT EQUAL XPC-FLD0964B
              DISPLAY 'FLD0964B ==> ' HEX-OF (FLD0964B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0964B).
           IF FLD0965B (1:)    NOT EQUAL XPC-FLD0965B
              DISPLAY 'FLD0965B ==> ' HEX-OF (FLD0965B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0965B).
           IF FLD0966B (1:)    NOT EQUAL XPC-FLD0966B
              DISPLAY 'FLD0966B ==> ' HEX-OF (FLD0966B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0966B).
           IF FLD0967B (1:)    NOT EQUAL XPC-FLD0967B
              DISPLAY 'FLD0967B ==> ' HEX-OF (FLD0967B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0967B).
           IF FLD0968B (1:)    NOT EQUAL XPC-FLD0968B
              DISPLAY 'FLD0968B ==> ' HEX-OF (FLD0968B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0968B).
           IF FLD0969B (1:)    NOT EQUAL XPC-FLD0969B
              DISPLAY 'FLD0969B ==> ' HEX-OF (FLD0969B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0969B).
           IF FLD0970B (1:)    NOT EQUAL XPC-FLD0970B
              DISPLAY 'FLD0970B ==> ' HEX-OF (FLD0970B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0970B).
           IF FLD0971B (1:)    NOT EQUAL XPC-FLD0971B
              DISPLAY 'FLD0971B ==> ' HEX-OF (FLD0971B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0971B).
           IF FLD0972B (1:)    NOT EQUAL XPC-FLD0972B
              DISPLAY 'FLD0972B ==> ' HEX-OF (FLD0972B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0972B).
           IF FLD0973B (1:)    NOT EQUAL XPC-FLD0973B
              DISPLAY 'FLD0973B ==> ' HEX-OF (FLD0973B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0973B).
           IF FLD0974B (1:)    NOT EQUAL XPC-FLD0974B
              DISPLAY 'FLD0974B ==> ' HEX-OF (FLD0974B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0974B).
           IF FLD0975B (1:)    NOT EQUAL XPC-FLD0975B
              DISPLAY 'FLD0975B ==> ' HEX-OF (FLD0975B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0975B).
           IF FLD0976B (1:)    NOT EQUAL XPC-FLD0976B
              DISPLAY 'FLD0976B ==> ' HEX-OF (FLD0976B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0976B).
           IF FLD0977B (1:)    NOT EQUAL XPC-FLD0977B
              DISPLAY 'FLD0977B ==> ' HEX-OF (FLD0977B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0977B).
           IF FLD0978B (1:)    NOT EQUAL XPC-FLD0978B
              DISPLAY 'FLD0978B ==> ' HEX-OF (FLD0978B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0978B).
           IF FLD0979B (1:)    NOT EQUAL XPC-FLD0979B
              DISPLAY 'FLD0979B ==> ' HEX-OF (FLD0979B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0979B).
           IF FLD0980B (1:)    NOT EQUAL XPC-FLD0980B
              DISPLAY 'FLD0980B ==> ' HEX-OF (FLD0980B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0980B).
           IF FLD0981B (1:)    NOT EQUAL XPC-FLD0981B
              DISPLAY 'FLD0981B ==> ' HEX-OF (FLD0981B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0981B).
           IF FLD0982B (1:)    NOT EQUAL XPC-FLD0982B
              DISPLAY 'FLD0982B ==> ' HEX-OF (FLD0982B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0982B).
           IF FLD0983B (1:)    NOT EQUAL XPC-FLD0983B
              DISPLAY 'FLD0983B ==> ' HEX-OF (FLD0983B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0983B).
           IF FLD0984B (1:)    NOT EQUAL XPC-FLD0984B
              DISPLAY 'FLD0984B ==> ' HEX-OF (FLD0984B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0984B).
           IF FLD0985B (1:)    NOT EQUAL XPC-FLD0985B
              DISPLAY 'FLD0985B ==> ' HEX-OF (FLD0985B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0985B).
           IF FLD0986B (1:)    NOT EQUAL XPC-FLD0986B
              DISPLAY 'FLD0986B ==> ' HEX-OF (FLD0986B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0986B).
           IF FLD0987B (1:)    NOT EQUAL XPC-FLD0987B
              DISPLAY 'FLD0987B ==> ' HEX-OF (FLD0987B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0987B).
           IF FLD0988B (1:)    NOT EQUAL XPC-FLD0988B
              DISPLAY 'FLD0988B ==> ' HEX-OF (FLD0988B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0988B).
           IF FLD0989B (1:)    NOT EQUAL XPC-FLD0989B
              DISPLAY 'FLD0989B ==> ' HEX-OF (FLD0989B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0989B).
           IF FLD0990B (1:)    NOT EQUAL XPC-FLD0990B
              DISPLAY 'FLD0990B ==> ' HEX-OF (FLD0990B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0990B).
           IF FLD0991B (1:)    NOT EQUAL XPC-FLD0991B
              DISPLAY 'FLD0991B ==> ' HEX-OF (FLD0991B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0991B).
           IF FLD0992B (1:)    NOT EQUAL XPC-FLD0992B
              DISPLAY 'FLD0992B ==> ' HEX-OF (FLD0992B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0992B).
           IF FLD0993B (1:)    NOT EQUAL XPC-FLD0993B
              DISPLAY 'FLD0993B ==> ' HEX-OF (FLD0993B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0993B).
           IF FLD0994B (1:)    NOT EQUAL XPC-FLD0994B
              DISPLAY 'FLD0994B ==> ' HEX-OF (FLD0994B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0994B).
           IF FLD0995B (1:)    NOT EQUAL XPC-FLD0995B
              DISPLAY 'FLD0995B ==> ' HEX-OF (FLD0995B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0995B).
           IF FLD0996B (1:)    NOT EQUAL XPC-FLD0996B
              DISPLAY 'FLD0996B ==> ' HEX-OF (FLD0996B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0996B).
           IF FLD0997B (1:)    NOT EQUAL XPC-FLD0997B
              DISPLAY 'FLD0997B ==> ' HEX-OF (FLD0997B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0997B).
           IF FLD0998B (1:)    NOT EQUAL XPC-FLD0998B
              DISPLAY 'FLD0998B ==> ' HEX-OF (FLD0998B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0998B).
           IF FLD0999B (1:)    NOT EQUAL XPC-FLD0999B
              DISPLAY 'FLD0999B ==> ' HEX-OF (FLD0999B)
              DISPLAY 'EXPECTED ==> ' HEX-OF (XPC-FLD0999B).
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_packed.at:40840: \$COMPILE prog2.cob"
at_fn_check_prepare_dynamic "$COMPILE prog2.cob" "data_packed.at:40840"
( $at_check_trace; $COMPILE prog2.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:40840"
$at_failed && at_fn_log_failure
$at_traceon; }

{ set +x
$as_echo "$at_srcdir/data_packed.at:40841: \$COBCRUN_DIRECT ./prog2"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog2" "data_packed.at:40841"
( $at_check_trace; $COBCRUN_DIRECT ./prog2
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_packed.at:40841"
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1281
#AT_START_1282
at_fn_group_banner 1282 'data_pointer.at:21' \
  "POINTER: display" "                               " 5
at_xfail=no
(
  $as_echo "1282. $at_setup_line: testing $at_desc ..."
  $at_traceon



cat >prog.cob <<'_ATEOF'

       IDENTIFICATION   DIVISION.
       PROGRAM-ID.      prog.
       DATA             DIVISION.
       WORKING-STORAGE  SECTION.
       01 PTR           USAGE POINTER VALUE NULL.
       PROCEDURE        DIVISION.
           DISPLAY PTR
           END-DISPLAY.
           SET PTR UP BY 1
           DISPLAY PTR
           SET PTR DOWN BY 1
           DISPLAY PTR
           END-DISPLAY.
           STOP RUN.
_ATEOF


{ set +x
$as_echo "$at_srcdir/data_pointer.at:41: \$COMPILE prog.cob"
at_fn_check_prepare_dynamic "$COMPILE prog.cob" "data_pointer.at:41"
( $at_check_trace; $COMPILE prog.cob
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_pointer.at:41"
$at_failed && at_fn_log_failure
$at_traceon; }


{ set +x
$as_echo "$at_srcdir/data_pointer.at:43: test \"\$COB_HAS_64_BIT_POINTER\" = \"yes\""
at_fn_check_prepare_dynamic "test \"$COB_HAS_64_BIT_POINTER\" = \"yes\"" "data_pointer.at:43"
( $at_check_trace; test "$COB_HAS_64_BIT_POINTER" = "yes"
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
at_fn_diff_devnull "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_pointer.at:43"
if $at_failed; then :
  # Previous test "failed" --> 32 bit

{ set +x
$as_echo "$at_srcdir/data_pointer.at:43: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_pointer.at:43"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0x00000000
0x00000001
0x00000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_pointer.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }



else
  # Previous test "passed" --> 64 bit

{ set +x
$as_echo "$at_srcdir/data_pointer.at:43: \$COBCRUN_DIRECT ./prog"
at_fn_check_prepare_dynamic "$COBCRUN_DIRECT ./prog" "data_pointer.at:43"
( $at_check_trace; $COBCRUN_DIRECT ./prog
) >>"$at_stdout" 2>>"$at_stderr" 5>&-
at_status=$? at_failed=false
$at_check_filter
at_fn_diff_devnull "$at_stderr" || at_failed=:
echo >>"$at_stdout"; $as_echo "0x0000000000000000
0x0000000000000001
0x0000000000000000
" | \
  $at_diff - "$at_stdout" || at_failed=:
at_fn_check_status 0 $at_status "$at_srcdir/data_pointer.at:43"
$at_failed && at_fn_log_failure
$at_traceon; }

fi
$at_failed && at_fn_log_failure
$at_traceon; }


  set +x
  $at_times_p && times >"$at_times_file"
) 5>&1 2>&1 7>&- | eval $at_tee_pipe
read at_status <"$at_status_file"
#AT_STOP_1282
